Физический и канальный уровень Основное назначение физических уровней - обеспечение интерфейса с беспроводной средой передачи (с эфиром), а также оценка состояния эфира и взаимодействие с уровнем MAC. Физический уровень состоит из двух подуровней: – PLCP (Physical Layer Convergence Protocol) - выполняет процедуру отображения PDU уровня MAC во фрейм (отдельный, законченный документ) формата FHSS или DSSS. Эта процедура выполняет передачу, обнаружение несущей и прием сигнала; –PMD (Physical Medium Dependent) - "подуровень, зависящей от среды передачи". Этот уровень будет различным для разных скоростей передачи и разных стандартов из серии 802.11. Подуровень PMD обеспечивает данные и сервис для подуровня PLCP и функции радиопередачи и приема, результатом которых является поток данных, информация о времени, параметры приема. Таблица 9. Уровни модели OSI для Wi-Fi/IEEE 802.11 № уровня | OSI модель | Сеть | Функции | | Прикладной | - | - | | Уровень представления | - | - | | Сеансовый | - | - | | Транспортный | - | - | | Сетевой | - | - | | Канальный (передачи данных) | Подуровень LLC | - | Подуровень MAC | | Физический | Подуровень PLCP | Беспроводная передача, оценка состояния эфира | Подуровень PMD | Основным рабочим состоянием уровней PLCP является обнаружение несущей и оценка незанятости канала. Для выполнения передачи PLCP переключает PMD из режима "прием" в режим "передача" и посылает элемент данных PPDU (PLCP Data Unit). Физический уровень выполняет скремблирование (это обратимое преобразование цифрового потока без изменения скорости передачи с целью получения свойств случайной последовательности), кодирование и чередование. Передача сигналов по радиоканалу выполняется двумя методами: FHSS и DSSS. Суть метода FHSS – Frequency Hopping Spread Spectrum (псевдослучайная перестройка рабочей частоты –ППРЧ) заключается в периодическом скачкообразном изменении несущей частоты по некоторому алгоритму, известному приемнику и передатчику. Преимущество метода – простота реализации. Метод DSSS – Direct Sequence Spread Spectrum (расширение спектра методом прямой последовательности – ПРС) по эффективности превосходит ППРЧ, но сложнее в реализации. Суть метода заключается в повышении тактовой частоты модуляции, при этом каждому символу передаваемого сообщения ставится в соответствие некоторая достаточно длинная псевдослучайная последовательность (ПСП). При этом используется дифференциальная фазовая модуляция DBPSK и DQPSK с применением кодов Баркера, комплементарных кодов (CCK - Complementary Code Keying) и технологии двойного сверточного кодирования (PBCC). Wi-Fi 802.11g на скорости 1 и 2 Мбит/с использует модуляцию DBPSK. При скорости передачи 2 Мбит/с используются те же метод, что и при скорости 1 Мбит/с. Протокол 802.11b, использует дополнительно скорости передачи 5,5 и 11 Мбит/с. На этих скоростях передачи вместо кодов Баркера используются комплементарные коды (CCK). Wi-Fi использует метод доступа к сети CSMA/CA, в котором для снижения вероятность отказов использованы следующие принципы: – прежде, чем станция начнет передачу, она сообщает, как долго она будет занимать канал связи; – следующая станция не может начать передачу, пока не истечет зарезервированное ранее время; – участники сети не знают, принят ли их сигнал, пока не получат подтверждение об этом; – если две станции начали работать одновременно, они смогут узнать об этом только по тому факту, что не получат подтверждение о приеме; – если подтверждение не получено, участники сети выжидают случайный промежуток времени, чтобы начать повторную передачу. Предотвращение, а не обнаружение отказов, является основным в беспроводных сетях, поскольку в них, в отличие от проводных сетей, передатчик трансивера заглушает принимаемый сигнал. Формат фрейма на уровне PLCP модели OSI (табл. 9) в режиме FHSS показан на рис. 2.44.  Рис. 42. Формат фрейма PLCP для режима FHSS Он состоит из следующих полей: – "Синхрониз." – содержит чередующиеся нули и единицы. Служит для подстройки частоты на принимающей станции, синхронизирует распределение пакетов и позволяет выбрать антенну (при наличии нескольких антенн); – "Старт" – флаг начала фрейма. Состоит из строки 0000 1100 1011 1101, которая служит для синхронизации фреймов на принимающей станции; – " PLW" – "Psdu Length Word" – "слово длины служебного элемента данных PLCP", PSDU – "PLCP Service Data Unit" - элемент данных подуровня PLCP; указывает размер фрейма, поступившего с уровня MAC, в октетах; – "Скорость" – указывает скорость передачи данных фрейма; – "КС" – контрольная сумма; – "MAC-фрейм" – фрейм, поступивший с MAC-уровня модели OSI и содержащий PSDU; – "Заголовок PLCP" – поля, добавленные на подуровне PLCP. Формат фрейма на уровне PLCP модели OSI (табл. 9) в режиме DSSS показан на рис.43.  Рис. 43. Формат фрейма PLCP для режима DSSS В нем поля имеют следующий смысл: – "Синхрониз." – содержит только единицы и обеспечивает синхронизацию в приемной станции; – "Старт" – флаг начала фрейма. Содержит строку 0 xF3A0, которая указывает начало передачи параметров, зависящих от физического уровня; – "Сигнал" – указывает тип модуляции и скорость передачи данного фрейма; – "Сервис" – зарезервировано для будущих модификаций стандарта; – "Длина" – указывает время в микросекундах, необходимое для передачи MAC-фрейма; – "КС" – контрольная сумма; – "MAC-фрейм" – фрейм, поступивший с MAC-уровня модели OSI и содержащий PSDU; – "Заголовок PLCP" – поля, добавленные на подуровне PLCP. Дальность связи средствами Wi-Fi сильно зависит от условий распространения электромагнитных волн, типа антенны и мощности передатчика. Типовые значения, указываемые изготовителями Wi-Fi оборудования, составляют 100-200 м в помещении и до нескольких километров на открытой местности с применением внешней антенны и при мощности передатчика 50...100 мВт. Вместе с тем, по сообщению германского еженедельника "Сomputerwoche" во время соревнований по дальности связи была зафиксирована связь на расстоянии 89 км с применением стандартного оборудования Wi-Fi стандарта IEEE 802.11b (2,4 ГГц) и спутниковых антенн ("тарелок"). В книге рекордов Гиннеса зафиксирована также Wi-Fi связь на расстоянии 310 км с применением антенн, поднятых на большую высоту с помощью воздушных шаров В табл. 10 приведены основные параметры двух рассмотренных беспроводных технологий, которые нашли широкого применения в промышленности. Таблица 9. Уровни модели OSI для Wi-Fi/IEEE 802.11 Параметр | Bluetooth/IEEE 802.15.1 | Wi-Fi/IEEE 802.11 | Дальность | ~10 (50-100) м | ~100 м | Скорость передачи | 723 Кбит/с | 1...2 Мбит/с, до 54 Мбит/с | Макс. количество участников сети | | Не ограничено | Потребляемая мощность | 10 мВт | 50 мВт | Продолжительность работы от двух батарей размера АА | - | - | Цена /Сложность (условные единицы) | | | Повторная передача | Есть | DCF – нет; PCF и HCF – есть, | Основное назначение | Связь периферии с компьютером | Беспроводное расширение Ethernet | Порядок выполнения работы 1. Настройка компьютеров.В данной лабораторной работе подразумевается, что оба компьютера оборудованы адаптерами беспроводной связи Wi-Fi и используют операционную систему Windows 7 Professional. Для того, чтобы объединить два и более компьютеров в беспроводную сеть, необходимо выделить один ПК в качестве "хоста", к которому будут подключаться остальныекомпьютеры. В дальнейшем будем называть его хост-машиной, а второй компьютер – клиентом. Вначале необходимо сконфигурировать хост-машину – создать беспроводное подключение. Для этого следует перейти по адресу: Панель управления -> Центр управления сетями и общим доступом -> Управление беспроводными сетями (Control Panel -> Network and Sharing Center -> Manage Wireless Network) – и нажать на кнопку "Добавить (Add)" (рис. 44).  Рис. 44. Создание беспроводного подключения В появившемся окне "Подключение к беспроводной сети вручную" (Manually connect to a wireless network) выбрать пункт "Создать сеть "компьютер-компьютер" (Create an ad hoc network) (рис. 45). В следующем окне необходимо ввести информацию о создаваемом подключении: имя сети, тип и ключ безопасности. В данном случае имя сети будет IPULR6, без запроса ключа безопасности (рис. 46). После нажатия кнопки Next будет сообщено об удачном создании новой сети, в чем можно убедиться, открыв окно "Управление беспроводными сетями" (рис. 47).  Рис. 45. Действие "Создать сеть "компьютер-компьютер  Рис. 46. Информация о создаваемом подключении  Рис. 47. Окно "Управление беспроводными сетями" Кликнув на значок Connections в системном трее, можно увидеть сеть, доступную для подключения (рис. 48).  Рис. 48. сеть, доступная для подключения Теперь необходимо настроить непосредственно адаптер беспроводной связи, для этого необходимо перейти по адресу: Панель управления -> Центр управления сетями и общим доступом -> Изменение параметров адаптера (Control Panel -> Network and Sharing Center -> Change adapter settings). В открывшемся окне нужно выбрать пункт "Свойства" контекстного меню Беспроводного сетевого соединения, "привязанного" к адаптеру Wi-Fi. В свойствах необходимо прописать IP- адрес и маску подсети данного компьютера (рис. 49).  Рис. 49. Определение IP- адрес и маску подсети Аналогичные настройки с присвоением IP-адреса следует проделать и для клиентской машины, но присвоить ей другой IP-адрес указанной подсети (в данном случае 192.168.0.2) На этом настройка компьютеров окончена. 2. Соединение компьютеров.Для того чтобы подключить клиент к хост-машине, необходимо на компьютере-клиенте кликнуть на значок Connections в системном трее (Рисунок 5), выбрать созданное ранее подключение (IPULR6) и нажать на кнопку "Подключение". Убедиться в том, что оба компьютера теперь действительно объединены в сеть, можно с помощью команды Ping командной строки Windows (рис. 50).  Рис. 50. Команды Ping командной строки Windows 3. Передача данных.Чтобы передавать данные между компьютерами, нужно открыть общий доступ к папкам. Сделать это можно в меню "Свойства -> Доступ" необходимой папки. Далее необходимо перейти в Сетевое окружение компьютера, выбрать компьютер, ресурсы которого требуется передать, и произвести передачу данных простым копированием файлов и папок (рис.51).  Рис. 51. Передача данных Если находящийся в сети компьютер не отображается в окне сетевого подключения, то на нем нужно произвести дополнительные настройки обнаружения и доступа в сети по адресу: Control Panel\All Control Panel Items\Network and Sharing Center\Advanced sharing settings. Контрольные вопросы: 1. Основное назначение технологии Wi-Fi? 2. Архитектура сети Wi-Fi? 3. Сетевые модели OSI и IEEE Project 802? 4. Физический и канальный уровень OSI модели? 5. Методы передачи сигналов по радиоканалу? 6. Формат фрейма PLCP для режима FHSS? 7. Формат фрейма PLCP для режима DSSS? 8. Основные параметры беспроводных технологий? Список литературы 1. Бонкарев Ю. М. SCSI – перспективный стандарт В/В. // Приборы и системы управления, 1992, N6. - 12-16 с. 2. Вишняков В.А. Периферийные устройства: Учебное пособие. – Рыбинск, РГАТА, 2001. 3. Вишняков В.А., Беляев О.А. Универсальная последовательная шина USB: Пособие. – Рыбинск, РГАТА, 2004. 4. Гук М. Аппаратные интерфейсы ПК. Энциклопедия. – СПб.: Питер, 2003. 5. Гук М. Аппаратные средства локальных сетей. Энциклопедия. – СПб.: Питер, 2004. 6. Интерфейс для программируемых приборов в системах автоматизации эксперимента/ Н. И. Гореликов, А. Н. Домарацкий Л. С. Ситников и др. М. : Наука, 1981. – 262 с. 7. Колесниченко О.В., Шишигин И.В. Аппаратные средства PC. – СПб.: БХВ – Петербург, 2004. 8. Ларионов А.М., Горнец П.П. Периферийные устройства в вычислительных системах. – М.: Высшая школа, 1991. 9. Мячев А. А. и др. Интерфейсы систем обработки данных: Справочник /А. А. Мячев, В. U Степанов, В. К. Щербо; Под ред. А. А. Мячева. М.: Радио и связь, 1989. – 160 с. 10. Пескова С.А., Гуров А.И., Кузин А.В. Центральные и периферийные устройства электронных вычислительных средств. – М.: Радио и связь, 2000. 11. Сопряжение датчиков и устройств ввода данных с компьютерами IBM PC: Пер. с англ. / Под ред. У. Томкинса, Дж. Уэбстера. М. : №ip, 1992. - 592 с. Приложение Листинг программы. unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm2 = class(TForm) Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; Button1: TButton; Button2: TButton; Button3: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } procedure init; procedure kill; procedure write(A:string); procedure read; end; var Form2: TForm2; CommHandle : integer; DCB : TDCB; Ovr : TOverlapped; Stat : TComStat; CommThread : THandle; hEvent : THandle; Flag,StopResive : boolean; KolByte,Kols,Mask,TransMask,Errs : DWord; implementation {$R *.dfm} { TForm2 } procedure TForm2.Button1Click(Sender: TObject); begin init; end; procedure TForm2.Button2Click(Sender: TObject); begin kill; end; procedure TForm2.Button3Click(Sender: TObject); begin write(Edit1.Text); end; procedure TForm2.init; var ThreadID:dword; begin //создание и иницализация порта KolByte:=0; //создание порта и получение его хэндла CommHandle := CreateFile('COM1',GENERIC_READ or GENERIC_WRITE,0,nil,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,0); //ставим маску - "по пришествии определенного символа" SetCommMask(CommHandle,EV_RXFLAG); //построение DCB GetCommState(CommHandle,DCB); DCB.BaudRate:=CBR_57600; DCB.Parity:=NOPARITY; DCB.ByteSize:=8; DCB.StopBits:=OneStopBit; DCB.EvtChar:=chr(13);//задание символа для флага //устанавливаем DCB SetCommState(CommHandle,DCB); //создаем паралельный поток //там будет вертеться процедура приема строки //с порта - ReadComm CommThread := CreateThread(nil,0,@TForm2.read ,nil,0,ThreadID); end; procedure TForm2.kill; begin TerminateThread(CommThread,0); CloseHandle(CommHandle); end; procedure TForm2.read; var Resive:array [0..255] of char; buffer:string; begin while true do begin TransMask:=0; WaitCommEvent(CommHandle,TransMask,@Ovr); //ждем if (TransMask and EV_RXFLAG)=EV_RXFLAG then //проверяем нужное событие begin ClearCommError(CommHandle,Errs,@Stat);//сбрасываем флаг Kols := Stat.cbInQue; SetLength(buffer,Kols); ReadFile(CommHandle,buffer[1],Kols,Kols,@Ovr);//читаем SetLength(buffer,Kols); //тут должна идти обработка принятой информации из Resive Form2.Edit2.Text:=buffer; buffer:=''; //не очень хороший вариант вывода, но для примера подойдет //TransMask:=0; end;//mask end;//while } end; procedure TForm2.write(A: string); var i:integer; Transmit:array [0..255] of char; begin //послать один символ в порт KolByte:=255; Transmit[0]:=chr(13); for i:= 1 to 254 do begin Transmit[I]:=A[i]; end; // Transmit[1]:=chr(A); WriteFile(CommHandle,Transmit,KolByte,KolByte,@Ovr); end; Учебное издание ЛАБОРАТОРНЫЙ ПРАКТИКУМ к лабораторным работам по дисциплине «Интерфейсы периферийных устройств», «Периферийные устройства» для студентов специальности 230101 «Вычислительные машины, комплексы, системы и сети» всех форм обучения Составитель: СолнцевРоман Вячеславович Компьютерный набор Р. В. Солнцева Подписано в печать 00.00.2012 г. Формат 60˟84/16. Бумага для множительных аппаратов. Усл. печ. л. 0,0. Тираж 00 экз. Заказ № 00 Международный институт компьютерных технологий 394026, Воронеж, ул. Солнечная, 29б |