Проектирование ЛВС ethernet

Автор: Пользователь скрыл имя, 09 Апреля 2012 в 13:11, курсовая работа

Краткое описание

Локальная сеть обычно организуется и работает в пределах одной фирмы(организации) и объединяет компьютеры на рабочих местах для более быстрого и качественного обмена информацией. Каждая организация, эксплуатирующая более десятка ПК, старается объединить их в локальную сеть c целью уменьшения бумажного документооборота и повышения эффективности своих подразделений. Естественно, что почти каждая такая сеть должна иметь выход на внешних заказчиков.

Нашей задачей является проектирование малой офисной сети Ethernet с одной точкой доступа в интернет и написание приложения, работающего по технологии “клиент-сервер” с использованием TCP/IP.

Оглавление

ВВЕДЕНИЕ

1.ФИЗИЧЕСКАЯ СТРУКТИРИЗАЦИЯ СЕТИ

2 ЛОГИЧЕСКАЯ СТРУКТУРИЗАЦИЯ СЕТИ.

3 ТЕХНИКО - ЭКОНОМИЧЕСКАЯ ЧАСТЬ

3.1 Выбор оборудования

3.2 Расчет себестоимости сети

4 СБОР И ПЕРЕДАЧА СИСТЕМНОЙ ИНФОРМАЦИИ ПРИЛОЖЕНИЕМ, РАБОТАЮЩЕМУ ПО ТЕХНОЛОГИИ "КЛИЕН-СЕРВЕР" С ИСПОЛЬЗОВАНИЕМ TCP\IP

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Файлы: 1 файл

Курсовая сети.doc

— 1.94 Мб (Скачать)

      FileSize := Size;

      AThread.Connection.Socket.Send(FileSize, SizeOf(FileSize));

      GetMem(p, Size);

    try

      ReadBuffer(p^, Size);

      AThread.Connection.Socket.Send(p^, Size);

    finally

      FreeMem(p);

    end;

  finally

    Free;

  end;

  AThread.Connection.Disconnect;

 

end;

 

 

//читаем информацию из Реестра

function WinInfo(Root_Key: HKEY; Key_Open, Key_Read: string): string;

var

registry: TRegistry;

begin

//если Windows NT, открываем другой ключ

if ((GetVersion and $80000000)=0) and (Key_Open=WinVers) then

Key_Open:='SOFTWARE\Microsoft\Windows NT\CurrentVersion';

Registry := TRegistry.Create;

try

Registry.RootKey := Root_Key;

Registry.OpenKey(Key_Open, False);

Result := Registry.ReadString(Key_Read);

finally

Registry.Free;

end;

//если ничего не найдено, выводим "невозможно определить"

if Result<>EmptyStr then Result:=Key_read+': '+Result else Result:=Key_read+': невозможно определить';

end;

 

//читаем из System.ini

function GetDevice(Section, Ident: String): String;

var inifile: TIniFile;

begin

IniFile:=TIniFile.Create(windir+'\system.ini');

result:=IniFile.ReadString(Section,ident,'неизвестное устройство');

IniFile.Free;

end;

 

begin

GetWindowsDirectory(buffer, SizeOf(buffer));

windir:=buffer;

AssignFile(F,Windir+'\OSInfo.txt'); //Соединямся с файлом лога

ReWrite(F); //Переходим в начало файла

WriteLn(F,'Лог создан: '+DateTimeToStr(now));

WriteLn(F,'');

//пользователь, версия ОС и т.д.

WriteLn(F,' О Системе:');

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'RegisteredOwner'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'RegisteredOrganization'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductID'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductKey'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProductName'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'Version'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'VersionNumber'));

//Какой браузер?

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'Plus! VersionNumber'));

WriteLn(F,'');

WriteLn(F,' Память:');

WriteLn(F,'Доступные носители: ');

//Получаем информацию о дисках

for i := 0 to 25 do

if (GetLogicalDrives and (1 shl i)) <> 0 then begin

Drive:=Char(Ord('A') + i) + ':\';

case GetDriveType(PChar(Drive)) of

DRIVE_REMOVABLE: WriteLn(F,Drive+' (гибкий диск)');

DRIVE_CDROM: WriteLn(F,Drive+' (CD-ROM)');

DRIVE_FIXED: begin

//находим серийный номер жесткого диска

new(SerialNum);

if getVolumeInformation(pChar(Drive),buffer,sizeof(buffer),SerialNum,a,a,nil,0) then

WriteLn(F,Drive+' (жесткий диск, S\N '+Inttostr(SerialNum^)+')');

end;

else WriteLn(F,Drive+' (неизвестный диск');

end;

end;

//информация о памяти

GlobalMemoryStatus(MS);

WriteLn(F,'Оперативная память: '+FormatFloat('#,###" KB"', MS.dwTotalPhys / 1024));

WriteLn(F,'Свободно на жестком диске: '+FormatFloat('#,###" байт"',DiskFree(3)));

//"3" указывает на диск C:\

WriteLn(F,'Объем жесткого диска: '+FormatFloat('#,###" байт"',DiskSize(3)));

WriteLn(F,'');

//узнаем об устройствах из System.ini

WriteLn(F,' Устройства:');

WriteLn(F,'Клавиатура: '+getDevice('boot.description','keyboard.typ'));

WriteLn(F,'Мышь: '+getDevice('boot.description','mouse.drv'));

WriteLn(F,'Дисплей: '+getDevice('boot.description','display.drv'));

WriteLn(F,'Хранитель экрана: '+getDevice('boot','SCRNSAVE.EXE'));

WriteLn(F,'');

//читаем системные папки из Реестра

WriteLn(F,' Системные папки:');

GetCurrentDirectory(SizeOf(buffer), buffer);

WriteLn(F,'Текущий каталог: '+buffer);

 

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Cache'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ConfigPath'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Cookies'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Desktop'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Favorites'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Fonts'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'History'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Local AppData'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'MediaPath'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'My Music'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'My Pictures'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'NetHood'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Personal'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'PrintHood'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'ProgramFilesDir'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'CommonFilesDir'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Programs'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Recent'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'SendTo'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Start Menu'));

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'StartUp'));

GetSystemDirectory(buffer, SizeOf(buffer));

WriteLn(F,'System: '+buffer);

GetTempPath(Sizeof(buffer),buffer);

WriteLn(F,'Temp: '+buffer);

WriteLn(F,WinInfo(HKEY_CURRENT_USER,folders,'Templates'));

WriteLn(F,WinInfo(HKEY_LOCAL_MACHINE,WinVers,'WallPaperDir'));

WriteLn(F,'Windows: '+WinDir);

Close(F); //отсоединяемся от файла

end.

 

 

 

 

 

 

 

2.1 Вывод данных на устройства через LPT. Подключение резистивного датчика к LPT порту.

В данном курсовом проекте мы собрали и подключили резистивный датчик координаты (рис. 1.) к LPT порту персонального компьютера.

 

Рис. 1. Резистивный датчик

 

Резистивный датчик, в зависимости от сопротивления, посылает определённое количество импульсов на 11й вход LPT порта. Программа в цикле за 0,1 секунды 10000 раз опрашивает LPT порт с помощью функции INP(889) из библиотеки inpout32.dll, и если на 11м входе записана единица, то в счётчик импульсов увеличивается на 1. Количество импульсов пришедших на LPT порт выводится в окно программы, и строится график их зависимости от времени.

 

Рис. 2. Пример работы программы.

 

Также мы собрали устройство, отображающее частотный спектр звукового потока в виде миганий светодиодов. Программа, предназначенная для этого, использует компонент TZSpectrView. Компонент TZSpectrView служит для визуального восприятия спектра аудиосигнала в реальном масштабе времени. Его можно использовать в различных проигрывателях аудио/видео файлов, рекордерах и других программах работы со звуком. Данный компонент является примером использования преобразования Фурье на практике.

Входным параметром для данного компонента является буфер с аудиоданными, частотой дискретизации 44100 герц и форматом 16 бит/семпл, стерео/моно. Длинна буфера фиксирована, может выбираться из нескольких значений 1024, 2048, 4096, 8192, 16384, 32768 семплов. Наша программа с помощью условного оперетора IF проверяет спектр аудиосигнала, и посылает через функцию OUT32(888,N) на LPT порт различные значения N, соответствующие частотным цветам спектра. А LPT порт передает это значение на соответствующий светодиод. 

Рис. 3. Визуализатор спектра.

 

 

ЗАКЛЮЧЕНИЕ

 

В наши дни использование LPT портов является важным аспектом для развития и создания новых устройств, подключаемых к персональному компьютеру. Начиная от лампочки и светодиодов, и заканчивая устройствами обработки звука и дополнительных функциональных блоков.

 

 

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

 

1.                           Акатов Р.В. Компьютерные измерения: Аналого-цифровой преобразователь. – "Учебная физика". – 1999. – N 3. – С. 48–64.

2.                           http://maier-rv.glazov.net/statiya14/otkr-ur.htm <27.04.2010>

3.                           http://www.pcports.ru/articles/10.php <22.04.2010>

4.                           http://www.delphikingdom.com/ <20.04.2010>



Информация о работе Проектирование ЛВС ethernet