Текст
                    Дж. Ир.ин
д. Харпь


ПЕР Ч HHblX
Т .
..
ЕН I ПОДХОД
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


MHoroYPoBHeBbI8 коммуникационные
модели


КриптоrрафИII и защита данных


Сети: конфиrурвция, тополоrИII,
маршрутизвция


Среда передачи и управление
доступом


УЧЕБНОЕ ПОСОБИЕ


, v





Джеймс Ирвин, Дэвид Харль ПЕРЕДАЧА ДАННЫХ В СЕТЯХ: ИНЖЕНЕРНЫИ ПОДХОД СанктПетербурr сБХВПетербурr. 2003 
Джеймс Ирвин, Дэвид Харль ПЕРЕДАЧА ДАННЫХ В СЕТЯХ: ИНЖЕНЕРНЫИ ПОДХОД Санкт Петербурr сБХВ Петербурr. 2003
УДК 681.3.06 ББК 32.973.202 И.77 ИР.ИН Дж.. Харпь д. И77 Передача данных в сетях: инженерный подход: Пер. с анrл. СПб.: БХВ Петербурr, 2003. 448 с.: ил. ISBN 5--94157 11 5 в книre рассмmpиваются современные системы передачи данных с ТОЧКИ зрения орraнизации взаимо действия соответствующих сетеВЫХ служб и техники связи, подробно исследуется влияние требований пользовareлeй на сетевой проеlCf. Сначала даны принципы и технолоrnи, связанные с сетевой структурой В целом и иерархией ее КОМIЮнеlП'OВ вepxнero уроВИЯ, затем проблемы уроВНЯ канала передачи данных и, наконец. К/lючевые прииципы, обеспечивающие передачу ицциви,дуальных ннформационных бlПOВ. При вcwm:я примеры действующих систем, И1U1ЮС1Рирующие, как изложенные концепu.ии комбинируются на пpaкrике при построенни целocrnой службы. В книre содержатся вопросы, снабженные обстоятельными arвeraми, и 3ЦЦIUfИЯ по всем основным темам. для студентов, аспирантов и спеЦUШIистов в области телекоммуникационных систем УДК 681.3.06 ББК 32.973.202 Срynna DОдroтoвки И3ДаНИJl: fлавный peдalCfop Екатерина Кондукова Зав. редакцией Анна Кузьмина Перевод с анrлийскоrо Борис Желваков РедаlCfОр fpuzopuu Добин Компьютерная верстка Татьяны Олоновой Koppeкrop Вера Александрова Дизайн облоЖJ(И Иzоря Цырульникова Зав. производством Николай Тверских А11 rights reselVed. Authorized translation from the English language edition pubIished ьу John Wi11ey & Sons, Ш. No part of this book тау ье reproduced or transmitted in апу form or Ьу апу теаns, electronic or mechanica1, including photocopying, recording or Ьу апу information storage retrieval system, without permission fcom the PubIisher. Russian language edition pubIished Ьу BHV St. Petersburg. Все права защищены. Aвrоризованный перевод анrлийской редакции, выпущенной John Willey & Sons, Ш. Никакая часть настоящей книrи не может быть воспроизведена или передана в какой бы то ни было форме и какими бы то ни было средствами, будь то злекrpонные или механические, ВКЛЮчая фотокопирование и запись на маrнитный носитель, если на то нет письменноro разреше иия издательства. Русская редакция выпущена "БХВ Петербурr". Лицензия ид не 02429 от 24.07.00. Подписано в печать 25.01.02. Формат70х1оо 1 /18. Печать офсетная. Уел. печ. л. 36,12. Тираж 4000 ЭКЭ. Заказ 4014 "БХВ.Петербурr", 198005, Санкт Петербуpr, Измайловекий пр., 29. rиrwжИЧ6СК08 заключен е на продукцwo, ТOВ8J), не 71.99.1.953.П.950.3.99 от 01.03.1999 r. выдано Департаментом rсэн Минздрава России. Оmечатано с rOToBblX диапозитивов в Академической тиnоrpафии .Наука" РАН 199034, Санкт-Петербуpr, 9 линия, 12. ISBN 0-471 80872-5 (аиrл.) ci 2002 Ьу John Wllcy &. Soпs, Ltd Вaffins Lane, Cbichester West SusseJ(, РО19 100. Eag\8nd ci Перевод на русскиЙ А3ЫК, офоРNJIение .БХВ Петербур"', 2003 ISBN 5-94157 1l3-S
Содержание СОкращения ..................................................................................................................... VII 1JpeдислоВие.................................................................................................................XXXI f rлава 1. Коммуникационные системы ............................................................................1 1.1. Обзор ................... ............. .......... .......... ................ ..................... ......... ............. ...........1 ,1.2. Декомпозиция коммуникационных систем ........................................................2 1.3. MHoroypoBHeBbIe коммуникационные архитектуры ........................................4 1.3.1. Потребность в стандартах ................................................................................5 1.3.2. Эталонная модель Internet ............................: .'................................................ 7 1.3.3. Эталонная модель взаимодействия открытых систем ................................7 1.4. Структура книrи ....................................................................................................1 О , ,i1aвa 2. С точки зрения пользователя ..........................................................................19 2.1. данныe пользователя ............................................................................................19 2.2. Введение в теорию информации ..........................................................................19 2.2.1. Количество информации.................................................................................19 , 2.2.2. Взаимная информация... ............... .................................... .......... .......... ..... .... ..22 "2.3. Источники информации .......................................................................................23 2.4. Кодирование.. .... ............................ .......... ............................ ........... ...... ......... ...... ...24 2.4.1. Свойства кодов .................................................................................................24 2.4.2. Минимальные разрядности кода... ....................... ............................. ........... .26 2.4.3. Избыточность и эффективность ....................................................................26 2.4.4. Типы кодирования ...........................................................................................26 2.5. Кодирование источника .......................................................................................27 2.5.1. Квантование .............. .................. ........................................ .............. ...... ......... ..27 2.5.2. Точность квантования .....................................................................................28 2.5.3. Частота дискретизации ............ .............. ... ........ ........ ............ .... ............... .... ...29 2.5.4. Ряды Фурье .... ...... ......... .......... ............................... ....... ..... .... .................... .... ....30 2.5.5. Вычисление частотноrо спектра .............. ................ ....... ............. ..................30
V/II СодвржаIOf! 2.5.6. Частотный спектр ...............................................................................................32 2.5.7. Минимальная скорость выборки................ .................. ......... .................... ........34 2.5.8. Импульсно-кодовая модуляция (ИКМ) ............................................................34 2.5.9. Кодирование источников без памяти ...............................................................35 Кодирование Шеннона-Фано ...................................................................................35 Кодирование Хаффмана ......... ....................... ......... ................... ......... .................. .... 35 2.5.10. Кодирование источников с памятью ..............................................................37 Подавление нулей ................... .... '" ...... ........ ........ ......... ................. ......... ......... ..... .,. ..3 8 rрупповое кодирование ............................................................................................38 Подстановка образцов....... ......... ............................................................................... 3 8 Диффереициальиое сжатие.......................................................................................39 Сжатие на основе преобразования.......... .................... ........ ....... ................ ..............39 Векторное квантование .............................................................................................39 Примеры сжатия ........................................................................................................40 Практическое сжатие  JPEG .................................................................................41 2.6. Вопросы к rлаве......................................................................................................42 2.6.1. Вопросы по теории информации ......................................................................42 2.6.2. Вопросы по кодированию источника без памятн...........................................43 2.6.3. Вопросы по кодированию источника с паМятью.............................................44 rлава 3. С точки зрения защиты ....................................................................................47 3.1. Введение ............ ................ .......... ........ .......... ............ ................ ..... ...................... ....47 3.2. Криптоrpафические типы........... ........................... .............................. ..... ............47 3.2.1. рассеивание..................... ................ ................ .................. .................... .... ..........48 3.2.2. Перемешивание ..................................................................................................50 3.3. Криптоrpафические сценарии......... ...... .............. .......... ........ ...............................5 1 3.4. Системы с частными ключами.............................................................................52 3.4: 1. Введение ........................................... ...... .................. .................................... ......52 3.4.2. Перестановочные шифры.. ........... ................ ......... ............................ ............... .52 3.4.3. Трансформационные шифры ....... ...... ................ ............ ...................... ............ .53 Моноалфавитный шифр ............................................................................................53 Полиалфавитный шифр ...... ...................................................................................... 5 5 3:4.4. Одноразовое заполнение ...................................................................................56 3.4.5. Кодировщики со сдвиrовым pemcтpoM ...........................................................56 3.4.6. Продукционные шифры.....................................................................................57 DES ............................................................................................................................. 5 8 Расширенный стандарт шифрования (AES)............................................................60 3.4.7. Поточные шифры ...............................................................................................61 3.5. Криптосистемы с общим ключом .......................................................................64 3.5.1. Проблема распределения ключей .....................................................................64 3.5.2. Односторонние функции ...................................................................................65 3 .5.з. Ключевой обмен Диффи- Хеллмана ................................................................. .67 3.5.4. Криптосистема RSA (Rivest, Shamir, Adleman)..............................................68 
!Содержание /Х 3.6. Идентификация .. .... ...... ...... ...... ...... ............................... .............. .............. ............. 70 3.6.1. Введение...... .......... ....... .... .... ................ ........... ... ... ... ..... ................ ....... ...............70 , 3.6.2. Целостность. .......... ........ ............ ....... ..... ........ ... ........ ..... .... ....... ..... ......... ....... .....70 3.6.3. Идентификация ................. ................ ...... ............ ..... ......... .... ............ ..... ...... .......73 3.6.4. Цифровые подписи............................................................................................. 75 . 3.7. Друrие криптоrрафические протоколы .............................................................75 . 3.7.1. Удаленное бросание монеты ............................................................................. 75 ; 3.7.2. Неосознанная передача...................................................................................... 77 3.8. П рактическая защита.................... ........ ........... ........ ......... ...... ....... ....... .... ... .........79 3.8.1. Какова необходимая степень защиты? .............................................................79 3.8.2. Проверка полномочий........................................................................................80 3.8.3. Аварийные сиryации. ..... .............. ........ ......... ........ ... ....... ................ ....... ..... .......80 3.8.4. Человеческий фактор........................... ..... .............. ...................... .............. ....... 81 3.9. Вопросы к rлаве....................................:.................................................................81 rлава 4. С ТОЧКИ зреИИЯ сетей.........................................................................................83 4.1. Введение. ......... ............................... ........ ........... ...... ............. ........... .................... ..... 83 4.2. Сетевые конфиrурации .........................................................................................84 4.2.1. Сетевая тополоrия..................... ...... .... ....................... ......... .............. ......... .... ....87 Сеточная тополоrия...................................................................................................87 Звездообразная тополоrия ............ ...... .......... ... ................ ........... ....... ... .... ................87 Кольцевая тополоrия.................................................................................................88 Шинная тополоrия.....................................................................................................89 4.2.2. Связность.......... ....... ........................ ............ ....:-::............. ......... .... ... ......... ..........90 Алrоритм Клейтмана.................................................................................................92 Алrоритм ивена........................................................................................................94 4.3. Размер сети............................ ................. ..... ...... .... ......... .............. ....... .............. ......95 4.3.1. rлобальные сети.... ............ ...................... ............. .............. ........ .................. ......96 4.3 .2. Рrиональные сети... .... .......................... ......... ................... ........... ..... ................96 4.3.3. Локальные сети.. ....... ........... ...... ................. ...... ...... ........ .................. ..... ...... ....... 96 4.4. Типы коммутации .... ..................... .............. ................... ......... ... ............................ 97 4.4.1. Коммутация каналов ..........................................................................................98 4.4.2. Коммутация пакетов ..... ... ......................... ........ ............. .................... ......... .......99 Коммутация дейтаrpамм ................ ........ .... ..... ...... ............ ........... ....... ........... ..... ....1 О 1 Виртуальные каналы.................. .... .................... .... ............ ............. ....... ....... ..........1 О 1 4.5. Качество работы сетевых служб........................................................................102 4.5.1. Параметры качества обслуживания, не связанные с производительностью. .......... ........ ... ......... ........ ...... ..................... ........ ........1 03 4.5.2. Параметры качества обслуживания, связанные с производительностью..................................................................................1 03 4.6. Пропускная способность сетей ..........................................................................1 05 4.6.1. Пропускная способность сетей с коммутацией каналов.............................. 1 05 4.6.2. Пропускная способность систем с коммутацией пакетов............................l 09 4.7. Свойства звеНьев передачи данных ..................................................................117 4.8. Межсетевые взаимодействия ............... ......... ...................... ... ............................ .118 4.8.1. ПоВторители.......... ........... ......... ........ ............. ....................... .................... ........119 
х Содержание 4.8.2. Мосты ............................... ..................................................... ........................ ....119 4.8.3. Маршрутизаторы ..... .... ................................ ..... ....... ........... ... .... .., ............ ....... .120 4.8.4. Шлюзы BLIcoKoro уровня .................................................................................120 4.9. Маршрутизация......... ................... ...... ...... ......... ....... ...... ....... ...... ......... ... .......... ...121 4.9.1. Наикратчайший путь........................................................................................ 123 Алroритм Дейкстры ................................................................................................124 4.9.2. Лавинная маршрутизация ....................... .... ............. ........................................127 4.9.3. Распределенная маршрутизация .....................................................................128 Маршрутизация по вектору расстояния ................................................................128 Маршрутизация по состоянию связей ...................................................................129 4.9.4. Широковещательная маршрутизация .............................................................1 3 1 . 4.10. Переrpузка. ........ ........... ................. .......... ............. ....Н.. ........ ......... ........... ...... .....1 32 4.10.1. Управление на входе ......................................................................................1 33 4.10.2. Сброс заrpузки ................................................................................................1 33 4.10.3. Управление потоками данных....................................................................... 1 34 4.11. Защита от ошибок..............................................................................................134 4.11.1. Обнаружение ошибок ....................................................................................135 4.11.2. ARQ .................................................................................................................1 37 4.12 Службы тpaHcnopTHoro уровня ........................................................................144 4.12.1. Адресация .......................................................................................................145 Иерархическая адресация ............ ...... .............. ........... ................ ......... ................. ..146 Сплошная адресация .. ........................................ ......................... .............. ...... ....... .146 Протокол начальноrо соединения.................. ................... ................. ................... .146 4.12.2. Классы транспортных служб OSI .................................................................147 4.12.3. Классы транспортных служб Intemet............................................................148 Протокол пользовательских дейтаrpамм .....................................Н.......................149 Протокол управления передачей (ТСР).................................................................150 CerMeHT ТСР .............................. ............................ ............... ........... ......... ...... ......... 151 4.13. Протокол Internet (IP) .......................................................................................155 4.13.1. Формат IРпакета............................................................................................155 4.13.2. Адресация ........................................... ........ ............. ............... ............. ...... .....158 4.13.3. Подсети ......................... ..................... ........ ........... ....................... ............. ......159 4.13.4. Бесклассовая адресация .................................................................................161 4.13.5. Служба доменных имен .................................................................................162 4.1 3.6. IРМаршрутизациll ................. ............ .......... ................. ............. ................... ..167 4.13.7. IРпротокол версии 6 (IPv6) ..........................................................................168 4.14. Качество обслуживания на IP ..........................................................................171 4.14.1. Интеrpированные службы .............................................................................171 4.14.2. Протокол резервирования ресурсов ............................................................172 4.14.3. Дифференцированные службы...................................................................... 173 Переключение миоrопротокольной метки............................................................ 176 4.15. Вопросы к rлаВе..................................................................................................177 4.15.1. Вопросы по сетевым конфиryрациям...........................................................177 4.15.2. Вопросы по технике коммутации .................................................................178 4.15.3. Вопросы по расчетам в сетях ........................................................................178 
Содвржан",в Х/ 4.15.4. Вопросы по маршрутизации..........................................................................179 4.15.5. Вопросы по защите от ошибок......................................................................180 Fлава 5. С ТОЧКИ зрения зВена.......................................................................................183 5.1. Уровень звена данных .........................................................................................183 5.2. Разrpаничение кадров .........................................................................................184 5.3. Управление доступом к среде передачи ..........................................................185 5.3.1. Схемы с состязаниями .....................................................................................186 ALOHA .....................................................................................................................186 Квантованная ALOНA.............................................................................................187 Множественный доступ с контролем несущей . Обнаружением столкновений (CSMNCD) ..................................................................187 .. 5.3.2. Схемы с резервированием .................,.............................................................190 Опрос..............:..... ............. .......................... ................... ..... ....... ....... ......... ......... .....190 Схемы с маркерами .................................................................................................191 5.3.3. Сравнение методов доступа ............................................................................196 '5.4. Кодирование канала.... ..................... ........ ..................... .......... .... ........................ 197 . 5.4.1. Вероятность ошибки ........................................................................................200 5.4.2. Построение кодов с исправлением ошбок ...................................................201 Коды с повторениями............. ........ ..................... ....... ................. ........................... .20 1 Код с одним разрядом контроля четности ............................................................201 Код хемминra.................. .......... .............................. ........ ..... ......... .... ....... ......... ......202 5.4.3. Линейные коды............... '" ............ ................... :.11...... ............. ....... .................. ..203 Матричная форма кодов Хемминrа .......................................................................204 Циклические коды ...................................................................................................205 Пример линейноro кода: расширенный код Хемминrа .......................................206 5.4.4. Сверточные коды...................................................;..........................................208 5.4.5. Чередование.. .......... ..... ........ .... .............. ..... ........ .... ......... ...... ............ .... ......... ..212 5.4.6. Объединение кодов......... .................. ....... ...... .................................. ............... .213 Композиционные коды ............................ ............................... ........... .................... .213 Каскадные коды............................. .................. ................... ........... ............... ........... .214 Турбокоды ..............................................................................................................216 .5.5. Сравнение методов коррекции ошибок ...........................................................217 5.6. Локальные сети.......... ........................... ........... ............................................. ........218 5.6.1. Конфиryрации локальных сетей .....................................................................219 5.6.2. Локальные сети rpуппы стандартов ШЕЕ 802..............................................220 5.6.3. Адресация устройств........................................................................................222 Протокол преобразования адресов............... ....................................................... ..222 Обратный протокол преобразования aдPlicoB.......................................................223 5.6.4. Локальная сеть ШЕЕ 802.3 (Ethemet)..............................................................224 5.6.5. Высокоскоростные сети Ethemet ....................................................................226 Изохронная Ethemet ..............................................................................................226 Быстрая Ethemet .....................................................................................................227 rиrабитная Ethemet ...............................................................................................228 ] Оrиrаб итная Ethemet.. ..... .... ........... ........ .......... ......... ............ ........... ................... .23 ] 
Х// Содержание 5.6.6. Локальные сети IEEt Token Ring (Маркерное кольцо)...............................232 5.6.7. Стандарт ШЕЕ 802.11 Wireless LAN (Беспроводные локальные сети) ......... .... .... ........ ............... ..... .... ....... ........... ............................233 Управление ДОС1Упом к среде ................................................................................234 Конфиrypации..........................................................................................................235 5.7. Соединение локальных сетей .............................................................................235 5.7.1. Повторители... ................ ...... .......... .... ...... ........ .......................... .......................236 5.7.2. Мосты .................................................................................................................237 Прозрачные мосты ..................................................................................................237 Алrоритм дерева охвата..........................................................................................238 "Мост с маршрутизацией от источника ..................................................................239 5.8. Протоколы rлобальных сетей............................................................................240 5.8.1. Стандарты SDНlSONET ..................................................................................240 5.8.2 Режим асинхронной передачи (А ТМ) .............................................................241 Службы А ТМ ...........................................................................................................242 Стек протоколов А ТМ ............................................................................................243 Передача А ТМ ........ ...................... ....................................... .... ............. ...... ... ........ ..245 Контракт А ТМтрафика ..........................................................................................246 Контроль параметра использования ......................................................................247 Коммутация в А ТМ . ............. ............................. .... ......... ...... ........ ..... ...... ......... ...... .248 Поля А ТМЯчейки ...................................................................................................250 5.9. IР-транспортировка в rлобальных сетях .........................................................252 5.9.1. Двухточечный протокол.. ......... .......... ........ ............. .............. ........... ...... ...... ...252 5.9.2. IP и SDНlSONET .............................................................................................254 5.9.3. IP и А ТМ .., ................. ........................ .............. ............. ............ ..... ............. ......254 АRP-протокол ДЛЯ IР! А ТМ .................................. ............ ................ .... ....... ........ ....255 5.10. Реrиональные сети ............ ............. ........................... .......... ........ ...... ....... ..........256 5.10.1. Интерфейс передачи данных по оnтоволокну ............................................257 Работа MAC-урОВНЯ FDDI......................................................................................260 Производительность FDDI .....................................................................................262 5.10.2. Двойная шина с распределенной очередью .............................................:...263 5.11. Вопросы к rлаве..................................................................................................268 5.11.1. Вопросы по линейным кодам ........................................................................268 5.11.2. Вопросы по сверточным Кодам.....................................................................270 5ll.3. Вопросы по локальным и реrиональным сетям...........................................272 ,ава 6. С точкн зрения канала передачн..................................................................273 5.1. Введение................... .................. ...... ..................................................................... .273 >.2. Пропускная способность канала..................................... .... .......... ........... .... .....273 6.2.1. Дискретный канал без памяти .........................................................................273 6.2.2. Проnyскная способность дискретноrо канала без памяТи...........................275 6.2.3. Теорема кодирования канала ........................................... ...............................276 6.2.4. Аналоrовые каналы  теорема о проnyскной способности канала... ...... ..... ................................... ............................................................ .277 
2'держание 6.3. Передающая среда...............................................................................................278 6.3 .1. Про водная среда. ........ ..... ... ..... ........ ...... ...... ..... .......... ... ..... ........... ....... ..... ..... ..278 6.3.2. Оптическое волокно ....... ........ ............ .... ....... .... .................... ................... ... .....281 6.3.3. Радиоэфир . ....... ...... ............ ........ ................ ........... .... ................. ................ ..... ..285 Радиовещание ..........................................................................................................285 Двухточечная радиосвязь между терминалами ....................................................287 Мобильное радио.....................................................................................................288 Спутник ....................................................................................................................290 Самолетный ретранслятор ......................................................................................292 6.3.4. Друrие виды передающих сред.......................................................................292 Инфракрасная среда ................................................................................................292 Индуктивные контуры ............................................................................................293 Линии электропередач ............................................................................................293 6.4. Кодирование в линиях связи ....................:.........................................................294 6.4.1. Двоичные линейные коды ...............................................................................295 Униполярные коды с возвратом и без возврата к нулю.......................................295 Биполярные коды с возвратом и без возврата к нулю..........................................296 Биполярный код с чередующейся инверсией маркеров......................................296 Манчестерский код..................................................................................................297 Модуляция с задержкой (Код Миллара)................................................................297 Кодирование с инверсией кодовых посылок ........................................................298 Расщепление по фазе........ ............... ...... ........ ........... ..... ..... ...... ........... ....... ....... ..... .298 Бифазиый код...............................................................,"'.........................................299 Двоичный код с замещением N нулей .....................................................................299 6.4.2. MHoroypoBHeBbIe коды .......... .................... ....... ................ ................ ....... ... ......30 1 6.4.3. Перемешивание ................................................................................................304 6.4.4. Пример применения линейноro кодирования...............................................306 6.5. Модуляция.............................................................................................................307 6.5.1. Введение............................................................................................................307 6.5.2. Множественный доступ ...................................................................................308 Множественный доступ с частотным разделением канала.................................309 Множественный доступ с временным разделением канала ...............................311 Комбинация FDM и TDM .......................................................................................313 6.5.3. Цифровая модуляция .......................................................................................314 Типы модуляции ......................................................................................................314 Формирование импульсов ... ........................ ........ .................. ... ............... ....... ....... .315 Амплитудная манипуляция (ASK) .........................................................................317 Частотная манипуляция (FSK) ...............................................................................319 Минимальная частотная манипуляция (MSK) ......................................................320 Двоичная фазовая манипуляция (BPSK) ...............................................................320 Дифференциальная фазовая манипуляция (DPSK) ..............................................320 Квадратурная фазовая манипуляция (QPSK) ........................................................321 mарная фазовая манипуляция (mary PSK) ..........................................................323 Квадратурная амплитудная модуляция (QAM).....................................................323 Х/II 
X/V Содержание 6.6. Пример применения: ADSL................................................................................327 6.7. Вопросы к rлаве....... ...... ........ ........... .......... ........... ............ ... ............. ...... .............330 6.6.1. Вопросы по пропускной способности канала...............................................330 rлава 7. СоеДИИИМ все вместе .......................................................................................333 7.1. Введение ............... ........ '" ...................................................... .......................... ...... .333 7.2. Мобильная телефонная система GsM..............................................................333 7.2.1. Передающая среда............................................................................................333 7.2.2. Кодированне и модуляция..... ...... .............. .... ............. ....... .... ......... ..... ...... ......333 7.2.3. Управление средой доступа.. ......... ........ ....... ............... ....... ........... ......... .... .....334 7.2.4. Кодирование .....................................................................................................337 7.3. Передача речи по IР](аналам (V oIP) ...............................................................339 7.3.1. ТребоваНия........ .......... ........ ........ ...... .......... .... ......... .......................... ........... ....340 7.3.2. Защита от ошнбок ............................................................................................341 7.3.3. Протокол передачи...........................................................................................342 7.3.4 Архитектура.......................................................................................................345 r лава 8. Ответы ИВ упрвжнеиия ...................................................................................349 8.1. Ответы на вопросы ]( rлаве 2 .............................................................................349 8.1.1. Ответы на вопросы по теории информации...................................................349 , 8.1.2. Ответы на вопросы по кодированию источника без памяти .......................355 8.1.3. Ответы на'вопросы по кодированию источника с памятью ........................361 8.2. Отве,ты H вопросы К rлаве 3 .............................................................................364 8.3. ОТветы на вопросы rлаве 4.................................................................................367 8.3.1. Ответы на вопросы по сетевым конфиrypациям ...........................................367 8.3.2. Ответы на'ВОПРОСЫ ПО технике Коммутации..................................................368 8.3.3. Ответы на вопросы по расчетам в сетях.........................................................369 8.3.4. Ответы на вопросы по маршрутизации ..........................................................371 8.3.5. ответы на вопросы по защите от ошибок......................................................373 8.4. Ответы fia вопросы к rлаве 5 ....;........................................................................377 8.4.1. Ответы на вопросы по линейным кодам ........................................................377 8.4.2. Ответы на вопросы по сверточным кодам ....................................................385 8.4.3. Вопросы по локальным u реrиональным сетям............................................389 8.5. Ответы на вопросы к rлаве 6 .............................................................................392 8.5.1. Ответы на вопросы по пропускной способности канала ..............................392 Предметиый укsза1'eJJь...................................................................................................397 
Сокращения AAL i\ВR ACELP АОС ,АОСР АОРСМ ADSL o.AFC 'AI АМ . .AMI ; AMPS \ ANSI '"АРК ARP ARPA ARQ А ТМ Adaption Layer  уровень адаптации А ТМ А vaHabIe Bit Rate  ДОС'I)'пная скорость передачи двоичных данных, измеряется в бит/с, Кбит/с, Мбит/с и т. д. Algebraic CELP  алrебраическое линейное проrнозирова ние с помощью кодовой книrи Analogue to Digital Conversion  аналоrоцифровое преоб разование Advanced Data Communications Protocol  расширенный протокол передачи данных Adaptive Differential Pulse Code Modulation  адаптивная дифференциальная КОДОИМ[JУЛЬCjlая модуляция Asymmetric Digital Subscriber ипе  асимметричная цифро вая абонентская линия Access Control FieId  поле управления ДОС'I)'пом Air Interface  беспроводной интерфейс AmpIitиde Modulation  ампли'I)'ДНая модуляция Alternative Mark Inversion  кодирование с чередованием полярности элементов Advanced Mobile Phone System  усовершенствованная сис тема мобильной телефонной связи Аmепсап National Standards Institиte  Американский Ha циональный инсТИ1)'Т стандартов AmpIitude Phase Keying  аМПЛИ'I)'дная фазовая модуляция Address Resolution Protocol  протокол определения адресов Advance Research Projects Agency  AreHTcTBo перспектив ных исследовательских разработок Automatic Repeat reQuest  автоматический запрос повтор ной передачи 
XVI ASCI ASK АТ ATD АТМ AuC ВЕВ BER BGF B-ISDN BnZS воотр BPSK BS BSC BSI BSS BTS BW САС САР Передача данных в сетях: инженерный подхоА Advanced Speech СаП Items (GSM)  расширенные элемен- ты речевоrовызова rлобальной системы мобильной связи I Amplitude Shift Keying  аМПЛИ1Удная модуляция Attention. Advanced Technology  Внимание, усовершенст во ванная технолоrия Asynchronous Тime Division multiplexing  асинхронное временное уплотнение Asynchronous Transfer Mode  режим асинхронной пере дачи Authentication Centre (АС)  Центр аyrентификации  опознавания, проверки полномочий, прав досryпа и т. п. Binary Exponential Backoff  двоичная экспоненциальная задержка Bit Error Rate  частота появления ошибочных битов Border Gateway Protocol  протокол поrраничной маршру тизации Broad Band  Integrated Services Digital Network  широко полосная цифровая сеть с интеrрацией служб Bipolar with n zeros substituted  биполярное кодирование с подстановкой n нулей Bootstrap Protocol  протокол начальной заrpузки Binary Phase Shift Keying  двоичная фазовая манипуляция Base Station  базовая станция Binary Symmetric Channel; Base Station Controller  двоич- ный симметричный канал, контроллер базовой станции British Standards Institute  Британский инcтmyr стандартов Base Station Subsystem  подсистема базовой станции Base Transceiver Station  базовая приемопередающая станция Bandwidth  полоса пропускания СаН Admission Control; Connection Admission Control  управление доступом к вызову или соединению Сaлierlеss Amplitude and РЬзse  бескамерная 8МПЛИJ.yда и фаза 
,СОКращения ..... САТУ СВ С CBR СС CCIТT CCR CDMA CDPD CDV CELP СЕРТ ';. ...t, , ' , , CER CGI CIDR , CIR 'CL CLR MI CMIP CMIS Сп XVII СаЫе Access Television  кабельное телевидение Cipher Block Chaining  цепочка цифровых блоков Constant Bit Rate Service  служба с постоянной скоростью передачи двоичных данных СаН Control  управление вызовом Comite Consultatif Intemational Telegraphique et Теl phonique (Intemational Telegraph and Telephone Consultative Commit tee)  Международный Консультативный Комитет по Te леrрафии и Телефонии, МККТТ Commitment, Concurrency and Recovery Protocol  протокол передачи, соrласования и I!озврата, ССRпротокол Code Division Multiple Access  множественный дос'I)'П с кодовым разделением каналов CeHular Digital Packet Data  пакеты цифровых данных для сотовых сетей связи СеН Delay Variation  непостоянство времени задержки (при передаче ячеек АТМ) CodebookExcited Linear Predictive  линейное предсказа ние с помощью кодовой таблицы (книrи) ..... Conference Еиroрееппе des Postes. et TeIecommunication  Европейская конференция почтовых и телекоммуникацион ных ведомств Сеll Error Rate  интенсивность сотовых ошибок Соmmоп Gateway Interface  общий шлюзовой интерфейс Classless InterDomain Routing  маршрyrизация между дo менами без разделения на классы Carrier to Interference Ratio  опюшение мощности несущей к уровню помехи Link Connectivity  возможности подключения линии связи Сеll Loss Rate  скорость потери ячеек Coded Mark Inversion  инверсия кодовых маркеров Соmmоп Management Information Protocol  протокол об щей управляющей информации Соmmоп Management Information System  система общей управляющей информации Node Connectivity  возможности подключения узла 
XVIII CNLS Передача данных в сетях: инженерный подход CNM CONP CPCS CRC CSMAlCA CSMAlCD CTD CVDT DARPA DAWS dB dBm DCE ООВ DECT DES DIFS connectionless (packet data service)  служба передачи па кетных данных без установки соединения Central Network Management  централизованное управле ние сетью ConnectionOriented Network Protocol  сетевой протокол, ориентированный на соединения Соmmоп Part Convergence Sublayer  общая часть поду ровня сходимости Cyclic Redundancy Check  контроль с использованием циклическоrо избыточноrо кода Carrier Sense Multiple Access I Collision Avoidance  множе ственный доступ с контролем несущей и предотвращением конфликтов Carrier Sense Multiple Access I Collision Detection  множе ственный доступ с контролем несущей и обнаружением конфликтов СеIl Transfer Delay  задержка при передаче ячеек в А тм СеВ Variation Delay Tolerance  допустимое изменение за держки при передаче ячеек Defence Advance Research Projects Agency  Управление перспективных исследований Министерства обороны США Digital Advanced Wireless System  усовершенствованная беспроводная цифровая система Decibel  децибел, одна десятая от бела, лоrарифмической единицы отношения двух физических величин decibel with reference to а milliwatt power  децибел, в сравнении с мощностью в милливатrах Data Communication Equipment  аппаратура передачи данных Distributed Database  распределенная база данных Digital Enhanced Cordless Telecommunication  модифици рованная цифровая беспроволочная телефония Data Encryption Standard  стандарт шифрования данных Distributed Interface Specification; Distributed Inter Frame Space  Спецификация распределенною интерфейса; Pac пределенное межфреймовое пространство 
ркращения DMSP ОМТ DNS DPP DPSK ; JjQDB PSK DSBAM DSCP DSL JjSRR ...DSS .DТE DТМF DVMRP ЕСМА EDACS EGP EIA Х/Х Distributed Mail System Protocol  протокол распределен ной почтовой системы Discrete MultiTone (modulation)  цифровая мноrоканаль ная тоновая модуляция Domain Name System  система имен доменов Demand Priority Protocol  протокол приоритетов запросов Differential Phase Shift Keying  относительная фазовая манипуляция Distributed Queue Dual Bus  двойная шина с распреде ленной очередью Differential Quaternary Phase Shift Keying  дифференциаль ное четвертичное переключение со сдвиrом фазы ОоиЫе Sideband Amplitude Modulation  двухполосная и амплиryдная модуляция DiffServ Control Protocol  протокол управления диффе ренциальными службами Digital Subscriber Line  цифровая абонентская линия Digital Short Range Radio system  цифровая коротковол новая радиосистема ... Digital Signature Standard  стандарт цифровой подписи Data Terminal Equipment; Data Termination Equipment  терминальное оборудование данных; оконечное оборудо вание данных Оиаl Топе Multi Frequency  тональный набор с разделе нием частот Distance Vector Multicast Routing Protocol  протокол дис танционной векторной rрупповой мноrоадресной маршру тизации European Computer Manufacturers Association  Европей ская ассоциация производителей компьютеров Enhanced Digital Access Communication System  система связи с расширенным цифровым досryпом Exterior Gateway Protocol  протокол внешних шлюзов; про токол внешней маршрутизации Electrical Industries Association  Ассоциация электронной промышленности США 
хх EIRP ЕМС ER ETSI FCC FCS FDDI FDM FDMA FEC FИМА FM FSK FТP GCRA GMSK GoS GPRS GSM GSMR Передача данных в сетях: инженерный подх()д Effective Isotropic Radiated Power  эффективная мощ ность изотропноrо излучения ElectroMagnetic Compatibility электромаrнитная совместимость Explicit Rate  явная скорость, интенсивность European Telecommunications Standards Institute  EBp<r пейс кий институт стандартов по телекоммуникациям Federal Communications Commission  Федеральная KO миссия связи США Frame Check Sequence  контрольная последовательность кадров Fibre Distributed Data Interface  распределенный интер фейс передачи данных по оптоволоконным каналам Frequency Division Multiplexing  мультиплексирование с частотным разделением каналов) Frequency Division Multiple Access  множественный дoc 'I)'п с разделением частот Forward Error Correction  упреждающая или прямая KOp рекция ошибок Frequency Hopping Multiple Access  множественный дoc 'I)'п с перескакивающей частотой Frequency Modulation  частотная модуляция Frequency Shift Keying  частотная манипуляция File Transfer Protocol  протокол передачи файлов Generic Сеll Rate Algorithm  универсальный алrоритм скорости ячеек Gaussian Minimum Shift Keying  rayccoBa модуляция с минимальным сдвиrом Grade of Service  катеrория обслуживания General Packet Radio Service  система пакетной радиосвя зи общеrо пользования Global System for Mobile communications  rлобальная система мобильной связи GSM for Railways  GSM ДЛЯ железных дороr 
щения .НDB НDB3 НDLC НDTy НLR HSCSD НSLN ..tnML :Jmp I(::МР 'ICP IDC ,D.:>EA -, \:" :mEN 1}./ ' ФFТ 1Du ,IEEE IP I-MAC IМAP ХХ/ Ноте DataBase  домашняя база данных Нigh Density Bipolar  высокочувствительный биполярный Нigh Level Data Link Control  высокоуровневый протокол управления каналом (звеном) передачи данных Нigh Definition Television  телевидение с высоким раз решением Ноте Location Register  опорный реrистр местонахожде ния в сотовых сетях GSM Нigh Speed Circuit Switched Data  данные высокоскоро-- стных переключаемых цепей High Speed Local Network  высокоскоростные локальные сети Hyper Text Mark Up Language  язык rипертекстовой раз метки Hyper Text Transfer Protocol  протокол передачи rипер текста Internet Control Message Protocol  протокол управления сообщениями Internet .... Initial Connection Protocol  протоt<ол начальноrо соеди нения Insulation Displacement Connector  изолирующий заме щающий соединитель International Data Encryption Algorithm  международный алrоритм шифрования данных Integrated Digital Enhanced Technology  интеrрированная усовершенствованная цифровая технолоrия Inverse Discrete Fourier Transform  обратное дискретное преобразование Фурье Interface Data Unit  интерфейсный блок данных Institute of Electrical and Electronics Engineers  Институт электро и радиоинженеров США Intermediate Frequency  промежуточная частота Isochronous МАС  изохронное управление доступом к среде передачи, изохронный МАС InteractiveMail Access Protocol  интерактивный протокол почтовоrо доступа 
ХХ" [МEI Передача данных в сетях: инженерный ПОДХОД IМP IМSI IМTS IN IP IPX [SDN ISI [SO ISP IТU IТUR IТU Т [v JPEG KSG LA LAC LAN LAP Intemational Mobile Equipment Identity  именование меЖ дународноrо мобильноrо оборудования Interface Message Processor  интерфейсный процессор, сообщений Intemational МоЫlе Subscriber Identity  именование меж дународных мобильных абонентов Improved Mobile Telephone Service  служба усовершенст вованной мобильной телефонии Intelligent Network  интеллектуальная сеть Intemet Protocol  протокол Intemet Internetwork Packet Exchange  протокол межсетевоrо об мена пакетами Integrated Services Digital Network  цифровая сеть с ин теrрированными службами InterSymbol Interface  межсимвольный интерфейс International Standards Organization  Международная op rанизация по стандартизации Intemet Service Provider  поставщик услуr [ntemet Intemational Telecommunications Union  Международный союз по электросвязи Radio communications sector of the IТU  сектор радиосвя зи IТU Telecommunications standardization sector of the IТU  ceK тор стандартизации передачи данных lТU Initial V alue  начальное значение Joint Photographic Experts Group  Объединенная rруппа фотоэкспертов Кеу Stream Generator  reHepaTop потока ключей Location Area  область размещения Location Area Code  код области размещения Local Area Network  локальная сеть Link Access Procedure  процедура доступа к каналу (зве ну) передачи данных 
ения . LAPB LAPD LCN CP 'J;.ED ,Jl'SR . . . ,PS ис LМN 'tМR tNM fpc . LSR LТR I " LTU МA МAN Мсс MCR МEGACO MER МIB MIME МLТЗ MMF ХХI1l Link Access Protocol  В  протокол ДОС'I)'па к Вканалу Link Access Protocol  D  протокол ДОС'I)'па к Dканалу Logical Channel Number  номер лоrическоrо канала Link Control Protocol  протокол управления каналом Light Emitting Diode  светодиод Linear Feedback Shift Register  линейный сдвиrовый pe rистр обратной связи Logical IP Subnet  лоrическая IРподсеть Logical Link Control  управление лоrическим каналом Land Mobile Networ"  наземная М9бильная сеть Land Mobile Radio  наземное мобильное радио Local Network Management  управление локальной сетью Linear Predictive Coding  кодирование методом линейно ro предсказания Line( --connected) Station  станция, при соединенная к ли нии связи Label Switched Routers  маршрyrизаторы, переключае мые метками ... Logic Trunked Radio  радио с маrистральной лоrикой Line Termination Unit  линейное оконечное устройство Media Access Control  управление ДОС'I)'пом к среде Metropolitan Area Network  реrиональная сеть Mobile Country Code  мобильный код страны Minimum Сеll Rate  минимальная скорость ячейки Media Gateway Control Protocol  протокол управления шлюзовой средой Message Error Rate  интенсивность ошибок сообщений Management Information Base  база управляющей инфор мации Multipurpose Internet Mail Extension  мноrоцелевое расши рение электронной почты в Internet MultiLevel Transition 3  мноroуровневый переход 3 MultiMode Fibre  мноroмодовый волоконнооптический кабель 
XX/V Передача данных в сетях: инженерный подход MMI МNC МNI MoU MPEG МРТ MS MSC MSK MTBF МТР МТТR NAK NAP NCP NIC NISDN NIST NMU NNI NPA NRZ NRZI Мап МасЫпе Interface  интерфейс "человекмашина" Mobile Network Code  код мобильной сети Mobile Network Identity  идентификатор мобильной сети Memorandum of Understanding  меморандум о понимании Motion Picture Experts Group  Экспертная rpynna по BO просам движущеrося изображения Ministry of Post and Telecommunications  Министерство почты и телекоммуникаций Mobile Station  мобильная станция Mobile Switching Centre  центр коммутационный подвиж ных объектов Minimum Shift Keying  минимальные манипуляции сдвиrа Меап Time Between Failure  среднее время безотказной работы Message Transfer Part  раздел передачи сообщений Меап Time to Repair  среднее время работы до ремонта Negative Acknowledgement  символ неподтверждения приема Network Access Point  точка входа в сеть Network Contro] Protocol (related to РРР)  протокол управления сетью, связан с РРРпротоколом, протоколом "точкаточка "; Network Core Protocol (Novell Netware)  основной ceTe вой протокол фирмы Novell Netware Network Infonnation Centre  сетевой информационный цетр Narrow Band  Integrated Services Digital Network  узко- полосная ISDN National Institute of Standards and Technology  Нацио нальный инститyr стандартов и технолоrии Network Management Unit  устройство управления сетью Network Network Interface  интерфейс "ceтbceTЬ" Network Point of Attachment  точка подключения к сети Non Return to Zero  без возврата к нулю Non Return to Zero Invert to опе  инверсия к I без возвра- та к нулю 
щенИR ) NSAP NUA рмс . ' 1.  ; 4>й К 9QPSK OSI SPF ЮТЛR :tA .tAD itw ':PAMR :,PВR I"BX :ре Рем PCR PD РОА PDN PDU PEI XXV Network Service Access Point  точка ДОС1)'па к сетевой службе Network User Address  адрес ceтeBoro пользователя Operations & Management Centre  центр операций и управления OnOff Keying  манипуляции типа "включено-- выключено" Offset Quatemary Phase Shift Keying  квадратурная фазо-- вая манипуляция со смещением Ореп Systems Interconnection  модель взаимодействия открытых систем . Ореп Shortest Path First  первоочередное открытие KpaT чайших маршрутов Over The Air Rekeying  ретрансляция по воздуху PreArbitrated Access; Power Amplifier  доступ с предва рительным арбитражем; усилитель мощности Packet AssembIerlDisassembIer  сборка/разборка пакета Pulse Amplitude Modulation  импульсно--амплитудная мо-- дуляция  PubIic Access Mobile Radio  мобильное радио с общим доступом Private Business Radio  частное деловое радио Private Branch Exchange  телефонная система частноrо пользования, офисная АТС Personal Computer; Protocol Control  персональный KOM пьютер; управление протоколом Pulse Code Modulation  импульснокодовая модуляция Peak Сеll Rate  пиковая скорость ячейки Packet Data  пакетные данные Personal Digital Assistant  персональный цифровой асси стент PubIic Data Network  сеть передачи данных общеrо поль зования Protocol Data Unit  протокольный блок данных Peripheral Equipment Interface  интерфейс периферийноrо оборудования 
XXVI PICS PIN PINX PISN PLМN PLP РМ PМD PМR PN POTS РРР PSK PSS PSТN PТf PVC QA QAМ QoS QPSK Передача данных в сетях: инженерный подход Protocol Implementation Conformance Statement  СВИДе тельство о конформности реализации протокола Personal Identity Number  персональный код пользователя Private Integrated Network eXchange  частный обмен в интеrрированной сети Private Integrated Services Network  частная сеть с интеr рированными службами PubIic Land Mobile Network  сеть связи с подвижными системами Packet Level Protocol  протокол пакетноrо уровня Phase Modulation  фазовая модуляция Physical Media Dependent  зависимый от физическоrо носителя Private Mobile Radio  частное мобильное радио Pseudo raNdom  псевдослучайный Plain Old Т elephone System  обычная старая телефонная система Point to Point Protocol  протокол "точкаточка" Phase Shift Keying  кодирование со сдвиrом фазы, фазо-- вая манипуляция Packet Switched Service  служба коммyrации пакетов PubIic Switched Telephone Network  телефонная KOMMY тируемая сеть общеrо пользования Press То Talk; Post, Telegraphy & Telecommunications  Нажать для разrовора; предприятие почтовой телеrpафной и телефонной связи Permanent Virtual Circuit; Permanent Virtual Connection  постоянный виртуальный канал; постоянное виртуальное соединение Queue Arbitrated Access  метод доступа с очередями и арбитражем Quadrature Amplitude Modulation  квадратурная ампли тудная модуляция Quality of Service  качество обслуживания Quadrature Phase Shift Keying  квадратурная фазовая Ma нипуляция сдвиrа 
ащения RARP RES RFC RF ЮР RL ROSE RPE RSA 'SSI RSVP RTCP RTP S,AGE SAP SC SCR SDH SDL SDLC XXV/I Reverse Address Resolution Protocol  протокол определе ния обратноrо адреса Radio Equipment and System  радиооборудование и системы Request For Comment  запрос на комментарий Radio Frequency  радиочастота Routing Information Protocol  протокол маршрутной ин формации Ring Latency  кольцевая задержка Remote Operations Service Element  сервисный элемент удаленной обработки Regular Pulse Excitation (compression technique)  реryляр ное возбуждение импульсов (техника сжатия) Rivest Shamir Adleman (cryptographic system)  алrоритм цифровой подписи РайвестаШамираАдлемана (крипто rрафическая система) Received Signal Strength Indicator  индикатор интенсив ности принятоrо сиrнала Resource Reservation Protocol  протокол резервирования ресурсов Real Time Control Protocol  прd\-окол управления переда чей в реальном времени Real Time Protocol ,протокол передачи данных в реаль ном времени Security AIgorithms Group of Experts  rруппа экспертов алrоритмов безопасности Service Access Point; Service Advertising Protocol (Novell Netware)  точка доступа к службам; протокол оповещения о сервисе Novell Netware SubCommittee  подкомитет Sustainable / Sustained Сеll Rate  нормальная/устойчивая скорость передачи (ячеек А ТМ) Synchronous Digital Нierarchy  синхронная цифровая ие рархия Simple Data Link  простой канал (звено) передачи данных Synchronous Data Link Control  синхронное управление каналом (звеном) передачи данных 
XXVlII SDS SDU SIFS SIM SIP SIR "SLA SLIP SMDS SМF SMR SMS SMT SMTP SNMP SNR SONET SPX SRВR SS7 SSI STD STE STP SVC Передача данных в сетях инженерный подход Short Data Service  служба коротких данных Service Data Unit  сервисный блок данных Short Interframe Space  сокращенное межфреймовое про странство Subscriber Identity Module  модуль идентификации або нентов Session Initiation Protocol  протокол инициирования сеанса Signal to Interference Ratio  отношение сиrнал/шум Service Level Agreement  соrлашение служебноrо уровня Serial Line IP  межсетевой протокол для послеДователь Horo канала Switched Multi Megabit Data Service  коммутируемая служба передачи мультимеrабитных данных Single Мodе Fibre  однорежимный оmоволоконный кабель Specialist Mobile Radio  мобильное радио для специалистов Short Message Service  служба коротких сообщений Station Management  управление станцией SimpleMail Transfer Protocol  простой протокол пере сылки почты Simple Network Management Protocol  простой протокол управления сетью Signal to Noise Ratio  отношение сиrнал/шум Synchronous Optical Network  синхронная оптическая сеть Sequenced Packet Exchange  последовательный обмен пакетами Short Range Business Radio  коротковолновое деловое радио Signalling System 7  система 7 передачи сиrналов Short Subscriber ldentity  короткая идентификация або нентов Synchronous Time Division multiplexing  синхронное мультиплексирование с разделением времени SignalIing Теnninаl Exchange терминальный обмен сиrналами Shielded Twisted Pair; Spanning Tree Protocol  экраниро ванная витая пара; протокол OCToBHoro дерева (сети) Switched Virtual Circuit  коммутируемый виртуальный канал 
щенUR SwMI , 1 А ! .:, ,rrAC П'АСS \. Д-С ) . ;!'СМ .тосР t r.. :fi>D ii., /r; '1 '. :tDM ,,'.- '. .\ МA  , ::m ТETRA 1МN I 1rsAP ( ТТRP ТfRT UвR ООР UNI иРС ХХ/Х Switching and Management Infrastructure  инфраструктура коммyrации и управления Terminal Adapter (or Adapting)  адаптер или адаптация терминала Туре Approval Code  код улучшения шрифта Total Access Communication System  система связи с об щим доступом Technical Committee  технический комитет Trellis Code Modulation  решетчатое кодирование Transmission Control Protocol  протокол управления пе редачей Time Division Duplex  дуплексная передача с разделени ем времени Time Division Multiplexing  мультиплексирование с раз делением времени Time Division Multiple Access  множественный доступ с разделением времени Terminal Equipment  терминальное оборудование ... TErrestrial Trunked RAdio (Private Mobile Radio system)  наземное маrистральное радио (частная мобильная радио система) Telecommunications Management Network  сеть управле ния телекоммуникациями Transport Service Access Point  точка доступа транспорт ной службы Target Token Rotation Protocol  протокол обхода кольца (Token Ring) маркером Target Token Rotation Time  время обхода кольца (Token Ring) маркером Unspecified Bit Rate  передача с не заданной заранее ско- ростью User Datagram Protocol  протокол дейтаrpамм пользователя User Network Interface  интерфейс пользователя с сетью Usage Parameter Control  контроль за использованием (полосыпропускания) 
ххх URI Передача данных в сетях: инженерный подход URL UTP VAD VВR VC VCI VLAN VoD VoIP VP VPI VPN VSELP WAN WAP WDM WG WLAN WLL WT WWW WYSIWYG Universal Resource Identifier  универсальный идентифи катор ресурсов Uniforrn Resource Locator  универсальный указатель pe сурсов Unshielded Twisted Pair  неэкранированная витая пара V oice Activity Detector  детектор rолосовой активности VariabIe Вit Rate  переменная скорость передачи двоич ных данных VirtuaJ Circuit; VirtuaJ СЬаппе)  виртуальная цепь; вирту альный канал Virtual Channel Indicator  индикатор внртуальноrо канала VirtuaJ LAN  виртуальная локальная сеть Video оп Demand  видео по запросу V oice over IP  передача rолоса по IP VirtuaJ Path  виртуальный путь Virtual Path Indicator  индикатор виртуальноrо пути VirtuaJ Private Network  виртуальная частная сеть Vector Sum Excited Linear Predictive  линейное предска зание с помощью векторной суммы Wide Area Network  rлобальная сеть WireJess AppJication ProtocoJ  беспроводной прикладной протокол WaveJength Division Multiplexing  спектральное разделе- ние Working Group  рабочая ['руппа Wireless LocaJ Лrеа Network  беспроводная локальная сеть Wireless Local Loop  беспроводной локальный цикл Waiting Time  время ожидания World Wide Web  Всемирная паyrина What У ои See Is What У ои Get  "Что вы видите, то вы и получаете"  режим полноrо соответствия изображения на экране тому, что будет распечатано на принтере 
J1редисловие J'orдато считали, что передача информации от пользователя к пользователю рорее походит на плавное движение лбедя, плывущеrо от одноrо береrа ;\lP.доема к друrому. Сверху оно кажется леrким, элеrантным и простым, тоrда _ под водой, невидимая для всех, происходит бурная, энерrичная деятель Jюcть, и нет никакоrо, даже малейшеrо, хаоса. Теперь же, с определенной дo :iieя преувеличения, можно rоворить, что мы хорошо знакомы с возможно .#ttми передачи цифровой информации по коммуникационным сетям. видетельством Toro является очевидный рост пользователей Интернета, Koe распространение цифровой мобильной телефонии и связанных с ней .« . J $Мs -служб. Нам предоставлены почти универсальные возможности по час i*" .связи и коммуникаций. Теперь можно сказать, что наши достижения "ре- :-зошли даже все самые смелые надежды. Однака, такой очевидной леrкости )мпользования и сервисноrо обеспечения противоречит довольно высокая iюжность той техники, которая поддерживается этими широко распростра lfными службами. В этой книrе мы рассматриваем цели передачи данных )lpeжде Bcero с точки зрения перспектив обслуживания соответствующей ики связи, подробно исследуя влияние требований пользователей на ce й проект. Следуя нисходящему подходу к проектированию, сначала аются принципы и технолоrии, связанные с сетевой струкryрой в целом ;'(ерархией ее компонентов BepxHero уровня, затем  проблемы уровня ка- a (звена) передачи данных и, наконец,  ключевые принципы, связанные ..1 передачей индивидуальных информационных битов. Книry завершают :",имеры, которые иллюстрируют, как изложенные концепции комбинируют :ci На практике при построении целостной службы, которая удовлетворяет hоТребностям пользователей, предпочитающих инженерный подход к реше ,IDlЮ проблем. Такое изложение контрастирует с друrими книrами по анало 'rичной тематике, rде либо принят восходящий подход к проектированию (от сиrналов к службам), либо рассматривается лишь сервисная перспектива (то есть службы верхних уровней), оrраниченная обзором пакетов и лишь kратким рассмотрением физических уровней. 1 SMS  службы передачи коротких сообщений, например, пейджинroвая связь.  Пер. 
ХХХ// Предисловие Kpyr читателей Эта книrа предназначена скорее для последовательноrо чтения, а не для ис пользования в качестве справочника, хранящеrося на полке и просматривае Moro только тоrда, коrда нужно разыскать какуюто специфическую часть информации. Мы надеемся, что после прочтения этой книrи читатель полу чит понимание ключевых концепций, связанных с передачей информации по сетям связи. Такое понимание в свою очередь даст возможность читателю эффективно разыскивать и использовать информацию из HecMeтHoro числа книr, стандартов, оперативно ПОС1)'пающих материалов, статей, обучающих Проrрамм и друrих доступных источников. Книrа написана для студентов или профессионалов, склонных к научной или инженерной деятельности и желающих получить понимание ключевых KOH цепций, лежащих в основе инженерных разработок систем передачи данных. Это прежде Bcero такие rруппы читателей, как С1)'денты предпоследних и заключительных лет обучения в специализациях, связанных с передачей дaH ных, аспиранты первоrо или переходноrо семестра обучения, а также про фессиональные инженеры, желающие получить начальные знания в области передачи данных или обновить свои базовые знания в этой области. Хотя и не явно математическая по своему характеру, книrа использует математиче ские и статистические методы, чтобы описать переда.чу данных и сетевые концепции. Следовательно, мы предполаrали наличие у читателей математи ческих и статистических знаний, эквивалентных полученным после двух или трех лет работы в научных или инженерных учреждениях. Поддержка Чтобы обеспечить дальнейшее уrлубление в предметные области, представленные в этой книrе, был создан W еЬсайт http://comms.eee.strath.ac.uk/datacomms, содержащий допол нительные примеры и ссылки на друrие материалы. В сайт включены также Java апплеты, иллюстрирующие ключевые моменты и алrоритмы. Пожалуй ста, не стесняйтесь посещать ero и посылать нам ваши комментарии. Блаrодарности Авторы обязаны поблаrодарить очень мноrих людей, которые внесли свой непосредственный или косвенный вклад в создание этой книrи. Во-первых, мы хотели бы поблаroдарить весь штат издательства Wiley & Sons и, в част ности, Марка Хаммонда (Mark Hammond) и Сару Хинтон (Sarah Нinton), KO 
пРедисловие . ХХХ/ll торые проявляли большое доверие и терпение, чтобы дать нам возможность завершить эту книry. Дополнительно выражаем блаrодарность нашим колле raм из отдела электронных и электроинженеров, которые поддержали, про комментировали и довели до совершенства содержащиеся в книrе материалы. Наши обсуждения технолоrических и педаrоrических проблем были всеrда живыми, стимулирующими и информативными, и некоторые из них, как мы надеемся, нашли отражение и в этой книrе. Определенный вклад в книry был также сделан нашими студентами, которые участвовали в обсуждении MHO ..их материалов и вопросов, и чьей наrрадой были лишь списки участников этих обсуждений в конце rода. Наконец, авторы хотели бы выразить сердеч ftyю блаrодарность своим семействам за поддержку наших ежедневных TPy jltOB, без чеrо их завершение было бы нево.зможно. Спасибо! 
\ I J fлава 1 у/' '1 ,,' ; ;КоммуникаЦИОННblе систеМbI ; t1.1. Обзор ?  КНШУ следует рассматривать как техническое введение в общие проблемы lneредачи данных. Передача данных связана с проблемой надежной (rаранти рующей как от сбоев (разрывов) каналов связи, так и от помех) пересылки иH pMaции из одноrо пункта в друrой в соответствии с требоваНWlМи пользо taтелей. в этой книrе освещены ключевые моменты, связанные собственно с irнформацией и ее надежной передачей, удовлетворяющей требованиям поль $>вателей. В последние несколько лет важность связи (коммy1tuкаций) в жизни общества ущественно возросла. Часто rоворят, что информация  это сила, но на ca :мом деле она становится силой только тоrда, коrда вы получаете ее в нужном месте в нужное время. Мы HaMHoro мобильнее наших предков и, поскольку мы все больше передвиrаемся с места на место и занимаемся разнообразной дея тельностью на все больших пространствах, потребность в связи постоянно воз 'растает. С друrой стороны, чем более простой и более доступной становится связь, тем большее количество людей хочет ею воспользоваться. Хорошие системы связи основываются на пользующихся большим успехом приложениях. Пользователь в буквальном смысле находится в начале и конце коммуникационной системы. Это можно подтвердить заметным успехом рече BbIX и W АР (Wireless Application Protocol, протокол беспроводных приложе "ий) служб в мобильной телефонии. Произошел беспрецедентный рост поль 3Ователей таких служб, и теперь уже больше половины населения Великобритании имеет мобильные телефоны. Подобные устройства очень про-- сты в использовании, удобны и относительно недороrи. Разrоваривать по ним можно почти везде. С друrой стороны, сами W АРслужбы довольно сложны, трудны в использовании и дороrи для обмена информацией. Кроме Toro, име IOТCЯ более простые и дешевые способы получения Toro же caMoro результата. Такое положение, однако, может измениться, если больше людей ДЛЯ получе 
2 Передача данных в сетях: инженерный подход ния информации во время движения начнyr пользоваться РОА I  микрокомпьютерами. Впрочем, W АР-протокол на мобильных телефонах оказался менее успешным, чем предполаrалось. 1.2. Декомпозиция коммуникационных систем Цолезно начать рассмотрение коммуникационной системы с позиции пользо- Вателя, а не с проблем связи низкоrо уровня. Пользователи взаимодействуют с системой связи не напрямую, а через приложения, которые сами связываются друr с друroм (рис. 1.1). Пользователи, например, Moryr связываться с помощью таких компьютерных приложений, как Web-браузеры, которые в свою очередь взаимодействуют с удаленными Web-серверами. Для связи дрyr с друroм эти приложения исполь зуют коммуникационную систему, которая поддерживается их операционными системами. для коммуникационной системы было бы очень обременительно работать с каждым приложением индивидуально. Это означало бы, что всякий раз, коrда бьто бы разработано новое приложение, коммуникационная система должна была бы изменяться. Более удобный для приложения способ заключа- ется  том, чтобы форматировать свои запросы для фиксированноro набора служб (услуz), обеспечивающих рабо1)' коммуникационной системы. р "''(  f;.t '!: . ..l- Пользователь  Пользователь' . (например, обмен электронной почтой) "  11 .<.....  Компьютер берет у пользователя сообщение e-mai' и форматирует ero 11( для пересылки по доступной сети, например, по Internet с протоколами TCPIIP Связь ПО сети (ТСР nolP) Компьютер принимает . сообщение email и передает ero приложению для показа пользователю Рис. 1.1. Система связи с точки зрения пользователя I РОА  Personal Digita\ Assistant. У нас подобный карманный компьютер принято называть Электронным секретарeAl.  Лер. 
Слава 1. Общий обзор языка ""' з .Хорошим примером TaKoro подхода является факсимильный аппарат, который переносит документы по системе связи, разработанной для приложений с rоло ,совым вызовом. Поскольку факсимильные аппараты MOryr использовать уже существующую инфраструктуру, то их установка не приводит к большим за Тратам инеудобствам. Эrо означает, чrо можно довольно быстро разработать и установить базовую систему факсимильных аппаратов, что в свою очередь подтолкнет мноrих пользователей к установке новых устройств, и т. д. По этой причине в большинстве коммуникационных систем обеспечен опреде пенный набор интерфейсов для установки необходимых служб. В эти службы :приложения и направляют свои запросы на услуrи связи. Преимуществом Ta ;'f'oro подхода является то, что приложение не должно чтолибо знать о деталях истемы служб связи. Приложению должен быть известен лишь интерфейс '-службы, к которой оно направляет свои данные. С дрyrой стороны, коммуни 'кационную систему также не должны беспокоить детали приложения. Еще oд "НО преимущество такой методики состоит в том, что связь возможна между двумя различными приложениями, если оба они используют службы связи aHa tJ10rичным образом. Например, пользователь nporpaMMbI Microsoft Outlook MO жет посьтать электронную по'ПУ пользователю обозревателя Netscape Coт municator, или пользователь телефона с дисковым номеронабирателем может "позвонить пользователю кнопочноrо аппарата. .; Телефонная система проектируется так, чrобы пощ>шать изменяющийся элек . трический сиrнал от одноrо абонента к друrому. ПiJИложением в этом случае , является сам телефон, а инrерфейсом службы  настенный телефонный разъ . ем. В розетку можно включать любые телефоны, которые "понимают" интер . фейс, обеспечиваемый сетью (в данном случае это переменный электрический .' ,сиrнал для речи и набора номера). Если вы включите в настенный разъём фак , симильный аппарат, то ваше приложение должно измениться, тоrда как ника . Koro изменения в системе связи не потребуется, потому что коммуникационная . служба останется той же самой. Расширяя этот подход, можно разделить на службы и остальную часть системы СВязи. Обеспечение прямой коммуникационной связи каждоrо источника с Ka ЖДым адресатом было бы непрактично. Чтобы обойти эту проблему, все KOM ,муникационные системы, кроме самых npOCТbIx, будyr состоять из сети  набора переIOlючаемых линий (каналов) связи, соединяющих источники и aд ресаты. На самом низком уровне в этой иерархии находится связь по индивидуальному каналу. Здесь происходит процесс передачи данных по заданной среде переда чи из одноrо места в друrое. Подобная четыреХУРО6невая иерархия, включающая приложения, использую щие службы, переключаемые по сети линий связи, каждая из которых тpaHC 
. ......,.. ... ,.,..........'" ., ............ ......-..." ... nOJll1lP)'CТдalIные,из OДНOFO места,:вдруrое через среду передачи, называется мноzoуровllевой иерархией. потому чro на- каждом уровне происходит абстра- iШj108QНие от подробностей ниже:лежащих.уровней. , ,- 1 з. HoroYPoBHeBbIe коммуникационные архитектуры Мiюroуровневую cтpyкrypy можно определить более формально. Коммуника- nиоlmые системы раздетllОТСЯ на веРТИКaJlЬНЫЙ набор уровней, в котором ка. Ждьiй уровень выполняет определенным образом связанное подмножество ФУЮЩИЙ, требуемых для связи с друrой системой. Функции в пределах уровня собраны в rpуппы, называемые объектами. Объекты одноrо уровня в разных системах связываются дрyr с друrом, используя один или несколько протоко- лов. Протокол определяется, как набор nравшz для передачи информации или команд. Подобную мноrослойную архитекrypу часто называют стеком прото- колов. Любой конкретный уровень такой архитеК1)'рЫ зависит от нижележаще- ro уровня (если таковой имеется), выполняющеrо более примитивные функции и скрывающеrо детали этих функций. Интерфейсы между уровнями называют- ся точками доступа к службам (Service Access Points, SAP)  рис. 1.2. , . , I Слой N  ОбъеlCf с Одноуровневый протокол nOльзователь д Пользователь В ОбъеlCf ОбъеlCf Слой 1 Рис. 1.2. Точки доступа к службам 
,..."lUI/III ,'. VUUfИИ  'n<6D1N11 .Jo,;:" :.' .., Объекты, связывающиеся на заданНОМ' уровНе;, обмеНЙВaIOТCJI сообщениями, tЮТOрые называют протокольными БЛОКaJI,{и данных (Protocol Data Units  ,PDU)  рис. 1.3. Синтаксис протокола определяет формат, а ero семанrика  ; значение сообщений. Чтобы избежать беспорядка, синrаксис протокола должен .быть точно определен. Блок PDU каждоrо уровня состоит из протокольной ,информации этоrо уровня, а в качестве полезной нarрузки использует PDU блоки вышележащеrо уровня. . Рдноуровневые протоколы используются соответствующими объектами для язи дрyr с дрyrом С целью реализации определенной службы. Используемый ,JPoтокол можно изменять при условии, чт<? сама служба, с точки зрения ее рользователя, не изменяется. Таким образом, служба и протокол всеrда разде !lЯ lOТся . Новые заroловки Данные  Сеансовый Прикладной ПРИКЛ8Дной PDU Предct8вительский Представи- тельский PDU Сеансовый Сеансовый PDU Транспортный Транспортный PDU Gетевой Пакет/ Диаrрамма ..... Канальный Кадр Fi" 11 Физический Символ Прикладной Представительский Транспортный Сетевой Канальный Физический ' 1 Рис. 1.3. РDU.боки различных уровней 1.3.1. Потребность в стандартах Как отмечено раньше, чтобы система работала, протокол должен быть соrла сован с поддерживающими связь объектами. Так как эти объекты MOryr распо лаrаться даже в различных странах, '1"0, очевидно, существует потребность в соrласованных международных стандартах. Существуют стандарты "де фак то", такие как UNIX или IВМ РС, или "де юре", формально узаконенные cтaH дарты, принятые полномочными орrанами, занимающимися стандартизацией. Они MOryr быть национальными, такими как Американский национальный ин 
6 Передача данных в сетях: инженерный подход cтmyr стандартов (ANSI, American National Standards Institute), Британский инcтmyr стандартизации (BSI, British Standards Institution), ARIB или между народными, управляемыми в соответствии с соrлашением националЬНblХ пра вительств, такими как Международный телекоммуникационный союз (lТU, International Telecommunications Union). К стандартам приходят разными путями, и создаются они разными орrаниза циями, включая правительствеННblе, межправительствеННblе и профессиональ вые, а также ПРОМblшленные rpYnnbI. Международная орrанизация по стандартизации (ISO, Intemational Standards Organisation)  это добровольная, не доrоворная орrанизация, Вblпускающая широкий диапазон стандартов по самым разным темам. Она имеет почти 90 членов, включая ANSI, BSI, AFNOR (Association Francaise de Nonnalisasion, Французская орrанизация стандартов) и DIN (Deutsche IndustrieNonnen, He мецкие промышленные стандарты), и состоит почти из 200 технических коми тетов (ТС, Technical Committee), пронумерованных в порядке их создания и имеющих дело с универсальной тематикой (ТС 1), компьютерами и обработкой информации (ТС97) и т. п. Каждый ТС состоит из подкомитетов (SC, Sub Committee), которые разделеНbI на рабочие rpYnnbl (WG, Working Groops). Pa бота выполияется rлаВНblМ образом рабочими rруппами, которые включают добровольцев из академических KpyroB, правительствеННblХ должностных лиц и представителей ПРОМblшленности. Чтобbl избежать несовмеСТИМblХ CTaндap тов, ISO сотрудничает с lТU. lТU, первоначально назblвавшийся Международ ным консультативным комитетом по телеrpафии и телефонии (CCIТT, Consul tative Committee оп Intemational Telegraph and Telephone), состоит из сектора радиосвязи (IТUR) и сектора телекоммуникационных стандартов (IТU Т), а также включает секретариат и сектор разработок. Инreресно отметить существенное различие между подходами к проблеме стандартов, принятыми в СоединеННblХ Штатах и Европе. Европа занимает очень активную позицию в области стандартов. Европейский инстmyr теле коммуникаЦИОННblХ стандартов (ETSI, European Telecommunications Standards Institute) имеет очень активную проrpамму стандартизации. Европейские пра вительства часто требуют, чтобы изrотовители телекоммуникационноrо обо рудования изrотовляли ero в соответствии с соответствующими стандартами, прежде чем разрешать ero к продаже в Европейском Содружестве. В Соеди ненных Штатах Америки подход иной, намноro более незаВИСИМblЙ, доny<r кающий РЫНОЧНblе решения. Одним из rлаВНblХ opraHoB, разрабатывающих cтaндaprы США, является Инcтmyr инженеров по электротехнике и электро Нике (ШЕЕ, Institute of Electrical and Electronic Engineers), который является профессиональной орraнизацией, а не правительственным учреждением. 
:rлава 1. Общий обзор языка 7 1.3.2. Эталонная модель Internet Четырехуровневая модель  одна из самых простых моделей, которую можно применять к системам связи. но существуют и дрyrие. Хотя полноrо стандарта для стека Iпtеmеtпротоколов не существует, архитеК1)'ра, которая была разра ботана на основе исходной сети ARP ANET, имеет пять уровней: Прикладной, Транспортный, Intemet (Межсетевой), Канальный и Физический (рис. 1.4). Прикладной I Прикnадной I !'Щ' . -   L,   ;j Служебный Транспортный Internet Сетевой КаналЬНЬIЙ Среды передачи Физический с . 'Р ( . .... Рис. 1.4. Стек протоколов ARPANEТ (Internet) . Различие между простой четырехуровневой архитектурой и архитектурой :Jntemet состоит в том, что сетевой уровень разбит на два: уровень для индиви . дуальной коммуникационной системы (называемый Уровнем передачи (звена) . данных) и уровень Intemet, который обеспечивает сетевое обслуживание rло . бальной сети. 1.3.3. Эталонная модель взаимодействия открытых систем Модель Internet имеет довольно прочную основу. Одной из наиболее общих моделей передачи данных является модель взаимодействия открытых систем (OSI,Open Systems Interconnection), которая имеет семь уровней, как показано рис. 1.5. Ее часто называют семиуровневой моделью. Замыслом разработчиков модели OSI было обеспечение всех преимуществ для взаимодействующих сетей. Предполаrалось, что если модель OSI используется всеми изroтовителями, то любая машина, в которой реализована эта модель, будет "открытой", т. е. способной соединиться со всеми дрyrими подобными 
:8 Передача данных в сетях: инженерный подход системами во всем мире. Разработанная в 1979 [оду в ISO (International Standar tizatiGn OrgaaiШiоп, Международная орrанизация по стандартизации), модель OSI предназначалась для обеспечения общеrо базиса с целью координации разра6oтJщ. стандартов для соединения различных систем и одновременно по a ЮIюЧить в полную Э'{8Лонную мо.цель все существующие стандарты. . pMкn.дH Прикладной ;  i Представительский  : ,. Служебный Сеансовый Транспортный " Сетевой Сетевой Сетевой сетееоА Канальный Канальный Канальный OЫ Физический Фмзический Физический переД.." Прикладной Представительский Сеансовый Транспортный Сетевой Канальный Физический Ри(:. 1.5. Стеки протоколов 0$1 в cpabheJ-lИИ с четырехуровневой моделью . i УРОВНIЦЩРИС. 1.5. нумеруются снизу вверх от 1 до 7, и предполarается, что в диarpамме имеется пользоват€Щь А (вверху левоrо стека), желающий связаться с ПОЛI4С?вателем В (вверху правоrо стека). Информация от пользователя А долЖн ;бrrь послана вниз по уровням  к уровню 1, rде она передается через  ,уровню 1 пользователя В; затем она перемещается вверх через аналоrич Hble урови  к пользователю В. На рис. 1.5 показан промежуточный узел мж.цу двумя пользовательскими узлами. Эrот узел имеет отношение к Map шрутизацuu информации от пользователя А к пользователю В и в обратном направЛении, и поэтому выполняет только функции, связанные с первыми тpe мяуровнями (см. небольшие стеки в центре рис. 1.5). Ситуация, коrда четыре верхних уровня существуют тольк в конечных пунктах, довольно часто про ИСХодит  сети. Исключением является случай, коrда требуется перекодировка ОДноrо типа данных в дрyroй, тоrда в промежyrочных узлах использовались бы и остальные уровни. Уровни модели OSI можно .рделить на ч,и катеrории. Протоколы четырех верхних уровней выполняют функции орraнизации и представления данных таJЩМ способом, который в JП'щ'е Meeт смысл только для конечноrо пользова теля. Они соответствуют урОВ!lЮ оания и ПРИКЛ8Дному уровню. Про токолы этих уровней должны быть соrласованными для пар связывающихся проrpамм конечных пользователей. 
€Лава 1. Общий обзор языка 9 Уровень 3 (Сетевой) занимается маршрутизацией сообщений между приложе-- киями' через промежyroчные узлы. Протоколы этоrо уровня должны быть co rласованы для всей сети. Два нижних уровня занимаются физической передачей сообщений между :Смежными узлами. Протоколы должны бьпь соrласованы между каждой парой :смежных узлов. а Прнкладной (Application) уровень (7й) обеспечивает интерфейс пользователя с коммуникационной системой. В качестве примеров можно привести электронную почту, распределенные базы данных и сетевые операционные системы. tt] Представнтельскнй (presentation) У{Jовень обеспечивает общий формт представления данных для прикладноrо уровня. ОН позволяет хост  устройствам связываться между собой, даже если они используют различ ные представления данных. Например, разные WеЬбраузеры (протраммы npосмотра) обеспечивают различные пользовательские интерфейсы (то есть являются разными приложениями), но все они понимают формат НТМLстраниц, формат изображений JPEG и т. д. Эти файловые форматы являются примерами протоколов представительскоrо уровня, тотда как сами браузеры постоянно находятся на прикладном уровне. Поэтому службы. которые поддерживает представительский уровень, обеспечивают . такие услуrи, как передача файлов, протоко.rИ.1 виртуальных терминалов, : сжатие, преобразование кодов и шифрование. . ::8 Сеансовый (Session) уровень разделяет поток данных, формируемый .. , службами представительноrо уровня на несколько основных потоков  . сеансов (связи), которые посылаются через систему и управляют взаи модейсtвиями между парам и сообщающихся прикладных процессов. Сеансы мотут быть короткими или длинными, включающими одно или несколько взаимодействий с помощью обмена сообщениями, например дозатор наличных денет банка на компьютер; терминал. зареrистриро . ванный в удаленном компьютере. У слуrи, предоставляемые представи тельскому уровню, включают орrанизацию/завершение сеанса, идентификацию/реrистрацию, синхронизацию передачи данных и сообщения об исключительных ситуациях. [] Транспортньtй (Тransроrt) уровень обеспечивает начальную установку канала связи, передачу данных и заключительное освобождение канала. Для передачи данных он взаимодействует с сетевым уровнем, чтобы rарантиро вать свободное от ошибок виртуальное прямое соединение, тде связь про исходит в правильной последовательности. В случае котда компьютеры об 1 Хает  любое устройство, подключенное к сети и использующее ПротОКолы TCP/IP.  Пер. 
10 Передача данных в сетях: инженерный подход ладают мноrозадачными возможностями, транспортный уровень rарантиру ет, чro связь происходит в правильной последовательности и выполняет любое требуемое мультиплексирование или разделение каналов. [] Сетевой (Network) уровень связывает коммуникационные каналы (зве нья) данных в rлобальную сеть, которая соединяет все "открытые" систе мы, т. е. выполняет маршрyrизацию передач данных из узла источника к узлу адресата. Он реализует правила маршрyrизации пакетов через сеть и, если это необходимо, правила управления потоком данных, rарантирую .' щие, чтобы не слишком MHoro пакетов находилось в системе. [] Канальный (Data Link) уровень. Ero иноrда называют уровнем KaHa ла или звена данных. Он rарантирует надежную связь на физическом уровне. Протокол этоrо уровня определяет структуру данных, напри мер, размер кадра или пакета, и имеет дело с такими аспектами, как управление потоком данных, обнаружением и устранением ошибок. [] Физический (pbysical) уровень имеет дело с физическими характеристи ками линии связи  механическими и электрическими  и обеспечивает средства для передачи битов данных через непрерывный связной путь. Протокол этоro уровня оперирует с такими деталями, как размер, потери и частотные характеристики кабеля, тип соединителя, ,размещение штырь ков контактных разъемов, уровни напряжений и кодирование передачи. Модель OSI четко определяет службы, интерфейсы и протоколы. Архитектура Intemet очень проста. Она была разработана с позиций передачи данных, TOrдa как в действительности идея Iпtеmеtмодели базируется на компьютерах. Она имеет большое количество уровней, роли которых не вcerдa четко определены. Друrие же уровни, такие, например, как уровень канала данных (канальный), ЯВЛJlЮТСЯ неуправляемыми и часто разбиваются на подуровни. Он проектиро вался для решения общих проблем связи и был разработан прежде, чем были разработаны протоколы. Orcyrcтвие опыта работы с протоколами и работа на крупные корпорации привели к сверхсложному решению для этоrо уровня. С друroй стороны, модель Internet в действительности не является формальной моделью, она просто устанавливается BOKpyr работающих протоколов. Она имеет меньшее количество уровней, но не очень хороша для описания вещей, ОТличных от TCPIIP. Модель OSI популярна, но ее протоколы не используются так Широко, как Internet. Протоколы TCPIIP более популярны. 1.4. Структура книrи в этой книrе мы придерживаемся иерархической мноrоуровневой модели, xo тя, в отличие от большинства книr по данной тематике, мы начинаем с верхних уровней и спускаемся вниз (рис. 1.6). 
 1. Общий обзор языка 11 Служебный . Прикладной "1 ::",?,<,-T.м-.""!::'-""""7 ;) > 'i ; ' , ., f""... Прикладной Прикладной ' а r; '.,  , ..  &1". ,;. . . . (7, , ',-j Internet Представительский Сеансовый Транспортный Сетеаой Квнальный Физический ," S Транспортный :<"". у .. Сетевой j Канальный Среды передачи Физический , ... '". '. Рис. 1.6. Структура этой книrи Е rоуровневая модель HeMHoro абстрактна, так что лучший способ увидеть, , ;,: , происходит,  привести пример. Превосходным примером системы связи " ется Internet, обеспеченный различными инструментальные средствами, op ыe можно использовать для TOro, чтобы видеть, что же фактически в этой Me происходит. 1troбы показать различные принципы в действии, возьмем случай просмот Ia' домашней страницы Института телекоммуникационных исследований tInstitute for Telecommunication Research) Униве1'Ситета Южной Австралии. ,&О домашняя страница дана на рис. 1.7. Здесь показано ее представление в jpaузерах только одноrо типа. Браузеры друrих типов MOryт отображать ее _колько иначе. Сами WеЬраузеры находятся на прикладном (7M) ypOB  модели 081. 'Web-браузер интерпретирует НТМL--страницу, которая является примером IIpoтoкола 6ro уровня. "'eb--страница, которая выrлядит так, как показано на рис. 1.7, кодируется (на J!Зыке HTML) следующим образом: <!,ООСТУРЕ HTML PUBLIC "/ /И3С/ /ОТО HTML 3.2 Final/ /EN"> <Ьtrnl> <head> <title>Welcome to the ITR web site</title> </head> <Ьody link"#OOOOFF" alink"#800080" vlink"#FFOOOO" text"#OOOOOO" leftmargin"O" topmargin"O" bgcolor"#FFFFFF"> </body> </html> 
12 Передача данных в сетях: инженерный подход )lт;IIII.J\t:"tOl 1 еl("ОПIlП1Jn!f',''1lrнrl' Hp'>t'1th. М,,о'&пН In\elne\ litplOlel . [ ,::,:"  , ' ,: i1 C ,"   ,,,;, ']'J ", , :! r1 JI.и.uiu.eO.I. lII.II , J r::r:;;E:1 "f' ,д...ц.п.,. C..,.,.., . t.f ., !\:.', ..с.,-.... " ",. tifl' .;  .  ..OI!. , Abнt lI. iijjj'" """'" 'i1iii tиiJ,пl$ .  'tI.S''I/II' SYIlI,т. : JTRAqтDnll.dVIl.п ."'. -:- V,,ncl,. '. ..  :",'-<",. '."t'OMt.fUNICA TIONS RESEARCH SPECIAL EVENTS .$1 Post g raduate Research Scholarshi p s ?:...:: ,':" Qиlck L/лlt,l I ,.,.... ..Itot . linIt 10 V' .,..... ':::- $'lIlClllh. fTR 11ft. :;-\";: . Рис. 1.7. Пример домашней страницы 'ТА Вначале отметим, чro, Т. к. этот пример пользуется в Intemet, rде четко опреде- ленный сеансовый уровень oтcyrcтoyeт, 1'0 взаимодействие приложения с сете- выми проrpаммами компьютера работает следующим образом (Протокол 1.1). Сначала наш компьютер соединяется с компьютером IТR и запрашивает файл http://www.itr.unisa.edu.au. По строке 3-ей (сверху) листинrа видно, что прота- кол, который в нем используется это НТТР/l.1, что наш компьютер может принимать все что yrодно (строка 4), что он использует анrлийский язык (строка 5), определенный тип браузера (строка 7) и т. д. Компьютер IТR отвечает, посы- лая код результата 200, в котором roвориrcя, что запрос принят и дальше после- дует файл. Затем он посылает этот файл. Однако во время получения файла, браузер замечает, чro тот содержит изображение, и открывает второе соедине- Ние, чroбы получить это изображение. Так как это довольно меШ1енное соедине- Ние, то данные поставляются ПРИJ:IоженИlO "кусками". эти куски в общем случае кратны 536 байтам, чro и определяет размер используемых здесь TCP--сеrмеmов. ,,'':' :::kZ7,1=, CONNECTION 1: Connecting to server CONNECTION 1: Client to Server (250 bytes) 
rввa 1. Общий обзор языка T httр://www.itr.uпisа.еdu.аu/НТТР/1.1 ' cept: */* kceptLanguage: engb cePtEncoding: gzip, def1ate Q.erAgent: Mozi11a/4.0 (compatible; MSIE 5.5; Windows 98) " . )pst: www.itr.unisa.edu.au 'oxyconnection: KeepAli ve \ i:': :r:agma: no-----cache 13 CTION 1: Server to C1ient (536 bytes) 1.. P/1.1 200 ОК te: Sun, 29 Ju1 2001 16:38:27 GМТ Jrver: Apache/1.3.9 (Unix) :' ,;ansferEncoding: chunked OontentType: text/html .! ООСТУРЕ HTML PUBLIC .. / /W3C/ /ОТО НТМL 3.2 Fina1/ /ЕМ"> t,,'. tm1> I;; ead> it1e>we1come to the ITR web site</tit1e> </head> .... <body link"#OOOOFF" a1ink"#800080" v1ink"#FFOOOO" :text="#OOOOOO" leftmargin"O" topma:t;gin="O" bgco1or"#FFFFFF"> ,v align"center"><center> " <table BORDER"O" CELLPADDING=="O" CELLSPACING="O" WIDTH"100%" 'ыight=" 10'0% "> <tr> td va1ign"center" а1 CONNECTION 1: Server to C1ient (1072 bytes) Align="center"><1webbot bot"ImageМap" startspan ONNECTION 1: Server to C1ient (160В bytes) НREF"tech res/tech res.htm1"><AREA SНAPE"RECТ" C()()RDS"140, 106, 208, 124"   НREF"about us/about.html"></МAP> <img src" images/itrnew.gif" width <font face"verdana, aria1, he1ve tica" size=="2"><form action="/cgibin/htsearch" methods"post"> 
14 Передача данных в сетях: инженерный подход cONNEcтrON 2; Conпecting to server CONNE:cтroN 2: Client to Server (307 bytes) GET http://WWW.itr.uniSa.edи.aи/imageS/itrnew.gif HTTP/1.1 Accept: */* Referer: http://www.itr.Unisa.edи.aи/ AcceptLanguage: engb AcceptEncoding: gzip, def1ate UsеrЛgеnt: Mozi11a/4.0 (compatible; MsrE 5.5; Windows 98) Host: www.itr.unisa.edи.aи ProxYConпection: КеерЛlivе PragIna: nocache CONNECТrON 1: Server to Client (450 bytes) type=="hidden" name"config" va1иe"itr"><inpиt type"hidden" name=="method" value"or"><inpиt type"hidden" name"fonnat" valиe=="bиiltinlong"> <font face"verdana, arial, helvetica" size"l"><b><p>Search:</b> <input type"Text" name"words" size"20"> <input type="Submit" name="subrnit" valиe="go"> </font></font></p> </f01:1.l1':> </td> </tr> </table> </center></div><! crcsatsys .html> </body::. </html::. CONNECTrON 2: Server to Client (536 bytes) НТТР/1.1 200 ОК CONNECTION 2: Server to Client (1072 bytes) CONNECТION 2: Server to Client (1608 bytes) CONNECТION 2: Server to Client (1608 bytes) CONNECТION 2: Server to Client (1072 bytes) CONNECТION 2: Server to Client . (1608 bytes) CONNECТION 2: Server to Client (1608 bytes) CONNECТION 2: Server to Client (1072 bytes) CONNECТION 2: Server to Client (536 bytes) CONNECТION 2: Server to Client (536 bytes) 
rлава 1. Общий обзор языка 15 CONNECTION 2: Server to Client (8040 bytes) CONNECTION 2: Server to Client (3752 bytes) CONNECTION 2: Server to Client (4824 bytes) CONNECI'ION 2: Server to Client (4824 bytes) t';ONNECTION 2: Server to Client (4589 bytes) CONNECTION 2: Server to Client (3216 bytes) CONNECTION 2: Server to Client (3405 bytes) fDNNECTION 1: Server disconnected CONNECTION 2: Server disconnected Следующим, более низким уровнем, является транспортный с протоколом ТСР trransmission Control Protocol, протокол управления передачей). В TCPIIP (lnternet Protocol, межсетевой протокол) каждый ТСРсеrмент размещается в двух IPпакетах, так что два таких пакета оказываются связанными. 'абота на этом уровне начинается так, как показано в приведенном ниже Дисплейном протоколе 1.2. Каждая строка представляет IРпакет, и боль HCTBO пакетов содержит TCPcerMeHTbI, хотя некоторые содержат дей IfarpaMMHbIe UDРпакеты (см. разд. "Протокол пользовательских дейта ,Ра.мм" 2Л. 4) для запроса сервера имен hestia.clara.net. Это локальный pBep имен, который наш компьютер (те) ИlОльзует для запроса aдpe «iюв. Первая проблема, с которой приходится сталкиваться компьютеру, Это контакт с сервером имен. В строке 1 выдается АRРпакет, за .рашивающий адрес локальной сети, rде может находиться сервер имен. l,Iолучив ero, компьютер посылает на сервер имен (соединение через порт ;1300) пакет (строка 2), запрашивающий адрес http://www.itr.unisa.edu.au. Сервер имен отвечает, что каноническим именем является Irttр:llwww.itr.uпisа.еdu.аu.ареальнымсhаrli.lеvеls.uпisа.еdu.аu. Запро ры сервера имен приведены в разд. 4.13.5. Затем посылается друrой ARP ,ianрос, чтобы найти узел, к которому нужно посылать запросы для eharli.levels.unisa.edu.au. Конечно, этот адрес находится не в нашей сети, НО маршрутизатор нашей сети, ответственный за орrанизацию трафика к друrим сетям, выдаст ответ с этим адресом. До этоrо момента вся деятель ность была направлена только на установку соединения, а не на посылку самих данных. Имея необходимый адрес, компьютер посылает ero в виде cerмeHTa в порт 80 (порт WebcepBepa), требуя, чтобы было установлено Соединение (строка 5). W ebcepBep отвечает (строка 6) подтверждением на запрос и разрешает соединение, а наш компьютер подтверждает это (CTpo ка 7). Это трехкратное подтверждение (квитирование) связи и устанавлива ет ТСРсоединение. Наконец, в строке 8, выполняется посылка данных, KO торые содержат описанный выше запрос. Сервер отвечает (строка 9) подтверждением, но еще не посылает какихлибо данных. Данные следуют 
16 Передача данных в сетях: инженерный подход в строке 10, что наш компьютер (те) и подтверждает в строке 11. Это co единение имеет, по предварительной доrоворенности, максимальный раз мер cerMeHTa 536 байтов, так что TCPcerMeHTbI имеют этот же размер. За тем от сервера следуют еще два таких cerмeнтa с подтверждением, выдаваемым в строке 14. Остальные данные следуют в cerMeHTax строк 15, 16, 18 и 21 с подтверждениями в строках 17 (двух cerMeHToB), 19 и 22. Строки 20, 23 и 24  трехкратное подтверждение BToporo соединения, op rанизуемоrо для получения изображения. ,c;;/"l::==::::::::: i=:: : ::::: ::::i::::::::= ] 1 arp reqиest for hestia.c1ara.net 2 те.1300 > hestia.clara.net.53 3 hestia.c1ara.net.53 > те.1300: 4 arp reqиest for charli.1eve1s.unisa.edu.au 5 те.1305 > char1i.1eve1s.unisa.edu.au.80: 6 char1i.1eve1s.Unisa.edu.au.80 > те.1305: 5637115 7 те.1305 > char1i.1eve1s.unisa.edu.au.80: 8 те.1305 > char1i.1eve1s.unisa.edu.au.80: 9 charli.leve1s.unisa.edu.au.80 > me.lЗ05: 10 charli.1eve1s.unisa.edu.au.80 > me.lЗ05: 11 те.1305 > char1i.1eve1s.unisa.edu.au.80: 12 char1i.1eve1s.unisa.edu.au.80 > те.1305: 13 char1i.1eve1s.unisa.edu.au.80 > те.1305; 14 те.1305 > char1i.1eve1s.unisa.edu.au.80: 15 char1i.1eve1s.unisa.edu.au.80 > те.1305: 16 charli.leve1s.unisa.edu.au.80 > те.1305: 17 те.1305 > char1i.1eve1s.unisa.edu.au.80: 18 charli.1eve1s.unisa.edu.au.80 > me.lЗ05: 19 те.1305 > char1i.1eve1s.unisa.edu.au.80: 20 те.1308 > char1i.1eve1s.unisa.edu.au.80: 21 char1i.1eve1s.unisa.edu.aи.80 >те.1305: 22 те.1305 > char1i.1eve1s.unisa.edu.aи.80: 23 char1i.1eve1s.unisa.edu.aи.80 > те.1308: 5641263 24 те.1308 > char1i.1eve1s.unisa.edu.aи.80: 1+ А? www.itr.unisa.edи.aи. (38) 1 2/3/3 CNAМE cha (201) s 5637114:5637114(0) win 8192 <mзз 536, sасkOК> S 2454387047:2454387047(0) ack win 9112 <mзз 536> . ack 1 win 8576 р 1:286(285) ack 1 win 8576 . ack 286 win 9112 р 1:537(536) ack 286 win 9112 ack 537 win 8576 . 537:1073(536) ack 286 win 9112 р 1073:1609(536) ack 286 win 9112 ack 1609 win 8576 1609:2145(536) ack 286 win 9112 2145:2681(536) ack 286 win 9112 ack 2681 win 8576 р 2681:3217(536) ack 286 win 9112 . ack 3217 win 8576 S 5641262:5641262(0) win 8192 <mзз 536,засkOК> р 3217:3667(450) ack 286 win 9112 . ack 3667 win 8126 S 2455265723:2455265723(0) ack win 9112 <mзз 536> . ack 1 win 8576 
fлaва 1. Общий обзор языка 17 Фактические данные, посьmаемые на канальном уровне для транспортировки :rrиx IPnaкeтoB, будут зависеть от используемой технолоrии. Они изменяются 80 время cBoero путешествия по узлам сети. Путь из Лондона в австралийский rород Аделаида имеет 23 транзитных участка. Начало  в портативном KOM пьютере в rлазrо с телефонным подключением через модем к поставщику ус- nyr (провайдеру) Claranet Internet Service Provider. Следующий ниже список направляет эти сообщения на WebcepBep в Австралии. Довольно замыслова тый маршрут этоrо путешествия показан на рис. 1.8. . 1. ftHk35.access.clara.net (195.8.83.35) в Лондоне 2. accessfeOOObannerstarbuck.router.clara.net( 195 .8.83 .128) в Лондоне (Claranet) З. ge500bannerbildad.router.clara.net {I95.8.68.62) в Лондоне (Claranet) 4. atm60teleepeleg.router.clara.net (195.8.68.158) в Лондоне 5. fastethernetl0.lthicr02.carrierl .net в Лондоне (Carrierl AG, Цюрих) '6. fastethemet400.1 thbir I.carrierl.net (212.4.203.209) в Лондоне 7. posl3O.l onbbr02.carrierl.net(212.4.200.121) в Лондоне 8. posI30.nycbbr02.carrierl.net (213 .239 .20.254) 9. gigabitethernet20.nycpni03.carrierl .net (212.4.193.202) ]0. p4I.nycmnykr7.bbnplanet.net(4.24.163.17) в ИьюЙорке (BBN Planet) 11. p20.nycmnylnbrl.bbnplanet.net( 4.24.7.1) в НьюЙорке ,12. plO.nycmnylbrl.bbnplanet.net( 4.24; 10.82) в НьюЙорке :C t1 . pl0.nycmnylbal.bbnplanet.net(4.24.6.230) в НьюЙорке .14. plO.xnyclmci.bbnplanet.net (4.24.7.70) в НьюЙорке <15. acrlloopback.SantaClara.cw.net (208.172.146.61) в СанФранциско (кабель и беспроводная линия) 16. -(208.1 72.147.210) 17. optusnetworks.Sydney.cw.net (166.63.225.166) в Сиднее 18. GigEthI200.ia4.optus.net.au (202.139.191.18) в Сиднее (CWO Infrastructure Network) 19. SARNOInt.ia4.optus.net.au (202.139.32.206) в Сиднее 20. ethernetl.cityeast.unisa.gw.saard.net (203.21.37.11 О) в Аделаиде (South Australian Academic, Research and Development Network) 21. MLgate.levels.unisa.edu.au (130.220.10.2) в Аделаиде (Uni ofSouth Australia) 22. MLCamp.levels.unisa.edu.au (130.220.2.106) в Аделаиде 23. www.itr.unisa.edu.au (130.220.36.143) в Аделаиде 
18 Передача данных в сетях: инженерный подход <cr..  "'.1. '" H" .. ....... .  . . !!L . , ... ,.  c"\l'" ,  "  ;4, и ,>  .t;!.': Аделаид- СИДней   .  ..C .. .>. ;r \.. "!f. Рис. 1.8. Маршрут к WebcepBepy 'ТА Основная работа IP состоит в изоляции верхних уровней от деталей работы сети так, чтобы невозможно было сказать, какие типы передач фактически ис пользуются. Начальное соединение выполняется по телефонному проводу с использованием модема и РРРпротокола (протокол "точкаточка", см. разд. 5.9.1), а имена различных компьютеров вдоль маршрyrа rоворят, что ис пользуют А ТМ (см. разд. 5.8.2), быстрый Ethernet (см. разд. "Быстрый Еthеmеt",2Л. 5), rиraбитовый Ethernet (см. разд. 'Тuzабuтовый Ethemet, 2Л.5) и, почти определенно,  американскую синхронную оптическую сеть 80NET (см. разд. 5.8.1). Трафик к Австралии часто проходит через Америку, тorдa как имеются MHoro резервных мощностей через Атлантику. Каналы, проходящие через Тихий океан, часто прокладываются через спyrник, но данное соедине ние использует кабель и оптоволоконную линию. Вы можете просматривать маршрyr Iпtеrnеtсоединения с помощью проrpаммы traceroute (UNIX) или tracert (ОО8). 
. I , ,rлава 2 .1 L/ / \с точки зрения пользователя .1. Данные пользователя \С fkiльзователи располаrаютея на верхнем уровне иерархии коммуникацион- Ной системы. Стратеrия MHoroypoBHeBoro иерархическоro представления. уждавшаяся в 2Лаве 1, предполаrает, что пользователи "видят" систем) лько через свои приложения и изолированы от деталей ее работы. Такая теrия имеет интересный побочный эффект, позволяющий системе связ авлять передаваемыми данными таким способом, чтобы придавать ИIY. )f8иболее эффективную для передачи форму. Этот процесс называется коди- иeM источника. Перед поrружением.R детали TaKoro кодирования необ. ДИМО рассмотреть основные принципы теории информации. ;' ';-' ." -, 2. Введение в теорию информации {' >'t;L ; 2 1. Количество информации "'формация  это знание чеroто, причем вопрос, является ли это "чтото' ,HHЫM  оставим для философов. В нашем случае мы будем иметь дет TO с сообщениями, составленными из одноrо или нескольких символов ,to, что создает эти сообщения, называется источником. Первая попытка ма матически определить количество TOro, что, по предположению, являете: :Н8формацие:>< была предпринята Хартли (Hart1ey) в 1928 rоду. Ero подхо, ЯЛ в с! \ующем. Пусть источник производит одиночный символ, на 'имер, S, который входит в состав полноro набора возможных символьны: значений {Sj, ..., Sn}. Пусть информация, задаваемая этим символом, буде обозначена как ;\. Если источник производит 1 символов, то, интуитивно, ре зультирующая информация должно быть равна 1 х ;\. Хартли связал количf. ство информации с числом возможных выходов, так как он чувствовал, чт Чем больше у источника таких выходов, тем больше информации передаете 
20 Передача данных в сетях: инженерный подход в форме знания Toro, что произошло. Одиночный символ может иметь п воз  1 I можных значении, а если у нас таких символов, то получаем п возможных комбинаций. Если мы roворим, что информация  это функция числа воз можных выходов, то мы имеем ;1 == f(n) и ;1== f(п l ). Кроме Toro, i == 1 Х;1 == 1 xf(п), так чтоf(п / ) == 1 xf(п). Единственная функция, которая удовлетворяет обоим этим уравнениям, это лоrарифм, так что Хартли определил меру информации источника с п различными символами как 1 == logп. Чаще Bcero используются лоrарифмы с основанием 2, которые дают единицу измерения информации, называе мую бит, хотя существует и друrая единица  нат (nat), коrда вместо двo ичных используются натУРШlьные лоrарифмы (с основанием е). Единица бит означает, что информация, задаваемая 1 двоичными символами, равна )Og2 п = Ilog 2 п(= IOg2 п'). Определение Хартли иноrда записывается как . 1 ==  10g2P(S), rде P(S)  вероятность появления одноro символа, а все символы paBHOBepo Jl,ТHЫ. Эro довольно простое определение, но оно справедливо только тоrда, коrда все сообщения равновероятны. Однако обычно это не так. Поскольку интуи тивно информация зависит от вероятности, то для уточнения этоrо определе ния мы должны использовать концепцию вероятности. Если событие являет ся очнь вероятным или не очень, то, как правило, мы можем предсказать, каков будет результат. Эrо также означает, что количество информации, соде ржа щей с я в фактически известном результате, уменьшается. Чтобы по-- дойти к уточненному математическому представлению информации, которая учитывает вероятностный фактор, мы должны слеrка изменить наш взrляд на нее. Вместо TOro чтобы rоворить, что информация  это знание, мы rоворим, ЧТО информация  уменьшение (снятие) неопределенности. Существует чет кая методика измерения неопределенности  теория вероятности. Если мы определим меру неопределенности, то сможем использовать ее для определе ния информации. Эrот подход был использован Шенноном в 1948 roду. Мера неопределенности (обозначим ее как Н(х» должна иметь следующие свойства: [] если два эксперимента имеют равновероятные результаты, то тот эксп римент, у KOToporo больше возможных значений, имеет БОльшую неопре деленность, т. е. Н(хд > Н(Х2), если эксперимент хl имеет больше равно-- вероятных результатов.. чем Х2. Например, неопределенность при 
f:,tJaвa 2. С точки зрения пользователя 21 бросании иrральной кости (6 возможностей, каждая с вероятностью 1/6) больше, чем при бросании монеты (2 возможности, с вероятностями 1/2). Обратите внимание  последний случай соответствует неопределенно сти в определении информации Хартли; D если имеются два независимых эксперимента, неопределенность относи тельно результатов обоих экспериментов должна быть равна сумме неоп ределенностей результатов каждоrо индивидуальноrо эксперимента; I!J . если результаты эксперимента разделены на две rруппы, то неопределен ность Bcero эксперимента должна быть равна сумме неопределенностей каждой из rрупп, взвешенных вероятностями соответствующих rрупп.  первых свойства требуют чтобы как. и прежде мера Н(х) была основана  лоrарифмах. Третье свойство потребовало от Шеннона добавления Bepo OCТHЫX множителей. Он определил неопределенность, или энтропию слу jaйноrо события (величины) Х, которое может иметь п возможных результа 1.08 (значений), получаемых в результате экспериментов с вероятностями Рl, i' ,,.,Pп, как H(X)= Lk Pk log2 Pk' Qнтpoпия, которая является неопределенностью события Х, имеет следующие ioйства:  А 01' она максимальна, коrда каждый возможный результат равновероятен; !. ':  - . ,упорядочивание различных вероятностей не имеет значения; \' . tt,. 'энтропия равняется нулю только тоrда, коrда нет никакой неопределен ности (то есть коrда вероятность каждоro из результатов равна 1); ! добавление события с вероятностью О к набору возможных значений слу : чайной величины не изменяет энтропию; r;,'. энтропия увеличиваеся с числом возмоных экспериментальных резуль f,: татов (число событии, бросков иrральнои кости имеет больше энтропии, ,'. чем число бросков монеты); 't,' .. энтропия является непрерывной функцией ее apryMeHТOB;  энтропия двух независимых событий равна сумме энтропий индивиду :1, альных событий; i!t если набор возможных результатов экспериментов разбить на rpуппы, то для получения результирующей энтропии нужно значения энтропий ин дивидуальных rрупп умножить на их статистические веса. Некоторые из этих свойств показаны на рис. 2.1, rде изображена энтропия д80ичноrо случайноro события (имеющеrо только два возможных значения), как функция вероятностей. Она имеет максимум, равный 0,5, в точке р == 0,5 
22 Передача Данных в сетях: инженерный ПОДХОД (в этой точке одинаково вероятно, что событие произойдет, как и то, что оно не произойдет). Кроме тoI'o, видно, что энтропия равна нулю как для собы тия, происходящеrо всеrда (р == 1), так и для события, не происходящеrо ни коrда (р == О). Энтропия и информация связаны следующим образом: H(X)== LkPklog2Pk == L PkI(X = X k ), т. е. энтропия  это средняя информация для данной (дискретной) случайной величины (с k возможными значениями). 1 -- -- 0,9 - ---------- ------- )( 0,8 --- ------------ ----- I! 0,7 ------ ------------------ ----- s ':;: 0,6 - ----------------- -----  0,5  ------------ -- с 8. 0,4  ---------------- -  0,3  ----------------------- <'> 0,2 0,1 ------------------------- О о 0,2 0,4 0,6 0,8 1 Вероятность события р Рис. 2.1. Энтропия двоичной случайной величины ДЛЯ различных вероятностей 2.2.2. Взаимная информация Итак, информация  это уменьшение (снятие) неопределенности. Orсюда следует, что, cтporo rоворя, коrда речь заходит об информации, необходимо рассматривать два события: одно "исходное", рассматриваемое перед получе- нием информации, и друI'ое "предначертанное", рассматриваемое после Toro как информация получена (предполаrается, что второе событие дает инфор- мацию о первом). Иначе rоворя, насколько меньшую неопределенность мы получим относительно Первоro события, получив определенные знания о втором. Термин взаимная информация часто используется для Toro чтобы подчеркнyrь, что требуется рассматривать два события. Рассмотрим два события Х и У. Информация об Х передаваемая событием У, равна I(Х; У) == Н(Х)  H(XI У). Н(Х)  это неопределенность события Х. н (Х I У)  неопределенность события Х при условии, что У  известно, и то, насколько меньше становится эта неопределенность по сравнению с первона- 
[;лава 2. С точки зрения пользователя Ч.8Льной, коrда происходит событие У и определяет их взаимную ИНфОРМе цию. Если Х и У независимы, то Н(Х I У) == Н(Х), так что 1(Х; У)==о, и У не дае Нflкакой информации об Х. Обратите внимание, что I(Х; У) == I(У; Х). Эти се отношения показаны rрафически на рис. 2.2. Рис. 2.2. Отношения между энтропией и информацией для двух событий 2.3. ИСТОЧНИКИ информации Источник информации  это производитель информационных СИМВОЛ(J (значений). Источник без памяти  это -епециальный тип источника, rде в( роJlТНОСТЬ производимоro символа не зависит от какоroлибо из Предыдущи имволов. Если вероятность каждоro символа неизменна во времени, то rOB( Рит, что источник стационарный. Поэтому для TaKoro источника ,\ Р(8; == ak) == Pk \/;. prpOKa символов, произведенная таким источником 8.828з.. .8 п , rде все СИf\ волы при надлежат одному и тому же распределению вероятностей. ЭНТРОПI1 rnoro источника определяется как Н == Lk Pk log2 Pk' rде сумма берется по всем k и Pk > о. Набор допустимых символов называете Qllфавuтом. Бросание монеты или иrральной кости формирует источник без памяти, т. I ICaждый бросок не зависит от предыдущих. Если имеется не которая завис! Мость от предыдущих результатов, то roворят, что источник имеет памят Большинство реальных источников имеют память. Например, символы 1- странице имеют память, потому что они не независимы. Так за буквой "q" t .нrлийском языке) почт.. всеrда будет следовать буква "и". Источники с памятью  это обычно не индивидуальные символы, а сю рее rруппы символов, которые формируют различные сообщения. Кажд< 
24 Передача данных в сетях: инженерный подход буква анrлийскоrо языка  это символ, НО только некоторые rpYnnbI сим волов формируют праВИЛЬНЫе (допустимые) комбинации выходов источ ника. Энтропия TaKoro источника рассчитывается по сообщениям, а не по символам. Если некоторые из возможных комбинаций символов не фор мируют правильных сообщений, то rоворят, что они избыточны (напри мер, "thear"). Вычисление энтропии источников с памятью требует рассмотрения rрупп зависимых символов вместе с ситуацией, коrда результирующие сообщения можно рассматривать как независимые. Тоrда энтропия рассчитывается по сообщениям, а не по символам. Для некоторых источников сделать это чрез вычайно трудно, потому что для большинства rрупповых символов зависи мость существует. Снова используя пример анrлийскоrо языка, следует OТMe тить, что ero индивидуальные слова или даже предложения не являются независимыми. В таких случаях энтропию индивидуальноro символа можно вычислять, лишь оценивая (уraдывая) вероятность следования HeKOТOporo символа за предыдущим. Для больших участков анrлийскоrо текста люди MOryт правильно oTraдbIBaTb следующий символ HeMHoro меньше чем в поло вине случаев, что приводит к энтропии, которая лишь HeMHoro больше OДHO ro бита на символ. 2.4. Кодирование Источники обычно не производят индивидуальных сообщений в удобной форме. Разrоворный язык, например, состоит из нескольких сотен тысяч слов (в случае анrлийскоro языка из мноrих миллионов слов), и иметь отдель ный символ для каждоrо из них непрактично. Решение состоит в том, чтобы отображать сообщения на более управляемый набор кодовых символов (зна чений). Эrот процесс называется кодированием. Алфавит кода может быть тем же самым или отличным от исходноro алфави та. Часто, но не обязательно, это двоичный алфавит. 2.4.1. Свойства кодов Код называют разборчивым (distinct), если все кодовые слова различны. Код называют однозначно дешифруемым (uniquely decipherabIe), если любая ко- нечная строка из закодированной строки соответствует по крайней мере oд ному сообщению. Код называют моментальным (instantaneous), или префиксновободным (prefixfree), если никакое кодовое слово не является префиксом какоrолибо 
f!raвa 2. С точки зрения пользователя 2t. дpyroro кодовоrо слова, что делает код также и однозначно дешифруемым. Для проектирования кодов можно использовать так называемое дерево решений. Необходимым и достаточным условием моментальноro кода является Hepa венство Крафта. Оно yrверждает, что для моментальноro кода сумма разме ров алфавита D в степени индивидуальных длин слов /;, должна быть меньше или равна 1, т. е. L:. Dli :s;). Для однозначно дешифруемоrо кода такое же условие определяется не равенством МаКМWlЛана, так что однозначно дe шифруемый код существует только Torдa, коrда существует также и MrHO ieнный код. Эrо неравенство часто называют HepaвeHcmвoM Крафта МаКМWlЛана. о А с о о 100 101 1100 1101 ...... 1110 1111 Рис. 2.3. Кодовое. дерево Jtnя проектирования кода можно использовать кодовое дерево (рис. 2.3). Ha !fPIнаясь в корне, дерево разветвляется для каждоrо возможноrо кодовоro F;Имвола. Каждый узел в дереве соответствует набору кодовых символов и, едовательно, возможному кодовому слову. Код является однозначно дe tиuфруемblМ, если каждый исходный символ представлен отдельным узлом. J(од является моментальным, если каждый исходный символ представлен kОнечным узлом (то есть листом) дерева. На рис. 2.3 узел А  корневой. Моментальный код может быть сформирован из узлов В, .Р, G, J, К, L и М lIIIи их подмножеств. На рисунке показаны коды О, 100, 1 О 1, 1100, 11 О 1 и .illl. Если бы не было одноrо из промежуточных узлов (скажем, О), то при Удалении нижележащих кодовых слов этоrо узла (Р и G, например) код пере haл бы быть моментальным. Моментальный код можно расширять с приве Цением ero к форме HOBoro MrHoBeHHoro кода, только путем добавления к Rpoмежyrочному узлу концевых узлов. Добавление узла D прибавляет к коду D  1 новых кодовых слов (так как добавляется D новых концевых вершин, а исходный узел больше не может использоваться в качестве кодовоro слова, потому что он больше не является концевым). 
26 Передача дaHНblX в сетях: инженерный подход 2.4.2. Минимальные разрядности кода Если источник (без памяти) имеет энтропию Н, то любой однозначно дешиф руемый код для этоro источника с алфавитом из D символов должен иметь длину (разрядность) по меньшей мере Н Ilog D( = L min ), и существует код с длиной $ (1 + Н / log D). Эrо yrверждение называется теоремой пOMexoycтoй чивО20 кодирования, потому что она определяет самый короткий возможный код, который полностью описывает источник (и поэтому не производит ни каких искажений ИЛИ шума). Для частноrо случая двоичных кодов длина должна быть больше или'равна энтропии в битах. 2.4.3. Избыточность и эффективность Избыточность кода определяется как относительная разность между cpeд ней и минимальной длиной кодовых слов, т. е. как (Lcp  Lmin)ILcp. Средняя длина кодовых слов Lcp == LjP;lI, rде /[  длина кодовоrо слова i и pj  вероятность этоro кодовоrо слова. Близко связанным понятием является эффективность кода (обозначается как 1'), которая определяется как LmiolL cp и обычно выражается в процентах. Обрати те внимание, что избыточность кода равна 1  1'), и если код имеет эффектив ность 100%, то у Hero нет никакой избыточности. Для случая двоичноrо кода L min == Н, так что можно упростить эти уравнения: избыточность== (L cp  Н)IL ср , 1') == H1Lcp. 2.4.4. Типы кодирования Существует четыре типа кодирования, хотя мноrие авторы rоворят только о трех. Математики обычно забывают кодирование линии передачи, в то время как инженерыэлектронщики имеют тенденцию забывать крunтО2рафuческое кодирование. D Кодирование источника. Состоит в максимально возможном сжатии информации до нескольких символов, чтобы сэкономить ресурсы переда чи или памяти. Число исходных комбинаций больше числа закодирован ных комбинаций. 
[лава 2. С ТОЧКИ зреНИЯ пользователя 27 [:J Кодирование канала. Состоит в расширении кодовоrо алфавита, позво ляющем распознавать ошибки после передачи через канал, который мо-- жет искажать или разрушать данные. Число исходных комбинаций MeHЬ ше числа закодированных комбинаций. [:J Криптоrрафическое кодирование. Состоит в таком преобразовании сообщения, чтобы друrие пользователи не смоrли понять ero. Число ис ходных комбинаций равно числу закодированных комбинаций (в общем случае ). tI Кодирование линии связи. Состоит в таком преобразовании сообщения, чтобы ero можно было леrче передавать через среду передачи. Число ис ходных комбинаций равно числу закодированных комбинаций. 5.Кодированиеисточника ли мы хотим эффективно передавать информацию, то для Toro чтобы со-- '1q>aНЯТь низкую среднюю длину сообщения, нужно кодировать наиболее \ :Вероятные сообщения с помощью коротких кодовых слов. Коrда мы знаем ..сходные характеристики источника, очень полезными оказываются CTpaTe  кодирования ШеннонаФано и Хаффмана. Коrда мы не знаем xapaKTe ристик ИСТОЧf'ика, можно использовать друrие методики, такие как 2pyппo ;Ое кодирование (run length encoding), испльзуемое в факсимильной связи, ,. кодирование ЛемпеляЗива (LempelZiv coding), используемое в архивато '":t 'tn pkzip, и т. д. IJeред любым кодированием информации она должна быть приведена к удоб  для обработки форме. В некоторых случаях источник представляет tmформацию в виде дискретных символов, которые MOryт быть закодированы -Прямую. Однако информационный сиrнал, который нужно посылать в сис 'мy связи, это часто аналО20вый сиrнал (например, звуковой или выходной ал датчика), из KOТOpOro перед преобразованием в индивидуальное со-- 1Цение нужно сначала сделать выборку. 'j';' . 2.5.1. Квантование  'qтобы было возможно передавать сиrнал, находящийся в аналоroвой форме, держащиеся в нем данные необходимо некоторым образом обработать  р'чифровать. Например, измерения расстояний  неизбежно аналоroвые, но для передачи их обычно оцифровывают. Ширина монеты в один пенни  ,,20,20... мм, является бесконечным дробным числом, но стоит только это чис по оrраничить некоторым конечным числом цифр, измерение становится оцифрованным. Таким образом значения 20,2 мм и 20 мм являются выбороч ными значениями ширины монеты. 
28 Передача данных в сетях: инженерный подход 2.5.2. Точность квантования Коrда производится выборка аналоrовоrо сиrнала, он квантуется, т. е. oцe нивается ero ближайшими дискретными значениями. Если мы делаем изме реНИJI ширины монеты с точностью до одноrо десятичноrо знака, то нашими . выборочными значениями будут 20,0 мм, 20,1 мм, 20,2 мм, и т. д. Разность между соседними квантованными значениями определяет шаz квантования. Разность между фактическим и квантованным значением называют ошибкой кВантования, которую обозначают символом Е. Максимальное значение этой ошибки равно половине шаrа квантования (рис. 2.4). 1 0.9 0.8 0.1 0.6 0.5 О.. 0.3 0.2 0.1 О О 5 10 15 а 20 1.0 0.9 0.8 0.7 0.8 0.5 0.4 0.3 0.2 0.1 О 0.1 :::::::::::::::"::""""""""""".J"!."".'" ..............:............:......;;....!.................... б Рис. 2.4. Квантование аналоrовоrо сиrнала: а  общий вид; б  фраrмент KBaHToBaHHoro сиrнала Отношение сиrналшум (SNR, Signal to Noise ratio)  это отношение мощности сиrнала к мощности шума. Шумом в этом случае является ошибка квантования: Мы не знаем точноrо значения ошибки на KOHKpeT ной выборке, но мы можем сделать разумное предположение, что все зна чения в диапазоне изменения входноrо сиrнала являются равновероятны ми. Для шаrа квантования d ошибка находится в диапазоне (d/2, d/2). При возведении в квадрат и усреднении это дает мощность шума сР/12 (рис. 2.5, а). Следовательно, мощность шума пропорциональна квадрату шаrа квантования. Альтернативно, если мы имеем сиrнал с q уровнями квантования, то ошибка квантования обратно пропорциональна q2 (рис. 2.5, б) Чем больше количество уровней квантования, тем выше SNR, но тем больше имеется различных информационных символов. Пороrи квантования не обязательно должны быть равномерно распределенными, и чаще Bcero  это не так. В звуковых системах уровни располаrаются по лоrарифмической шкале, так что на низких уровнях их имеется больше, чем на высоких. 
ra 2. С ТОЧКИ зрения пользователя tU2 I. I  ) I ,,) I ...:' . 1",,,1  ., """""k'''''''' I ?y I . - I jj I ф2 ... ... 1. .1 2xd/2 I f/2 2 d 2 d !d// dE =)2 а 29 l /q    I .- . I ._ . I . I . I . .'..  .. ! l' W"" I >. I l/q I)j 2 х l/q I 1 119 2 I 2/ q 1/9E dE  зq2 Рис. 2.5. Вычисление шума квантования б J.5.З. Частота дискретизации   изменяющихся во времени величин, подобных электрическим сиrналам, 'дополнение к точности каждой выборки существует еще одна проблема  iocmoma дискретизации, или скорость выборки (sampling rate). Если частота ;"скретизации слишком низка, то мы не будем способны восстанавливать ал по выборкам.  4 мотрим рис. 2.6. Исходный сиrнал представлен черной линией, и роказанные выборки позволяют должным образом восстановить сиrнал. Oд o, если мы возьмем только каждую вторую выборку, то результатом BOC ОВJIения будет серая линия, в которой мноrие детали исходноrо сиrнала :вотсряны. 9ем выше частота дискретизации, тем больше требуется выборок, "придется передавать большее количество сиrнальных :щачений (символов). ючевой вопрос состоит в том, сколько требуются выборок, чтобы полно ю описать сиrнал. Ответ на этот вопрос требует понимания индивидуаль F компонентов, из которых состоит сиrнал. Мы можем расчленять сиrнал ;на различные частотные компоненты с помощью аНШlиза Фурье. Рис. 2.6. Форма сиrнала при разных скоростях выборки 
зо Передача данных в сетях: инженерный подход 2.5.4. Ряды Фурье С помощью этих рядов почти любой периодический сиrнал можно предста BIiТЬ в виде ряда синусоидшzьных сиrналов. Сила этоrо подхода состоит в том, что если мы определим отклик цепей на синусоиды различных частот, то сможем вычислить, как эти цепи будyr реаrировать на соответствующий сиr нал. Синусоидальные составляющие сиrнала, называемые ero спектром, формируют представление сиrнала в частотной области. Это очень мощный подход к проектированию цепей. Хотя представление сиrналов в частотной области напрямую соответствует физическим объектам в форме волн, напри мер, коrда речь идет об электромаrнитных излучениях (радиоволнах, свете и т. д.), но важно помнить, что представление сиrнала в частотной области  это в своей основе математическая модель. Таким образом, мы можем BЫ полнять частотный анализ сиrналов, которые изменяются не только во Bpe мени, но по друrим параметрам, например, в пространстве. 2.5.5. Вычисление частотноrо спектра Почти любой периодический сиrнал можно представить в виде суммы ряда Фурье. Существует две rлавных формы ряда Фурье  эксnоненциШlЬНая и mpu20номеmрическая. Они эквивалентны вследствие TOro, что e j () = cos() + jsin(). Для экспоненциальной формы сиrнал формируется из v(t) = ICnej21Ulfo/ , rде Сп = ; J v(t)ej21Ulfo/dt . п О То Для реальных сиrналов можно также использовать триrонометрическую форму .!..ао +(аl cosx+q sinx)+(a2 cos2x+b 2 sin2x)+... 2 rде коэффициенты а п = l:.... JТo f(x)cosnxdx и Ь п = 2.1. f(x)sin nxdx . ТОО То" Для триrонометрической формы период обычно принимается равным 2п, что дает 1 L 211 1 1 2" а п = f(x)cosпxdx и Ь п = f(x)sinпxdx. п о  о В качестве примера рассмотрим треуroльный сиrнал, rде у = х/2 в интервале от п ДО п. На рис. 2.7 по казаны три первых члена ряда Фурье для этоrо сиr Нала, а также сумма двух и трех первых членов. С учетом трех первых членов основная форма сиrнала проявляется уже достаточно четко. На рис. 2.8 пока зано приближение, учитывающее 30 первых членов ряда Фурье. 
fлава 2. С точки зрения пользователя 31 Первые три члена Первые два члена Первый член 1.5 о Третий член Второй член 0.5 0.5 1 1.5 8 6 4 2 о 2 4 6 8 Рис. 2.7. Индивидуальные синусоиды трех первых членов ряда Фурье для треуrольноrо сиrнала, у = Х/2, интервал [п, п] Хотя не каждый возможный периодический сиlittlал имеет представление в 8ИДе ряда Фурье, одно из условий TaKoro представления (которое является точным, но не необходимым) состоит в том, что интеrрал квадрата функции должен быть конечным. Такое же условие имеет место и для МОЩ Насти сиrнала (сиrнала с конечной мощностью на периоде). Все решzьные _rnaлы до,лжны иметь конечную мощность, так что все реальные сиrналы -ИМеют представления в виде ряда Фурье. '-яд Фурье непрерывной функции также является непрерывным. Если исход рй сиrнал не является непрерывным, то для ряда Фурье наблюдается эф Wюкт ruббса, коrда ряд Фурье сходится в средней точке разрыва. Ряд Фурье -Имеет примерно 18процентные выбросы на концах разрыва с колебаниями, 'Которые имеют ту же частоту, что и самый высокочастотный компонент в риде Фурье. Энерrия этих выбросов, называемых "ушами rиббса", уменьша ется при N --+ 00, а их амплитуда не уменьшается. Треуrольный сиrнал на рНС. 2.8 имеет разрыв, так что "уши rиббса" присутствуют, но они еще лучше видны на прямоуroльном сиrнале (рис. 2.9). Обратите внимание, что никакой реальный сиrнал не имеет разрЫВОВ, т. к. это потребовало бы, чтобы электро- ны двиrались с бесконечной скоростью, что невозможно. Однако математи ческая форма, которую мы используем для представления реальноrо сиrнала, Может иметь разрывы для Toro. чтобы аппроксимировать сиrнал (примером такой формы является С1)'пенчатая функция). 
32 передача данных в сетях: инженерный подход 2 о 1.5 0.5 0.5 1 1.5 2 8 6 4 2 о 2 4 6 8 Рис. 2.8. Первые 30 членов ряда Фурье треуrольноrо сиrнала, nоказанноrо на рис. 2.7 1.8 \ , \ I , I f , 1.6 1.4 1.2 0.8 0.6 0.4 I 1', , . 1\ // 1\ .. !j о,.  · · -  '\.,  ----------  ,.  ----- ... ..../ I I I , I , , I , I 0.2 O.2 O.4 8 6 4 2 о 2 4 6 8 Рис. 2.9. Ряд Фурье функции у = О, О :s х < 11, У = 11/2, 11 :s х < 211. Пока за н РЯД с 2, 3 и 4 членами и ряд с количеством членов до п = 4. 2.5.6. Частотный спектр Члены ряда Фурье можно использовать для Toro, чтобы определять частот- ный спектр периодических сиrналов. Частотный спектр  это rpафик час тотных компонентов и их амплитуд. Частотный спектр периодических сиrна 
rлава 2. С точки зрения пользователя зз лов называется линейчатым, т. к. он имеет компоненты в точках 1/Т, 2fT, 3fT и т. д. (rде т  период сиrнала). Самая низкая из этих частот 1/Т, называется основной частотой. Линейчатым спектром обладают сиrналы, которые вляются истинно перио дическими, т. е. простираются от  до 00. Хотя реальные сиrналы не обла дают этим свойством, но часто мы можем считать их истинно периодически ми в пределах той временной области, в которой мы их рассматриваем. Тоrда возникает следующий вопрос: как следует обрабатывать непериодиче ские сиrналы? Можно вычислять их частотную характеристику, используя преобразование Фурье. Преобразование Фурье определяется так: F(f) == J: v(tJej2tiftdt . Обратите внимание, что преобразование Фурье  непрерывная функция, и 'поэтому апериодический сиrнал имеет непрерывный спектр, а не линейчатый, ,как у периодических сиrналов. ;Уместно отметить два специальных преобразования. Первое  преобразова Jlие импульса, т. е. дельтафункции Б(t), которая равна 1 в точке t == О, и paB :на О в друrих точках оси времени. Ее преобразование Фурье выrлядит так: F(f) = [ v(t)ej21f1i dt = [ t5(t)ej21ff1 dt = r lej21f1idf+ r Oej21ff' dt = r ldt = 1 . '" ....., J,o - J,..o J,o ;8 более общем случае F(АБ(t)) == А, так что частотным спектром импульса ;Jlвляется константа, содржащая все частоты. ,Вторая функция, стоящая упоминания,  это спектр прямоуrольноrо им ;nyльса. Рассмотрим импульс с амплитудой А в интервале  Tf2 до Tf2 и значе .иием О в остальных точках. F(f) == [, v(t)ej21ifldt == JAej21ifldt == j [ej2tift]:2 == = 2А sin( 21t fI' ) = ATsinc(fI') 2п! 2 Взаимосвязь между частотной и временной областью подчеркивается тем - фактом, что константа амплитуды А является преобразованием делъта функции величины в точкеf== О, т. е. dсlкомпонентом. Кроме Toro, импульс sinc временной области имеет прямоуroльный (масштабированный) отклик в частотной области.  I dc (direct current)  постоянная часть импульсноro компонента.  Пер. 
-84 Передача данных в сетях: инженерный подход Некоторые свойства преобразований Фурье показаны в табл. 2.1. Умножение во временной области соответствует свертке в частотной области, и наобо P'!f. Повторение во временной области соответствует выборке в частотной области (с масштабным коэффициентом), и наоборот. 2.5.7. Минимальная скорость выборки Из изложенноrо следует, что выборке (sampling) сиrнала во временной облас ти соответствует ero повторение (repeating) в частотной области. Поэтому, еи частота выборки больше чем удвоенная полоса частот сиrнала, то мы можем восстанавливать исходный сиrнал, потому что ето повторения не бу дут перекрываться с исходным сиrналом. Следовательно, если аналоrовый сиrнал имеет полосу частот W, то требуется выборка со скоростью, по край ней мере, 2W(или больше). Таблица 2.1. Свойства прео6разований Фурье Параметр g(l) Квантование времени g(t / i) Временной сдвиr g(t  t') Дуализм G(t) Перемножение g(t)h(t) F (с (1)) = G (f) I t'1 G(f) G(f)e-1 2 1« с8ер11<а g(t) * h(t) g(Л СИ * НИ F(j)H(j) Повторение L(g(t)*б(tпt'» пeZ '( G(f)Хб(f )) '( G(f) * б(f )) Выборка L(g(t) х б(t  т» пeZ ВосстаНОВ1Iение сиrнала выполняется пyrем удаления высокочастотных копий Ч8СТОТНоrо спектра с помощью идеальноrо низкочастотноrо фильтра. ПрЯМ<r уrольный частотный отклик соответствует функции sinc во временной области. Обратите внимание  поскольку эта функция имеет бесконечный отклик, то все физические системы будyr обладать некоторыми искажениями. 2.5.8. Импульсно-кодовая модуляция (ИКМ) Имnyльсн<rкодовая модуляция (РСМ, Pulse Code Modulation)  это название процесса выборки аналоrовоrо сиrнала и замены ето дискретными выборками, взятыии в определенные моменты времени. Чем больше делается выборок, тем 
rлава 2. С точки зрения пользователя 35 выше частота соответствующих значений ( символов) сиrнала. Кроме Toro, чем более точно выполняются выборки, тем больше число возможных символов. Символы часто представляются строками двоичных цифр, поэтому чем больше число выборок и выше их точность, тем выше битовые скорости передачи. 2.5.9. Кодирование источников без памяти Кодирование ШеннонаФано Перечислите все сообщения в порядке убывания их вероятностей, затем разбейте этот список на приблизительно равно вероятные разделы (два раздела для двоичноrо кода, три  для троичноrо, и т. д.). Назначьте О  первой части списка, 1  второй, и т. д: Продолжайте процесс до тех пор, пока не останется непронумерованных разделов. Кодирование Хаффмана Процесс кодирования Хаффмана выполняется следующим образом. Символы сообщения, которые нужно закодировать, перечисляются в порядке убывания вероятности (то есть символы с самой высокой вероятностью должны быть в верхней части этоrо списка). Если используется двоичный кодовый алфавит, то две ветви с самыми низкими вероятностями объединяются (со сложением ,ИХ вероятностей), но перед этим одНа из них марkИруется как О, а дрyrая  kaK 1. Затем эти ветви вновь упорядочиваются по вероятности и процесс no 8Торяется. Процесс продолжается до тех пор, пока не останется только одна Ветвь. Затем считываются кодовые слова, причем чтение выполняется в об ,ратном порядке от последнеrо элемента с добавлением в кодовое слово 'встречающихся по пути нулей и единиц. 'Например, возьмем систему со следующими вероятностями: А 0,25; В 0,3; С :0,35; D 0,1. Ранжируем их так: ,а С  0,35; ' B0,3; D A0,25; D OO,1. Самые маленькие веРОЯПЮС11f у элеменroв А и D (0,25 и 0,1 соответственно). Они объединяются в одну вerвь АО, вerвь А маркируется как О, а вerвь D  как 1 (рис. 2.1 О), и выполняется их новое упорядочивание по убыванию вероятнocrn: D C0,35; D AOO,35; [3 B0,3. 
36 Передача данных в сетях: инженерный подход Orносительно упорядочивания компонента АО имеется следующая свобода выбора: располаrать ero можно либо выше, либо ниже компонента с. В каж дом случае мы получим различные, но эквивалентные коды. Затем объединяются компоненты АО и В, причем АО помечается как О, а В  как 1. Это приводит К следующему списку: [] ADB  0,65; [] C0,35, в: котором объединены компоненты АО и В, список переупорядочен, компо нент АОВ маркирован как О, а С  как 1, что дает только одну ветвь, на этом процесс заканчивается. Извлечение кодовых слов выполняется следующим образом (начиная с последнеro столбца, в обратном порядке): [] А: О  от ветви ADB (последний столбец), О  от ветви АО (средний столбец) и О  от ветви А (первый столбец), что дает первое кодовое сло- во: 000; [] В: О  от ветви АОВ, 1  от ветви В (средний столбец), что дает второе кодовое слово: 01; [] с: 1  от ветви С (последний столбец), что дает третье кодовое слово: 1; [] D: О  от ветви АОВ, О  от ветви В (средний столбец) и 1  от ветви D (первый столбец), что дает последнее кодовое слово: 001. Весь процесс кодирования показан на рис. 2.10. 0,35 С  С АОВ)? 0,35 05 1 0,3 В АО 0,35 0,35 0,25 А В 0,3 0,1 О Рис. 2.10. При мер построения кода Хаффмана Чтобы использовать кодирование Хаффмана для кодовых алфавитов, co стоящих из большеrо количества символов, нужно выполнить небольшую модификацию этапа rруппировки: вместо объединения двух самых малове роятных компонентов перед переходом к следующему этапу нужно объеди нять п таких компонентов, rде п  число СИМВОлов кодовоrо алфавита. Эти символы следует использовать для нумерации последних ветвей дерева на 
rлава 2. С точки зрения пользователя 37 различных этапах процесса построения кодов Хаффмана. Отсюда следует, что на каждом этапе этоrо процесса удаляются (п  1) входов (элементов) списка. Поскольку в конце концов мы остаемся с элементом, помечаемым как 1, то в предыдущем списке мы должны иметь 1 + (п  1) элементов, в ero предшественнике должно быть 1 + 2 (п  1) элементов, и т. д. Если чис ло элементов, с которых мы начинаем процедуру, не равно 1 (mod п  1), то нужно прибавлять дополнительные фиктивные элементы с вероятностью о. Число таких дополнительных элементов равно такому наименьшему числу, при котором новое общее число элементов оказывается конrруэнтным 1 (mod п  1). 2.5.10. Кодирование источников с памятью Кодирование (сжатие), использующее алrоритмы Хаффмана и Шеннона Фано, хорошо работает для источников, производящих символы С довольно оrраниченным алфавитом, но оно не работает, коrда алфавит достаточно B лик И каждый символ используется несколько раз. Например, изображение может состоять из мноrих миллионов пикселов, каждый из которых будет иметь HeMHoro разный цвет. В этом случае можно использовать память ис точника. Для таких целей были разработаны друrие типы сжатия. Основные типы сжатия приведены в табл. 2.2. .... Сжатие происходит без потерь, если источник может быть точно восстаНОвлен по сжатым данным. Сжатие с потерями в процессе кодирования отбрасывает некоторую информацию, так что источник не может быть точно восстановлен. Так, например, при сжатии изображения происходит уменьшение количества различаемых цветов. Сжатая версия изображения будет отличаться от исходной, но при должным образом спроектированной системе компрессии она должна восприниматься пользователем почти так же, как исходная. Таблица 2.2. Основные типы сжатия Основа кодирования Тип кодирования Тип сжатия Кодирование на основе сим Подавление повторя Подавление незначащих волов (в информатике зто ющихся последова нулей называется энтропийным КО-- тельностей дированием). Осуществля rpynnoвoe кодирование ется без потерь Статистическое коди ХаффманaJШеннонаФано рование Подстановка образцов Арифметическое 
38 Передача данных в сетях: инженерный подход Таблица 2.2 (окончание) Основа кодирования Тип кодирования Тип сжатия Кодирование на основе Преобразующее KO FFТ синтаксиса (в информатике дирование ОСТ это называется кодирова нием источника). Приводит Ди4хРеренциальное Ди4хРеренциальная ИКМ* к потерям (хотя некоторые ди4кРеренциальныесхемы кодирование Дельтамодуляция (см. *) мoryт приводить к потерям при их комбинаци Адаптивно ях с кодированием на осно- дифференциальная ИКМ* ве символов) Векторное KBaHTOBa CELP (для речи) ние Фрактальное (для изображе ний) Подавление нулей В этом случае один часто повторяющийся символ заменяется специальной лексемой, представляющей сам этот символ и количество ero повторений. Друrие символы передаются без изменений. Чаще Bcero в качестве TaKoro символа используется О (отчеrо и происходит название метода), но это может быть и друrой символ. rpynnoBoe кодирование это расширение предыдущеrо метода, коrда rруппы любых смежных симво- лов изображения заменяются соответствующим одиночным символом и ЧИс- лом ero повторений. Чисто черно-белое изображение, например, можно ко-- дировать просто посылками нужноro количества пар, состоящих из числа белых пикселов, за которым следует число черных. Например, пиксельная ПОСледовательность 1111111000000110000010000000000010 кодируется как 07625119021. Блок из одиннадцати нулей расщепляется на два и представля- ется как 902, поскольку в противном случае 11 нулей были бы перепyrаны с последующим числом единиц (1). Таким образом, здесь 9 является самым большим допустимым количественным значением для нулевых символов. Подстановка образцов в этой методике сжатия общие последовательности символов заменяются специальным мета-символом, представляющим всю последователь- ность. Форма подстановки образцов, например, ЕС вместо Европейскоrо Со- общества, называется ак.ронимом. Два широко используемых алrоритма для 
rлава 2. С точки зрения пользователя 39 подстановки образцов были разработаны Зивом и Лемпелем (Ziv, Lempel) в 1977 и 1978 rодах. В алrоритме 1977 roда первые несколько символов пере даются без сжатия, а затем следующие символы проверяются по предвари тельно переданному набору. Если некоторый образец уже был предваритель но послан, то вместо последовательности символов посылается ее позиция и длина. Алrоритм 1978 rода, улучшенный относительно алrоритма 1977 rода, начинает работу с создания словаря, содержащеrо все символы из алфавита источника, и затем добавляет к нему новые элементы переданных строк. Дифференциальное сжатие Здесь кодируется разность Между предыдущим и текущим символами, а не сам символ. Если имеются взаимосвязи ежду символами (например, выбор ками сиrнала), то разность может быть существенно меньше, чем абсолютное значение, и следовательно, ее проще кодировать. эту методику можно улучшить, используя адаптивное дифференциальное кодирование, rде KO дирующее устройство предсказывает следующий символ и посылает раз ность между предсказанием и фактическим значением. Простая форма дифференциальноrо кодера  дельтамодулятор, который для увеличения ИЛИ уменьшения вывода посылает только один бит. Сжатие на основе преобразования .... Цель этоrо вида кодирования состоит в том, чтобы преобразовать сиrнал в друryю область, rде он может быть представлен более эффективно, и сжать ero в этой области. Например, если С}.frнал из временной области преобразо вать в частотную, и если у Hero нет высокочастотных компонентов, то для nересылки этой информации необходимо меньшее количество коэффиuиен 1'08. Прямое и обратное преобразования не будyr вызывать никаких искаже.- Ний сиrнала, если данные не усечены какимнибудь способом, так что TpaHC формационное кодирование в чистой форме происходит без потерь. В общем случае в пределах целевоrо диапазона находится несколько компо Иешов, иноrда небольших. При сжатии незначащие компоненты oт6paCЫBa lOТCя с помощью процесса называемоrо "квантованием". Чем больше количе СТ80 отбрасываемых компонентов, тем больше коэффициент сжатия, но тем больше и искажения. Векторное квантование Векторное квантование заменяет источник восстановленным сиrналом, co стоящим из компонентов, определяемых кодером. Речевое кодирующее YCT ройство (СЕLРкодер), используемое в мобильном радио, имеет очень низ кую битовую скорость (до 2,4 Кбит/с) и использует кодовую таблицу (книry) 
.40 Передача даННЫХ В сетях: инженерный подход шифров речевых звуков, которая может быть отреryлирована путем измене НIЦ параметров. Эrито параметры, а не сами звуки, и посылаются кодером получателю. Та же методика используется при фрактальном сжатии uзо бра:ж: ений , коrда вместо точной копии caMoro изображения посылаются спе циальные изображения  фракталы вместе с инструкциями по их использо-- ванию. Фракталы  это произвольные образцы, которые находятся (8 различных формах) в исходном изображении. При меры сжатия Дee приведены примеры сжатия различных сиrналов рассмотренными спо-- собами. CJ Факс. Факсы Зй rруппы используют rрупповое кодирование и коди рование Хаффмана. Отсканированное изображение содержит 1145 строк, состоящих из 1728 белых и черных пикселов. Для каждой CTpO ки сначала выполняется rрупповое кодирование, а затем для получен ных таким способом чисел используется кодирование Хаффмана. Этот процесс заменяет два миллиона исходных битов четвертью миллиона кодовых битов. [] Текст. Алrоритм ЛемпеляЗива хорошо работает с текстами, обычно обеспечивая уменьшение исходноrо размера на 2().........25%. Отметим, что здесь не происходит уменьшения до уровня, близкоrо к истинной энтро-- пии речи, потому что алrоритм рассматривает только последовательность символов, а не произношение и rpамматику. [] Речь. Стандартный речевой lТUкодер имеет полосу пропускания 4 юц и скорость 8000 8разрядных выборок/секунду (64 Кбит/с). Современные СЕLРкодеры MOryт обеспечивать такое же качество звука (называемоrо качеством телефонной связи) при скорости 8Кбит/с. Однако, П0СКОЛЫ<У СЕLРкодеры используют кодовые таблицы звуков, соrласованных толь ко с речью, качество друrих звуков (например, музыкальных) невысоко. lТUкодер будет работать на любом звуковом источнике с полосой про пускания до 4 ЮЦ. CJ Изображення. для статичных изображений часто используется формат GIF 2 , который уменьшает цветовую rлубину до 256 цветов и затем ис пол.ьзует алrоритм Лемпеля-Зива, чтобы выполнить сжатие без потерь. В формате JPEG 3 используется дискретное косинусное преобразование на 2 GIF, Graphic Interchange Format  формат обмена rpафическими данными.  Пер. 3 JPEG, Joint Photographic Experts Group  формат объединенной rpynпы фотоэкспертов.  Пер. 
rлаsа 2. С точки зрения пользоsателя 41 блоках 8х8 пиксел. Оно уменьшает результирующие компоненты, усекая незначительные высокочастотные компоненты ("квантование"). Для наи более важноro DСкомпонента используется дuффереНЦUШlыюе Koдиpo вание, а для максимально возможноrо сжатия остающихся компонен 1'Ов  rрупповое кодирование и, наконец, кодирование Хаффмана, или арифметическое кодирование. В формате MPEG 4 дЛЯ максимальноrо уменьшения битовой скорости передачи используется конечное пре06ра зование Фурье совместно с системой эталонных и проrнозирующих фреймов. Для проrнозирующих фреймов передаются только различия. Формат MPEG 1 дает качество, близкое к качеству видеофильмов, при скорости выше 1 Мбит/с. Формат MPEG2 дает качество, близкое к каче ству радиовещания, при скорости выше 2 Мбит/с, и используется новыми цифровыми телевизионными службами. Формат MPEGA разработан для очень низких битовых скоростей (менее 64 Кбит/с), и используется, Ha пример, для видеоконференций. Здесь возможны чрезвычайно низкие би товые скорости. Практическое сжатие  JPEG Хорошим примером практuчеСКО20 сжатия является стандарт сжатия изо- бражений JPEG. Для максимально ВОЗМОЖНОf(}'l;сжатия изображения в нем используется трансформационное, дифференциальное и rрупповое кодирова ние. Изображения разбивается на блоки размером 8х8 пиксел и затем на каж дом из этих блоков используется двумерное дискретное косинусное пре06ра зование. Если изображение цветное, то пре06разование применяется к каждому каналу цветности отдельно. Квантование в JPEG выполняется путем деления каждоrо из коэффициентов на массив предопределенных значений размером 8х8. При этом предпочте ние отдается низкочастотным компонентам, и оставляется только целая часть от TaKoro деления. Это означает, что правая нижняя часть массива заполнится нулями. Наиболее значимым будет левый верхний компонент, который и представляет dсзначение (среднее значение данных в блоке размером 8х8 пиксел). Чтобы ввести еще большее сжатие, используется дифференциальное кодирование этоrо значения, и затем коэффициенты считываются по диаrонали так, чтобы нулевые значения были в максимально возможной степени сrруппированы вместе. Наконец, чтобы сжать последовательности нулей, выполняется rрупповое кодирование. 4 МРЕО . Motion Picture Experts Group  формат rpynпы КИffоэкспертов.  Пер. 
42 Передача данных в сетях: инженерный подход 2.6. Вопросы к rлаве 2.6.1. Вопросы по теории информации 1. Каково количество информации (в битах) для следующих событий: а) бросание монеты; б) бросание двух иrральных костей; в) вытаскивание карты из перетасованной колоды: рассматривая каж дую карту индивидуально, рассматривая каждую масть отдельно, рассматривая каждую кар1У независимо от масти и рассматривая только цвет карты. 2. Пyreм разумных рассуждений в отношении разрешающей способности изображений, оцените количество информации телевизионноrо изображения формата Р AL. 3. Вычислите энтропию следующих событий бросания пары иrральных костей: а) рассматривая индивидуальные очки на каждой кости (то есть считая выпадение очков (1,6) и (6,1) разными событиями); б) рассматривая очки безотносительно порядка их расположения на костях (то есть считая выпадения очков (1,6) и (6,1), как одно и то же событие); в) рассматривая только сумму очков; r) сколько информации (в среднем) дает сумма очков об индивидуаль ных очках, выпавших на каждой кости. 4. В телевизионном иrровом шоу "Кто хочет стать миллионером?" иrроки должны выбрать один правильный ответ из четырех возможных, скажем  А, В, С или D. На одном из этапов иrры им позволяют сделать специальный выбор 50:50, коrда два неправильных ответа удаляются, а для выбора остается один правильный и один неnpавильный ответ: а) предnолаrая, что у иrpока нет никаких идей относительно Toro, ка- кой из двух ответов является правильным, и, рассматривая каждый результат как равновероятный, сколько информации дает данный вариант иrры; 
rлава 2. С точки зрения пользователя 4з б) Алиса начала иrру и застряла на некотором вопросе. Она уверена, что правильным ответом является А или В, и надеется, что, иrpaя вариант 50:50, она правильно удалит один из них. Предположим, что она использует следующие оценки: с вероятностью 45% правильным ответом является А, с вероятностью 40%  ответ В, с вероятностью 1 0%  ответ С и с вероятностью 5%  ответ D. Основываясь на ее предположениях, вычислите энтропию до и после иrpы 50:50, если при этом удаляются ответы В и D; в) основываясь на предположениях Алисы, вычислите энтропию до и после иrры "50:50", если при этом удаляются ответы С и D; r) какую информацию (в битах) дает иrра "50:50" в каждом из двух вышеупомянуrых случаев. . 5. Выражая Н(А,В) в терминах вероятностей и используя теорему Б8Йеса, покажите, что Н(А,В) == (А I В) + Н(В). 2.6.2. Bonpocbl по кодированию источника без памяти 1. Информационный источник без памяти rенерирует 8 различных символов (значений) с вероятностями 1/2, 1/4, 1/8, 1/, 1/32, 1/64, 1/128 и 1/128. Эти символы кодируются как 000, 001, 010: 011, 100, 101, 110 и 111 соответственно: а) чему равна энтропия на символ данноrо источника; б) какова эффективность этоrо кода; в) постройте код, используя алrоритм ШеннонаФано, и вычислите ero эффективность; r) постройте код, используя алrоритм Хаффмана, и вычислите ero эф фективность; д) если инreнсивность источника равна, В среднем, 1000 символов/секунду, то какова скорость передачи информации (в биraxlс). 2. Источник информации без памяти rенерирует символы с вероятностью 0,65; 0,2 и 0,15: а) вычислите энтропию на символ; б) вычислите вероятности всех возможных сообщений, состоящих из двух символов, и соответствующую энтропию. Сравните этот p зультат с предыдущим; в) вычислите избыточность источника информации. 
:;. 1/44 Передача данных в сетях: инженерный подход .  3. Постройте код для источника без памяти с шестью значе ниями (символами), используя трехзначный кодовый алфавит {0,1,2}. Пусть выборка вывода TaKoro источника выrлядит так: ACAAABEBCOAEABOCAEFAABOF. Какова эффективность этоrо кода? Сравните ее с эффективностью кода {А:ОО, В:Оl, С:02, 0:10, Е:ll, F:12}. 4. Удаленные датчики MOryт иметь два состояния  SET ("Установлен") и CLEAR ("Сброшен"). В среднем 99% датчиков находятся в состоянии CLEAR: а) используется одноразрядный код: О  CLEAR, 1  SET. Какова ero эффективность; б) для повышения эффективности постоянно используются два смеж ных одноразрядных сообщения. Определите подходящий двоичный код для этой сmyации и вычислите ero эффективность; в) повторите процедуру предыдущеrо пункта для rрупп, состоящих из 3 символов; r) повторите процедуру предыдущеrо пункта для rрупп, состоящих из 4 символов; д) прокомментируйте любые тенденции, которые вы видите в выше упомянутых результатах. 2.6.3. ВОПрОСbl по кодированию источника с памятью 1. Закодируйте последовательность 1, 2, 4, 4, 4, 4, 5, 6, 6, 5, 5, 4, 3, 1, О, используя дельтамодуляцию. Предположите, что декодер выIодитT О перед приемом первоrо бита. Какова среднеквадратическая ошибка? 2. Источник rенерирует последовательность 15, 14, 12,9,8,8, 10, 11, 12, 14, 15,15,14,12,10,9: а) закодируйте эry последовательность, используя импульснокодовую модуляцию (ИКМ); б) если вам скажут, что значения, которые будут получены  это це- лые числа в диапазоне от О до 15, сколько потребуется битов на сим вол для дuфференцuШlЬНОЙ ИКМ? Обоснуйте ваш ответ; в) является ли система, которую вы предлаraете, системой с потерями или без потерь? Если с потерями, то как можно сделать ее системой без потерь. 
rлава 2. С точки зрения пользователя 45 3. С ПОМОЩЬЮ адаптивной ИКМ нужно передать ту же последовательность, что и в предыдущем пункте. Оценка, используемая для выборки, предполаrает, что разность между текущим и следующим значениями та же, что между текущим и последним значениями: а) какие значения нужно посылать; б) оцеНlffе количество требуемых бlffОВ на символ. 4. Используйте алrОрlffМ Лемперля Зива'77, чтобы сжать последовательность AВCCDAВDCCBCCBECDA. CpaBHlffe число бlffОВ ДО И после сжатия. Последовательность имеет длину (размер) в 18 символов, так что для ее адресации (обращения к ней) необходимо использовать 5 битов. Прокомментируйте, что случится, если придется обращаться к более длинным последовательностям. Если бы алrоритм Mor адресовать только предыдущие строки в конечной хронолоrии, используя так называемое скользящее окно, то каковы были бы преимущества и недостатки такой методики?
, I , rлава 3 ..:.'1 "" .\\...."- . ",. ,--- с точки зрения защиты 3.1. Введение Криптоrpафическое кодирование преследует несколько целей. Наиболее оче видная из них необходимость rарантировать, что кодируемая информация сохраняется в секрете от всех получателей, кроме тех кому она предназначе на. Однако, поскольку взаимодействующие с помощью связи партнеры MOryт быть физически разделены, то существуют и дрyrие требования защиты. Они включают rарантии тoro, что противоположная сторона является именно тем, кем она себя объявляет, и что она придерживается любых друrих предвари тельно принятыx соrлашений. Поэтому вторым требованием криптоrрафиче cKoro кодирования является rарантия Toro, что связывающиеся стороны не ,мошенничают, т. е.: ... (J не иrpaют не по правилам; (J не притворяются KeM TO еще; (J не получают информацию. которую они не предполаrали иметь; (J не отверrают ложно транзакцию, которая имела место в действительности. 3.2. Криптоrрафические типы Orношения между различными криптоrрафическими катеrориями показаны на рис. 3.1. Криптоrpафия Шифрование Криnтorpафические протоколы Jl\Утентификация Подпись (сообщения) Друrие протоколы Рис. 3.1. Катеrории криптоrрафии
48 Передача данных в сетях: инженерный подход Шифрование перестановка, или маскировка информации используется для защиты данных от чтения неуполномоченными сторонами. Существует два типа шифрования: рассеивание (diffusion), коrда информация скрывается, и перемешивание (confиsion), коrда информация переставляется так, чтобы, хотя сообщение и можно обнаружить, но ero содержание (значение) YCTaHO вить невозможно. 3.2.1. Рассеивание Рассеивание известно также как стеzаноzрафuя (steganography), или искусст во ceKpeтHoro письма. Классические методики использовали невидимые чер нила или размещение татуировок на бритых rоловах курьеров, ожидание poc та их волос и затем отправку курьеров получателю. Рассеивание все еще используется и сеrодня. Например, в электронной почте можно ИСПользовать специальные литеры или комбинации литер, которые имеют значение только для Toro получателя, кому они предназначены. Дpy rие читатели в этом случае видели бы просто безобидное сообщение. Сле дующее анrлийское предложение: "This sentence also appears innocent, being text advocating а key idea" также кажется безобидным текстом, пропаrан дирующим некую ключевую идею. Однако вторая литера каждоrо слова это ro предложения посылает иное сообщение "heJp needed". Широкополосная радиосвязь, которая используется военными, тоже является формой рассеи вания. Частота, на которой передается радиосиrнал, быстро изменяется He предсказуемым способом, который известен только тому получателю, кому этот сиrнал предназflачен. эта методика называется "скачкообразной пере стройкой частоты", и если приемник получателя будет переходить (переска кивать) к правильным частотам, то он примет полное сообщение. Подслуши вающий на одной частоте субъект примет только крошечную часть сообщения, и поэтому может даже не знать, что оно передавалось. Стеrаноrpафию используют также для TOro, чтобы посылать информацию в составе видео или звуковых файлов. Можно изменять случайные биты изо бражения (или звука в случае аудиофайла), добавляя в них информацию, KOTO рую HO передать. При просмотре или прослутпивании изображения или звука, которые содержат скрытую информацию, они будyr выrлядеть (звучать) так же, как до передачи. На рис. 3.2, а показан штриховой рисунок (схема), ко-- торый скрыт в фотоrpафии (рис. 3.2, 6). Фотоrрафия состоит из 16 битных по-- лyrоновых значений, МЛадший бит которых используется для скрытия схемы. Ту же методику иноrда используют и для защиты от копирования. Изображе ния MOryт нести водяные знаки, которые невидимы при просмотре, но содержатся в некоторых пикселах. Их можно использовать для идентифика ции факта копирования изображения из первоначальноrо источника. Сложные схемы водяных знаков позволяют им оставаться в составе изобра жения, даже если само изображение изменяется, причем система также ra
rлава з. с точки зрения защиты 49 рантирует, что если изображение изменено, то это изменение может быть об наружено. Это важно, например, для изображений от полицейских камер, фиксирующих скорость движения автотранспорта. Более старый пример этой методики  практика добавления побочных слов к словарям, так что если словарь скопирован, побочное слово будет обнаружено, и факт, что словарь был скопирован, установлен. По подобной же причине проектировщики чи пов часто добавляют в свои конструкции небольшие участки избыточной ло-- rики на тот случай, если конструкция их маски копируется. ЗапиСЬ! Вocnpoиэвeдение 15О2532/40/48164 Vccn 28 VCCA 18 Усе с. с? o.1.F'J' 'J'0.1.F с. O.1.F VSSD 12 Узs", 13 ... SP+ 14 sp AUX IN 11 НС IN 20 16n Динемик OUT 21 НС МlC REF' 1. НС Интерфейс MLC 11 НС проrpаммирования нс   ...., r J P/R а 11   ','1". ;,ис:>":,, .J..J. ,J e;1iIiI.yA,!.,!" ;.:.' 5 Y,:i;I rчi;.;:i'Ч_' о"; :""'::и;,.!;..., < ",  . >' -1 '....,. . :..; ... Рис. 3.2. Штриховой рисунок, скрытый в фотоrрафии б Серьезной пр06лемой рассеивания является то, что раз метод известен, то дo вольно просто предпринять попьrrкy нападения (атаки) на Hero (то есть попы таться нарушить защmy). Если рассеивание используется для передачи инфор мации между несколькими людьми, секрет неизбежно будет pacKpbrr. Если, например, существует несколько проrpамм для скрытия информации в из06ра 
50 Передача данных в сетях: инженерный подход жеНИJlX, то эти же проrpaммы можно применить для тoro чro6ы увидеть, не cкpыra ли в изображениях какаято информация. Чтобы зaщиrить скрьnyю ин формацию, необходимо дальнейшее ее шифрование, но это приводит киспол&-- зованию втoporo метода  перемешиванию информации, обсуждаемому далее. Дрyraя. проблема, связанная с рассеиванием, заключается в следующем  что бы спрятать небольшое сообщение, требуется большое количество данных. Чтобы спрятать дерево в лесу, нужен лес. Если в каждом фрейме используется один бкr для передачи СКрЫТОЙ информации, то количество остающихся бкrов должно быть достаточно, чтобы скрытыe биты не моrли быть обнаружены. Эro означает, что необработанный размер файла должен, по крайней мере в 8 раз, если не больше, превышать размер скрываемых данных. 3.2.2. Перемешивание Второй метод шифрования  перемешивание, при котором сообщение изме няется так, что даже если ero присутствие обнаружено, то оно не может быть расшифровано. Существует два основных способа перемешивания: nepecтa новка, коrда изменяется позиция индивидуальных символов сообщения, и nреобразование (трансформация), коrда изменяется значение символа. Оба способа MOryr использоваться одновременно. Мы уже сталкивались с концепцией кода  набором правил, которые преоб- разуют каждое входное сообщение в определенный набор СИМlЮЛов. Кодиро- вание предпринимается для Toro, чтобы сделать передачу сообщений более леrкой (линейные коды) или чтобы обнаруживать или исправлять ошибки (коды с исправлением ошибок). Шифр  это код, цель KOToporo состоит в том; чroбы маскировать посылаемое сообщение. Шифры можно подразделять на блочные и поточные. В блочном шифре каждая часть, или блок сообще ния, шифруется независимо от друrих. В поточном шифре имеется некоторая форма обратной связи, так что шифрование символов сообщения зависит от предварительно зашифрованных символов. Алroритм шифрования состоит из двух частей: секретной и открытой. Yc пех системы зависит от тoro, остается ли секретная часть тайной, поэтому обычно пытаются оrpаничкrь количество требуемой секретной информации. Секретная информация называется ключом шифра. Сам алrоритм должен находиться в пределах открытой части шифра, чтобы он бьт известен каж дому пользователю системы (в противоположность ключу, который должен быrь униКШlен для фактически связывающихся сторон). Следует предполо- ЖИТЬ, что он должен быть также известен определенному числу людей, имеющих дОС1)'П к этому алrоритму. На самом деле в таком подходе имеются некоторые преимущества, т. к. более вероятно обнаружить изъяны в защите в опубликованных алrоритмах, чем в тех, которые остаются секретными, и по- этому изучаются только со злостными намеренИJIМИ. 
rпaвa З. с точки зрения защиты  . 51 3.3. Криптоrрафические сценарии Связь происходит между источником и адресатом. Однако в криптоrрафи чес ком сообществе существует соrлашение, по которому не обращаются к сточнику А и адресату В, а используют специальный сценарий, rде источ ИИ к, называемый Алисой, пытается связываться с адресатом по имени Боб, ричем канал между ними считается открытым для нападения (атаки). Существует две возможности для нападающеro (по-разному, в зависимости от автора, называемоro Чарльзом или Евой). Первое нападение (атака) носит -звание канШl прослушивания (wiretap channel), кorдa Ева может прослушивать сообщения, передаваемые между Алисой и Бобом, но не может изменять их (рис. 3.3, а), и BТOpoe нападение с подстановкой (substitution attack), коrда Ева может также изменять сообщения или заМенять их (рис. 3.3,6). Первая форма JlaПадения относительно проста для большинства передающих сред, особенно ),tnя радио, rдe физическое соединение не требуется, тorдa как возрастающее ис Jtoльзoвание сетей пакетной коммyraции, rдe данные обрабатываются в каждом :маршрyrnзаторе, означает, что нападение с подстановкой также вполне воомож ,.jo. Хорошим действующим примером втoporo типа канала нападения (с пере -ЮМ сообщений) является брандмауэр (firewall l ) Internet. Алиса nвредающая ..... Ева подслушивающзя а Б Рис. 3.3. Канал прослушивания и перехвата , Наряду с нападениями на криптоrрафические протоколы, которые будут pac СМотрены позже, существует несколько типов нападений на алrоритм коди , вания. р Только зашифрованиый текст. Эro простое прослушивание, при KOТO ром Ева может только читать зашифрованные сообщения, коrда они про ходят по каналу. [] Известный открытый текст. В этом варианте нападения Ева получает и незашифрованный, и зашифрованный текст некоторых сообщений. При этом нередко часть OТKpbIТOro текста можно разrадать. Обычно она является адресом или именем отправителя или временем передачи. Эrот подход ис I Firewal1  проrpаммноаппаратное средство межсетевой защиты.  Лер. 
52 Передача данных в сетях: инженерный подход пользовался во время Второй мировой войны  Korдa бомбы сбрасывались на какойнибудь порт, то зашифрованные сообщения об этом записывались в надежде, что в них будут включены имя порта и друrие детали нападения. C:I Выбранный открьпый текст. При этом варианте атаки Ева может включать в зашифрованный текст свои сообщения, которые должны быть какимто образом зашифрованы и затем прочитаны Бобом. Делает она это либо обманным пyrем заставляя Алису посылать свои сообщения, либо похищая оборудование кодирования и используя ero самостоятельно. C:I Выбранный зашнфрованный текст. Заключительная возможность для Евы состоит в том, чтобы заставлять Боба дешифровать зашифрованные сообщения, которые она rенерирует, а она моrла бы читать их расшифров ку. Эro опятьтаки можно сделать, лишь захватывая или подменяя обору дование шифрования. При всех видах нападений следует предполаrать, что сам алrоритм шифрования известен. Объясняется это совсем просто  слишком MHoro людей знают любой из этих алroритмов, чтобы хранить их в тайне. Эro предположение известно как предположение Керхкоффа (Kerchoft). Защита зависит только от ключа. Некото-- рые разработчики коммерческих проrpамм шифрования в целях повышенной защиты пытаются сохранять свои алrоритмы в секрете. Однако реверсировать машинный код обратно в ассемблерный  относиreльно простая задача, и He блaroразумно предполаrатъ, что такие коды не попадут в плохие руки. 3.4. Системы с частными ключами 3.4.1. Введение Сиcreмы (шифрования) С частными ключами также называются симметричными системами, пaroму что обе связывающиеся стороны имеют тот же самый ключ, а расшифровка  это просто обрапюе кодирование с rюмощъю ключа. Наиболее сущecmенным преимуществом сиcreм с частными ключами является то, чro для дaннoro уровня защиrы они обладают ornосиreлъно невысокой сложностью. 3.4.2. Перестановочные шифры В перестановочных шифрах позиции символов сообщения изменяются, но значение сообщения остается неизменным. Простой шифр  это специальная таблица (сетка), куда сообщение вписывается одним способом, а затем счи тывается  друrим. Эта операция показана на рис. 3.4. Сообщение вписыва ется в строки сетки, а считывается по столбцам. Древний вариант этоrо спо соба состоял в записи сообщения на полосу, обернутую BOKpyr цилиндра, которая затем раскручивалась и отправлялась с посыльным. Как будет пока зано в разд. 5.4.5, обе эти формы являются простым чередованием (расслое 
',Fлава 3. С точки зрения защиты 'а 53 нием), только используемым для различных целей. Все, что подслушиваю , щему нужно сделать,  это определить rлубину сетки (или диаметр цилинk 'ра). Увеличение rлубины сетки приводит к тем же проблемам с задержкой, что и при чередовании с контролем ошибок. т н I 5 I 5 А М Е S 5 А G Е Т О 5 Е N D ТН 15 I 5АМ E55AG Е ТО5Е N D. U тмт Н EOl5555 EIAN 5G ОАЕ. Рис. 3.4. Простой перестановочный шифр . Усовершенствование этой методики состоит в том, чтобы читать столбцы ,:сетки в более сложном порядке, чем просто слева направо. Для указания по рядка считывания столбцов можно использовать ключевое слово, алфавитное :упорядочивание букв Koтoporo и определяет порядок чтения столбцов. Ha ,i1ример, если бы ключевым было слово cipher, то мы вписывали бы шифруе мое сообщение в 6 столбцов, и затем считывали бы столбцы в следующем порядке 1 (с), 5 (е), 4 (h), 2 (i), 3 (р) и 6 (r). Однако такая система остается все еще очень восприимчивой к нападениям по методу проб и ошибок. .4.З. Трансформационные шифрь1 Моноалфавитный шифр Самый простой тип трансформационноrо шифра должен брать каждый сим вол В сообщении и заменять ero в зашифрованном тексте друrим символом. Символы для зашифрованноro текста обычно берутся из TOro же алфавита, что и для сообщения, но это не обязательно. Система называется .мo ноалфавuтной изза Toro, что каждый символ сообщения всеrда преобразует си в один и тот же символ зашифрованноrо текста. О раннем использовании такой системы сообщил древнеримский KOMMeнтa тор сплетен Светоний, хотя это ни в коем случае не первое зареrистрирован ное использование криптоrрафии, которое относится к древнему Еrипту, и использовалось в узнаваемых сеroдня формах еще rреками. Светоний напи сал, что еще Юлий Цезарь использовал систему преобразований при обще нии со своими друзьями. Он заменял каждую букву сообщения на третью бу кву из Toro же алфавита (рис.3.5), доказывая не только потребность в секретной политической связи, но и трудность сохранения такой связи в тай не от прессы! Термин "подстановка Цезаря" теперь применяется к любому шифру с подобным сдвиrом между символами сообщения и алфавитом шиф ра, даже если этот сдвиr не равен трем. 
,1tIpeДaЧa данных в etmI)(: инж.elfllPНblЙподх .,  Рис. З.5. Шифр с подстановкой Цезаря Б()лее безопасной (но лишь незначительно) является произвольная подста НО8Ка, коrда изменяется порядок подстановочных символов. Однако, хотя такая система имеет больше возможных ключей (26! вместо 26 возможных в системе Цезаря, один из которых тривиален), проблема со всеми моноалфа &итными трансформационными шифрами состоит в том, что их очень просто атаковать с использованием частотноrо анализа. Избыточность, свойственная 8Jirл"йскому языку, такова, что только около 25 символов зашифрованноrо текста требуются для тoro, чтобы дешифровать сообщение. Если в зашифро ванном тексте остаются пробелы, расшифровка ero даже упрощается, т. к. однобуквенным словом может быть лишь "а" или "1". Через эти прорехи MO жет просачиваться и друrая информация сообщения. Испытательная версия подобной "защитной" проrpаммы используется в системе проrраммирования Java для шифрования адреса WеЬсайта в том случае, если не был введен пра в.ильный ключ. Однако такой зашифрованный текст леrко перехватывать, поскольку все URLaдpeca WеЬсети начинаются с последовательности "http", а большинство из них содержат строку "www" и заканчиваются на ".html" или ".htm". Таким образом, кодирование символов Ь, t, р, w и m обычно считается заданным. Разработчики проrpаммы облеrчнли жизнь хакера, ОСтaJЩяя пунк 1)'ацию без кодировки, так что ".xyz" в конце имени хостмашины  это вe роятнее Bcero ".сот". Такой код оставляет для расшифровки так мало букв, чro оста.ющиеся возможности можно проверить методом проб и ошибок. дpynur проблема с произвольной подстановкой  длина ключа, т. к. должно быть определено преобразование каждоrо символа. Эrо непросто запомнить. В простой системе подобноrо рода, иноrда называемой подстановкой Виже нера (Vigenere) (хотя на самом деле она не имеет никакой связи с этим фран цузоким дипломатом 16oro столетия), используется специальное кодовое слово; чтобы определить несколько первых подстановок, и затем вставляются остальные буквы. Ключ в форме кодовоrо слова леrко запомнить, но шифр очень беден, т. к. последние символы алфавита (такие как w или у) вряд ли будут вообще зашифрованы (рис. 3.6). Рис. З.6. Шифр с подстановками Виженера 
.rlllAвa 3. С ТОЧКИ эреНИR эащиты 56 Попиanфа8ИТНЫЙ wифр ОДНИМ ИЗ способов преодоления атаки частотноrо анализа является исполь зование разных алфавитов преобразования, зависящих от позиции символа в сообщении. Система, изобретенная Джироламо Кардано (Girolamo Cardano), упоминается после системы Виженера, хотя на самом деле именно он (Виже ep) разработал автоключевую систему, описанную в разд. 3.4.7. Имя Блэза Р.ое Виженера, к сожалению, неправильно связывают с созданием двух шиф ров, которые он на самом деле не разрабатывал, и наоборот, не связывают с нaмHoro более качественным шифром, который действительно он изобрел. 'Для определения числа подстановок Цезаря, которые впоследствии будут ис пользоваться для кодирования, применяется специальное кодовое слово. Ha пример, пусть этим кодовым словом будет "code". Оно определяет четыре алфавита (рис. 3.7, а), первый со сдвиrом 2, второй  со сдвиrом ]4, тpe тий  со сдвиrом 3 и четвертый  со сдвиrом 4. Пример кодирования пока заН на рис. 3.7, б. Такие полиалфавитные шифры лучше, чем моноалфавитные, но они все еще 'уязвимы для нападения, использующеrо частотный анализ, коrда нападающий вычисляет длину повторения кодовоrо слова и может затем выполнить частот ный анализ для каждоrо алфавита индивидуально. В системе Виженера атака , дe облеrчается, т. к. каждый алфавит является подстановкой Цезаря. ,-.... а Ь с d е f 9 h k m n о р q r s u v w х у z 1 с d е f 9 h k m n о р q r s t u v w х у z а Ь 2 о р q r s t u v w х у z а Ь с d f 9 h j k m n 3 d е f 9 h j k m n о р q r s t u v w х у z а Ь с 4 е f 9 h k I m n о р q. r s u v w х у z а Ь с d а б Рис. 3.7. Полиалфавитный шифр 8еженера: а  таблица шифрования; б  пример кодирования 
56 Передача данных в сетях: инженерный подход 3.4.4. Одноразовое заполнение . Можно расширить понятие полиалфавитноrо шифрования до системы, назы ваемой "одноразовым заполнением" (Опе Time Ршl), которая является едиНСТ венной полностью безопасной криптосистемой. В полиалфавитном шифро вании существует проблема повторения ключа. В системе одноразовоrо заполнения каждое сообщение шифруется с ключом, который затем сбрасы- вается и никоrда не используется снова. Поэтому ключ используется только один раз, давая шифру ero название. Криптоrpамма зависит от сообщения и ключа, но так как ключ уникалеН для данной передачи и никоrда повторно Не используется, то Подслушивающий не имеет никакой возможности узнать ero и взломать шифр. Процесс кодирования может быть очень простым  нужно просто добавлять ключ к сообщению (рис. 3.8). Оffliпе-ключ, передаваемый с соблюдением секретности Одноразовый ключ Одноразовый ключ Входное ,сообщение Передача Выход Рис. 3.8. Система одноразовоrо шифрования Хотя этот метод выбрал бы любой уважающий себя шпион, трудность состоит в ТОМ, что ключ используется с такой же скоростью, как и сообщение, и не мо- жет reнерироваться любым предсказуемым способом (но есть возможность omzaдamb ключ). Проблема безопасной транспортировки зашифрованноrо со- общения заменяется проблемами транспортировки ключа эквивалентной дли- ны и reнерации TaKoro ключа. Эта система подходит для посылки относитель- но не60льшоrо количества очень высокозащищенных данных, в которой ключ можно надежно транспортировать только aвroHoMHo. 3.4.5. Кодировщики со сдвиrовым реrистром в разд. 6.4.3 будет рассмотрено использование перестаново1С в приложениях линейноrо кодирования, с помощью которых мы попытаемся разрушать длинные ряды нулей и единиц. Подобную методику можно применять и для шифрования, используя линейный сдвиzовый pezucmp с обратной связью (Linear Feedback Shift Register, LFSR), инициализируя ero некоторым значе- нием и затем добавляя ero вывод к сообщению. Аналоrичный LFSR-реrистр в приемнике будет возвращать биты к их первоначальной последовательности (рис. 3.9). т-каскадный реrистр сдвиrа в общем случае способен к созданию 
rлава з. с точки зрения защиты 57 неповторяющихся последовательностей длины до 2т  1, которые предполаrают хорошую защиту даже для относительно небольших значений т, но, к сожалению, система очень восприимчива к известному нападению с открытым текстом. Так как существует только m каскадов, то требуются лишь 2т разрядов в последовательности сдвиrовоrо реrистра для TOro, чтобы вычислить ответвления обратной связи и взломать код. Функция обратной связи Функция обратной связи Входное сообщение Выход Рис. 3.9. LFSRсистема шифрования в практических приложениях используются также нелuнейные сдвиrовые реrи стры с обратной связью, которые обладают устойчивостью против подобных нападений. Нелинейным элементом может быть Жтr>иrrер или мультиплексор. Можно также использовать и умножение, но проблема состоит в том, что оно является асимметричной операцией и дает О в трех случаях, а 1  только в oд ном (для 1 х 1). Это означает, что в выходной последовательности может быть слишком MHOro нулей и характеристики сообщения MOryr "yreкaTb" через нее. Начальную установку pemcтpa сдвиra можно использовать как ключ, но это из меняет только начальную точку в rенерируемой последовательности, делая pe mстры сдвиrа относительно неrибкими системами. Системы с реrистрами сдви ra просты в реализации, но реально подходят только для приложений с низкой степенью защиты. 3.4.6. Продукционные шифры Как перестановочные, так и трансформационные шифры имеют свои преиму щества. Поэтому безопасную криптосистему можно построить пyrем их объе динения. Продукционный шифр  это такой шифр, в котором объединены две или несколько криптоrрафических функции, выполняемых одна за дрyrой. Примером такой системы является шифровальная машина вoeHHoro времени "Enigma" (Заrадка), в которой ряд кодовых колес переставлял и преобразовы вал символы сообщения в кодовые символы. MHome коммерческие шифры основаны на принципе выполнения достаточноrо количества относительно простых перестановок и преобразований, формирующих безопасную систему. 
'fiВ Передача данных в сетях: инженерный подход Хорошим примером системы этоro типа является стандарт шифрования данных (Data Encryption Standard, DES), который использует последователь ность из 16 преобразований и перестановок. Он имеет 56разрядный ключ, который, хотя и восприимчив к нападениям "в лоб", но все еще очень попу лярен. Друrие примеры продукционных шифров коммерческоro использова ния  Вlowfish Брюса Шнейера, ТС4 Рональда Райвеста (соавтора криптоси стемы RSA) и IDEA (Internationa1 Data Encryption Algorithm)  международный алrоритм шифрования данных, который использует 128 разрядный ключ и ряд, состоящий из 8 преобразований и перестановок. Продукционные шифры обеспечивают очень хороший компромисс между защитой, сложностью и rенерациейlраспределением ключей. Они продолжа ют быть популярными и приняты Национальным институтом стандартов и технолоrий США (NIST, National Institute of Standards and Technology) для замены стандарта DES под названием Advanced Encryption Standard, AES (Расширенный стандарт шифрования). DES DES  это стандарт шифрования данных, созданный для американскоro пра вительства с целью использования в финансовых транзакциях. Он бьт разра ботан на базе криптосистемы Lucifer компании ШМ. DES  нелинейный алrо риrм. Эro означает, что невозможно формировать правильные сообщения простым дополнением зашифрованных текстов (шифроrрамм). DES включает только простые подстановки и дополнения, что делает ero идеальным для pea лизации на интеrpальцых схемах. Теперь дос'I)'ПНО MHoro соответствующих процессоров со скоростями обработки порядка меrабит в секунду. Дpyroe пре имущество  для дешифровки DES использует то же самое оборудование, что и для шифрования, только с секциями подключей в обратном порядке. . . Кроме шифрования передаваемых данных стандарт DES также используется для шифрования паролей в операционной системе UNIX и для проверки PIN кодов 2 на кэшкартах А ТМ. DЕSалrоритм состоит из 16 стандартных конструктивных блоков, которые переставляют и преобразуют 64раЗрядные входные блоки в 64разрядные выходные (рис. 3.10, а). Каждый стандартный конструктивный блок работает с отдельным 48разрядным ключом, который получается из первоначальноrо ключа. Ключ состоит из 64 разрядов, но 8 из них  разряды проверки на чет ность, так что фактически ключ имеет длину 56 разрядов. До подачи в пер вый стандартный конструктивный блок, 64разрядный ввод подверrается пе рестановке, а после прохождения через блоки  обратной перестановке. 2 PIN  сокращение от Personal Identification Number, личный Идентификационный номер (код) в различных электронных, в частности, банковских системах.  Пер. 
rлава з. с точки зрения защиты 59 Каждый стандартный конструктивный блок преобразует левую и правую части 64 разрядноrо входа в 64разрядный выход (рис. 3.10,6). Правая часть входа передается напрямую и принимает участие в формировании левой по ловины выхода. Правая часть выхода формируется с помощью нелинейной функции из левой и правой частей входа и ключа, предназначенноrо для дaH Horo KOHкpeтHoro блока. Функция / Стандартные конструктивные блоки 2 15 а б в F!ис. 3.10. DЕSшифрование Нелинейная функция детализирована на рис. 3.10, 8. 32разрядный правый блок входа расширяется до 48 битов путем двойноrо повторения половины ero разрядов и их перестановки. Затем к этому блоку добавляется специ фический 48разрядный ключ. Результат делится на восемь 6разрядных блоков. Каждый из этих блоков используется как адрес для массива, co стоящеrо из 8 Sэлементов. Каждый Sэлемент в этом массиве представля ет число от О до 15, так что выходом каждоrо s.элемеtпа является 4разрядное 
60 Передача данных в сетях: инженерный подход число, поэтому функции Sэлементов уменьшают выход до 32 разрядноrо чис ла. Функция Sэлемента нелинейна, т. е. F(A) + ЛВ) *- ЛА + В), а сами Sэлементы различны. Перед добавлением к левому 32разрядному блоку 32 разрядный выход Sэлементов снова подверrается перестановке и затем ис пользуется для формирования HOBoro 32разрядноro правоrо блока выхода. 16 секций подключей формируются из 56 значащих разрядов ключа (без уче та разрядов проверки на четность) пyrем их расщепления на две секции по 28 разрядов. Затем эти 28разрядные секции циклически сдвиrаются на один или два разряда и между каждым этапом каждые 48 разрядов соответствующеrо этапа извлекаются и переставляются, формируя подключи K)K)6' Если под ключи используются в прямом порядке (К), К 2 , К з ,..., К)6), то выполняется прямое шифрование. Если же они используются в обратном порядке (К) 6, K)s,..., К), то в результате происходит инверсия функции шифрования, т. е. зашифрованный блок преобразуется обратно в соответствующий блок сооб щения. Это означает, что для шифрования и дешифровки может использо аться одно и то же оборудование. DES очень популярен. Ero алrоритм опубликован, и машинный код ero pea лизации доступен для мноrих языков проrраммирования. Лучшей атакой на  б 2 56  Ф Hero остается полныи пере ор всех ключеи, впрочем, поскольку ШИ po вание дополнения сообщения с дополнением ключа дает дополнение полей шифроrраммы, мы можем обойтись лишь половиной числа переборов (255). для работы с DES требуются весьма мощные компьютеры. В течение ряда лет полный перебор в течение нескольких часов был возможен только для очень боrатых орrанизаций, но проrресс в изrотовлении микропроцессоров теперь вкладывает эти возможности в руки любой орrанизации, позволяя экономить десятки миллионов долларов на использовании чужих секретов. Двойная шиф ровка сообщений приводит к небольшому увеличению защиты изза возмож ности применения так называемоrо "встречающеrося посередине" (meet in the middle) нападения. Однако шифрование с одним ключом, дешифрование со вторым и повторное шифрование  с третьим, которое называется тройным DЕs..шифрованием, увеличивает число ключей, требующих проверки, прибли 2 80 зкreльно ДО , что снова можно считать безопасным. Расширенный стандарт шифрования (AES) Как отмечалось ранее. DЕSстандарту присуща повышенная сложность обра бtпывающеrо оборудования, что привело к практическим предложениям по ero пересмотру. После OТKpbIтoro приrлашения к разработке алrоритмов, на KOТO рое было получено 21 пред)южение от 11 стран, и двухлетней процедуры их оценки Национальный инcтmyr стандартов и технолоrий США (NIST) выбрал замену дЛЯ DES в форме РасширеННО20 стандарта шифрованuя (AES). Дпя Hero бьт принят шифр, строящийся по алrоритму Райндала (RUndael). Это сложный блочный продукционный шифр, который может быть эффективно 
rлаВ8 з. с точки зрения защиты 61 реализован. Шифр Райндала бьш разработан фламандскими исследователями Джоан Даймен (Joan Daemen) и Винсентом Райменом (Vincent Rijmen). В стандарте определяется три размера ключей: 128,192 и 256 разрядов. Также как DES, алrоритм состоит из нескольких раундов, точное число KOТO рых зависит от размера ключа, состоящих из перестановок и добавления под ключа. Хотя алrоритм Райндала может работать и на друrих размерах блоков, стандарт AES определяет размер блока, равным 128 разрядов. Этот блок раз бивается на 168разрядных байтов, размещаемых в массивах размером 4 строки х 4 столбца. Каждый раунд обработки состоит из четырех этапов: нелинейноrо преобразования Sэлемента, которое реализуется как отображе ние одноrо байта в друrой, перестановки строк, перемешивания столбцов и, наконец, добавления подключа текущеrо pYHдa. Одним из первых приложений AES будет шифрование информации, посылае мой в эфир, в новой системе мобильноrо радио 3ro поколения CDМA2000. 3.4.7. Поточные шифры В поточных шифрах имеется обратная связь от OТKpbIToro текста или, аналоrич но, от зашифрованноrо текста к ключу. Использование сообщения для формиро вания ключа таким способом называется автоключом (autokey) и было впервые пред)южено Виженером в 1568 roдy. Этот способ шифрования имеет преимуще- ство в части сокращения длины ключа, который Н)'ЖfЮ сохранять или транспор тировать, но есть в нем и очень существенный недостаток, состоящий в том что, если в посылаемом сообщении содержится какаянибудь ошибка, то эта ошибка будет размножаться. В блочном шифре каждый блок рассматривается отдельно, так что ошибки будут затраrивать только один блок. Система Виженера подобна полиалфавитной системе, которая теперь носит ero имя, но вместо повторения ключевоrо слова для определения алфавита (см. рис. 3.7), после начальноrо ключевоrо слова (в качестве KOToporo Виже нер использовал одиночный символ) используется сам текст сообщения (рис. 3.1 ]). Это позволяет избеrать повторений, которые ослабляют полиал фавитные системы, но если хотя бы один символ искажен, то, начиная от этой точки, расшифровка будет ошибочной. Рис. 3.11. Кодирование в автоключевой системе 8иженера 
62 Передача данных в сетях: инженерный подход Для TOrO чтобы дешифровать сообщение, приемник знает ключевое слово или символ (в примере, показанном на рис. 3.11, это один символ  "с"), что по зволяет расшифровать первый символ сообщения. Эro дает ключ Д)1я следую щеrо символа. и т. д. Шифрованию и расшифровке nOMoraeт таблица Виженера (рис 3.12). Шифром буквы в первой строке по алфавmy, заданному в первом столбце, является буква на пересечении этой строки и столбца. а Ь с d е f 9 h k m n о р q r s t u v w х у z Ь с d е 9 h j k I m n о р q r s u v w х у z а с d е 9 h j k I m n о р q r s u v w х у z а Ь d е f 9 h j k m n о р q r s t u v w х у z а Ь с е f 9 h j k I m n о р q r s u v w х у z а Ь с d f 9 h j k I m n о р q r s u v w х у z а Ь с d е 9 h j k I m n о р q r s u v w х у z а Ь с d е с h j k I m n о р q r s u v w х у z а Ь с d е 9 I j k I m n о р q r s u v w х у z а Ь с d е f 9 h j k I m n о р q r s u v w х у z а Ь с d е f 9 h k I m n о р q r s u v w х у z а Ь с d е 9 h j I m n о р q r s t u v w х у z а Ь с d е f 9 h j k m n о р q r s u v w х у z а Ь с d е f 9 h j k I n о р q r s u v w х у z а Ь с d е 9 h j k I m о р q r s u v w х у z а Ь с d е 9 h j k I m n р q r s t u v w х у z а Ь с d е f 9 h j k I m n о q r s u v w х у z а Ь с d е f 9 h j k I m n о р r s u v w х у z а Ь с d е 9 h j k I m n о р q . t u v w х у z а Ь с d е f 9 h j k I m n о р q r t u v w х у z а Ь с d е f 9 h j k I m n о р .q r s u v w х у z а Ь с d е f 9 h j k I m n о р q r s v w х у z а Ь с d е f 9 h j k I m n о р q r 5 t u w х у z а Ь с d е f 9 h j k I m n о р q r s u v х у z а Ь с d е f 9 h j k I m n о р q r s u v w у z а Ь с d е 9 h j k m n о р q r s u v w х z а Ь с d е 9 h k I m n о р q r s u v w х у Рис. 3.12. Таблица 8иженера Такая авто ключевая система не оrраничивается системой Виженера, ее мож но использовать и с друrими шифрами. Достаточно серьезной проблемой яв ляется распространение ошибок, но, чтобы оказывать влияние на текущее кодирование, можно использовать предыдущие сообщения, открытые или ......."L   __ - .-.... 
rлаВ8 з. с точки зрения защиты 6з закодированные. Это обеспечивает существенное преимущество, состоящее в том, что нарушаются взаимнооднозначные отношения между входными и выходными блоками, от которых страдают даже сложные блочные шиф ры. Например, если для защиты банковской системы используется DES шифрование, то MorYT существовать короткие сообщения (например, подтверждающие транзакции), которые являются одинаковыми во всех случаях. Подслушивающий может сформировать справочную таблицу шифроrрамм без необходимости фактической расшифровки сообщений. Чтобы предотвратить это, DЕSшифрование можно использовать в поточном режиме  этот очень популярный режим, называемый "сцеплением блоков шифра" (СВСоперация3) показан на рис. 3.13. Прежде чем шифровать сооб щение, к нему добавляется предыдущий блок шифроrраммы, а для первоrо блока используется некоторое начальное значение (НЗ) этой шифроrраммы. Существует, правда, еще и проблема с очень короткими сообщениями, KOТO рые все еще можно распознавать, так что НЗ часто делается зависящим от номера коммуникационной последовательности или от некоторой друrой пе ременной, известной обеим связывающимся сторонам. Начальное значение Начальное значение Передатчик Приемник Рис. 3.13. DЕSоперация сцепления блоков шифра J СВС  Cipher Block Chaining, сuепление блоков шифра.  Лер. 
64 Передача данных в сетях: инженерный подход 3.5. Криптосистемы с общим ключом 3.5.1. Проблема распределения ключей Серьезной проблемой является распределение и управление ключами. В крип тосистеме с частными ключами каждое коммуникационное звено требует отдельноrо ключа. Для двух пользователей требуется ТОЛько один ключ, но коrда к системе с п  1 уже существующими пользователями каждый раз дo баВJlЯется по одному пользователю, то требуется п  1 дополнительных клю чей. Эrо означает, что система с п пользователями требует 'L:1i различных ключей. Система, показанная на рис. 3.14, имеет 8 пользователей, так что для нее требуются 28 ключей. Криптосистема с общим ключом, как подсказывает название, имеет ключ, который является общим и поэтому доступным для всех сторон, которые же лают поддерживать связь. Эrо решает проблему распределения ключей  они MOryт быть опубликованы в чемто похожем на телефонную книry, Ha пример. Устраняется также потребность для поддерживающих связь сторон в заблаrовременном соrласовании ключей. Алиса может посылать зашифро ванное сообщение Бобу, даже если она никоrда не имела никакоrо предыду щеrо контакта с ним, что важно для таких приложений, как электронная TOp rовля, rде требуется безопасная связь с незнакомцами. а б Рис. 3.14. Ключи для системы с частными ключами (а) и системы с общим ключом (6) Однако опубликованный ключ вводит новую проблему. Раз сообщение бы ло зашифровано с ключом, то не должно быть возможности восстанавли 
rлаВ8 З. с точки зрения защиты 65 вать сообщение из закодированноrо текста даже со знанием ключа, KOTO рый, как сказано, является доступным каждому. Это требует введения KOH цепции односторонней функции, функции, которая не может быть (леrко) обратимой, но должна обладать некоторой "лазейкой", чтобы с помощью HeKoToporo ceKpeтHoro знания получатель Mor обращать процесс получения сообщения. На первый взrляд, это выrлядит так, как если бы система с общим ключом требовала ббльшеrо количества ключей, т. к. каждая дуrтексная связь Tpe бует двух ключей, по одному для каждоrо направления. Однако в системе с общим ключом, хотя имеется S6 коммуникационных связей, каждая связь с одним и тем же адресатом использует один и тот же ключ (общий ключ это ro адресата), так что фактически требуется только 8 ключей. Кроме Toro, каждая связывающаяся сторона должна хранить только один ключ  свой частный секретный ключ, вместо п  ] ключей в случае системы с частны ми ключами. Системы с общим ключом также называют асимметричными системами, по тому что процесс, используемый для декодирования, не является простым обращением процесса кодирования. В этом состоит их rлавное отличие от систем с частными ключами, которые называют симметричными системами, потому что функция дешифрования является обратной по отношению к функции шифрования (и наоборот). ..r;., 3.5.2. Односторонние функции Односторонняя (oneway) функция  это функция, которую просто вы- числять, но трудно обращать. Пример  умножение больших чисел. Мы можем вычислить без слишком больших трудностей произведение 8968] х 96 079 == 8 6]6460799, но обратный процесс  факторизация (разложение на множители) числа 8616460799 существенно труднее. В. С. Джевонс (W. S. Jevons), рассматривавший эту проблему в 1873 r., резю мировал, что "мы можем леrко... сделать некоторую вещь, но можем иметь MHoro неприятностей, если попытаемся разделить ее". Это наблюдение, KO торое имеет отношение не только к арифметике! В качестве операции факторизации для системы с общим ключом нам бы xo телось иметь такую функцию, которая при работе на сообщении т давала бы в результате криптоrpамму с, по которой практически невозможно раскрыть т. Друrими словами, мы должны быть способны леrко выполнять функцию f(m) == с (так, чтобы криптосистема оставалась реализуемой), но реализовать fl(C) == т было бы практически невозможно. Заметим, что обращение функ ции теоретически всеrда возможно (скажем, просто пyrем вычисления Лт) 
66 Передача данных в сетях инженерный подход для каждоrо возможноrо сообщения т до тех пор, пока результат не совпадет с с). Однако стоимость выполнения таких вычислений была бы значительно выше, чем значимость информации, которая моша быть получена таким спо- собом, или время, затраченное на это было бы так велико, что полученная информация оказалась бы устаревшей. Односторонние функции, используемые для криптоrрафических целей, должны обладать еще одним свойством  они должны иметь специальную "лазейку", т. е. способ, с помощью Koтoporo некто, обладающий специальным знанием, cMor бы восстановить т по с, затратив разумное количество усилий. Это секретное знание формирует частный ключ, который тайно хранится по- лучателем, позволяя ему расшифровывать сообщения. Система работает следующим образом. 1. Каждый пользователь имеет пару ключей К; и L;. 2. Сообщение т шифруется с помощью функции Е (т, К;) == с. 3. Выполняется дешифрация с помощью функции п(Е(т, К;}, L;} == т. 4. Е и D проектируются так, чтобы: . для заданных т и К; можно было леrко находить с == Е (т, К;); . для задаННоrо с было бы нереально найти т (то есть функция Е должна быть односторонней); . для заданныХ с и L; можно было леrко найти т (то есть функция Е должна иметь "лазейку", задаваемую параметром L;). Для использования в криптосистемах были предложены различные функции. r:J Ключевой обмен ДиффиХеллмана (DiffiHellman). Основан на трудно- сти вычисления дискретных лоrарифмов полей, которая возрастает по сравнению с вычислениями на основе степенных функций. Это не совсем шифр, но это первая опубликованная система с общим ключом. r:J RSA (криптосистема Райвеста, Шамира, Альдемана). Основана на трудности факторизации (разбиения на множители) произведения по сравнению с операцией умножения. Это наиболее популярная система с общим ключом, используемая, например, для почтовой проrраммы, реали- зующей протокол РОР (Post Office Protocol). Но в вычислительном отно- шении она довольно дороrая, и коммерческое ее использование в США подлежит патентованию. r:J Кnapsack. Методика с таким странным 4 названием основана на трудности разделения суммы на индивидуальные элементы по сравнению с добавле- . нием этих элементов в начало суммы. Было MHoro успешных атак на эту 4 "Кnapsack" (анzл.)  означает ранец. заплечный .мешок.  Пер. 
rлаВ8 з. с точки зрения защиты 67 систему и в результате она используется довольно редко. Однако, она Me нее сложна, чем RSA, и до появления более современных систем с эллип тическими кривыми ее считали системой, вполне оправдывающей свои обещания, т. е. обладающей низкой сложностью и относительной безопас ностью. CJ Эллиптические кривые. Эллиптические кривые  это специальные ли нии, определенные над первичным полем. Задав некоторую точку на этой линии, леrче вычислять и все друrие ее точки. Без rенерации всех возмож ных точек (что не практично, если поле достаточно велико) обращение операции довольно затруднительно. Эти схемы являются довольно MHoro обещающими, потому что кодирование и декодирование в них не оченьто сложное. Если не касаться защиты, то эта схема обладает всеми преиму ществами предыдущей. . CJ Коды с исправлеиием ошибок. Хотя код с исправлением ошибок (см. разд. 5.4) способен исправлять до (d  1 )/2 ошибок, но без набора декоди рующих правил единственный способ реализовать эту возможность co стоит в том, чтобы сравнивать полученный вектор с каждым кодовым сло вом И выбирать тот, который находится на расстоянии (d  1 )/2 от Hero. Для длинных кодов это практически невозможно. Поэтому можно сфо мировать криптосистему. использующую код с исправлением ошибок, выполняя перестановки rенерирующей матрицы. Исходный reHepaTop формирует частный ключ, позволяющий декояировать сообщения, а reHe ратор с перестановками используется в качестве общеrо ключа. Посылае- мые сообщения маскируются добавлением ошибок, которые подслуши вающий не может удалить, т. к. reHepaTop с перестановками не позволяет выполнить простое декодирование. 3.5.3. Ключевой обмен Диффи-Хеллмана Протокол обмена ключей ДиффиХеллмана в действительности не является обычной системой с общим ключом, т. к. передаваемый секрет случаен, но ero можно использовать для передачи информации, применяя общий секрет для шифрования передаваемых данных. Это была первая опубликованная система с общим ключом. В ней возникают трудности, связанные с вычисле ниями лоrарифмоn первичных полей, которые значительно выше, чем при вычислениях с помощью экспоненциальных функций. Протокол выполняет обмен секретом между двумя сторонами по опасному каналу, не требуя ни знания, ни даже существования этоrо секрета. Работает это следующим образом. 1. Алиса и Боб соrлашаются использовать reHepaтop g и простой модуль р. 2. Алиса rенерирует случайное число х. Это ее частный ключ. Она вычисля ет свой общий ключ Х, который равен Х == 1/ mod р. 
68 Передача данных в сетях: инженерный подход 3. Подобным же образом Боб rенерирует случайный частный ключ у и об щий ключ У == g mod р. 4. Алиса и Боб обмениваются их общими ключами Х и у. 5. Алиса принимает ключ У и использует свой частный ключ х для следую щеrо вычисления: Jf mod р == lt y mod р == k. 6. Боб также может вычислить k по ключу  который он принимает от Али сы, и своему частному ключу у, т. к. Jf mod р == lt y mod р == k. 5. И Алиса и Боб теперь знают k, но подслушивающий не может вычислять k по наблюдениям g, р,  и У. В качестве примера TaKoro обмена рассмотрим следующую процедуру. 1. Р == 11 и g == 2. 2. Алиса получает случайный х == 4, Боб выбирает у == 6. 3. Алиса вычисляет х== 24 mod 11 == 5. 4. Боб вычисляет У == 26 mod 11==9. 5. Алиса посылает Бобу число 5, а Боб посылает Алисе число 9. 6. Алиса вычисляет уХ mod 11 == 94 == 6561 == 5 mod 11. 7. Боб вычисляет ](у mod 11 == 56 == 15 625 == 5 mod 11. 8'. Поэтому k == 5. Обратите внимание, что общий секрет случаен, т. к. k == g"Y mod р , так что ero нельзя использовать, чтобы напрямую посылать информацию. Если Алиса и Боб не выбирают свои частные ключи чисто случайно, то это знание можно использовать для нападения на систему. Korдa Р и g опубликованы, то нападение на эту систему становтся эффек тивным с помощью задачи дискретноrо лоrарифмирования. Х == lt mod Р оз начает, что х == 10ggX mod Р. Поэтому Ева может находить k, вычисляя log Х У g mod Р. В вышеупомянyrом примере нахождение log25 mod 11 триви ально, но очень трудно, если Р велико. 3.5.4. Криптосистема RSA (Rivest, Shamir, Adleman) Схема RSA Райвеста, Шамира, Адлемана (Rivest, Shamir, Adleman) связана с oт носительной трудностью факrоризации чисел по сравнению с их умножением. Это одна из наиболее популярных систем, используемых, например, в PGP проrpамме S шифрования почты. Она запатентована в Соединенных Штатах. s PGP  Pretty Good Privacy. алroритм "надежной конфиденuиальности".  Лер. 
rлава з. с точки зрения защиты 69 Для rенерации ключа выбираются два больших простых случайных числа: р и q. Насколько больших  зависиr от приложения и соrлашения, но часто используются числа порядка сотни цифр. эти простые числа хранятся в секре- те, но их про изведение п == pq и случайное число е, простое по отношению к (р  1 )(q  1), публикуются и формируют общий ключ. Частный ключ d выбира ется таким, чтобы соблюдалось следующее равенство: de == 1 mod(p  l)(q  1). Обратите внимание, что т. к. р И q хранятся в секрете, то любой подслуши вающий не может вычислить d без факторизации п. Сообщение т шифруется с помощью следующею выражения с == те mod п, rде с  зашифрованное сообщение. Расшифровка же выполняется с помощью выражения т == c d mod п, результатЬм KOToporo является число т, т. е. исходное незашифрованное co общение. Факт, что расшифровка работает (то есть что (me)d mod п == т mod п) не оче виден, но зависит от Теоремы Эйлера, в которой утверждается, что аф(п) == (mod п) для относительно простых чисел а и п, таких что О < а < n. Здесь ф(п)  ф-функция Эйлера (тотиент), опреДi,Jlяемая как количество по ложительных целых чисел, меньших п, которые являются относительно про стыми для п. Если п  простое число, то ф(п) == п  1. Если же п  это произ ведение двух простых чисел р и q, как в нашем случае (то есть п == pq), то ф(п)==рql(рl)(q l)==pqpq+l ==(p l)(q 1), т. к. нет числа, меньшеrо, чем п, которое является множителем как числа р, . так и числа q. : Эrо rовориr о том, что de == 1 mod ф(п) по определению и, в свою очередь, означает, что de == iф(п) + 1 для некоторых i. Дешифрация приводиr к сле дующей цепочке вычислений: c d mod п == m ed mod n == тiф(п)+ 1 mod п == (m;1..п)im mod п == (1 im mod п == т mod п. В RSA используется потенцирование (возведение в степень), которое являет ся в вычислительном отнощении довольно интенсивной операцией. По этой причине некоторые схемы шифрования используют RSA, чтобы установить ключ сеанса связи, а затем применяют более быструю, но менее безопасную схему для фактической передачи данных. Очевидное нападение на эту систе му  это факторизация п на два множи теля р и q. Оно требует e  ln(п)ln(ln(п» операций, основанных на более доступ 
70 Передача данных в сетях: инженерный подход ных алrоритмах факторизации. В rоду содержится приблизительно 225 ce кунд, так что при использовании одноrо процессора, работающеrо со CKO ростью В один миллиард операций в секунду, потребуется приблизительно 241 лет, чтобы факторизовать lО24разрядный ключ (который используется в РGРалrоритме защиты почты). Это больше чем время существования Bce ленной со времени большоrо взрыва, и сравнимо примерно с rодом, KOTO рый потребовался бы, чтобы взломать защиту системы DES, использующей аналоrичные предположения. Для орrанизаций, подобных правительствен ным, способных вложить большие деньrи в решение этой проблемы, время взлома DЕSзащиты можно сократить Bcero лишь до нескольких часов, используя параллельно несколько компьютеров, но масштаб проблемы в случае RSАзащиты делает эту задачу вообще невыполнимой, если не ис пользовать иной подход. Друrое нападение моrло бы заключаться в том, чтобы найти такое число х, которое удовлетворяло бы уравнению х е mod п == с. Но это привело бы только к взлому (расшифровке) индивидуальноrо сообщения и не взламывало бы всю систему в целом, и, в любом случае проблема отrадки сообщений была бы столь же трудной, как и проблема факторизации. Однако эта превосходная защита может быть полностью подорвана неудач ным выбором ключей, и поскольку защита системы зависит от наличия больших простых чисел, то возникает проблема выбора таких чисел. Сущест вует несколько методик для нахождения подходящих больших чисел, но лю бu система, базирующаяся на RSA, должна иметь систему ЛОКШlЬНОЙ reHepa ции этих чисел для создания ключей, т. к. если простые числа передаются по линии связи или, еще хуже, берyrся из списка, то защита может быть серьез но скомпромernрована. 3.6. Идентификация 3.6.1. Введение Секретная передача информации  только часть проблемы. Важно также знать, что этой информации можно доверять, т. е. что она не подделана или не принята с ошибками, и что человек на друroм конце звена связи  тот, кто требуется, и может настаивать на сообщении, которое он послал. Таким образом, речь идет о трех дополнительных аспектах защиты  целостности сообщения, идентификации терминала и подписи сообщения. 3.6.2. Целостность Первая проблема  это получение информации, посылаемой из одноrо места в дрyrое в зашифрованной форме. Однако в кОммуникационной системе мы должны также быть уверены, что эта информация прибыла внеискаженном 
rлава з. с точки зрения защиТЫ 71 виде. Искажение может возникнуть изза блокирования нападающим линии связи, изза вмешательства или даже замены им сообщения или от обычных ошибок в канале связи. Простой способ обеспечить правильный прием  попросить, чтобы отправ ленное сообщение было послано обратно (рис 3.15, а). Однако работа с таки ми протоколами требует осторожности. Если речь идет о системе с частным ключом, то ключи, используемые Алисой и Бобом, будут одинаковыми, так что все, что Боб должен будет сделать, получив зашифрованное сообщ ние,  это послать ero назад Алисе, и оно будет таким же, как криптоrрамма. посланная от Алисы к Бобу. Если Еве вместо простоrо отвода от линии связи удастся включиться в разрыв этой линии, то она сможет, получив крипто- rpaMMY от Алисы, отправить ее назад (Алисе) без ее декодирования. Torдa Алиса будет думать, что именно Боб принял и понял ее сообщение, Torдa как фактически оно так никоrда до Hero и не доходило (рис 3.15, 6). Такой пере хват сообщения более труден, чем простой отвод в обычной цепи связни, но для пакетных систем, подобных Internet, rде сообщения посылаются от Ma шины к машине, сброс или подстановка сообщения выполняются тривиально при обращении к промежуточному компьютеру. Ева не может декодировать сообщение, но она может вводить в заблуждение Алису, заставляя ее думать, что сообщение получил Боб, коrда на самом деле этоrо не произошло. Если сообщение  это чтото вроде "заплатите 1 000000 $ по счету Х", то удале ние таких сообщений может очень дороrо стоить:.оо Апи.. &06 Апиоа Ева &015 ЗаuмфрованtЮe сообщение т пocыn..тси бобу Правильно принимает сообщение т и посыпает ero Аписе ЗаuмФРОВ8ННое сообщение т посылается бобу Прмнммается сообщение т, nOДТВВР*дВlOщее ycnеUliЫЙ Прием  сообщение т, подтверждающее успешныА прием П_реnатынвет 18UМфроВ8НН08 сообщение с м посылает ero обратно Аписе Боб НИЧеrо нв .анает, Ничеrо не ПриНИМ8еТ. НО не зная этorо. он теряет все с в б Рис. 3.15. Простой протокол передачи: в  успешный обмен; б  нападение на простой протокол с возвратом ложноrо подтверждения Единственный способ предотвратить это нападение состоит в том, чтобы за шифровать адрес и, таким образом, изменять возвращаемое сообщение. Oд нако здесь требуется осторожность. Если в качестве дополнения к сообще нию посылается зашифрованный адрес, то мы имеем с == е(т, k) + е(а, k). Теперь все, что должна делать Ева, это  прослушать несколько правильных сообщений между Алисой и Бобом, чтобы выяснить е(а, k), rде аА  адрес Алисы, а ан  адрес Боба. Коrда она хочет перехватить сообщение, она OT бирает из сообщения зашифрованный адрес е(аА, k) и заменяет ero на е(ая, k). 
72 Передача данных в сетях: инженерный подход Посылка в дополнение к адресу времени получения, например, не может по мочь, т. к. Ева может вычислить ею и повторно запустить часть подтвержде НИJI с подходящеrо момента времени. В худшем случае такой протокол обес печивает Еве возможность нападения на известный открытый текст, потому что она знает адрес в этом тексте и ею зашифрованную форму. Она может "спользовать это знание, чтобы попытаться вычислить ключ k. Этих нападений можно избежать, если вместо добавления адреса в конец co общения сделать сообщение функцией от посылаемой информации и адреса. Тоrда мы имеем с = е(f(т,а)k). Теперь, хотя Ева знает аА, и ав, она не может вычислить правильный ответ е(j{т,ав)k), чтобы обмануть Алису. На первый взrляд, системы с общим ключом в этом отношении лучше, чем симметричные шифры, т. к. зашифрованные сообщения от Алисы к Бобу, за кодированные с общим ключом Боба, отличаются от сообщений от Боба к Алисе, которые используют общий ключ Алисы. Однако слабая конструкция протокола в этом случае может привести к расшифровке сообщения Евой, а не просто к ero блокировке. Если Боб, со своей стороны, не знает адрес, откуда передает Алиса, все что Ева должна делать при передаче сообщения,  заменить свой адрес на адрес Алисы (рис. 3.16). Боб отвечает кодированием сообщения с общим ключом "Алиса", который фактически является ключом Евы, т. к. она поменяла aдpe са. Поскольку ответ кодируется с общим ключом Евы, она может декодиро вать ero и восстановить сообщение. Затем она заново кодирует сообщение с общим ключом Алисы и посылает ero так, чтобы Алиса и не подозревала о перехвате. Как в случае симметричною шифра, это нападение можно предот вратить, сделав сообщение функцией посылаемой информации и адреса, при чем так, чтобы адрес нельзя было извлечь отдельно. Алиса Ева Боб Зашифрованное сообщение т посылается Бобу Перехватывает С, заменяет адрес Алисы своим с = е(т, РЬ) Боб принимает т и отвечает, кодируя ответ с общим ключом Евы, думая, что это ключ Алисы Принимается сообщение т, подтверждающее успешный прием с = е(т, Ре) с = е(т, Ра) Декодирует т, повторно кодирует ero с Ра, чтобы поспать адрес Алисе Рис. 3.16. Нападение с подстановкой на схему с адресованным подтверждением 
rлава 3. С точки зрения защиты 73 Вместо посылки сообщения обратно к источнику, некоторые из этих проблем можно обойти, посылая обратно случайные (хеш) сообщения, h(m). Хеш ФУНКЦИЯ отображает входной набор символов на выходной набор фиксирован ной длины. ХешФункция должна быть достаточно простой для вычислений, но очень трудной или даже невозможной МЯ инвертирования, и такой, чтобы с BЫ сокой вероятностью выполнялось соотношение h(mJ) == h(m2) => т, == т2. Чем больше фиксированная длина выхода, тем выше эта вероятность, но тем больше информации должно быть послано. Этим требованиям удовлетворя ют односторонние функции, так что можно использовать общий ключ систе мы с общим ключом, но ero не очень просто вычислять. Однако никакоro ча CТHoro ключа не требуется. Так как Алиса знает сообщение т, она может кодировать ero, чтобы найти е(т, Ph) и сравнить ero с полученной хеш функцией. Коrда пер во на чальная криптоrрамма посылается Алисой, то для Евы атака тоже за-.туднена. Весьма популярны в качестве хешфункций cтaH дарты DES и МО5 , т. к. они вводят менее сложные вычисления, чем OДHO сторонние функции, используемые для общих ключей. 3.6.3. Идентификация В некоторых случаях более важным, чем передача собственно информации, является доверие к аутентичности (подлинности) поддерживающеrо связь терминала. Например, в мобильной телефонноi+, системе фактическая связь может не быть зашифрована (хотя часто именно-это и делается), но для сети важно знать, что связывающийся терминал уполномочен использовать сеть, и что это за терминал, так чтобы абоненту можно было выписать счет за вызов. Проблема сводится к следующему: Бобу нужно точно знать, что человек, с которым он разrоваривает, это  Алиса, а не Ева. Катеrоризированные идентификационные (опознавательные) системы амери KaHcKoro ФБР основаны на том, что человек знает (например, пароль), что он имеет (например, Юlюч), и что он собой представляет (например, отпечатки пальцев или образец сетчатки rлаза). Любая опознавательная схема должна быть основана по крайней мере на двух катеrориях  на соответствующей физической безопасности и все еще остающейся проблеме удшrенной связи. Система не может зависеть от Toro, что Алиса просто скажет: "Я Алиса", по тому что Ева способна сделать запись предыдущеrо опознавательноrо сеанса и воспроизвести это сообщение. Чтобы избежать подобной атаки, хороший опознавательный протокол должен включать вызов, за которым последует ответ, базирующийся на этом вызове, который доказывает, что парrnер по связи именно тот, кем он себя объявляет. 6 МО5  Меssзgе Digest 5, профилъ сообщения 5.  Пер. 
74 Передача данных в сетях: инженерный подход Основу для идентификации может обеспечить система с общим ключом. Только подлинные партнеры по связи будут знать их собственные частные ключи, и можно будет использовать этот факт, чтобы их опознавать (иденти фицировать). В системе с общим ключом, обозначив функцию шифрования как Е, а дешифрования  как D, получим D(E(m)) == т, т. е. дешифровка шифрованноro сообщения т приводит к исходному сообщению. Однако, ec ли начать преобразования с криптоrраммы, то можно получить выражение E(D(c}) = с, т. е. шифрование дешифровки криптоrраммы с дает исходную криптоrрамму. Boкpyr этих фактов можно построить протокол. Если Боб желает опознать Алису, то можно ПОС1Упить следующим образом. 1. r енерировать случайную криптоrрамму (с), т. е. сообщение с тем же алфавитом, как в зашифрованном сообщении. 2. Послать криптоrрамму Алисе для дешифровки. 3. Алиса дешифрует сообщение, используя свой частный ключ. Так как первоначальная криптоrрамма была случайна, то дешифрованное сообщение будет бессмысленно, но только тот, кто обладает частным ключом, может сrенерировать ero. 4. Алиса посылает дешифрованное сообщение (т) обратно Бобу, который затем зашифровывает это с общим ключом Алисы. 5. Если заново зашифрованное сообщение соответствует случайной криптоrрамме, которую Боб первоначально сrенерировал, т. е. если Е(т) == С, то Алиса должна иметь частный ключ и, если имеет, то поэтому действительно является Алисой. Если бы Ева претендовала быть Алисой, то ей пришлось бы быть способной к rенерации TaKoro сообщения т, чтобы выполнялось соотношение Е(т) = с, rде с  шифрованное сообщение, посланное Бобом. Это эквивалентно тому, что Ева может декодировать криптоrраммы и тем самым взламывать шифр. Однако требуется некоторая осторожность, чтобы rенерируемое Бобом co общение с было действительно случайным. Если бы это было не так, то Ева была бы способна подобрать подходящее значение т для специфическоrо значения С, используемоrо Бобом, вероятно просто наблюдая предыду щие попытки опознавания. Этим способом была взломана система CMapT карт оплаты телевидения, поскольку "случайный" вызов был фактически 8разрядным двоичным числом. Хакеры взломали э1)' систему, делая запись всех возможных опознавательных вызовов и ответов, даваемых подлинными картами, и затем проrраммируя точные копии карт со справочной таблицей правильных ответов без необходимости чтонибудь знать относительно дей ствий алrоритма. Это нападение было возможно, потому что подлинные Kap ты имели чрезвычайно оrpаниченную память и мощность обработки. 
rлава з. с точки зрения защиты 75 3.6.4. Цифровые подписи Алиса и Боб MOryт быть уверены в тождественности друr друrа, но это не то же самое, что доверие к их слову. Должна иметься возможность приписать определенные сообщения их создателю, чтобы друrие были способны прове рить ero ориrинал и чтобы создатель Mor держать свое слово так. как указано в ero документе. Это делается с помощью цифровых подписей, которые слу жат тем целям, что и их традиционные двойники, т. е. необходимо "подписывать" сообщение или квитанцию так. чтобы можно было доказать, что это сделал именно их создатель, т. е. в нашем случае  Алиса. Такое возможно в системе с частным ключом, если ключи хранятся у Алисы, Боба и в системном реестре. Боб будет принимать сообщения как подписан ные, если он может дешифровать ПОДПИGЬ с помощью cBoero ключа. Спор ную подпись может проверять системный реестр, а если он может также и дешифровать ее, то вынесет решение в пользу Боба. Однако это означает, что должен быть установлен центрШlЬНЫЙ реестр, и что системный реестр будет содержать некоторую информацию об Алисе и Бобе. Системы с общим ключом обеспечивают возможность обойти эту проблему, используя процесс, подобный процессу идентификации. В данном случае в качестве "случайной" криптоrраммы мы используем сообщение или случайно перемешанное сообщение. Алиса подписывает документ, используя свой ча стный ключ, чтобы "дешифровать" перемешанно сообщение. Это дешифро ванное сообщение и есть подпись. Затем Алиса посылает сообщение и под пись Бобу, шифруя все, что посылается, общим ключом Боба. Боб дешифрует сообщение своим частным ключом и проверяет подпись, зашифрованную общим ключом Алисы, на равенство случайно перемешанному сообщению. 3.7. Друrие криптоrрафические ПРОТОКОЛbl Кодирование и идентификация данных  два наиболее очевидных крипто rрафических приложения, но имеется множество друrих криптоrрафических функций, которые не попадают в эти катеroрии, но становятся все более важ ными в коммуникационных системах и не MOryт быть решены традиционны ми методами. 3.7.1. Удаленное бросание монеты Пример удаленноrо бросания монеты демонстрирует такой тип конструкции, который требуется ДЛЯ создания хороших протоколов. Рассмотрим следую щий сценарий: Алиса и Боб решают отпраздновать некоторую дату. Алиса хочет встретиться в ресторане, но Боб предпочел бы паб. При обсуждении вечерней проrpаммы по телефону Боб предлаrает бросить монету и приrла 
76 Передача данных в сетях: инженерный подход шает Алису назвать исход. Она rоворит "орел", после чеrо Боб сообщает, что, к сожалению, у монеты выпала "решка", так что они идут в паб. Может ли Алиса доверять Бобу? Фактически, даже если бы Боб сказал, что у монеты выпал "орел", как Алиса может узнать, был ли это правильный ответ или Боб просто проявил учтивость? Хороший протокол должен защитить как от лож ных проиrpышей, так и от ложных побед. Бросание монеты в традиционной манере работает потому, что сторона, бро сающ8Я MOHery, не может влиять на результат, зависящий от выбора, проrнозирующеrо результат партнера. Если Алиса называет результат, а Боб бросает MOHery, то требуется такой протокол, который вынуждает Алису вы- брать результат перед броском, а Боба  сохранять ее выбор до тех пор, пока бросок не будет выполнен. Однако Боб не может знать, какой результат вы- брала Алиса, до тех пор, пока не появится действительный результат броска, так что у Hero нет возможности обмануть ее. Подходящий протокол может быть основан на нахождении корней для полей простых чисел. Уравнение х 2 == а имеет два решения (корня) для любоrо положительноrо числа а, который является квадратом HeKoToporo числа. Например, если а равно 4, ТО х может быть равным 2 или 2. То же правило можно применить и для числовых полей, сравниваемых по простому модулю р. Например,  = 4 mод 5 также имеет два решения Х\ == 2 и Х2 == 3 (= 2 mод 5). (Обратите внимание, что а должно быть квадратом HeKoToporo числа в этом поле. Приведенный случай не имеет решения для а = 2 или 3). Если вместо простоrо модуля мы используем композицию, составленную из двух простых чисел, то получим 4 корня. Например, если р = 3 и q = 5, ТО'; mод 15 = 1 имеет решения 1,4, 11 (=  mод 15) и 14 (== 1 mод 15). Для мноrих простых р существуют методы вычисления корней по mод р, но для больших составных чисел их очень трудно выполнять. Однако если для со-- cтaBHoro числа п = pq мы знаем р и q, то мы можем вычислить корни п по корням р и q, вычисленным по mод р и mод q, соответственно. Протокол pa ботает следующим образом. 1. Алиса выбирает два больших простых числа р и q и посылает их произведение п = pq Бобу. 2. Боб случайным образом выбирает целое число u между 1 и п/2 включительно, и посылает ero квадрат Алисе. ЭтОТ квадрат имеет четыре корня, два из которых будут между) и п/2 (т. к. если х находится между 1 и п/2, ero отрицательное значение x не будет находиться в этом интервале, и наоборот). 3. Используя свои знания ори q, Алиса вычисляет четыре квадратных корня выражения z mod п. Обозначим корни этоrо выражения как :tx и :f:y. Она 
rлава з. с точки зрения защиты 77 выбирает два корня между 1 и п/2. Пусть это будyr х' и у. Пусть, кроме Toro, она знает, что u  ЭТО один из этих корней, но не знает  какой. 4. Алиса выбирает один из этих корней и посылает ero Бобу. Это делается путем определения тaKoro наименьшеrо i, для KOToporo iй разряд в числах х и у' различается, и в предположении, что iй разряд u есть О или 1. Заметим, что Алиса не посылает все число Бобу, т. к. если бы она выбрала ero неправильно, то Боб тоrда знал бы как и, который выбрал он, так и друrой корень, посланный Алисой, и Mor бы тоrда заявить, что Алиса выиrрала, коrда она на самом деле проиrрала. 5. Боб сообщает Алисе, является ли ее выбор правильным или нет, и посылает ее и, чтобы доказать это. 6. Алиса посылает р и q Бобу так, чтОбы он Mor найти друrие корни и проверить, что Алиса придерживалась соответствующей процедуры. Обратите внимание, что этот протокол совместно использует секрет, поэтому на каждом этапе ни одна сторона не имеет достаточных знаний, чтобы обманывать друryю. Так как существуют два решения для корня в правильном диапазоне, то Алиса не знает и, а знает только, что это может быть лишь одно число из двух возможных. Боб же не может обманывать Алису, заменяя одно решение друrим, после Toro как он получил название броска от Алисы, потому что он сам не знает друrоrо решения. Это потре бовало бы от Hero факторизации (разложения нi"множители) п, что он прак тически не может сделать. 3.7.2. Неосознанная передача Пример 50%ro шанса на успех, очевидноrо при удаленном бросании MOHe ты, можно использовать в протоколах для "неосознанной передачи". He осознанной называют такую передачу, при которой секрет совместно ис пользуется (скажем, Алисой с Бобом), но так, что она не знает (или не обращает внимания на то), получил ли Боб секрет или нет. Хотя это может казаться довольно бессмысленным в коммуникационной системе, сущест вуют случаи, коrда вы не хотели бы, чтобы "'владелец" секрета знал, полу чил ли ктонибудь доступ к этому секрету или нет. Примером может быть система rолосования, rде важно, чтобы избирательные бюллетени были проверены, но человек, опускающий их, остается анонимным. Система дей ствует следующим образом. 1. Алиса выбирает п == pq, rде р и q  это большие простые числа, и посылает п Бобу. 2. Боб выбирает х и посылает ero квадрат по mod п обратно Алисе. Заметим, что в отличие от бросания монеты, в данном случае это значение может 
18 Передача данных в сетях: инженерный подход не находиться в интервале между 1 и n12. В этой точке протокола Боб . знает два из четырех корней (х и x). 3. Алиса вычисляет корни полученноro значения (и и i:y) и посылает один из них Бобу. Так как Алиса не знает число, выбранное Бобом, то имеется 50%й шанс, что Алиса пошлет Бобу один из корней, который он уже имеет. Если Боб получа ет такой корень, то он не получает никакой информации и не владеет ceKpe ТОМ. Однако, если он получает друrой корень, то он может использовать эту информацию для факторизации п на множители р и q. .поэтому с вероятно стью  Боб получает секрет, но Алиса сама не знает, получил ли Боб ero или нет. Эrа базовая система может быть расширена на случай, коrда Алиса передает Бобу один из двух секретов, но не знает, какой из них Боб принял. На первый взrляд применение неосознанной передачи не кажется очевид ным, но на самом деле оно обеспечивает значительную степень ceKpeTHO сти для получателя информации. Нормальные передачи содержат все что уrодно, кроме частной информации, включая следы подтверждений, по которым наблюдатель может понять, кто, что и коrда узнавал. Однако cy ществуют обстоятельства, коrда требуется секретность, например, при электронном rолосовании. Можно расширить тип протоколов, продемон стрированных при обсуждении неосознанной передачи, чтобы позволить Бобу проводить 20лосованuе с Алисой, а Алисе  проверять правильность rолосования без знания Toro, как Боб подает свой rолос. Это существенно и для настоящеrо электронноrо rолосования, т. к. иначе правительство или орrанизаторы выборов знали бы, каким образом каждый индивидуум по дает свой rолос. Эroт Тип протоколов имеет также применение к системам электронных pac четов. Обычные наличные деньrи имеют следующие свойства. [] Защита от подделки. Выпускать банкноты не просто, поэтому и подде лывать их довольно трудно. [] Универсальная аКJ(редитацвя. Наличным деньrам доверяют все, потому чro они имеют поддержку банка, кроме тoro известно, чro их все принимают. [] Аноннмность. Владение наличными деньrами не связывает вас с KOH кретной транзакцией, и те, кто вовлечены в транзакцию, не должны знать друr друrа или доверять друr дрyry для про ведения транзакции. Верят в деньrи, а не в человека. Эrим же требованиям должна удовлетворять и электронная система, предна значенная для замены банкнот, а требование анонимности при водит к систе 
rлава 3. С точки зрения защиты 79 мам с неосознанной передачей. Однако мноrим правительствам хотелось бы, чтобы электронные выплаты были более прослеживаемыми, что позволило бы устранить возможность леrкоrо отмывания денеr. 3.8. Практическая защита в этой rлаве мы рассмотрели несколько способов построения криптоrрафи чески защищенных систем передачи, предназначенных для инженеров в сфе ре коммуникаций. За несколько прошедших лет в связи с разработкой xopo ших криптоrрафических алrоритмов, мы достиrли этапа, коrда имеется набор доступных для использования протоколов.с различными уровнями защиты. Инженер должен только видеть, что работа по проектированию ведется так, чтобы прежде Bcero обеспечивать корректные требования. Хорошая защита требует rлобальноrо подхода. Нет смысла в двойном запоре и креплении на болтах двери вашеrо дома только для Toro, чтобы оставить боковое окно открытым. Существует несколько факторов, которые непосред ственно не касаются коммуникационной системы, но являются существен ными для raрантии ее безопасности. 3.8.1. Какова необходимая степены-,защиты? Важный вопрос  какую степень защиты нужно обеспечивать? В настоя щее время можно использовать очень защищенные схемы, но коrда системы становятся более защищенными, растет и их сложность, увеличиваются объемы передаваемых данных и затраты на их обработку. Стоимость напа дения на систему также изменяется, поскольку чем более мощная обработка используется для атаки на код, тем быстрее может быть взломан алrоритм защиты. Между этими тремя факторами существует определенная связь: дополнительная передача и стоимость обработки имеют отношение к схеме защиты, к стоимости нападения на схему и стоимости самой информации (в терминах ее ценности для нападающеrо или потерь для владельца). Ha пример, для атаки на транзакцию кредитной карточки с лимитом в 1001 (фунтов стерлинrов) не стоило бы подключать большие обрабатывающие мощности, но для нападения на систему передачи международноrо банка, обрабатывающую сотни миллионов фунтов, стоило бы инвестировать в co ответствующие вычислительные мощности несколько миллионов фунтов. По этой причине одиночная DЕSзащита безопасна для первоrо случая, но недостаточна ДЛЯ последнеrо, хотя тройной DЕSзащиты было бы достаточ но. Однако для небольших устройств слишком сложна даже одиночная DЕSзащита. 
80 Передача данных в сетях: инженерный подход Данные с коротким сроком rодности не требуют сильной защиты. Например, система, затрачивающая около недели на декодирование, бьта бы совершенно не подходящей для посьтки данных о передвижениях на поле битвы, потому чro к тому времени, коrда нападающий декодирует данные, они больше не бу дет аК1)'альными. Однако пользователи должны знать это и использовать такие системы для более долrосрочных данных. Ценность данных не всеrда очевидна. Идентичность клиентов мобильноrо телефона можно рассматривать как нечто HaMHoro менее важное, чем данные, которые они передают, за исключением TOro случая, коrда их звонок из зарубежноrо rорода предупреждает нападающеrо о том, что дом клиентов пуст и ero можно поэтому безнаказанно оrpабить. 3.8.2. Проверка полномочий Обычно протоколы защиты стремятся требовать как можно меньше таких проверок от самих вступающих в связь сторон, даже в случае использования схем с идентификацией и подписью. Однако некоторая проверка требуется Bcerдa, даже если это только индивидуальный пользователь. Остереrайтесь необоснованных требований подобных проверок. Например, использование проrpаммы защиты, исходный код которой недоступен, означает орrаниза цию проверки полномочий авторов этоrо кода, для TOro чтобы (а)  знать их право, разработку и написание безопасных проrpамм и (б)  не обманывать их пользователей включением в проrpамму скрытых лазеек. Некоторые поль зователи думают, что система с опубликованным исходным кодом должна быть менее безопасна, чем та, исходный код которой не опубликован. Но в соответствии с предположением Керкхоффа нужно всеrда предполаrать, что подслушивающий имеет исходный код и код, опубликованный для крипто rpафическоrо сообщества, чтобы видеть пути обхода как ситуации (а), так и ситуации (б). 3.8.3. Аварийные ситуа ции в некотором смысле сообщение, не поддающееся дешифровке,  это то же самое, что аварийная ситуация. Хорошо спроектированная коммуникацион ная система будет справляться с такими ситуациями, но будьте осторожны, чтобы эти процедуры не обошли протоколы защиты. Например, популярная компьютерная операционная система имела хорошую защиту, но и большой недостаток, заключавшийся в том, что полная перезarpузка машины приводила ее к такому состоянию, коrда пользователь терминала Mor полу чить доступ К любому файлу и изменить ero. Ранние версии друrой операци 
rлаsа з. с точки зрения защиты 81 онной системы восстанавливались после "ошибки" отсyrствия файла пароля пyrем разрешения беспарольноrо доступа. ДОС1)'п разрешался с помощью заrpузки с системноrо диска и удаления файлов пароля. 3.8.4. Человеческий фактор Коммуникационная среда может быть опасна, но это "надежная" опас ность. Часто самым слабым звеном в цепи является человек. Люди MOryT обходить системы очень творчески или злонамеренно или просто от He достатка знания соответствующей системы. Еще один из самых общих и очевидных недостатков  это бедный выбор паролей или друrих ключей системы. Может показаться, что стремление сделать систему более слож ной, сделает ее и более безопасной, но это часто заставляет пользователей попытаться обмануть ее (чтобы сэкономить время или усилия), например, записывая ключи, которые должны запоминаться. И наконец, как бы ни была защищена система, в некоторой ее точке человек должен управлять ею или интерпретировать ее данные. Этот человек может быть подкуплен или принужден обойти защи1)'. 3.9. Вопросы к rлаве ..... 1. Используя перестановочный шифр с rлуБИI:IОЙ сетки 8, закодируйте сообщение: "Takeover announcement will ье made at пооп tomorrow" (Объявление о слиянии компаний будет сделано завтра утром). 2. Повторите кодирование, используя перестановочный шифр с ключевым сло вом "COLUМNAR" (которое используется для определения упорядочивания по столбцам). з. Используя шифр Цезаря со сдвиrом 4, закодируйте сообщение: "Now is the time for аll good men to соте to the aid of the part" (Для всех хороших людей настало время прийти на помощь партии). 4. Дешифруйте сообщение: KWWS:/ /ZZZ.DQtHQQDPRGHOV.FRPjVНFUHt/LQGHA.htPO. 5. Используя шифр Виженера и ключевое слово "hide", закодируйте "We must meet under the clock" (Мы должны встретиться под часами). 6. Используя поточный шифр и начальный ключ "D", закодируйте сообщение: "The documents will ье sent tomorrow" (Документы будyr посланы завтра.) 7. Какой битовый поток будет rенерировать LFSRреrистр, показанный на рис. 3 .17? 
82 Передача данных в сетях: инженерный подход Рис. 3.17. LFSRреrистр к вопросу 7 8. Для RSАсистемы с простым и р == 7 и q == 13 и ключом шифрования е == 5, найдите ответы на следующие вопросы: а) каково значение частноrо ключа d; б) используя данную систему, зашифруйте число 2 и проверьте, что можно дешифровать получившееся в результате кодовое слово об ратно в сообщение. Обратите внимание, что, если вы не используете компьютер, способный точ но выполнять операцию сравнения по модулю для очень больших чисел, то нужно будет использовать следующие факты: а х b(mod с) == (a(mod с» х (b(mod с» и а ЬС == аЬа С . 
I , rлава 4 ;/ /" 1./ . 'J.J. с точки зрения сетей А.1. Введение !до сих пор мы рассматривали коммуникационный процесс в терминах пря ",ОЙ связи между оmравителем и получателем. Хотя именно такое представ 'пение о системе имеется у пользователя и приложения, оно редко реализуется На практике. Рассмотрим структуру, показанную на рис. 4.1. Чтобы обеспе 'чить прямые соединения между всеми объектами, требуется большое количе Crвo отдельных коммуникационных линий. Даже для такой небольшой сис ,темы это неэффективно, а для больших структур, подобных телефонным сетям, совершенно неприемлемо. Рис. 4.1. Прямые соединения между всеми коммуникационными устройствами Вместо этоrо следует использовать сеть  объединение переключаемых KOM муникационных звеньев (communication links), обеспечивающих возможность соединения между терминалами (рис. 4.2). Термин звено (link) используется в 
84 Передача данных в сетях: инженерный подход сети, чтобы сослаться на коммуникационный пyrь между двумя объектами. Эrи объекты, которые MOryr быть терминалами или промежyroчными переКJIючa:re лями, называют узлами (nodes). Узлы, напрямую не соединенные с внешним ми ром, а соединенные только, например, с хостузлами (hosts) или терминальными узлами (tелniпаls), называют проме:жуточны.ми, или коммутационными. Сеть должна иметь следующие характеристики: (] задержки, т. е. время передачи и обработки должно сводиться к мини муму; (] ресурсы сети (ширина полосы) должны эффективно использоваться и ни какая часть сети не должна простаивать в течение длительноrо периода. (] стоимость установления, поддержания и функционирования сети должна сводиться к минимуму. '   . 4" .. л /У=Л Внутреннее соединение (звено)  t / I / _..  iI . ... Промежуточный , узел , П   Рис. 4.2. Простая сеть 4.2. Сетевые конфиrурации Самая простая сеть  это пара коммуникационных устройств, соединенных напрямую через некоторую передающую среду, например, в двухточечной' конфиryрации, показанной на рис. 4.3. I В ориmнале такую КОНфИl)'pаuия называют "pointtopoint"  J<онфиryрация типа "точка точка".  Пер. 
Fлава 4. С точки зрения сетей 85 Передающей средой может быть все что уroдно  от простой пары медных проводов до радиоканала или оптическоrо волокна. Можно вспомнить MHoro примеров, от простых до самых сложных, rде успешно используется такая .J<онфиryрация. Вот лишь некоторые из них: простой домашний дверной зво БОК, радиоканал "бэбимонитора", соединение по стандарту RS232 между персональным компьютером и принтером и т. п.   · t   Звено РИ,? 4.3. Одиночное двухточечное звено (звено "точкаточка") . f:Обычно В системе имеется больше двух устройств. При этом существуют две f-i i.80ЗМОЖНОСТИ: широковещательная и коммутируемая сети (рис. 4.4). Разделяемое звено     I" p а Коммутационный узел Звено  Звено I . . .  .... Звено"" ,JJ ,JB l" p РИС. 4.4. Широковещательные (а) и коммутируемые (6) сети 6 'в случае широковещательной сети каждый терминал разделяет (совместно использует) общую среду передачи. Это означает, что каждый терминал дол .?кен заботиться о том, чтобы использовать среду только тоrда, коrда друrие терминалы ее не используют, и поэтому в действительности он сам выполня ет свои переключения. Это подводит к концепции управления доступом к среде (передачи) (МАС, Media Access Control), cyrb которой состоит в том, чтобы на место каждоrо узла поместить некоторый механизм, реryлирующий Передачу ero данных по общей среде. Термин "широковещательный" означа 'ет, что, поскольку среда используется всеми терминалами совместно, то OT правляемые сообщения принимаются всеми терминалами. Каждый терминал исследует полученные сообщения и проверяет, кому они предназначены. В коммyrируемой сети каждый терминал имеет выделенное звено к узлу коммyrации, который и соединяет ero с терминалом, с которым он подцер живает связь или напрямую, или через друrие узлы. В отличие от широкове-- 
86 Передача данных в сетях: инженерный подход щательной сети, данные от узла коммутируемой сети принимаются только узлом на конце соответствующеrо канала, а не всеми остальными узлами. В такой сети требуется, чтобы узлы действовали как посредники и ретрансли ровали или коммутировали данные от друrих узлов, чтобы эти данные моrли бы достичь CBoero адресата. В таких сетях не явно выполняется функция Map шруmuзации. у д06но провести различие между сетями доступа (access networks) и базо вы.ми сетями (core networks). Базовая сеть  это сеть, соединяющая узлы коммутации. Сеть доступа  это часть сети, которая позволяет пользовате лям получить доступ К базовой сети, и поэтому она состоит из сети терми нальных узлов и узлов коммутации. Такое различие довольно произвольно, поскольку сеть доступа может содержать и узлы коммутации. Делается это лишь для удобства управления, хотя первичная цель Taкoro разделения co стоит в том, чтобы обеспечить доступ к системе. На рис. 4.2 (см. с. 84) звенья ceporo цвета образуют сеть доступа, а черноrо  базовую сеть. Термин база (core) подводит к концепции сети доступа, формирующей края сети. Можно также провести различие между узлами, расположенными внутри сети доступа, и узлами в базовой сети. Базовые узлы требуются для Toro, чтобы просто транспортировать информацию между друrими базовыми узлами и узлами доступа, тоrда как узлы в сети доступа вероятнее Bcero являются терминальными, и поэтому для них требуется прямое взаимо действие с источниками информации. Узлы доступа часто можно пред ставлять себе как 2енераторы, или пользователи информации, а не просто как ее носители; базовые же узлы выполняют только роль носителей ин формации. Хорошим примером подобноrо разделения является телефонная сеть. Ее уз лами являются коммутаторы. Соединения между коммутаторами называются ма2истралями, и на этих маrистралях выполняется большое числО вызовов. Сеть доступа формируется из большоrо количества индивидуальных або нентских линий, подходящих к локальным KOMмyraтopaM. Базовая сеть имеет множество промежуточных KOMмyraTOpOB, выполняющих переключения Me жду локальными коммутаторами. Базовые сети обычно являются коммутируемыми, т. к. В общем случае такие сети более эффективны. Сети доступа чаще Bcero являются широковеща тельными, потому что они очень просты в управлении. Добавление узлов к широковещательной сети не влияет на друrие узлы, так что терминальные узлы можно добавлять и удалять довольно леrко. Широковещательные сети оrpаничены в размерах изза наличия разделяемоrо всеми узлами звена, так что часто они формируются из нескольких чисто широковещательных секций с промежуточными переключателями. 
!Лава 4. С точки зрения сетей , 87 11.2.1. Сетевая тополоrия ,. : Род тополоzuей сети понимают способ соединения ее узлов. Имеется четыре рсновных сетевых тополоrии: сетка, звезда, кольцо и шина. !Сеточная тополоrия !Сеточная (или mesh) тополоrия  это такая тополоrия, в которой узлы сети рямую соединены друr с друrом. В полной сеточной тополоrии соединены e узлы. В частичной сеточной тополоrии некоторые звенья пропускаются, t,. , это означает, что некоторые узлы должны связываться через промежуточ }tые узлы (рис. 4.5). а 6 Рис. 4.5. Сети с полной (а) и частичной (б) о&точной тополоrией  полной сеточной тополоrии никакие переключения не используются, по r.  ;скольку каждыи узел имеет выделенные связи со всеми остальными, но при i этом мы возвращаемся к очень непрактичной ситуации (см. рис. 4.1): если чис 'JlО узлов возрастает, стоимость добавления новых узлов к сети растет по экс .'поненте, причем даже для небольших сетей. Существенным сдерживающим фактором для применения таких сетей является то, что при добавлении HOBOro узла каждый из остальных узлов должен быть изменен. Однако цеmpальная .базовая сеть некоторых крупных сетей иноrда строится как полная сетка. 'Частичная же сеточная тополоrия является практичной и наиболее общей ce тевой конфиryрацией. Узлы, которые имеют большой трафик, соединяются напрямую, в то время как остальные узлы соединяются через промежуточные узлы. 3вездообразнаятополоrия Тополоrия типа звезда  это простая тополоrия, в которой каждый узел co единен напрямую с общим центральным узлом (рис. 4.6, а). Этот централь ный узел и осуществляет связь между узлами. Центральный узел должен справляться с запросами всех узлов и, как следствие, он достаточно сложен и 
88 Передача данных в сетях: инженерный подход дороr. Существует также проблема надежности: если центральный узел вый дет из строя, то вместе с ним выйдет из строя и вся сеть. Для предотвращения таких СИ1)'аций нужно задать высокий уровень избыточности в центральном узле с помощью нескольких процессоров, переключателей и т. п., чтобы обеспечить необходимое дублирование любой отказывающей части системы. Примером сети со звездообразной тополоrией является учрежденческая АТС (рвх 2 ), разработанная для речевоrо обмена. Копьцеваятополоrия Кольцевая тополоrия, показанная на рис. 4.6, б,  это такое размещение уз лов, коrда все узлы сети соединяются друr с друroм двухточечными звеньями так, чтобы сформировать замкнyrый коюур. Информация пересылается от узла к узлу, пока не до,<тиrнет cBoero адресата. а б Рис. 4.6. Звездообразная (а) и кольцевая (6) тополоrии Кольцевая сеть  это попытка реализовать более распределенную сеть, по скольку rлавные мощности коммуникационной обработки больше не KOHцeH трируются в одном узле. Каждый узел имеет возможность принимать собст венные решения относительно сетевой передачи данных и друrие функции. Однако в некоторых кольцевых системах, таких как Кембриджское кольцо (Cambridge Riпg  кольцевая сеть Кембриджскоrо университета), распреде ленный характер сети уменьшен изза наличия общеrо узла, или cтaHции монитора (Мопitоr 8tаtiоп), которая иrpает центральную роль в функциони ровании сети. Эта станция контролирует сеть, собирает статистику ошибок, очищает испорченные пакеты и выполняет функции включения/выключения 2 РВХ  сокр. от Private Branch eXchange, телефонная система для частноro пользования.  Пер. 
fлава 4. С точки зрения сетей 89 сети. При сбое в этом узле работа сети, вероятно, серьезно нарушится. Друraя проблема в этой тополоrии  сохранение замкнутоrо контура кольца; если кольцо какимто образом разрывается, то сеть обычно полностью выходит из строя. UUиннаятополоrия Эта тополоrия  пример полностью распределенной сети. В сети, базирую щейся на шине, нет никакой центральной обработки, так что фактически cpe дой передачи является сама коммуникационная сеть. Каждый узел просто при соединяется напрямую к кабелю или шине, используя соответствующие интерфейсы и оборудование. К обоим концам шины присоединяются специ !-льные оконечные устройства, которые rюмоrает обеспечивать прав ильные передаточные характеристики шины. Это размещение может быть расширено, если использовать несколько взаи :.мосвязанных шин, чтобы сформировать то, что иноrда называют древовидной :сетью (рис. 4.7). Шина Узлы  Рис. 4.7. Шинная и древовидная сети в отличие от кольцевой тополоrии, в шинной и древовидной сетях нет требо вания замкнутости среды передачи. При этом, как и в случае кольцевой сети, все станции разделяют (совместно используют) общее звено передачи дaн ных, а это означает, что в каждый момент только одно устройство может пе редавать данные. Таким образом, требуется не который способ управления доступом, позволяющий определять, коrда станции MOryт передавать свои данные на шину. Наиболее общий метод доступа, используемый в шинных сетях,  это множественный доступ с контролем несущей u (необязатель но) обнаружением столкновений (CSMA/CD, Carrier Sense Multiple Ac cess/Collision Detection). Он используется в сетях типа Ethernet. 
90 Передача данных в сетях: инженерный подход 4.2.2. Связность Ключевой концепцией коммуникаций является так называемая связность (connectivity), которая определяет, насколько леrко добираться из одной точ ки сети в друryю. В общем случае существует несколько различных способов выполнить эту задачу. Выбор KOHKpeтнoro способа  это задача маршрути зации. Однако на более высоком уровне существует друrая проблема  Ha сколько хорошо различные части сети соединены друr С друrом, и какие в ней имеются маршруты. Существуют также проблемы надежности  если узел или звено отказывают, есть ли у сети возможность продолжать работу? Хотя для очень простых сетей, вероятно, можно установить их связность с по- мощью обследования, но в общем случае эта проблема roраздо сложнее. По этому мы можем воспользоваться математической концепцией, называемой теорией zрафов и представить сеть в виде набора узлов (nodes), объединенных связями (links), что эквивалентно математической концепции zрафа. Haпpaв ленные связи обеспечивают трафик (поток обмена информацией) в одном Ha правлении, тоrда как ненаправленные связи обеспечивают двухсторонний тpa фик. Узлы называют смежными, если имеются прямые связи между ними. Степенью (degree) узла называют количество связей, заканчивающихся на этом узле. Минимальная степень всей сети определяется минимальной степе нью любоrо из ее узлов. Реzyлярный zраф состоит из узлов одинаковой степе НИ. Примером реryлярноrо rpафа степени 2 является кольцо. Путь (path)  это последовательность узлов и связей, по которым проходит трафик от исходноrо узла А к узлу назначения В. Длиной пути называют KO личество связей в этом пути. Fеодезuческuм называют путь между узлами А и В с наименьшим количеством связей. Часто ero называют наuкратчайшuм путем, но это не совсем правильно. Диаметр rрафа (то есть всей сети) опре деляется величиной caMoro длинноro rеодезическоro пути. Пym с разделенными связями  это такие маршруты, которые не имеют об щих связей. Пути ABCDE и AFGHE первой сети на рис. 4.8, а имеют разде ленные связи, а маршруты ABCDE и АВС  нет. Во второй сети (рис. 4.8, б) разделенными связями обладают пути STUWX и SUX. Пym с разделенными узлами  это такие пути, у которых нет общих узлов. Пym AВCDE и AFGHE сети на рис. 4.8, а имеют разделенные узлы, а Map шруты STUWX и SUX сети на рис. 4.8, б  нет. Концепция разделенных путей важна при рассмотрении надежности сети. Два пути между узлами М и N в сети (рис. 4.8, в) разделены как по связям, так и по узлам, и если связь или узел в одном из соединяющих их маршрутов отказывают, то все еще существует доступный путь для передачи данных между этими двумя источниками. С друrой стороны, между узлами М и р существует два возможных пути, но они не разделены по связям и узлам, так 
[лава 4. С точки зрения сетей 91 ;ЧТО если узел N или О или связь Q откажут, то никакоrо альтернативноrо пу l-ти существовать не будет и соединение прервется. u G т а б в Рис. 4.8. Сети с разделенными связями и узлами Надежность сети (то есть ее способность противостоять отказу узла или свя аи) зависит от количества разделенных узлов или связей между узлами ис чника и адресата. Связность по звеньям (link connectivity) между двумя уз Лами определяется как минимальное число звеньев, которые должны быть [fдалены, чтобы отсоединить источник от адресата. ример, минимальное число связей, которые должны быть удалены дЛЯ OT :&>единения узла С от узла J в сети, показанной на,.рис. 4.9, равно 3. из рисунка ;Jsидно, что это значение можно определить, провоДя на rpафе отсекающие ли pnm (cs 1, cs2, ...). Минимальным является то отсечение, которое пересекает :caмoe малое число связей. Размер минимальноrо отсечения  это число разде- ',.1IeHHbIx пyreй между узлами С и J, что и определяет их связность по звеньям. :Различные пары узлов имеют разную связность по звеньям. Такая связность lЩя узлов А и L (рис 4.9), определяемая линией минимальноrо отсечения cs4, равна 2. Связность по звеньям всей сети  это минимальная связность всех Пар узлов. Аналоrично можно рассматривать связность по узлам (Пodе соппес vity) между каждой парой узлов и полную узловую связность всей сети, KO 'ioрая определяется как минимальная узловая связность в парах узлов. Связ НОСТИ по звеньям и узлам (Сп И Сд и минимальная степень сети (D) связаны OI'Ношением Сп < С, < D min . Друrими словами, связность по звеньям сети не может превышать ее минимальной степени, а связность по узлам не может быть больше, чем по звеньям. Поскольку степень связности определяет относительную устойчивость (robustness) сети, полезно уметь рассчитывать ее связность. Существует He сколько алrоритмов, которые отвечают на вопрос, имеет ли данная сеть связ НОСТЬ, равную т. Эти алrоритмы проверяют, имеет ли исследуемая сеть за данную связность, но не определяют вида этой связности. Однако для определения фактической связности их можно применять итерационно. 
92 Передача данных в сетях: инженерный подход сз5 сз2 Рис. 4.9. Различные отсечения на образце сети Приrодность используемоrо алrоритма будет зависеть от скорости достижения им соответствующеrо заключения, которая зависит от размеров се1И. Здесь мы рассмотрим два таких алrоритма  Клейтмана (Кleitman) и Ивена (Even). Алrоритм Клейтмана Алrоритм Клейтмана, проверяющий, имеет ли сеть узловую связность, paB ную по крайней мере m, формулируется следующим образом. 1. Выберите любой узел Nl. 2. Убедитесь, что узловая связность узла N\ со всеми друrими узлами равна по крайней мере т. 3. Удалите узел N. и все ero связи. 4. Выберите второй узел N 2 . 5. Убедитесь, что узел N 2 имеет m  1 соединений со всеми друrими узлами. 6. Удалите узел N 2 и все ero связи. 7. Выберите третий узел N 3 . 8. Убедитесь, что он имеет по крайней мере m  2 соединений со всеми друrими узлами. 9. Повторяйте процедуру, пока не доберетесь до узла т, т. е. выберите узел N m и убедитесь, что он соединен по крайней мере еще с одним узлом. 
aBa 4. С точки зрения сетей 93 ! сли про верки всех шаrов проходят удовлетворительно, то сеть имеет связ OCTЬ, равную, по крайней мере, т. Однако, если хотя бы в одной точке алrо итма про верка терпит неудачу, то связность не равна т.  качестве при мера рассмотрим следующую сеть (рис. 4.1 О). ВА: ВА, ВСА, ВЕР А ВС: ВС, ВАС, ВЕОС BD: ВСО, ВАРО, ВЕО ВЕ: ВЕ, ВАРЕ, ВСОЕ BF: ВАР, ВСОР,ВЕР . Рис. 4.10. Пример алrоритма Клейтмана  первый шаr Jlыберите любой узел, скажем, пусть это будет узел В, и убедитесь, что между fзnом В и всеми друrими узлами этой сети существует m == 3 пyrей с разделен .ыми узлами. "ак как это условие удовле1ВОРЯется, то удалиrе из сети узел В вместе с ero свя и. Выбериrе дрyrой узел, скажем, О, и у6едитесь, что между узлом D и всеми yrими узлами имеется m == 3  1 == 2 пyrи с разделенными узлами (рис. 4.11). DA: оеА, ОЕР А DC: ОС, ОР АС DE: ОЕ,ОРЕ DF: ОР, ОЕР . Рис. 4.11. Пример алrоритма Клейтмана  второй шаr ;Поскольку ЭТО условие удовлетворяется, то удалиrе из сети узел D вместе с ero 'СВязями. Выбериrе друrой узел, например, Р, и у6едитесь, что между узлом F .н всеми друrими узлами существует m == 3  2 == I пyrь (рис. 4.12). FA: РА FC: F АС FE: РЕ Рис. 4.12. Пример алrоритма Клейтмана  третий шаr Таким образом, связность равна по крайней мере 3. 
94 Передача данных в сетях: инженерный подход AnrоритМ Ивена Алrоритм Ивена, проверяющий, имеет ли сеть узловую связность, равную по крайней мере т, выполняется следующим образом. 1. Пронумеруйте узлы от 1 до N. 2. Сформируйте подмножество из узлов с номерами от 1 до т, rде т  искомая связность. 3. Проверьте, что каждый узел в этом подмножестве имеет по крайней мере т маршрyrов с разделенными узлами к каждому из друrих узлов в этом подмножестве. 4. Если предыдущий шar неуспешен, то связность  меньше т. Если усrtешен, то перейдите к следующему этапу. 5. Для каждоrо из оставшихся j узлов (т <== j < == N) сформируйте подмножество узлов (L), содержащее набор, заданный в шаrе ] (размера т), увеличенный на число узлов из множества J. 6. Добавьте к сети новый узел Х и соедините ero с каждым узлом множества L. Проверьте, что между узлом Х и каждым узлом j существует по крайней мере т маршрyrов с разделенными узлами. Затем добавьте к множеству L узел j, удаленный из множества J, и продолжите процедуру со следующим узломj. Если выполнение всех шаrов завершается успехом, сеть имеет связность по крайней мере равную т. Неудача в любом пункте алrоритма означает, что связность не обладает этим значением. В качестве примера выберите т == 3 узлам (В, Е и Р) и подтвердите, что в этом множестве между каждой парой узлов имеется т == 3 путей (рис. 4.13). ВЕ: ВЕ, ВАРЕ, BCDE BF: ВАР, BCDF, ВЕР EF: ЕР, EDF, EBAF Рис. 4.13. Пример алrоритма Ивена  первый шаr Добавьте к сети новый фиктивный узел Х и соедините ero с узлами В, Е и F. Выберите друrой узел  С, и подтвердите, что между С и новым узлом Х имеется т == 3 путей (рис. 4.14). 
(лава 4. С точки зрения сетей 95 СХ: СВХ, САРХ, CDEX Рис. 4.14. Пример алrоритма Ивена  второй шаr Подсоедините С к фиктивному узлу Х. Выберите друroй узел, А, и подтвер 'дите, что между А и новым узлом Х имеетя т == 3 пyreй (рис. 4.15). АХ: АВХ, АСХ, АРХ Рис. 4.15. Пример алrоритма Ивена ретий шаr Подсоедините А к фиктивному узлу Х. Выберите друrой узел  D и под 'ТВердите, что между D и новым узлом Х имеется т == 3 nyrей (рис. 4.16). DX: ОСХ, DFX, DEX Рис. 4.16. Пример алrоритма Ивена  четвертый шаr Таким образом, связность равна по крайней мере 3. 4.3. Размер сети В терминах размеров сети можно классифицировать на: [] rлобальные, W AN; 
>98 Передача данных в сетях: инженерный подход CI реrиональные (общеrородские), MAN; CI локальные, LAN. 4.3.1. rлобальные сети Fлобальная сеть (Wide Area Networks, W AN)  это сеть передачи данных, которая охватывает очень большую rеоrрафическую область (более 1 00 ки лометров). Такие сети обычно формировались из арендованных каналов KOM мyrируемой телефонной сети общеrо пользования (Public Switched Telephone Network, PSТN), но с недавнеrо времени отмена rосконтроля в индустрии Te лекоммуникаций привела к тому, что мноrие телекоммуникационные и cep висные компании установили высокоскоростные сети передачи данных об щенациональных или даже rлобальных масштабов. Самые высокоскоростные rлобальные сети работают на скоростях порядка 10 fбит/с. 4.3.2. Реrиональные сети Реzиональные сети (MetropoЦtan Area Networks, MAN) обслуживают то, что часто называют "зоной метро" и, по существу, обеспечивают передачу дaH ных для довольно ryстонаселенных реrионов типа rородов. Первоначально оrpаниченные зоны действия реrиональных сетей (порядка десятков кило метров) позволяли определять I! стандартах этих сетей более высокие CKOpO сти передачи данных, чем для rлобальных сетей, но современные W AN стандарты допускают столь же высокие скорости, как и в МАNстандартах, стирая различие между MAN и W АNсетями. 4.3.3. Локальные сети Локальная сеть (Local Area Networks, LAN)........ это система, которая имеет оrpаниченный rеоrрафический размер и соединяет множество отдельных BЫ числительных или иных устройств обработки данных (например, неречевых служб), находящихся внyrри HeKoToporo операционноrо узла. Она позволяет устройствам этоrо узла связываться с друrими устройствами Toro же caMoro узла. В общем случае в таких сетях MOryт поддерживаться самые разные службы и скорости передачи данных, а в отношении задержек и потерь они обладают относительно высокоэффективными характеристиками. Классификация сетей передачи данных по признаку принадлежности анало rична классификации по rеоrрафическому признаку. fлобальные сети, как правило, при надлежат сетевому провайдеру и пользователям сетевых плат ных услуr или через затраты, связанные с оплатой арендуемых каналов, или непосредственно, в зависимости от Toro, сколько времени они используют сеть (подобно повременному телефонному вызову). Хотя локальные вычис 
rлава 4. С точки зрения сетей 97 лительные сети и при надлежат пользователям, но они не несут никакой OT ветственности за их использование. fлавные затраты для их владельца свя заны с закупкой и установкой таких сетей. В этом отношении реrиональные и локальные вычислительные сети похожи друr на друrа, хотя в реrиональ ных сетях MOryT использоваться арендованные каналы на основе сетевых несущих частот. 4.4. Типы коммутации Существует два метода орrанизации сквозной связи через сеть  с coeди нением и без соединения. В первом случае между передатчиком и приемни ком устанавливается определенный марщрут передачи информации. Клас сическим примером сетей первоrо типа является телефонная сеть. Во втором случае информация упаковывается в объекты, называемые дейта 2раммами, которые MOryT прокладывать свой путь к приемнику через сеть без установки соединения. Наилучшей аналоrией для сетей TaKoro типа яв ляются почтовые службы. Различие между этими двумя типами коммутаций весьма условно. Можно реализовать связь, ориентированную на соединения, и в системе без соеди нений. Например, возвращаясь к почтовой аналоrии, если бы компания OT правляла ежедневно послания своим менеджера. по почте, то такое сквоз ное сообщение (компании с менеджером) было бы ориентировано на соединения, потому что в таком случае установился бы реrулярный KOMMY никационный путь. Фактическую транспортировку информации реализует почтовая служба без соединений более низкоrо уровня, которая не видна на более высоких уровнях. Именно эту систему использует один из наиболее распространенных сетевых протоколов  TCP/IP. ТСР  это протокол, , ориентированный на соединения, тоrда как IРпротокол на соединения не ориентирован. Традиционные сети связи были ориентированы на соединения, тоrда как сети ЭВМ работали без соединений. Ввиду TOro что межкомпьютерные связи op rанизуются по телекоммуникационным сетям, классический межкомпьютер ный IРпротокол часто выполняется на одно направленном канале, исполь зующем соединения, например, на канале с А ТМ (Asynchronus Transfer Моде, режим асинхронной передачи). это означает, что протоколы ТСРЛР, работая на прикладном уровне с А ТМ, используют режим с соединениями. Переходя на сетевой уровень, они переключаются в режим без соединений, а на Ka нальном уровне  снова переключаются в режим с соединениями. Это обу словлено тем, что на разных уровнях системы протоколов каждый подход имеет свои преимущества. 
98 Передача данных в сетях: инженерный подход Существует и друraя классификация коммyrационных систем  их разделя ют на системы с коммутацией каНШlO6 и с коммутацией пакетО6. Система с коммyraцией каналов эквивалентна системе с соединениями, в которой пере датчик соединен с приемником через физический канШl. Системы пакетной коммутации посылают данные в виде пакетО6. Если пакеты обрабатываются и направляются сетью их адресатам индивидуально, то они называются дeй mazpaммaмu, а сама система работает в режиме без соединений. Однако па кеты мотут быть и не индивидуальными, а формирующими лишь часть по следовательности. В этом случае из пакетов формируется так называемый виртуШlЬНЫЙ канШl. Классификация сетевых систем с различными режимами коммутации показана на рис. 4.17. с соединениями I Без соединений С коммутацией па кетов С коммутацией каналов С коммутацией ячеек С коммутацией сообщений Виртуальные каналы r с коммутацией Дейтаrpаммы Рис 4.17. Отношения между различными типами коммутационных сетевых систем 4.4.1. Коммутация каналов При коммутации каналов между сторонами устанавливается выделенный коммуникационный путь (path), проходящий через определенные узлы сети (рис. 4.18). В традиционных архитектурах с коммутацией каналов это соеди нение остается на одном и том же месте в течение Bcero вызова, хотя сущест вуют варианты этой методики, коrда такое условие не выполняется, напри мер, при так называемой быстрой коммутации кана'106. Преимуществом этоrо вида коммутации является то, что, как только вызов был установлен, пользователи соответствующеrо пути MOryт передавать ин формацию, независимо от наrpузки на сеть, и это соединение rарантируется в течение Bcero вызова. Задержки передачи через сеть остаются постоянными и обычно незначительными. rлавным компонентом задержки является время, требуемое для первоначальной установки пyrи через сеть. Величина этоrо времени зависит от конкретной сети и используемоrо пуrи. rлавный недостаток этой методики  ее неэффективность. Путь остается открытым в течение Bcero вызова, что чрезвычайно расточительно по OTHO lUению к пропускной способности канала. 
rлава 4. С точки зрения сетей 99  I ,  O  Рис. 4.18. Коммутация каналОВ 4.4.2. Коммутация пакетов в том случае, коrда нужно передавать только очень небольшое количество информации, установка канала для передачи данных оказывается чрезвычай но неэффективной. Лучший подход состоит в том, чтобы добавлять к данным .... адресную информацию и посылать их в отдельном блоке, известном под названием пакет (данных). Пакет передается соответствующему адресату через различные узлы сети. Преимуществом пакетной коммутации является то, что сеть используется только тоrда, коrда имеется информация для передачи, тоrда как при коммутации каналов линия устанавливается незави симо от Toro, имеется ли информационный поток в соответствующей точке в данный момент или нет. Это важно для некоторых служб, таких, например, как передача данных с пульсирующим трафиком. Основная форма пакета показана на рис. 4.19. В начало и конец па кета добав ляется служебная информация  заrоловок, содержащий информацию, KOTO рая идентифицирует источник и адресат пакета, а также биты синхронизации, которые указывают начало или конец пакета. Пакет передается через сеть поэтапно, сохраняясь в буфере, пока соответствующее звено пути не освобо дится. Дополнительная информация, присоединяемая к пакету для идентифи кации ero источника, адресата или ceтeBoro маршрута, относительно невели ка по сравнению с самим сообщением. Флажок Адрес Информация Флажок Рис. 4.19. Пакет данных 
100 Передача данных В сетях: инженерный подход Сушествует два специальных типа систем пакетной коммутации. В системе с коммутацией сообщений, схема которой показана на рис. 4.20, пакет включа ет все сообщение целиком. Системы с коммутацией сообщений часто назы вают системами хранения и отправки сообщений. Хотя коммутация сообще ний позволяет избежать разделения передаваемой информации на меньшие по размеру пакеты и последующую их сборку в приемнике, все же можно отметить несколько недостатков, связанных с использованием этоrо вида коммутации в коммуникационных сетях: а размеры сообщений изменяются от десятков байтов до десятков тысяч байтов, а аппаратное оборудование должно иметь возможность сохранять все сообщения. Очевидно, что это неэффективно и существенно удорожа ет сетевые ресурсы; а длинные сообщения приводят к недопустимым задержкам, которые MorYT также влиять и на задержки коротких сообщений.  @,I б.Ф..Ы / li  6 / ,   Рис. 4.20. Схема коммутации сообщений Второй специальный тип пакетной коммутации называется коммутацией ячеек (рис. 4.21). В системе коммутации ячеек все пакеты, которые называ ются здесь ячейками, имеют фиксированную длину. Такой формат позволяет уменьшить объем работ, который сетевые узлы должны выполнять над паке тами, сохранить сложность системы на достаточно низком, а скорость пере дачи  на довольно высоком уровне. Однако существует определенный KOM промисс, связанный с длиной ячеек. Короткие ячейки уменьшают задержку, потому что перед обработкой и отправкой каждая ячейка считывается узлом. Однако, если ячейка слишком мала, то служебная информация (заrоловки и окончания пакетов) будет составлять существенную часть потока данных, что неэффективно. С друrой стороны, более длинная ячейка будет увеличивать задержку, что приведет к трудностям с низкоскоростными службами переда чи данных, такими, например, как передача речи, поскольку мноrие из ячеек останутся неиспользованными, что снова приведет к неэффективности сис темы. В асинхронном режиме передачи (А ТМ) используется коммутация яче ек с 48байтовым полем информации и 56айтовым полем заrоловка. 
rлава 4. С точки зрения сетей 101 Чтобы уменьшить время обработки и размеры служебных заrоловков, систе мы с коммутацией ячеек используют виртуальные каналы, что позволяет за ранее устанавливать путь через каждый маршрутизатор. g   EJ   EJ Рис. 4.21. Схема коммутации ячеек Коммутация дейтаrрамм В системе, использующей дейтаrраммы, все пакеты рассматриваются и Ha .правляются через систему как отдельные объекты. Это означает, что пакеты от источника, предназначенные для одноrо и Toro же адресата, будут путеше ствовать по разным маршрутам и, возможно, прибудyr к адресату не в ИСХОk ной последовательности (рис. 4.22). .... Маршрут, по которому проходит пакет, будет в каждый конкретный момент зависеть от состояния сети. Восстановить правильную последовательность пакетов позволяет установка в заrоловке каждоrо пакета ero порядковО20 HO мера. Поскольку каждый пакет направляется через сеть независимо, то заrо ловок должен также содержать адреса источника и адрес пункта назначения, а также, возможно, информацию о маршруте.   /".l'-">., "'-,. /" . ,.> $ ('Ч'"  '< J [;дl --ц-..,...,....  Рис. 4.22. Схема потока данных, использующеrо коммутацию дейтаrрамм Виртуальные каналы Работа вuртуШlЬНЫХ каНШlов HeMHoro напоминает коммутацию каналов: пер вый пакет прокладывает путь между источником и пунктом назначения, и по 
102 Передача данных в сетях: инженерный подход этому пyrи следуют все последующие пакеты этоrо источника. Таким обра зом. пакеты не MOryr прибывать в пункт назначения не по порядку (рис. 4.23). Кроме TOro, это позволяет назначать ресурсы для информацион Horo потока на весь сеанс связи. потому что в узлах заранее известно, чеrо можно ожидать. Заroловок виртуальноrо канала в принципе проще. чем заrо ловок дейтarpаммы. потому что маршрут пакетов не изменяется. и не требу ется заново восстанавливать их последовательность. Виртуальный канал  это лоrический двухточечный путь между двумя OKO нечными станциями. Соответствующая служба обычно выполняется в три этапа: вызов (установка канала). передача данных и отмена вызова (или за крытие канала). Для установки виртуальноrо канала используются полные адреса источника и пункта назначения. Затем виртуальному каналу назнача ется номер вuртуалЬНО20 канала, который используется всеми последующи ми сообщениями. В установленном виртуальном канале обычно выполняется управление ошибками и потоком данных. :. А      Рис. 4.23. Схема потока данных в виртуальном канале Заrоловок виртуальноrо канала короче. чем заrоловок дейтarpаммы, что. в принципе, обеспечивает и более высокую эффективность передачи Задержки в системе с виртуальными каналами MOryт быть уменьшены. поскольку паке ты способны быстрее обрабатываться каждым узлом. а в пункте назначения не требуется заново восстанавливать их последовательность. Однако эти пре имущества сводятся на нет. т. к. коммуникационным службам леrче пересе кать сетевые rраницы. используя дейтаrраммы. а не виртуальные каналы. 4.5. Качество работы сетевых служб Цель коммуникационной системы СОСТОИТ в переносе информации между двумя или несколькими конечными точками сети ДJ1Я удовлетворения потребностей их ПОльзователей. Пользователь взаимодействует с приложением. находящимся на прикладном уровне. После тoro как данные бьmи обработаны тем или иным спо- собом, сеть взаимодействует с несколькими уровнями данных, расположенными 
rлава 4. С точки зрения сетей 103 ниже прикладноro уровня. Однако наиболее существенным процессом как в oт ношении изменения данных, так и в отношении восприятия пользователем этих данных, будет, вероятно, кодирование источника. Для ceтeBoro дизайнера такая работа обеспечивает целый ряд преимуществ. Что касается пРWlOжений или служб, работающих на прикладном уровне, то их задачей может быть передача речи, видеоклипов или файлов друrих типов, к сети же предъявляется требование просто передавать данные адресату в соответствии с некоторыми критериями качества. В стандарте IТU Т опред лено несколько криrериев качества обслуживания (Qua1ity of Service, QoS), которые разбиваются на две rруппы  критерии, связанные и не связанные с производительностью (эффективностью) соответствующих служб. 4.5.1. Пара метры качества обслуживания, не связанные с производительностью Параметры, не связанные с производительностью, напрямую не влияют на производительность коммуникационных служб, но имеют отношение к смежным с ней вопросам. а Уровень обслужнвання. Определяется степенью уверенности в том, что будyr достиmyты уровни обслуживания, соответствующие QoS критериям. Уровень обслуживания называК>I детерминированным, если rарантируется заданный QOSypoBeHb, пРО2Нозuруемым, если QOSYPoBeHb службы время от времени деrрадирует изза статистическоrо характера ce тевых коммуникаций или наWlУЧШUМ из возможных, если соответствую щая служба только получает сетевые ресурсы после Toro как были обслу жены друrие уровни, но ничеrо не rарантирует в отношении уровня QoS. (] Стоимость. Это плата за использование службы и получение соrласован Horo качества. а Прнорнтет. Определяет порядок работы служб  высокоприоритетные соединения обслуживаются раньше, чем низкоприоритетные. 4.5.2. Параметры качества обслуживания, связанные с производительностью Как в стаlЩартах lТU, так и в стандартах ISO определены параметры для прямо- ro измерения качества соединений. Терминолоrия этих стандартов слеrка разли чается, но в общем они эквивалеmны. В парах приведенных даЛее терминов первый используется в стандартах ISO, а второй  в стандартах lТU. LJ Задержка установкн соединення, средняя задержка доступа илн за держка установкн вызова. Задержка между вводом HOBoro запроса на вызов соединения и подтверждением, что соединение было установлено. 
104 Передача данных в сетях: инженерный подход . а Вероятность отказа прн установке соедииеиия, вероятность блоки- ровки. Вероятность Toro, что требуемое соединение не установлено (в пределах максимально допустимой задержки установки). а Пропускная способность. Максимальное количество данных, которые MOryт быть успешно переданы в единицу времени по соединению в непре рывном режиме. а Транзиmая задержка, задержка кадра. Количество времени между вы- дачей РDU-блока и ero получеиием. а Вариации задержкн, "дрожание" кадра. Расхождение между минималь- ной и максимальной транзитной или кадровой задержкой. а Скорость остаточных (не обнаруженны)) ошибок, скорость кадровых ошибок (Frame Епоr Rate, FER). Вероятность Toro, что кадр или РDUблок будет испорчен, потерян или дублирован в приемнике. LJ у стойчнвость, вероятность сброса соедннення. Вероятность Toro, что соединение будет сброшено или восстановлено в пределах указанноrо ин- тервала времени. а Задержка-в освобожден ни соединення. Задержка между выдачей конца запроса вызова и подтверждением освобождения соединения. Задержками установки и освобождения соединения управляют с помощью специальной сетевой сиrнализации и маршрyrизации. И хотя очевидно, что полезно минимизировать эти задержки, следует учитывать, что они случают- ся только один раз за соединение. Довольно серьезной является проблема доступности сети, которая связана с блокировками, препятствующими установке соединений, или сбросами, раз- рывающими уже существующие соединения. В общем случае сброс соедине- ний оказывается особенно нежелательным, т. к. предпочтительнее с caMoro начала блокировать соединение, а не прекращать ero, коrда оно уже функ- ционирует. Иноrда используемый термин уровень обслуживания (grade of service) указывает, в первую очередь, на доступность сети, т. е. на вероят- ность отказа в установке соединения, чем он отличается от термина качество обслуживания (quaJity of service), в котором речь идет о предоставлении фак- тическоro обслуживания. Тремя фундаментальными параметрами качества транспортировки данных являются задержка (delay), пропускная способность (throughput) и искаже- ния (сопuрtiоп), включающие ошибки и пропуски данных. Для первых двух параметров чаще Bcero используются такие характеристики, как изменчи- вость (variation) и среднее значение. Изменчивость пропускной способности 
rЛ8sа 4. С точки зрения сетей 105 обычно связывают со скоростью передачи, измеряемую в битах в секунду3. Изменчивость пропускной способности называют пульсацией (burstiness) и задают в терминах разности между средней и пиковой битовой скоростью. Требования к этим значениям часто определяется с помощью специальной службы. Вариации задержки называют дрожанием Gitter). 4.6. Пропускная способность сетей Определив требования к сети в терминах услyr, можно приступить к вычис лению ее пропускной способности. Подходы к вычислению пропускной спо собности сетей с коммутацией каналов и с коммутацией пакетов существенно различаются. 4.6.1. Пропускная способность сетей с коммутацией каналов в сетях с коммутацией каналов каждый терминал обеспечивается выделен ным сетевым каналом. Однако, в силу Toro, что было бы слишком дороro создавать сеть с полной сеточной тополоrией, межузловые соединения под держивают все терминалы сразу. Такой подход весьма удобен, поскольку большинство терминалов будут использоваться только в течение коротких --, периодов времени. Поэтому достаточную пропускную способность нужно ! обеспечить только в базовой части сети, учитывая максимальную ожидаемую наrpузку. Это особенно справедливо, коrда имеется большое количество Tep миналов, каждый из которых используется не очень часто, как, например, в телефонной системе. Сколько ресурсов потребуется, чтобы удовлетворить пользователей, и какова вероятность Toro, что пользователь обнаружит, что все ресурсы заняты? Мы предполаrаем, что пользователь, не найдя доступ ных ресурсов, не будет ждать и покинет систему. Именно так обстоят дела в коммуникационной системе, в которой ресурсами являются каналы. Если количество пользователей HeHaMHoro больше, чем количество каналов, то вероятность поступления вызова от HOBoro пользователя будет YMeHЬ шаться, коrда количество пользователей, которые в текущий момент уже Ha ходятся в сети, увеличивается. Однако, поскольку число пользователей дoc таточно велико, то мы можем предположить, что число пользователей, которые в текущий момент уже используют ресурсы, не влияет на вероят ность поступления вызова пользователя в систему, ожидающую канал. Пусть 3 В отечественной литературе анrлийское словосочетание "bit rate" вместо формальноrо перево да на русский язык (скорость в битах) часто называют более кратким словом "битрейт", KO пирующим анrлийское произношение этоrо словосочетания.  Пер. 
JE6 Передача данных в сетях: инженерный подход вероятность (частота) поступления вызовов будет равна А. В зависимости от числа используемых каналов, система может быть в нескольких состояниях. Если имеется п каналов, то существует п + 1 состояний (единица добавляется потому, что существует также и возможность тoro, что никакие каналы не используются). Обозначим эти состояния как Ео, E 1 , ..., Е п , и пусть вероят нОСТЬ состояния i будет Р;. Это означает, что доля времени, коrда система находится в состоянии Е;, равна Р;, так что вероятность получения вызова и перехода в состояние Е;+\ равна АР;, исключая случай i == п, коrда вероятность равна О (так как каналов больше нет). ВероЯТНОСТЬ завершения вызова в состоянии Е; зависит от продолжительн<r сти вызовов. Пусть средняя продолжительность вызова, называемая средним временем удержания вызова, равна Т. Это означает, что вероятность Toro, что вызов будет оставаться в индивидуальном канале, равна 1/т, так что если имеется i вызовов, то вероятность пребывания любоrо из них в этом канале равна ilT. Следовательно, вероятность пребывания вызова в канале и перехо i+l да в состояние Е; равна  +I . Эта ситуация показана на рис. 4.24. т В предположении, что система является устойчивой (какими и должны быть все практически е системы), вероятности перехода в состояние и пребыва ния в этом состоянии должны быть равны. Что дает нам следующее Bыpa жение i+l A =+I t !.J. т 2Р 2 Т Vi Е {О, ...,п 1}. iP .........!.. Т ЛРп---1 ]J пР .........!!. т Рис. 4.24. Различные состояния вызовов Мы можем выразить каждую из этих вероятностей через РО следующим об разом р. == (АТ); р, о , ., 1. Vi Е {О,...,п} (4.1) 
rлава 4. С точки зрения сетей 107 Однако система всеrда должна быть в одном из состояний, поэтому L:o.P; = 1. Использование этоrо равенства позволяет решить уравнение (4.1) относительно Р о , что дает ( n (.А:ЕУ ) I р. = "' О L..J ., i=O 1. (4.2) Подстановка (4.2) в (4.1) дает долю времени, в течение KOTOpOro система бу дет в состоянии занятости j вызовами. р. = t i!(A.Ti 1 ;=0 j!(A.T)' (4.3) Различие интервалов времени, которые система про водит в каждом состоя нии, зависит скорее от произведения Л:t, чем от любой из этих величин в OT дельности. Про изведение частоты поступления вызовов и времени удержа пия вызова дает среднюю наrрузку на систему. Это количество называется nредла2аемой на2РУЗКОЙ (offered load) и обозначается символом А. После Toro как А. К. Эрланr (А. К. Еrlапg) опубликовал зry формулу в 1917 rоду, предлarаемая нarрузка измеряется в эрлаН2ах. Эрланrи обычно измеряют в вызовах. Orметим также, что поступающие за просы принято измерять количеством вызовов в час, причем измерения обычно про водятся на основе часа максимальной наrpузки, т. е. часа с MaK симальным количеством вызовов в течение дня. Если подставить А::::: лt в выражение (4.3) и установитьj::::: п, то мы получим формулу потерь Эрланrа Е(А,п) = :t i!A n . . (4.4) i=O п!А 1 Формула потерь Эрланrа определяет ту долю времени работы системы, коrда она будет полностью занята обработкой уже имеющихся вызовов, и поэтому любой поступающий вызов будет блокирован. В основе этой формулы лежит следующее предположение  вероятность поступления вызова не зависит от числа вызовов, уже находящихся в системе, поэтому формула Эрланrа по существу вычисляет вероятность блокировки системы. Величина этой Bepo ятности обычно невелика, возможно, Bcero несколько процентов. Формулу (4.4) часто называют Вформулой Эрланrа, rде В происходит от анrл. Blocked  блокированный. (Имеется и Сформула Эрланrа, которая OXBaты Бает тот случай, коrда вызовы, поступающие в заполненную систему, ставят ся в очередь.) 
108 Передача данных в сетях: инженерный подход Предыдущее обсуждение предполаraет, что любой входной канал KOMMyтa тора допустимо соединять с любым свободным выходным каналом этоrо же коммутатора. Такую систему можно леrко орrанизовать с помощью устрой ства, называемоrо матричным (или координатным) коммутатором, в кото-- ром каждая входная линия через подходящие соединители может быть со-- единена с любой выходной линией. Так как большая часть внутренних соединений не будет использоваться, то количество оборудования в такой системе можно уменьшить за счет введения мноrоступенчатых устройств. Они работают аналоrично двум коммутаторам с промежyrочной маrистра лью, но MOryт привести к блокировкам в коммутаторе. Поскольку в современных телефонных станциях все данные  цифровые, то можно избрать иной подход, использующий переЮlючение с разделением вреМени. Каждая цифровая линия в таком коммутаторе соединяется с общей шиной через переключатель. Линия буферизирована, так что данные можно считывать и выводить с разными скоростями. Для переключения двух линий обе они присоединяются к общей шине, следовательно данные можно пере мещать между их буферами. При этом данные движутся с высокой CKOpO стью, И В распоряжении переключателя оказывается большое количество oт дельных временных интервалов, каждый из которых можно использовать для пересылки данных между парой линий. Если данные поступают в переключа тель в восемь раз быстрее, чем может получать и отправлять любая из ero линий, то Д)Iя передачи этих данных он может соединить любые восемь пар своих линий. Блокировки можно предотвратить, если сделать коммутатор достаточно быстродействующим. Однако, чем быстрее работает коммутатор, тем дороже обходится ero построение. На рис. 4.25 показаны различные Ba рианты архитектуры коммутаторов.         ---о а б в Рис. 4.25. Различная архитектура коммутаторов: а  матричный коммутатор; б  мноrоступенчатый коммутатор; в  коммутатор с временным разделением, использующий шину 
[лава 4. С точки зрения сетей 109 Возможно разделение (совместное использование) подключений к сети He сколькими терминалами. Для этоro требуется, чтобы коммутатор подключал ( каналу только один из терминалов и отсоединял друrие. В качестве просто o примера можно привести телефонный коммутатор, rде все телефоны раз rжеляют одну и ту же линию, причем в любой момент времени функционирует юлько один вызов. Аналоrично устроена линия коллективноrо пользования между несколькими абонентами. Несколько сложнее система автоматическо ro переключения телефона/факса и, возможно, компьютера, которая aBTOMa rически отвечает на поступающий вызов нужноro устройства в зависимости от Toro, слышит ли она вызов факса или тон модема, и соединяется с телефо ном или автоответчиком, если ни один их ЭТИХ вызовов не слышен. Такие системы работают весьма эффективно для roлосовых или факсовых вызовов, поскольку эти вызовы обычно довольно' короткие. Однако, этоrо нельзя CKa зать о вызовах для данных (т. е. от компьютерных модемов), которые MOryт привести к семейной дисrармонии И созданию хорошеro рынка для телефон НbIX компаний, ПрОКЛадывающих вторые домашние линии. Так как телефон Ная линия физически способна обеспечить трафик для нескольких вызовов, то существует еще одна возможность  преобразовывать сиrналы двух BЫ зовов В цифровую форму и посылать по той же линии. Этот подход принят в цифровой сети с интеrpацией служб (ISDN), но для получения обычноrо aHa лоrовоro телефонноrо сиrнала и преобразования ero в цифровую форму он требует более дороroro телефонноrо или КОlЦeртирующеrо оборудования (оборудование коммутатора не требует изменений, так как оно уже цифро вое.) Более простое решение состоит в том, чтобы обеспечить вторую анало rовую линию. Так как телефонный кабель обычно снабжается двумя парами проводов, то часто требуется просто присоединить вторую пару. 4.6.2. Пропускная способность систем с коммутацией пакетов Поток обмена (трафик) данных по своей природе неравномерен. Он состоит из относительно коротких вспышек активности, сопровождаемых более длинными неактивными периодами, что контрастирует с речевым трафиком, в котором обмен информацией после установки вызова представляет собой непрерывный поток данных, распространяющихся с одинаковой скоростью. В результате трафик данных не столь идеально подходит для передачи по выделенному фиксированному каналу, как в случае коммутации каналов, и выделенный канал используется неэффективно. Лучший подход, возможно, состоит в том, чтобы объединить всю наrpузку индивидуальных каналов и совместно использовать ее всеми пользователями. Пики и спады наrрузки индивидуальных каналов MOIyr "rасить" друr друrа, 
110 Передача данных в сетях: инженерный подход так что исходную ширину полосы пропускания можно свободно использо вать для поддержки дополнительных вызовов. Статистическое МУЛЬТИIUIексирование приводит к более эффективному исполь зеванию системных ресурсов, но им нужно пользоваться с осторожностью. Ключевой вопрос состоиr в том, сколько каналов нужно МУЛЬТИIUIексировать дpyr с дрyrом. Если слишком мало, то увеличение ширины полосы пропускания может оказаться не60льшим, если слишком MHoro, то ширина полосы может оказаться недостаточной, что приведет к увеличению задерЖКИ или потерь. В [ [K:M: oo:ы ::a:; о с "., А -, ,\ r ..!' ., \ Выделенные каналы Мультиплексированный канал Рис. 4.26. Статистическое мультиплексирование Используя процедуры мультиплексирования, можно независимо передавать несколько отдельных потоков даиных по одной и той же физической среде. для выполнения МУЛЬТИIUIексирования можно использовать физические свойства среды. Как это делать на физическом уровне, описывается в разд. 6.5. В частности, эry форму мультиплексирования используют COBpe менные оптические и радиосети. На сетевом уровне имеется режим мультиплексирования с разделением вpe мени 4 (Time Division Multiplexing, TDM ). Это просто распределение времени работы звена передачи между различиыми службами или пользователями. В таком режиме работает, например, пакетная система acUHxpOHHOZO мультип лексирования с разделением времени (Asynchronous Time Division multiplexing, ATD). Существует друrой тип TDM  синхронное мультиплек сирование с разделением времени (Synchronous Time Division multiplexing, STD), которое можно использовать для реализации систем с коммyrацией каналов. В системах синхронноrо тм для передачи данных используются специальные передающие кадры (transmission frames), каждый из которых содержит некоторое количество интервалов времени фиксированной длины. 4 Эroт режим иноrда называют режимом временною Уl/ЛотненUR.  Пер. 
rлвsа 4. С точки зрения сетей 111 Эти интервалы распределяются между пользователями. В течение выделен Horo ему времени пользователь может посылать или принимать информаци онные элементы, а позиция интервала в передающем кадре определяет канал (пользователя). Режим называется синхронным, потому что при передаче кaд ра каждый ero временной интервал всеrда прибывает в пункт назначения в один и тот же MOMeнr времени, начиная от начала кадра (рис. 4.27). M'n.  Рис. 4.27. Синхронное мультиплексирование с разделением времени Определение пропускной способности системы с пакепюй коммутацией, KO торая использует синхронное мультиплексирование с разделением времени, похоже на случай с коммутацией каналов. Каждый временной интервал MO жет обслуживать только одну передачу, образуя таким образом виртуальный канал. Поэтому номер канала совпадает с номером BpeMeHHoro интервала. Ситуация осложняется тем, что не все временные интервалы должны быть одинаковоrо размера. Эти размеры можно устанавливать так, чтобы они были соrласованы с требованиями данных соответсТВУЮl!{еrо виртуальноrо канала. Однако, хотя количество каналов может при этом изменяться, к ним приме няется один и тот же базовый подход. В асинхронной системе разделения времени нет распределения временных интервалов для каждоrо маршрута передачи. Вместо этоrо пакеты, посту пающие в мультиплексор, пересылаются как можно скорее. Пакеты, ожи дающие передачи, хранятся в очереди. Коrда наrрузка на систему возрастает, все большее количество временных пакетов будет ожидать передачу в этой очереди. Поэтому пропускная способность системы будет диктоваться MaK симальным количеством пользователей, желающих ждать (рис. 4.28). Это  "мяrкое" оrраничение, т. к. пропускная способность не оrраничена опреде ленным значением. Системы с коммутацией каналов имеют "жесткое" orpa ничение количеством доступных каналов. )шIIIc Очередь МУЛЬТММ8КСОР Рис. 4.28. Асинхронное мультиплексирование с разделением времени 
112 Передача данных в сетях: инженерный подход Очередь, определяемая четырьмя параметрами, обычно обозначается как А/В/а/Ь, rде А  распределение поступивших элементов, В  распределение обслуженных (то есть оmравленных) элементов, а  количество серверов и Ь  максимальное количество элементов, которые MOryr присутствовать в очереди (необязательный параметр). В простейшем случае можно считать, что коммуникационная система имеет случайные поступления. Такое распре деление обычно представляется показательным распределением или распре делением без па.:14яти и обозначается как М. Среди друrих распределений по ступающих пакетов известны, например, такие, как детерминированное (D) или распределение Эрланrа (Е). Если пакеты имеют переменный размер, то обслуживающее распределение также будет распределением без памяти. Для простоты предположим, что очередь имеет бесконечный размер, так что па кетыI никоrда не будут теряться от столкновения с до конца заполненной оче редью. Так как есть Bcero один коммуникационный путь от мультиплексора и один сервер, то в результате мы имеем очередь, обозначаемую как М/ M/l. Чтобы найти время, необходимое пакету для прохода через мультиплексор, мы начнем с диаrраммы перехода состояний, показанной на рис. 4.29. Ан А; 1=[ .  I 2 ; ;+I Рис. 4.29. Диаrрамма перехода состояний для очереди M/M/I Как и в случае обсуждения формулы Эрланrа в разд. 4.6.1, можно предпола raТb, что система устойчива, так что вероятность перехода в некоторое co стояние снова должна быть равна вероятности выхода из этоrо состояния, т. е. А;Р; == J.!i+IPi+1 В отличие от случая обсуждения эрланrа (как единицы измерения сетевой Ha rpузки), коrда каждый вызов имел свой собственный канал, здесь имеется только один сервер, так что скорость отправки пакетов и будет постоянной и не будет зависеть от состояния системы. Предположим также, что входное распределение является распределением без памяти, так что скорость поступления пакетов Jl тоже будет постоянной и не будет зависеть от состояния системы. Поэтому, л ( л ) 2 Ар; == J..IPt<-I, Аро == J..IPI, И Арl == J..IP2, так что Р2 == Jl Р, == Jl Ро. В общем случае ( л ) i . Р; = f.l Ро или Р; == р' Ро, rде л р ==  Р, причем Р ДОЛЖНО быть меньше 1, 11 
rЛава 4. С точки зрения сетей 113 иначе очередь увеличилась бы до бесконечности. Так как система должна находиться в одном из своих состояний, то "" "" LP; == LP;Po == 1. ;=0 ;=0 Используя тот факт, что сумма бесконечноrо rеометрическоrо ряда аУ' (при а r < 1) равна , получим: 1T 1 Ро == """" ; == L..;=o р 1 == 1  р, р/(1  р) Р; == р; Ро == р; (1  р) . Коэффициент использования 5 системы определяется как отношение CYMMapHO ro времени активности системы к полному времени ее функционирования. В данной системе это соответствует тому времени, коrда в очереди находится хотя бы один пакет, и равно 1  РО. Как только что бьшо по казан о, ро == 1  р, так что в этом выражении р  это и есть коэффициент использования системы. Нам нужно найти среднюю задержку пакетов, поступающих в систему. Для этоrо мы сначала должны найти среднее количество пакетов в системе N. Be роятность Toro, что в системе имеется i па кетов, равна Pi, так что: .-, "" "". "". 23 N == ;=oip; == ;=Oip' (1  р) == (;  р) ;=Oip' == (1  р)(р + 2р + 3р + ...) == ==(1 р)р(1+2р+3р 2 +...)==(1 p)p==, (1p) 1  Р 1 т. к. 1 + 2х + зх 2 +...  это разложение в степенной ряд выражения (1  х)2 Закон Липла (Little's law) утверждает, что при заданном количестве поступ лений элементов со средней скоростью л., остающихся в системе в течение среднеrо времени т, число элементов в системе составят в среднем N == л.т. р N р л. Так как N == ,томыимеем Т ==  == ИЛИ,Т. к. р ==, lp л. л.(1р) J.! Т ==. ( 4.5 ) J.!Л s В ориrnнале этот сетевой параметр называется "utilization"  использование. Речь здесь идет о коэффициенте использования как всей сетевой системы в целом, так и отдельных ее компо нентов, таких как звенья (каналы) передачи.  Пер. 
114 Передача данных в сетях: инженерный подход Предположения относительно случайных постуrтений и mnравлений вряд ли будут правильны на практике, но подобный анализ обеспечивает полезную oт правную точку для реальных систем. На практике трафик поcтyrтения данных не совсем случаен, но он выражает то, что известно как дОJl20СрОЧНая завuсu .мость  основная теменция, которая подразумевает, что в трафике rpуппы больших пакетов оказываются вместе дpyr с друrом. Эro означает, что оценки, основанные на очередях без памяти, слеrка переоценивают проnyскную способ ность системы. Более детальное планирование проnyскной способности реаль ных систем обычно выполняется nyreм моделирования на ЭВМ. Рассмотрим звено с пропускной способностью в 20 Кбит/с, средним трафи ком 14 пакетов в секунду и средним размером пакета 800 битов. Проnyскная способность TaKoro звена равна 25 пакетам в секунду, так что задержка в этом звене равна Т== 1/(25  14) == 91 мс. Уравнение (4.5) обеспечивает основу для выполнения простых расчетов в пакет ных сетях, а следующий пример иллюстрирует, как это можно использовать. Рассмотрим следующую сmyацию: пакетный мультиrтексор обеспечивает связь с сетью передачи данных для нескольких пользовательских терминалов через выодную линию передачи, работающую со скоростью 64 Кбит/с. Известно, что в самый занятый период каждый терминал производит в среднем 3 пакета в ce КУНДУ, а средняя длина пакета равна 400 байтам. Зададим следующий вопрос, сколько терминалов можно соединmъ с этим мультиплексором? Чтобы ответить на этот вопрос, необходимо связать уравнение задержки, заданное ранее, с Tep минами, которые имеют отношение непосредственно к сети с пакетной KOMМY тацией, при условии что доnyскаются следующие упрощения и предположения относиreльно поведения сети. О Задержка пакета. Полная задержка асинхронноrо мультиплексноrо naKe та состоит из нескольких ключевых компонентов  задержки раСПростра нения, задержки обработки в мультиплексоре, времени ожидания (в буфе ре), прежде чем пакет будет обработан, и времени, необходимоrо для передачи пакета по следующему звену. Для упрощения проблемы мы бу дем иrнорировать задержки распространения и обработки  шаr вполне блаrоразумный, при условии, что обе задержки незначительны (в предпо ложении коротких звеньев и быстрых процессоров) по сравнению со Bpe менем передачи пакета. Задержка передачи  это просто длина пакета, поделенная на скорость передачи в битах: 3200 бит == 50 мс . 64 000 бит/с о Скорость обслуживания. Представляя задержку передачи просто как время удержания пакета и предполаrая, что полная задержка состоит из задержки в очереди и задержкИ передачи, можно представить мультип 
rлава 4. С точки зрения сетей 115 лексор как простую очередь. Поскольку скорость обслуживания пакета обратно пропорциональна средней задержке ero передачи, то числовое решение тривиально: Jl == 64 000/3200 == 20 пакетов в секунду. Для Toro чтобы ввести этот параметр в уравнение задержки для очереди типа М/М/!, нужно предположить, что длины пакетов являются случайными и подчиняются отрицательному экспоненциальному распределению. Если время передачи и, следовательно, время удержания пакета подчиняется отрицательному экспоненциальному распределению, то обслуживающий процесс можно описывать как процесс Пуассона и использовать очередь типа М/ М/l. Реальные длины пакетов не обладают таким поведением, но для консервативной оценки nepBoro порядка такое приближение ДOCTa точно. О Скорость поступления. Численно каждый источник rенерирует 3 пакета в секунду, и мы будем предполаrать, что временной интервал между по ступлением пакетов подчинен отрицательному экспоненциальному pac пределению, так что каждый источник пакетов можно считать пуассонов ским. Такое предположение существенно по двум причинам: B<rnepBbIx, оно позволяет применить уравнение задержки для очередей типа М/ MIl, и, BOBTOpЫX, дает возможность представить общую скорость поступления пакетов как сумму индивидуальных скоростей каждоrо источника. Таким образом, два источника reнерируют объединенный процесс поступления ..-., пакетов со скоростью 6 пакетов в секунду. О Количество серверов. Мультиплексор состоит из единственной выходя щей линии, таким образом количество серверов равно 1. О Размер буфера. Будем предполаrать, что буферное пространство в муль типлексоре достаточно, чтобы рассматривать ero как бесконечное. Если такое предположение сделать невозможно, то система становится систе мой с потерями, и нужно использовать альтернативную модель. Для решения проблемы вычислений, обсуждавшейся ранее, следует объеди ! нить все эти предположения, чтобы использовать уравнение задержки для очередей типа М/ MIl. Мы будем рассматривать эту проблему на трех уровнях сложности. Этап 1. Чтобы мультиплексор не был перенасыщен, скорость поступления па кетов не должна превышать скорости их отправления (то есть р < 1). Таким образом, общая предлаrаемая наrрузка не должна превышать 20 пакетов в секунду. Поскольку каждый источник производит 3 пакета в секунду, то мы оrраничены присоединением к мультиплексору максимум 6 источников. Присоединение 7 источников сделало бы предлаrаемую наrрузку равной 21 пакету в секунду, и в результате произошло бы насыщение мультиплеКС<r ра. Соединение 6 источников с мультиплексором дает оценку среДнеrо Bpe 
116 Передача данных в сетях: инженерный подход 1 Мени ожидания Т == == 0,5. Это очень высокое значение, которое 20  18 неприемлемо. Теперь рассмотрим случай, коrда на задержку накладывается некоторое оrpаничение. Этап 1. На этом этапе на мультиплексор накладывается дальнейшее оrрани чение, состоящее в том, что средняя задержка пакета не должна превышать 250 мс. Используя уравнение для очередей типа M/MI1 мы можем определить максимальный предлаrаемый трафик как Т ==  2 1 < 0,25 с . Таким образом, OA максимальное число поддерживаемых источников, не может превышать 5 (5 х 3 == 15 < 16). С 5 присоединенными источниками среднее время ожида ния оценивается как Т == 1 == 0,2 С, что лучше, чем указанный выше 20  15 предел. Введение простоrо оrраничения на задержку уменьшило число под держиваемых источников до 1. Можно ввести дальнейшее оrраничение, при знав тот факт, что речь идет только о средней задержке  50% пакетов име ют задержку меньше, чем заданное значение, в то время как 50% имеют задержку больше, чем средняя. Уровни обслуживания обычно выражаются в терминах средней задержки и BepXHero предела задержки, который не должен превышать указанноrо числа пакетов. Эта ситуация рассматривается на третьем этапе. Этап 3. Третий критерий мультиплексора устанавливается таким образом, чтобы 90% всех пакетов были переданы за 0,325 секунды. Для применения ЭТоrо критерия задержку следует считать случайной величиной, которая име ет собственную функцию плотности вероятности. Для систем типа M/M/l можно показать, что реальные задержки имеют неrативное экспоненциальное распределение Р(х  Х) == 1  eтX , rде т == Jl  А. Доказательство TKoro yт верждения нетривиально и не является предметом обсуждения в данной кни re. Однако это соответствует интуитивному ожиданию Toro, что занятость очереди по существу описывается reометрическим рядом. Мы показали, что 1 средняя задержка, связанная с очередью М/М/l, равна Т == . Чтобы pac JlA смотреть третью часть проблемы нужно комбинировать это выражение с об Щим выражением для отрицательноrо экспоненциальноrо распределения. На предыдущем этапе мы предположили, что, присоединив к мультиплексору только 5 источников, можно получить среднее время ожидания 200 мс. Kpo ме Toro, можно подсчитать вероятность Toro, что задержка пакета будет меНьше первоначально объявленной величины (250 мс): Р(х  0,25) == 1  e...().2S/0.2 == 0,713. 
вa 4. С точки зрения сеТей. IВ случае с 5 присоединенными источниками (т == 5), только 80% пакетов FОТВетствуют новому, более cтporoMY верхнему пределу. Нам же необхо :,tимо иметь не менее 90%. Новый критерий, состоящий в том, что 90% па feToB должны иметь задержку ниже 350 мс, определяется как P(x  0,325) == 0,9 == 1  e...{J.325т . Решая это уравнение относительно т, получа   т == 7,085 == Jl А== 20  А. Таким образом, А == 12,91. Это означает, что Te pь только 4 источника должны быть соединены с мультиплексором. 'азмер буфера. Мы предположили, что буфер мультиплексора достаточно ик, чтобы ero можно было считать бесконечным. Теперь можно вкратце CMoтpeTЬ смысл этоrо утверждения. На первой стадии проблемы измере -ий мы указали, что к мультиплексору Можно присоединить 6 источников. В данном случае коэффициент использования системы (р) равен 0,9 (то есть р == 0,9), что с применением закона Литrла или при прямом вычислении <.  ), дает среднюю занятость буфера в 9 пакетов. Ясно, что если буфер i l р pteeT размер, достаточный для размещения 100 пакетов, то наше предполо- .,ение о бесконечной вместимости буфера довольно разумно. Однако, если уфер имеет размер, достаточный для размещения только 20 пакетов, то co ршенно очевидно, что существует большая вероятность (более 10%) Hacы щения буфера, и пакеты будут OТBeprНYТbI. В таком случае должна приме   jJпься альтернативная модель, учитывающая _'потери. В двух друrих енариях (при 5 и 4 источниках) средняя занятость системы HaMHoro меньше D и 1,5 пакета, соответственно), и наше предположение о бесконечном раз epe буфера будет выдержано. 117 .7. Свойства звеньев передачи данных "!Сроме связности и коммутационной способности узлов, сетевые возможно .:етн определяются также свойствами ее индивидуальных звеньев. Звенья '(links) MOryт быть OДHO или двунаправленными. В двунаправленном звене .ii1poпускная способность обеспечивается в обоих направлениях, а в OДHOHa 'правленном  только в одном. Двунаправленное звено можно представить в :,виде двух одно направленных звеньев, работающих в противоположных Ha ,правлениях. Звенья можно также описывать как дуплексные или полудуп 'лексные. Дуплексное звено  это по существу двухточечное двунаправлен Ное звено, обеспечивающее равную пропускную способность в обоих направлениях одновременно. Полудуплексное звено  это такое звено, KOТO рое может обеспечивать пропускную способность в любом направлении, но не одновременно, т. е. направление передачи в нем может переключаться по Мере необходимости. 
118 Передача данных в сетях: инженерный подход rлавные рабочие параметры звена передачи данных: [] пропускная способность  скорость, с которой информация может быть послана по звену; [] задержка распространения  промежуток времени между моментом, коrда сообщение становится доступным в передатчике для передачи, и моментом ero поступления в приемник; [] искажения данных  доля сообщений, потерянных или искаженных во время их передачи. Так как искаженные сообщения обычно отверrаются, то это свойство часто называют "потерей данных". Существует определенная взаимосвязь между значениями этих параметров, особенно на физическом уровне. Увеличение пропускной способности может увеличить очереди и задержки в отдельных частях звена передачи. Весьма вероятно также, что увеличатся и искажения. 4.8. Межсетевые взаимодействия До сих пор мы предполаrали, что сеть, переносящая информацию, является единственным rOMoreHHbIM объектом. На самом деле это не так. В действи тельности используется множество типов сетевых протоколов, которые по различным причинам требуют объединения друr с друrом. Межсетевое взаимодействие реализуется с помощью устройства, известноro под названием UlJlЮЗ (рис. 4.30), который функционирует как интерфейс или канал передачи между двумя связываемыми сетями. Так как разные сети pa ботают поразному, то шлюз "должен браться за решение" множества про блем, таких как перенос служб, использование протоколов, обеспечение кa чества обслуживания, пакетных и адресных форматов и т. п. Рис. 4.30. Взаимодействие сетей через шлюз Существует два подхода к рассмотрению межсетевых взаимодействий  межсетевой (networkbynetwork) и сквозной (endtoend). При межсетевом ПОДХоде формируется эффективный виртуальный канал между станциями пу тем сращивания надежных виртуальных каналов каждой сети. При сквозном Подходе предполаraется, что каждая сеть снабжена дейтаrpаммными служба ми, а затем, если требуется, для выполнения надежноrо обслуживания исполь зуется обычный сквозной протокол. Примером стандартноrо формата пере сылки данных между сетями является Iпtеmetпротокол (Intemet Protocol, IP). 
'l"лава 4. С точки зрения сетей .. 119 'Различают четыре типа шлюзов: повторители (ретрансляторы), мосты, ';маршрутuзаторы и шлюзы BblCOKOZO уровня. Однако на практике шлюзы He редко выполняют множество различных функций, причем функции моста и ,маршрyrизатора часто объединяются. 4.8.1. Повторители 'Повторители обеспечивают соединения физическоrо уровня между cerMeH ;Тами одной и той же сети (рис. 4.31). Их называют "rлухими" (то есть рабо 'тающими без проrраммноrо обеспечения), т. к. они только копируют биты из }одноrо cerMeHTa в друrой. Это означает, что сети А и В на рис. 4.31  ЭТО r.доrически одна и та же сеть. Концентратор (hub)  ЭТО повторитель в физи \, ,ческой звездной или лоrической шине локальной вычислительной сети, KOТO ;рый пересылает биrы между сетевыми адаптерами (Network lnterface Cards, :NIC), которые в свою очередь MOryr быть или индивидуальными станциями, или концентраторами более BblcoKoro уровня. Транспортный Транспортный ; C , ff Сетевой Сетевой  Сетевой  -- 1 Канальный Канальный Канальныи. " Канальный Физический Физический Физический Рис. 4.31. Стек протоколов повторителя 4.8.2. Мосты Мосты соединяют сети на канальном уровне (рис. 4.32). Их можно использо вать для соединения двух сетей идентичноrо типа или для связи двух различ ных сетей, которые имеют одинаковые сетевые уровни. Примером последних является семейство ЛВСстандартов ШЕЕ 802, которые предусматривают различные протоколы управления доступом к среде, но одинаковые сетевые уровни. Мосты имеют развитую лоrику и их можно сконфиryрировать так, чтобы выборочно копировать кадры из одноrо cerMeHTa сети в друrой. Они, как правило, прозрачны для сети и поэтому не требуют адреса. Однако часто мосты устанавливаются таким образом, чтобы можно было осуществлять с их помощью функции управления сетью. Чтобы посылать кадры между ло кальными вычислительными сетями, которые соединены мостами, использу 
120 Передача данных в сетях: инженерный подход ются специальные адреса управления доступом 1(. среде передачи (MAC адреса). Для орrанизации мостов между локальными сетями различных типов можно использовать так называемые МНО20портовые MOCThI. Транспортный Физический Физический Физический Транспортный Сетевой '"""'''''; Сетевой Сетевой Канальный Канальный Канальный Физический Рис. 4.32. Стек протоколов моста 4.8.3. Маршрутизаторы Маршрутuзаторы используются для соединения сетей, которые имеют оди наковые транспортные и различные сетевые уровни (рис. 4.33). Маршрутиза тор имеет адрес на каждой из соединяемых сетей. Кадры, которые использу ют сетевой адрес (или Intemetaдpec), передаются между сетями с помощью маршрyrизатора. Такие устройства позволяют соединять сети различных ти пов, например, локальную вычислительную сеть Института электро и элек тронных инженеров США (ШЕЕ LAN) с сетью X25. Трвнспортный Транспортный >:;',,':""v/; ;...:::r.__,,;"', .............i';:'''- . ''''cL:'Lц.-''''' :" Сетевой Сетевой Сетевой Сетевой Канальный Канвльный Канальный Канальный Физический Физический Физический Физический Рис. 4.33. Стек протоколов маршрyrизатора 4.8.4. Шлюзы BbICOKOrO уровня Шлюзы BblCOKOZO уровня обеспечивают связность между службами на TpaHC портном или на прикладном уровне, как показано на рис. 4.34. 
rлаsа 4. С точки зрения сетей 121 I Транспортный Сетевой Канальный Физический Сетевой Сетевой -". Канальный Канальный ..   Физический Физический .. !\ J ! I f Транспортный I Сетевой Канальный Физический i' ;".' '.. . ,v..;Q',:: ( . Рис. 4.34. Стек протоколов шлюза 4.9. Маршрутизация Ключевой функцией ceтeBoro уровня является маршрутизация пакетов Me жду узлами источника и адресата. В случае виртуальноrо канала или пакет Horo режима дейтаrрамм выбор пути через сеть можно делать только один раз в сеансе связи. В режиме дейтаrрамм решение о маршрутизации может принимать либо только исходный узел, либо (альтернативно) каждый проме жуточный узел, который должен маршрутизировать каждый пакет. Алzоритм маршрутизации, который определяет путь отбывающеrо пакета, является частью проrраммноrо обеспечения ceтeBoro уровня. Например, в относительно простой сети, показанной на рис. 4t35, имеется шесть возмож ных маршрутов, соединяющих узлы Х и У. Выбираемый путь может изобра жаться только выходящей линией, которую допустимо использовать (в узле Х, например, имеется две таких линии) или он может изображаться в виде детальноrо мноrозвенноrо пути между источником и адресатом. В друrих случаях, узел вообще может не принимать никаких решений по маршрутиза ции и будет только rарантировать, что пакет отправлен в выходящее звено, как это происходит в узле Z. Существует несколько критериев выбора алrоритма маршрутизации. В идеа ле желательно иметь алrоритм, который был бы корректным, простым, CTa бильным, ясным, привлекательным и ОlПимальным. Два первых критерия самоочевидны  любой используемый алrоритм должен работать правильно и быть настолько простым, насколько это возможно. Любая реальная сеть подвержена сбоям  в звене, узле, аппаратуре и проrраммном обеспечении, и любой алrоритм маршрутизации должен обладать способностью противо стоять изменениям в состоянии сети без необходимости аварийноrо заверше ния или повторноrо запуска. Важна также стаБWlыюсть, поскольку трафик, представленный в сети, вероятно, значительно изменяется, и эти изменения не должны вызывать чрезмерных изменений в использовании звеньев и узлов в ущерб друrим компонентам сети. Алrоритм маршрутизации должен обес печивать справедливое обслуживание для всех пользователей. Отдельные ин 
'.122 ...... Передача данных в сетях: инженерный подход ДИВИДУУМЫ не должны получать непреднамеренный отказ в обслуживании изза требований, предъявляемых к сети друrими пользователями. Это требо ванне должно быть сбалансировано с желанием оптимизировать производи тельность сети. Алrоритм маршрутизации Mor бы, вероятно, попытаться ми нимизировать задержку пакетов при одновременной максимизации использования звеньев сети. Однако эти две цели конфликтуют  использо вание может быть улучшено за счет больших наполненных очередей, что в свою очередь ПрИ80ДИТ к увеличению задержек  так что требуется HeKOTO poro рода компромисс. Адаптивные алrоритмы базируют свои решения по маршрутизации на Teкy щем состоянии системы. Неадаптивные алrоритмы не принимают во внима ние состояние системы при выборе подходящеrо маршрута. g 11 iJ O  ОУ  g Рис. 4.35. Маршрyrизация Поскольку адаптивный алrоритм хорошо реаrирует на изменения трафика или тополоrии сети, то кажется, что он должен был бы вытеснить неадаптив ные стратеrии. Однако реализация и выполнение адаптивных алrоритмов значительно сложнее, чем неадаптивных. При центрaJ)изованной маршрутизации имеется специальный центральный узел, который сопоставляет всю имеющую отношение к делу информацию, вычисляет все подходящие маршруты, оптимальные и/или альтернативные, и передает эту информацию каждому узлу сети. Децентрализованные методы 
.(лава 4. С точки зрения сетей .... 123 маршрyrизации можно разделить на два вида: изолированные и распределен вые. В изолированных методах узел использует только ту информацию о co стоянии сети, которую он сам собрал. При распределенной маршрyrизации для обновления таблиц маршрутов происходит обращение к соседним узлам, :06менивающимся информацией. Изолированные схемы относительно просты ',в реализации, но, в общем случае, не дают оптимальных маршрутов. ЦeHтpa лизованную маРIJJрyrизацию трудно поддерживать, если сеть изменяется. Можно комбинировать оба метода, используя динамические децентрализо ванные методы и записывая централизованный "маршрyr последней инстан 'ции", по которому должен направляться пакет с неопознанным адресатом. ',Это увеличивает шансы Toro, что маршрyr будет всеrда найден. Возможен 'также подход, ставящий своей целью получить единственный, наилучший из :-всех возможных пyrей ДЛЯ сетевых даныых. Кроме тoro, понимая, что для hересылки данных адресату может существовать не один, а несколько пyrей, можно использовать так называемую МНО20путевую маршрyrизацию. Она 'имеет то преимущество, что, неизбежно, более надежна, чем маршрyrизация ,с единственным (обычно самым коротким) пyrем, однако она не всеrда ис пользует наилучший из возможных маршрyrов. ;.9.1. Наикратчайший путь "Наикратчаuшим путем между двумя узлами называют самый лучший или :рптимальныu пyrь, который можно использоватlf>.ДЛЯ передачи информации ;между ними. Что в действительности называть наикратчайшu/w путем, зави "сит от критериев, привлекаемых для ero оценки. Для такой оценки можно !itспользовать MHoro различных параметров: число связей (звеньев), расстоя 1.'ние, задержку, битовую скорость передачи и стоимость. Наикратчайший пyrь между двумя узлами, использующий в качестве единственноrо критерия чис i по звеньев, это не обязательно тот же пyrь, который считался бы наикрат чайшим по критерию задержки. . При определении наWlУЧШUX, наикратчайшux или оптимальных пyrей в сети 'необходимо иметь некоторую оценку качества каждоrо звена, поскольку Ma повероятно, что все они одинаковы. Эrо достиraется маркировкой каждоrо звена специальным весом, который должен вычисляться с применением опре деленной системы мер. Конкретная мера может, конечно, изменяться для раз ных сетей. Звенья с меньшим весом предпочтительнее звеньев с более высоким весом. Заметим также, что если единственной мерой является число звеньев, то все звенья считаются равными и имеющими одинаковый вес. Следующим шаrом, учитывющимM взвешенность звеньев, является поиск оп тимальноrо или наикратчайшеrо пyrи. В простых сетях ero можно найти с помощью обычноrо обследования сети. Для сложных сетей возникают про блемы, и простое обследование сетей в действительности не является подхо дящей методикой, которую можно использовать как основу управления тa 
124 Передача данных в сетях: инженерный подход ким сложным и дороrостоящим ресурсом. Здесь нужно опираться на фор A«lЛьные методы, и есть множество алroритмов, разработанных специально ДЛа выполнения такой задачи. АлroРИ"nfы БелманаФорда (BellmanFord) и Дейкстры (Dijkstra) берут оди НОчный узел и вычисляют наикратчашие пути между этим узлом и всеми дpy rими узлами сети. Друrие алrоритмы, такие как алrоритм Флойда (Floyd), находяТ наикратчайшие пути между всеми парам и узлов сети. AnropМYM Дейкстры Алrоритм Дейкстры, который находит самый короткий nyrь от данноrо узла до всех друrих узлов сети, работает следующим образом. 1. Маркируйте все узлы, кроме cTapToBoro, парой значений, состоящей из расстояния до данноrо узла (первоначально "aJ") и именем узла подхода 6 (первоначально ""). 2. Начиная со cTapтoBoro узла, выберите узел с самым низким совокупным весом; считайте этот узел "установленным" (или "фиксированным"). 3. Маркируйте соседние с установленным узлы совокупным расстоянием от CTapтoBoro узла и именем узла подхода. 4. Если узел уже маркирован, то ero метка заМеняется на новую, совокупное расстояние которой меньше, чем существующее совокупное расстояние. 5. Продолжайте маркировку, пока все узлы не будут установлены. После фиксации всех узлов результирующий совокупный вес позволяет pac СЧИТать самый короткий путь от исходноrо узла. Это можно сделать, читая в обратном порядке узлы подхода каждоrо узла на соответствующем пути. Pac смотрим пример действий по алrоритму Дейкстры более подробно. 1. Каждый узел, кроме cTapтoBoro, первоначально маркируется как.( aJ, ) (рис. 4.36). 7 4 Рис. 4.36. При мер применения алroритма Деикстры. шаr первый (Ф, ) У3eJI подхода  ЭТО ближайший (слева) соседний узел, к которому осуществляется HenocpeД ственный ПОДХОД через маркируемый узел.  Пер. 
\ rлава 4. С точки зрения сетей 125 2. Начните с узла А, зафиксируйте ero, перемаркируйте соседние (справа) узлы В и F с учетом их расстояний (рис. 4.37). 7 (oo,) 4 Рис. 4.37. Пример применения алrоритма Дейкстры, шаr второй 3. Теперь самым малым весом обладает узел В, поэтому повторите с этим узлом все действия пункта 2 (рис. 4.38). 7 (oo,) .JII.. (б, А) 4 Рис. 4.38. Пример применения алrоритма Дейкстры, шаr третий 4. Теперь узел G имеет самый малый вес, поэтому он и используется. Новый вес для F меньше чем существующий, поэтому старая метка (6,А) заменяется новой (5,а). Тот же самое происходит и с узлом С (рис. 4.39). (oo,) 4 Рис. 4.39. Пример применения алrоритма Дейкстры, шаr четвертый 5. Повторите предыдущую процедуру для узла F. В результате узел Е должен был бы получить метку (9, F), но ero существующая метка (6,G) 
126 Передача данных в сетях: инженерный подход имеет более низкий суммарный вес до исходноro узла, так что она оставлена без изменения (рис. 4.40). (oo.) 4 Рис. 4.40. Пример применения алroритма Дейкстры, шаr пятый 6. Повторите процедуру для узла С (рис. 4.41). (9. С) 4 Рис. 4.41. При мер применения алrоритма дейкстры. шаr шестой 7. Повторите процедуру для узла Е. В результате метка узла О (9,С) будет заменена на (8,Е) (рис. 4.42). 7  4 Рис. 4.42. Пример применения алrоритма Дейкстры. шаr седьмой Установка узла D завершает процедуру алrоритма Дейкстры. Нетрудно ви деть, что самый короткий пyrь от А до D имеет совокупный вес 8, и читая метки, начинающиеся с узла О, в обратном порядке, мы получаем наикрат чайший маршрут: D  Е G ...... В A. 
(лава 4. С точки зрения сетей 127 4.9.2. Лавинная маршрутизация Эrо, возможно, самый rрубый из методов маршрутизации, коrда любой па кет, полученный узлом, немедленно отправляется через все выходящие зве нья, кроме входноrо звена (рис. 4.43). Такой метод всеrда находит оптималь ный маршрут, т. к. испытываются все маршруты, и информация достиrнет адресата скорее Bcero по самому короткому из них. Однако очевидный и cy щественный недостаток метода состоит в том, что в сети начинает циркули ровать очень большое количество пакетов, поэтому требуется некоторый Me ханизм, чтобы упорядочить этот процесс. Один из возможных подходов Mor бы состоять в том, чтобы иметь в каждом цакете специальное поле  счетчик звеНьев, которое уменьшалось бы на 1 в .каждом принимающем узле. Если поле становится нулевым, то пакет отбра сывается. Значение этоrо поля должно лежать между числом звеньев в опти мальном пути от источника к адресату и диаметром сети, что предотвратит бесконечную циркуляцию пакетов в сети. Вторая методика моrла бы состоять в том, чтобы уникально идентифициро ,вать каждый пакет и хранить в каждом узле запись всех пакетов, которые они обработали. Тоrда, если узел принимает пакет, который он уже предвари тельно отправил, то это будет дубликат, и ero MOHO будет сбросить. 2 Рис. 4.43. Маршрутизация при лавинном подходе Варианты этоrо подхода включают избирательную "лавину", коrда пакеты отправляются только по тем звеньям, которые находятся в "правильном Ha правлении" , и алrоритм случайноrо обхода, коrда пакет отправляется по оди ночному звену, выбранному случайно, так что в конечном счете пакет доби рается до cBoero адресата. 
Передача данных в сетях: инженерный подход ZJ9.З. Распределенная маршрутизация ';;ршрутизация по вектору расстояния и маршрутизация по состоянию свя й  вот два примера распределенной динамической маршрутизации, Korдa маршрутные узлы получают информацию о состоянии сети или оценку Map шрутов от друrих узлов и затем используют их, чтобы получить таблицу или вектор маршрутизации. В распределенной системе узлы запрашивают ин формацию, на которой они базируют свои решения по маршрутизации, у смежных узлов. Такие системы MOryт работать напрямую, запрашивая опре деленную информацию через реryлярные временные интервалы. Маршрутизация по вектору расстояния Маршрутизация, базирующаяся на векторе расстояния, применяется в прото коле маршрутной информации (Routing Information Protocol, ЮР), который используется для маршрутизации в сети Internet. Рассмотрим узел А в сети, показанной на рис. 4.44. Он периодически запра шивает в узлах В и С информацию о самых коротких маршрутах от этих уз лов до всех друrих узлов в сети. При этом узел А будет также получать ин формацию о расстоянии между собой и соседними узлами и будет использовать полученную информацию для вычисления самых коротких маршрутов между собой и всеми друrими узлами. Часть требуемой информа ции может быть получена косвенно. Если в качестве параметра, на основании Koтoporo принимаются решения по маршрутизации, используется задержка, то узел А может находить расстояние до соседних узлов, посылая к каждому узлу специальные эхопакеты. Как только эти пакеты отправляются, стартует таймер. Он останавливается, коrда отраженный эхопакет возвращается назад и правильно принимается узлом А, позволяя, таким образом, узлу А вычис лить задержку, связанную с этим звеном. В примере сети, показанной на рис. 4.44, для узлов В и С требуется 10 и 12 единиц времени (соответственно), чтобы ответить и послать их текущие BeK торы расстояния узлу А. Теперь узел А может сделать вывод, что для пyre шествия пакета к узлам В и С требуется 5 и 6 единиц времени COOTBeTCTBeH Но. Оценки 6 и 4 в таблицах узлов В и С иrнорируются, поскольку оценки 5 и 6 считаются более свежими. После этоrо получение для узла А новой табли цы является относительно простой задачей. Рассмотрим случай определения маршрута от узла А к узлу D. Узел А оценивает, что, если он направит пакет, предназначенный дЛЯ D, прямо к узлу В, то потребуется 5(АВ) плюс 4 (С  D) == 9 единиц времени. Оценка для направления пакета через узел С дает 6(АС) плюс 5 (С  D) == 11 единиц времени, так что принимается первый BЫ бор  направление через узел В. Процедура повторяется для всех друrих, не-- 
rлава 4. С ТОЧКИ зрения сетей 129 смежных узлов сети. Трафик между АЕ направляется через узел В с CYMMap ным расстоянием 11 (5 + 6), а не через узел С с суммарным расстоянием 12 (6 + 6). Наконец, пакеты, предназначенные для узла F, отправляются не через узел В (маршрут с суммарным расстоянием 18), а через более короткий путь, проходящий через узел С, за 16 временных единиц. 8 А б(А) 8 ОН С 12(Е) О 4(0) Е б(Е) F 1З(Е) А (Новый) А ОН 8 5(8) С б(С) D 9(8) Е 11(8) F 16(С) ". -J с А 4(А) 8 11 (А) С ОН О 5(0) Е б(Е) F 10(0) ..... // .', 'y ir.. <,' .Э'.: ;tF Е o.:.. ',;t.'  !,,'!' ;r !tU t "" "" Рис. 4.44. Маршрутизация по вектору расстояния  fлавный недостаток этой схемы  медленная реакция на "плохие" события типа аварийноrо отключения узлов, изза которой система продолжает ис пользовать неприrодные маршруты. В более крупных сетях изменение длины маршрутов до всех остальных узлов сети может потребовать существенных затрат времени, если это вообще возможно. В частности, маршрутизация по вектору расстояния может продолжать посьтать пакеты по направлению к звеньям, которые больше не существуют, и такие пакеты останутся циркули ровать в сети. С друrой стороны, схема хорошо реаrирует на "хорошие" co бытия, например на совершенствование маршрyroв. Маршрутизация по состоянию связей Этот вид маршрутизации является улучшенной альтернативой маршрутиза ции по вектору расстояния и теперь широко используется в практических устройствах маршрутизации, например, в протоколе OSPF (Ореп Shortest Path First, Первоочередное открытие кратчайших маршрутов), который все в большей степени используется для маршрутизации в сети Intemet и исправ ляет некоторые из недостатков RIРпротокола. Маршрутизация по состоянию 
130 Передача данных в сетях: инженерный подход связей преодолевает такие недостатки предыдущей схемы, как счет до беско нечности и проблему сходимости решения. В широком смысле это простая автономная схема, состоящая из четырех шаrов. 1. Идентнфикация и контакт с соседними узлами. Для каждоrо узла необходимо знать, кто с ним соединен в любой заданный момент. Такую информацию получают с помощью передачи специальных пакетов. Ключевым моментом здесь является то, что каждый узел должен иметь уникальный идентификатор. 2. Определение стоимости каждоrо смежноrо узла. На этом шаre каждый узел пытается определить расстояние или стоимость, которые связаны с каждым из ero звеньев, и затем создает таблицу с этой информацией. 3. Отправка таблицы всем остальным узлам. На этом шarе важно, чтобы каждый узел Mor принимать эти пакеты или начинал использовать их одновременно со всеми друrими узлами, иначе маршрутизация может оказаться нарушенной. 4. Вычисление каждым узлом наилучших путей ко всем остальным узлам. Для определения наикратчайшеrо пути до всех остальных узлов каждый узел может использовать формальные алrоритмы, такие как алrоритм Дейкстры. С этой схемой связан ряд проблем. Необходимо обеспечить, чтобы в подхо дящие моменты времени создавались или обновлялись таблицы состояний звеньев, чтобы модифицированные пакеты правильно посылались и прини мались, и чтобы было известно, что нужно делать, коrда узлы теряются. Cxe ма, иллюстрирующая маршрутизацию по состоянию связей, показана на рис. 4.45. Подсветкой указаны маршруты, которые будет выбирать пакет Me жду узлами AF и FA соответственно. А 'r- rr с 11[ 6 D 5 Е 6 D  Е Щ 6 С 6 F 7 F  Рис. 4.45. Маршрутизация по состоянию связей 
Тлава 4. С точки зрения сетей ..... 131 4.9.4. Широковещательная маршрутизация в заключение рассмотрим широковещательную маршрутизацию. Она ис 'пользуется в тех случаях, коrда узел хочет посьтать одни и те же данные )сем друrим узлам. Каждому узлу адресата можно посьтать различные паке TЫ, причем каждый пакет уникально идентифицируется своим адресным по ;пем. Это может быть расточительно в части использования пропускной спо !ности системы и будет отнимать MHoro времени, требуя, чтобы каждый tзел имел полный список всех сетевых узлов. ожно использовать и лавинную маршрутизацию, хотя (как в двухточечном учае) при этом rенерируется слишком MHoro пакетов и требуется значи [FЬНая полоса про пускания. < r.tuироковещательные пакеты MOryт содержать больше одноrо адреса в aдpec (M поле. Коrда пакет достиrает узла, тот проверяет таблицу маршрутизации ". адресатов, чтобы определить необходимые выходные линии. Затем изrо troвляются копии пакета с адресным полем, содержащим адреса только тех pecaTOB, которые соответствуют выходной линии, по которой отправляется krUeт. При получении Taкoro пакета узел адресата удалит свой адрес из поля !адреса и повторит процедуры копирования и отправки. В конечном счете l' ироковещательный пакет будет содержа только один адрес  адрес KO " чноrо узла  и, таким образом, процесс широковещательной передачи бу завершен. ли каждый узел знает оптимальные пути источников широковещательных етов, т. е. дерево стоков, то пакет может быть отправлен только тем смеж ,ЫM узлам, которые формируют часть оптимальноrо тракта. Эта схема пре "оставляет наиболее эффективный способ передачи широковещательных па .;keтoB, но, учитывая динамический характер пакетных сетей и их полный Mep, такую информацию практически невозможно получить. eCТBYeт и друrой способ, при котором узел будет отправлять полученный PIироковещательный пакет только в том случае, если он прибьт по специ r'&льному звену, который обычно используется этим узлом для передач широ kовещательных пакетов обратно к их источнику. В противном случае пакет ['СЧитается дубликатом и сбрасывается. Это более простой по сравнению с fпредыдущим алrоритм, поскольку каждый узел не должен ничеrо знать о co ; СТоянии системы, т. е. о деревьях стоков. Такая методика называется пepeдa , чей по обратному маршруту (Reverse Path Fоrwardiпg, RPF). На рис. 4.46 по ,Казан простой при мер Toro, как работает RPF, и выполнено сравнение этоrо Метода с широковещательной схемой, основанной на дереве стоков. 
132 Передача данных в сетях: инженерный подход  а Дерево охвата 3 звена: 5 пакетов  fl::5 б 1--е звено: 2 пакета 2--е звено: 3 пакета з--е звено: 3 пакета в Рис. 4.46. Широковещательная маршрутизация: а  лавинная передача; б  схема, основанная на дереве стоков; в  передача по обратному маршруту Сравнение здесь не столь очевидно, поскольку сеть не велика. Однако, если сеть большая, то можно увидеть, что передача по обратному маршрyry не будет давать столь же хорошеrо решения, как схема с деревом стоков, но бу дет нЗмноrо лучше, чем прямая лавина с оrраничением по cerMeHTaM (hopes). Если бы последняя схема применялась к сети, показанной на рис. 4.46, в (в предположении, что предел счетчика cerMeHToB равен 3), то было бы передано 1 О пакетов, по сравнению с 8 пакетами, передаваемыми схемой передачи по обратному маршрyry. 4.10. Переrрузка До сих пор мы предполarали идеальное поведение узлов. Пакеты, поступаю щие в узел, остаются в очереди до тех пор, пока не будyr отправлены дальше. Если пакеты поступают в узел со скоростью, которая приближается к пропу скной способности узла, то пакеты будут накапливаться в буфере, и средняя задержка увеличится до бесконечности. На практике буфер имеет конечную длину, и пакеты будyr теряться или будет изменяться их маршрyr. Подобная 
Слвва 4. С точки зрения сетей  1ЗЗ пересрузка (или переполненuе) системы может стать результатом решений, связанных с маршрутизацией, или просто следствием непомерной наrрузки на трафик (рис. 4.47, а). Переrpузка имеет тенденцию становиться бесконеч ной  коrда один сеанс теряет пакеты, то после HeKoToporo интервала он бу дет делать попытку повторной передачи, которая увеличит количество паке тов в системе и еще больше увеличит переrрузку. Это означает, что при еличении переrрузки пропускная способность переполненной системы iфактически будет уменьшаться (рис. 4.47, 6). t !Нужно четко различать управление маршрутизацией и управление переrpуз ;.кой. Алrоритм маршрутизации может уменьшить вероятность переrpузки, но [если она все же происходит, то потребуется механизм управления переrpузкой, 'чтобы усилить этот эффект. Алrоритмы маршрутизации, вероятно, ухудшат ,сmyацию, если не будет включен механизм управления переrрузкой. C1I .. ... >. е- C1I :J: /Идеальная '\ Желательная :'\. Переrpуженная Заrpузка Отправка пакетов а .-.. б Рис. 4.47. Эффект переrрузки . 4.10.1. Управление на входе Виртуальный канал заранее выделяет запасное пространство в каждом буфе ре в узлах cBoero маршрута, так что в каждом узле всеrда имеется место для хранения поступающих пакетов. Если виртуальный канал не может распре делить память в буферах, то вызов отклоняется. Это rарантирует, что любое увеличение предлarаемой наrpузки не оказывает особоrо влияния на вызовы, действующие в текущий момент. 4.10.2. Сброс заrрузки Эта методика противоположна предыдущей. Никакоrо пространства в буфе рах заранее не выделяется, и все вызовы конкурируют за доступ к буферам. Коrда буфер приближается к заполнению, вновь поступающие пакеты сбра сываются. При этом друrие уровни и функции пытаются орrанизовать по вторную передачу. Ясно, что существует предел для сброса пакетов, и долж ны быть установлены правила, позволяющие определить, нужно ли сбрасывать или сохранять пакет. Нет никакоrо смысла сбрасывать пакеты 
134 Передача данных в сетях: инженерный ПОДХО,! подтверждений, поэтому в каждом узле обычно rарантируется наличие места для хранения одноrо или нескольких пакетов подтверждений. Сброс пакетов не обязательно должен начинаться только тоrда, коrда буферы полностью заполнены. Алrоритмы сброса заrpузки часто начинают выборочно сбрасы вать пакеты при заполнении буфера на 80--------90%. 4.10.3. Управление потоками данных Эro механизм обратной связи, с помощью Koтoporo узел rенерирует специ альные пакеты ("заrлушки") всякий раз, коrда HarpY3Ka на этот узел достиrает определенноrо уровня. Эти пакеты инструктируют источник пакетов о том, чroбы он уменьшил скорость передачи на определенную величину, предот вращая тем самым переrpузку данноrо узла. Преимуществом такой методики является то, что она становится продуктивной только при высоких HarpY3Kax и не влияет на производительность сети в нормальных условиях. HarpY3KY на узел можно контролировать, оценивая MrHoBeHHoe и среднее значение пара метра ero использования (utilizatiоп) или рассматривая заполнение очереди. Чтобы контролировать параметр использования звена (U), можно воспользо ваться следующим выражением: и" == aЦ,) + (1  а)!, rде /  параметр MrHoBeHHoro использования линии (то есть/ == 1, если линия занята, или/== О, если  не занята); а  постоянная, которая определяет, как быстро узел забывает предысторию; и"  новая, а и"  1  предыдущая оценка среднеrо значения параметра использования. Эффективность этоrо выражения зависит от оценок среднеrо значения параметра использования и от Toro, насколько быстро оно может реarировать на изменения в состойнии системы. Управление потоками данных может применяться как к дейтаrраммным или виртуальным каналам, так и при сквозном (роiпИороiпt) и поэлементном (Iinkbylink) подходе к сетевым системам. Поэтому мощно иметь механизм, который контролировал бы различные системные параметры одноrо или He скольких узлов или звеньев, выделяя таким образом потенциально переrру женные компоненты сети. 4.11. Защита от ошибок Для защиты от ошибок, вносимых средой передачи в передающую систему, используется кодирование с исправлением ошибок, включающее три cтpaTe rических направления. (] Скрытие ошибок. По этой методике выполняется обнаружение ошибок, а испорченная информация отбрасывается. Остающаяся информация оказы 
rлава 4. С точки зрения сетей вается доступной, и в некоторых случаях ее можно использовать так, что бы замаскировать отсутствующие испорченные данные. Это можно cдe лать, например, повторяя предыдущий фрarмент данных, заменяя им ис порченный участок или пытаясь интерполировать данные по окружающим значениям. Скрытие ошибок хорошо работает в речевых и аудиосистемах до тех пор, пока интенсивность ошибок не очень высока. В некоторых случаях эту методику можно также использовать для изображений, но не для общих данных. [t1 Автоматический запрос повтореиия передачи (Automatic Repetition Query, ARQ). Как и в предыдущем случае, выполняется обнаружение ошибок, с помощью ARQ передатчик информируется об этом и получает запрос на повторную посылку данных.. ARQ имеет несколько недостатков: он требует наличия канала обратной связи к передатчику, передатчик должен хранить данные до тех пор, пока он не будет информирован о том, что они были получены правильно, а в случае ошибки в передачу данных вводится задержка. Однако с помощью схем ARQ можно добиться очень низкой интенсивности ошибок при относительно малых накладных pacxo дах и небольшом усложнении системы.  Упреждающая (прямая) коррекция ошибок (Forward Error Correction, FEC). В этом случае к посылаемому сообщению добавляются дополни тельные символы, так что у приемника ПОЯЩIяется возможность BOCCTa навливать сообщение, если хотя бы часть ero была испорчена. В вычисли тельном отношении FЕСметодика сложна и требует дополнительных затрат при передаче, но обладает существенным преимуществом, не тpe буя обратной связи с передатчиком. Кроме Toro, из-за включения в пере дачу дополнительных символов вводится лишь небольшая дополнитель ная задержка. fvtожно использовать комбинации этих стратеrий, пытаясь применить сначала . FEC на каждом уровне, а затем используя ARQ или скрытие ошибок, если 'FЕСметодика терпит неудачу. Методика скрытия ошибок может выполнять ся только приложением, потому что лишь оно знает контекст данных. Наибо лее подходящей стратеrией для транспортноrо уровня является ARQ. 135 4.11.1. Обнаружение ошибок Для Toro чтобы система откликалась на ошибки, она сначала должна узнать, что они произошли. Здесь есть две проблемы. Вопервых, кадр, который при был в приемник, может пострадать от одной или нескольких ошибок. Bo вторых, кадр может вообще не прибыть в приемник. or второй проблемы можно защититься, включая в каждый кадр порядковый номер. Если кадр с конкретным порядковым номером не прибывает, то он считается потерян- 
136 Передача данных в сетях: инженерный подход ным. Обнаружение ошибок  более сложная задача. Передатчик вычисляет по сообщению некоторую функцию и добавляет результат ее вычисления 1< кадру в виде проверочной последовательности кадра (Frame Check Sequence, FCS). Коrда приемник получает кадр, он вычисляет по нему ту же самую функцию, что и передатчик, и сравнивает результат с полученной FCS. Если расчетное значение отличается от Toro, которое было принято, то можно сде- лать заключение, что между моментами вычисления этих функций (то есть между передачей и приемом) в сообщении произошли какие-то изменения, следовательно обнаружена ошибка (рис. 4.48). '; ...!:,"'. \ Данные [::;.]  _ Данные j' l ' :'1 '. . i/ j . -- 4 ,,< .1   ... . -1 ..;;.-- . .,................  .'.. "')    t  r- / t !:I ,"--1 Если эти FCS равны, то передача была успешной; их различие означает, что произошла ошибка 2 - Рис. 4.48. Проверочная лоследовательность кадра Опасность заключается в том, что может про изойти такая ошибка, при кото- рой используемая функция не сможет дать правильноrо результата. Напри- мер, если функция состоит в простом добавлении к кадру 16--разрядноrо сло- ва, как в пакете UDp7, и если одна ошибка добавляет к этому слову одно значение, а друrая  вычитает из Hero точно такое же значение, то ошибка не будет обнаружена. Если придерживаться принципов, обсуждаемых далее в разд. 5.4, то для заданноrо числа ошибок этот эффект можно ослабить и даже устранить пyreм тщательноrо проектирования функций, вычисляющих про- верочные последовательности. Часто используются про верки с помощью циклическою uзбытОЧНО20 кода, CRC (см. разд. 5.4.3). Обычно используется 16-разрядный СRС-код, определенный комиссией CCIТT, который может обнаруживать: (] все пачки ошибок длиной до 16 битов, rде пачка определяется как блок, начинающийся и оканчивающийся ошибкой, и чьи промежуточные биты MOryт или не MOryт быть ошибочными; 1 UDP  сокр. от User Оаш Protocot, полЬЗОвательский протокол данных.  Пер. 
,rлава 4. С точки зрения сетей .. 137 а 99,997% пачек ДЛИНОЙ 17 битов; (] 99,998 % пачек длиной больше, чем 17 битов; 'r:J все возможные комбинации 3x или меньшеrо количества случайных ОрIИбок; I:J все возможные комбинации нечетноrо количества ошибок. 4.11.2. ААа Существует три типа ARQ  с остановом и ожиданием, с возвратом N кадров и с избирательным повторением. Самая простая форма этой систе МЫ  С остановом и ожиданием. Каждое сообщение передается от источни ;ка к адресату, а адресат посылает ПQдтверждающее сообщение назад к ис точнику (рис. 4.49). Источник не передает следующее сообщение до тех :рор, пока не примет подтверждения приема предыдущеrо. В это время пе :редатчик находится в состоянии ожидания, что и объясняет происхождение 'термина ARQ с ожиданием. Чтобы предотвратить потерю подтверждений, ;J:lСПОЛЬЗУется таймаут (блокировка по времени), так что если источник ни :;чеrо "не услышит" от адресата за это время, то он снова передает это же co ;:щение. Передатчик Приемник Время передачи сообщения т/С Время передачи эаrоловка h/ С Время распространения t Время передачи подтверждения а/С Время распространения t Данные 3аrоловок Передача сообщения Данные Рис. 4.49. ААО с остановом и ожиданием Коэффициент использования (utilisаtiоп) канала определяется как доля BpeMe ни активности канала. Если кадр состоит из h битов зarоловка и т битов co общения, подтверждение содержит а битов, скорость передачи канала  В бит/с, а задержка распространения (время, которое требуется для перехода сообщения от передатчика к приемнику) равна '[, то в идеальном, свободном от ошибок, звене потребуется (h + т)/В + 't секунд, для Toro чтобы кадр дoc тиr приемника. Затем приемник подтвердит получение этоrо кадра, посылая подтверждение, которое "будет получено источником кадра через а/В + т ce кунд. Теперь узел может передавать следующий кадр. Таким образом, полное 
138 Передача данных в сетях: инженерный подход h+m+a время (с), требуемое для передачи одиночноro кадра, равно В = 2т. В течение этоrо периода передается т битов сообщения, так что полезное время равно т/В. Коэффициент использования равен отношению полезноrо времени (то есть времени передачи информационных битов т) к общему KO т личеству времени, затраченному на передачу кадра, Т.е. . h + т + а + 2Вт Для высокой степени использования канала требуется, чтобы заroловок и подтверждение были короткими, а время распространения  небольшим. Для преодоления неэффективности ARQ с остановом и ожиданием можно продолжать передавать новые кадры, не ожидая получения никаких подтвер ждений (АSКсообщений8). Для числа 9 кадров, ожидающих получения под тверждения, устанавливается не который максимум, а соответствующий про токол называют АRQпротоколом со скользящим окном. АRQпротокол с остановом и ожиданием часто называют АRQпротоколом со скользящим окном размера 1. Использование таких окон обеспечивает определенную cтe пень управления потоком данных и предохраняет передающий узел от пере попнения приемника (что весьма вероятно в случае повторной передачи) и, кроме TOro, задает верхний предел для объема необходимоrо буферноro про странства. Чтобы справиться с потерей подтверждений, можно для каждоrо кадра ис пользовать таймаут (как в ARQ с остановом и ожиданием). Если подтвер ждение не было своевременно получено, то интервал таймаута завершается по таймеру, а передатчик предполаrает, что кадр потерян, и что нужно по вторно передать только что переданный кадр. В качестве альтернативноrо способа обнаружения потерянных кадров можно отслеживать на принимаю щем конце канала передачи перерывы в их последовательности. Существуют два режима повторной передачи: или Передатчик передает толь ко тот кадр, в котором бьта ошибка (избирательная повторная передача), или он также повторно передает все кадры, которые были переданы после потери кадра (повторная передача с возвратом N кадров). В избирательной схеме передатчик повторно посылает только тот кадр, KOTO )ый был ошибочным. Преимущество этой схемы заключается в том, что она eHee расточительна с точки зрения пропускной способности канала, но за шсит от способности приемника rарантировать, что кадры поставляются ce reBoMY уровню в правильно м порядке. Это означает, что сетевой уровень ЛСК  сокр. от acknowledgement (подтверждение).  Пер. это число называюr ОКНОМ (window).  Пер. 
rllaea 4. С точки зрения сетей 139 должен правильно буферизовать полученные кадры во время ожидания по вторно передаваемых кадров. JЗ схеме с возвратом N кадров, передатчик "возвращается назад" к потерян ному кадру и от этой точки снова посылает все кадры. Преимущество этоrо подхода состоит в том, что в приемнике не требуется буферизации или по BTopHoro построения последовательности кадров. Но вследствие Toro, что эта ,схема ARQ требует повторной передачи даже тех кадров, которые, возможно, «)ыли приняты правильно, она не столь эффективна в случае ошибок, как :схема с избирательной повторной передачей. i.Если задержка распространения мала, и поэтому перед получением подтвер )lCдения передается мало кадров, то число кадров, на которые воздействует ;зта схема, также будет небольшим. Однако в сетях с большим числом длин 'ыx звеньев может появиться довольно существенная задержка, так что по ,ядок повторной передачи можно будет сохранять только за счет уменьше 'ния пропускной способности. ;" :В системе с возвратом N кадров для определения Toro момента, коrда про :Взошла ошибка или коrда бьти приняты дубликаты кадра, приемник прове РJlет порядковые номера кадров. Если был получен правильный кадр с поряд "Ковы м номером N, то следующий полученный кадр должен иметь номер .н + 1. Если номер следующеro принятоrо кадра равен N + 2, то кадр с HOMe [ром N + 1 считается потерянным. -'t, B протоколах со скользящим окном роль порядковых номеров является  twающей. Коrда передается кадр, ему приписывается номер, который опреде eт порядок ero вывода по отношению к друrим кадрам. Эти номера исполь > я приемником для Toro, чтобы rарантировать, что кадры, передаваемые tka сетевой уровень, расположены в правильном порядке. , 'i, i.ц.шпазон допустимых порядковых номеров является функцией размера окна jl,l метода повторной передачи. В случае протокола со скользящим окном раз ! мера 1 требуется одноразрядный порядковый номер. В общем случае дЛЯ OK "на размером К кадров, диапазон требуемых порядковых номеров простирает ;ея от О дО 2К+1 дЛЯ системы, использующей избирательную повторную :передачу, и от О до К+l  для систем с возвратом N кадров. Для указания Последовательноrо номера в каждом кадре обычно задается специальное поле "размером в 3 или 8 разрядов. J3ычисление коэффициенra использования (р) для протоколов со скользящим окном несколько сложнее. Здесь различают два случая. При большом окне ero размер оказывается достаточным для непрерывной передачи в условиях orcyrcтвия ошибок. В случае маленькоro окна ero размер не достаточен для He npepывной передачи, но можно использовать эффективную схему ARQ с ocтa новом и ожиданием, позволяющую одновременно передавать несколько кадров. 
140 Передача данных в сетях: инженерный подход h+m Пусть на передачу кадра затрачивается  секунд, а на прием подтвер а ждения  2't + В секунд. это означает, что при ожидании подтверждения (2т. + а / В) = 2& + а кад ро в. Если Р азме р окна на 1 (или можно передавать «h + т) / В) h + т на еще большую величину) больше, чем это значение, то возможна непр рывная передача, а коэффициент использования в таком случае определяется как m/(h + т). Дополнительная единица в этом условии появляется изза Ha чал.ьноrо кадра, для KOToporo бьто получено подтверждение. В случае H БQЛьшоrо окна ero размер (W) удовлетворяет следующему соотношению: W < (2Вт. + a)/(h + т). 3 v v h+m+a 2 а каждыи временнои интервал размером в В + т. секунд можно пе редзть W кадров, так что эффективность свободной от ошибок передачи воз W(h+m) растает (в формуле ее вычисления появляется множитель ) ). (h + т + а + 2В" Поэтому в канале с малым окном эффективность можно вычислять по фор муле т W(h+m) h + m (h + т + а + 2Вт.) , rде W  размер окна для случая ARQ с остановом и ожиданием. На рис. 4.50 показаны схемы работы ARQ различных типов. В каждом случае канал страдает от ошибок в одной и той же точке. Для ARQ с остановом и ожиданием (рис. 4.50, а) 1, 2 и Зй блоки передаются и принимаются пра вильно, т. к. первый пакет ошибок канала происходит в период ожидания. 4e сообщение искажено ошибками и имеет отрицательное подтверждение, по этому оно передается повторно. Для случая ARQ с возвратом N кадров (рис. 4.50, б) первый пакет ошибок искажает 2й блок сообщения, но источ ник находится в счастливом неведении, пока не примет подтверждение, п редавая за это время Зй и 4й блоки сообщения. После этоrо источник дол жен вернуться ко 2MY блоку и передать ero снова. В таком случае величина N должна быть равной 3 или БОЛЬше. Если бы N было равно только 2, источ ник должен был бы остановиться после передачи блока 3 до тех пор, пока не будет принято подтверждение приема блока 2. В системе ARQ с избиратель ным повторением передачи (рис. 4.50, в) предполаrается также наличие ми иимальноrо буфера для хранения по крайней мере Зх блоков, и повторно передается только ошибочный блок. Обратите внимание, что эта система передает 11 блоков, в то время как друrие системы справляются только с 7 ипи 5 блоками. 
rJ;1aвa 4. С точки зрения сетей 141 ARQ с остановом и ожиданием а ARQ с возврвтом N кадров б П.!Сет оuмбок · П.кет ошибок ... .... ARQ с избирательным повторением Рис. 4.50. Работа различных типов ААО в Если в блоке есть ошибки, то ero нужно передавать повторно. Поэтому для уменьшения количества повторно передаваемой информации разумно иметь короткие блоки. Однако уменьшение длины блоков приводит К увеличению количества сообщений и подтверждений, а в случае передачи, свободной от ошибок, и к уменьшению коэффициента использования канала (изза Toro что заroловок имеет минимальный размер). Коэффициент использования дЛЯ ARQ с остановом и ожиданием при возник новении ошибок можно рассчитать следующим образом. Пусть используется таймаут, который запускает повторную передачу, если не получено под тверждение. Минимальный размер интервала таймаута равен 2t + а/В (время, которое обычно требуется для возврата подтверждения). В этом случае кадры будут передаваться с одним и тем же интервалом, независимо от Toro возни кает ошибка или нет. Пусть Pf вероятность потери кадра, аРа  вероят 
142 Передача данных в сетях: инженерный подход ность потери подтверждения. Вероятность правильноrо приема кадра Ра == (1  Pf) (1  Р а). Поэтому полезная пропускная способность (в кадрах) равна т х Ра, а коэффициент использования вычисляется как mP/(h+ т + а+ 2B't). Подобный подход можно использовать и дЛЯ ARQ с избирательным повторе- нием передачи, если допустить некоторое упрощение, состоящее в том, что повторные передачи потерянных пакетов  это еще не сами потери, и что система должна уменьшить число пакетов, которые она посылает вследствие переПолнения буферов. Это соответствует условию низкой интенсивности ошибок. В'таком случае коэффициент использования свободной от ошибок передачи равен Ра, так что для случая большоrо окна он становится равным mP/(h+ т), а для случая малоrо OKHapaBHЫM mWPsI(h + т + а +2Вт). К сожалению, мы не можем прямо применять этот подход дЛЯ ARQ с возвра- том N кадров, потому что в дополнение к тому, ЧТО нужно снова посылать более ОДНоrо кадра (N кадров в случае большоrо окна и W кадров  в случае малоrо окна), неудача в повторной передаче сбойноrо кадра заставит прото кол остановиться. Однако, если допустить упрощение, состоящее в том, что этоrо не Случится, то каждый потерянный кадр приведет к повторной переда- че N или W кадров. Среднее число передач, требуемых для тoro, чтобы полу- чить успешно переданный кадр, равно 1/Ра. Средне число повторных передач на 1 меНЬШе, чем эта величина, т. е. 1/Р а 1, так что общее количество пере- данных кадров будет равно (I/Pa I)N +1 для большоrо окна или (I/Pa I)W + 1  для малоrо. Изза этоrо множителя коэффициент использования уменьшается и становится равным т  h «1/ Ра  I)N + 1)  для большоrо окна +т тwp h s 2.8т «1/ Ра  I)W + 1)  для малоrо окна +т+а+ На рис. 4.51 показаны rрафики относительной производительности схем ARQ с OCTalioBOM и ожиданием и с избирательным повторением для систе- мы со СКОростью передачи 1 Мбит/с, 40разрядным заrоловком и 40- разрядным пакетом подтверждения. Показаны два случая: с задержкой рас- пространеliИя в 1 О мкс, наиболее вероятной для локальных каналов, и с задержкой распространения 1 О мс, представляющей быстрый MHorocer- ментный Каliал. Внутриrосударственные каналы MorYT иметь задержки распространения порядка сотни миллисекунд, увеличивающиеся во MHoro раз на КОIiТинентальных каналах, rде используются спyrники (СМ. разд. 6.3.3). Вероятность появления ошибочноrо бита на передаваемых данных или lia их ПОдтверждении равна 1 о...... 
fлава 4. С точки зрения сетей 143 0.9 0.1 2 0.8 0.7 u;: s ::с ::! 0.6 о м ..о В 0.5 с u  0.4 ::с Q) s i 0.3 -& -& 3 0.2 ::.:: 1 ,....----....., ,,' " ----------  10 100 1000 10000 100000 Размер сообщения ). в битах Рис. 4.51. Относительная производительность схем ААО: 1  с остановом и ожиданием (задержка 10 мс); 2  с остановом и ожиданием (задеQжка 10 мкс); 3  с избирательным повторением (о'ба случая) Нужно заметить, что во всех случаях коэффициент использования увеличи вается до максимума и затем быстро спадает. Начальный рост происходит потому, что увеличение размера пакета пропорционально уменьшает He производительные затраты при передаче сиrналов. Однако изза Toro, что вероятность побитовых ошибок фиксирована, вероятность правильноrо приема пакетов с увеличением их размеров уменьшается, и на правой CTO роне кривых (см. рис. 4.38) этот фактор начинает доминировать. Например, при интенсивности побитовых ошибок 10---4 только около трети пакетов раз мером в 1 О 000 битов будут приняты правильно. Лучше всех работает ARQ с избирательным повторением, и это справедливо всеrда. Для пакетов больших размеров (и поэтому с большой интенсивностью ошибок) для под держки показанной на рис. 4.51 производительности требуются буферы больших размеров, причем, если размер буфера оrраничен, то производи тельность будет уменьшаться, приближаясь к случаю ARQ с остановом и ожиданием. При низкой интенсивности ошибок производительность ARQ с возвратом N кадров приближается к производительности ARQ с избирательным повторе 
.144 Передача данных в сетях: инженерный подход нием, а при высокой интенсивности ошибок  к производительности ARQ с остановом и ожиданием. В силу Toro, что на практике системы разрабатыва ются таким образом, чтобы обеспечить низкую вероятность повторной пере дачи, это означает, что ARQ с возвратом N кадров часто оказывается пред почтительнее друrих схем. Обратите внимание, что приведенные выше аппроксимации производительности ARQ с возвратом N кадров не поддер живаются в этом примере для пакетов с размерами, превышающими пример но 1000 битов, потому что вероятность повторной передачи превышает 10%, а вероятность остановов повторной передачи незначительна. Но будьте OCTO рожны  применение формулы в случае высокой интенсивности ошибок созда.ет ложное впечатление, что ARQ с возвратом N кадров работает хуже, чем ARQ с остановом и ожиданием, что невозможно. Задержки распространения не сильно влияют на ARQ с избирательным по вторением (в предположении, что буфера имеют достаточно большой объем), но этоrо нельзя сказать об ARQ с остановом и ожиданием. При He больших задержках распространения ARQ с остановом и ожиданием имеет разумную производительность, но если система должна относительно долrо ждать подтверждения, то время ожидания становится довольно существен ным. ARQ с избирательным повторением превосходит ARQ с остановом и ожиданием даже при небольших задержках распространения, но для низкой интенсивности ошибок это различие не очень велико. Для более высокой интенсивности ошибок различие увеличивается. Например, при интенсив ности ошибок 1 03 максимальный коэффициент использования ARQ с изби рательным повторением равен 65%, тоrда как дЛЯ ARQ с остановом и ожи данием 50%. Однако в любом случае коэффициент использования не особенно высок, и лучшая стратеrия состояла бы в том, чтобы использовать некоторое предварительное исправление ошибок, позволяющее у.меньшить высокую интенсивность ошибок на более низких уровнях. Обсуждение OT носительных достоинств этих двух подходов приводится В разд. 5.5. 4.12 Службы TpaHCnOpTHOrO уровня Сетевая часть коммуникационной системы охватывает два уровня стека про токолов OSI  транспортный и сетевой. Сетевой уровень отвечает за Map шрyrизацию, а механизм маршрутизации должен охватывать сеть или сети, лежащие в основе этой системы. Транспортный уровень обеспечивает тpaHC портный протокол, который выполняет транспортировку сообщений от oд Horo ceтeBoro процесса к друrому и совершенно не зависит от ceтeBoro ypOB ИЯ. Работа транспортноrо уровня, по существу, должна обеспечить сквозное 
[лава 4. С точки зрения сетей 145 взаимодействие, которое не зависит от сетевой инфраструктуры. Он должен иметь дело с адресацией, установкой соединений, управлением потоком дaH ных и восстановлением после аварийных отказов. Чтобы обслуживать различные типы сетей (например, сети с соединениями и без соединений) и различные запросы приложений, транспортный уровень предлаrает несколько классов различных служб. Классы транспортных служб определены как в модели Международной орrанизация по стандартизации (180), так и в модели Internet. Первые были разработаны скорее для общих телекоммуникационных служб, а не для служб передачи пакетных данных. Развитие же Internet означает, что, хотя эта система обеспечивает только два класса служб  протокол пользовательских дейтаrрамм (UDP), работающий без соединений, и основанный на соединениях протокол управления переда чей (ТСР), но именно такая модель сейчас наиболее популярна. Подобное же разнообразие представлений можно заметить и в отношении услуr, предоставляемых сетевым уровнем транспортному. В подходе 081 c тевой уровень может обеспечить 3 разных службы для трафиков различных типов. В подходе Internet имеется только одна служба  Iпtеrпеtпротокол (Internet Protocol, IP). IP  очень простая служба, предназначенная для рабо ты в нескольких, возможно, различных сетях. Разработчики протокола стави ли своей целью построить некоторый общий знаменатель для любых сетей, позволяющий в то же время сделать лежащую в ero основе сеть более про стой. Популярность IРпротокола связана с тем, что он позволил разработать ,протоколы некоторых служб, которые никоrда ранее не выполнялись по IP, например, rолосовых. Обе модели поддерживают службы с соединениями и без соединений, но в различной манере. 081 выдает свое телекоммуникационное происхождение поддержкой обеих служб на сетевом уровне, но на транспортном уровне предлаrает только службы, ориентированные на соединения. Подход Internet обеспечивает сетевой уровень без соединений, но на транспортном уровне обеспечиваются обе службы  с соединениями и без соединений. 4.12.1. Адресация Дпя Toro чтобы вступать в связь, объекты должны обладать способностью оп ределять местонахождение и адресовать своих одноуровневых партнеров. Сле дует отличать адреса TpaHcnopтHoro уровня от адресов сетевоro уровня. Адреса транспортноrо уровня должны отображаться на процессы, использующиеся для идентификации фактически общающихся друr с друrом объектов, которые, вероятно, являются отдельными процессами на хостузлахlО сети. Сетевой ypo вень посылает информацию к определенному терминальному устройству, так что адреса ceтeвoro уровня относятся к самому терминалу. 10 ХОСТ  любое устройство, подключенное к сети и использующее протоколы ТСРjlР.  Пер. 
146 Передача данных в сетях: инженерный подход Иерархическая адресация Иерархическая адресация использует ряд полей, каждое из которых более точно определяет размещение адресуемоro объекта. В качестве примера можно привести телефонный номер в формате <страна, rород, АТС, номер телефона>. Иерархическая адресация часто используется на сетевом уровне, rде она упрощает маршрутизацию, поскольку в адресе неявно указывается место расположения адресата. Однако вследствие Toro, что транспортный уровень не занимается маршрутизацией, то такое преимущество не использу ется. На самом деле это может оказаться и недостатком, т. к. если поддержи вающий связь объект перемещается в новое расположение, то он не может взять с собой и свой адрес, потому что тот содержится в сетевом компоненте. Возвращаясь к примеру телефонной сети, можно привести следующую aHa лоrию: если бизнесмен перемещается в новую rеоrрафическую область, он не может взять с собой свой номер телефона, если этот номер является cтaH дартным номером АТС. Новые персональные номера, начинающиеся в Вели кобритании на 07, можно перемещать, поскольку они используют структуру простой, так называемой сплошной (flat) адресации, описанной далее. OДHa ко, поскольку телефонная сеть использует иерархическую нумерацию, то во время установки вызова сплошной адрес должен быть преобразован в иерар хический. Это накладывает на сеть дополнительные обязательства. Сплошная адресация Сплошные (f1at) адреса используют единое поле, без специальной привязки к rеоrрафической или иной иерархии. Это поле должно быть достаточной дли ны, чтобы представлять адреса всех точек доступа к транспортным сетевым службам. Чтобы rарантировать уникальность каждоrо aдpecHoro идентифи катора, сплошная адресация требует централизованной записи всех назна ченных адресов. Поскольку эта запись может быть распределенной, то YCTa новка соединения может оказаться более сложной задачей. Сплошная адресация позволяет общающимся сторонам быть более мобильными, но маршрутизация при этом оказывается более сложной. Протокол начальноrо соединения Если система предлаrает множество служб, то невозможно назначить посто янные транспортные адреса для каждой из них. Одним из решений этой про блемы является процедура, называемая протоколом начальноzо соединенИЯ (Initial Connection Protocol, ICP), использующим так называемый сервер пpo цессов (process server). Потенциальные пользователи любой службы сначала соединяются с сервером процессов, который затем rенерирует новый процесс и назначает транспорmый адрес для этоrо HOBoro процесса. Затем сервер процессов отсоединяется от пользователя, и тот получает возможность co единиться с новым процессом (рис. 4.52). 
..лава 4. С точки зрения сетей 147 ИЗВ8стнь.й адрес Хост А . Хост в (4) Сервер процессов сообщаетпольэователю адрес процесса и затем закрывает соединение (1) Сервер процессов прослушивает известные адреса (2) Пользователь соединяется с известным адресом (3) Сервер процессов создает требуемый процесс с допустимым адресом (5) Пользователь соединяется с выбранным процессом Рис. 4.52. Назначение транспортных адресов Р.12.2. Классы транспортных служб 051 $ модели OSI имеется пять классов транспортнt'tx служб. Сетевой уровень  .. оrда бывает ненадежен, поэтому MOryт существовать остаточные ошибки, , е. ошибки, которые все еще присутствуют после Toro, как более низкие tpoвни выполнили их обработку. Кроме тoro, MOryт существовать так назы Mыe СU2налuзирующие отказы (signalled failures). Так называют ошибки, ронаруживаемые сетевым уровнем, с которыми он не может справиться. 1'ранспортный уровень должен самостоятельно обнаруживать остаточные 1!' inибки. В модели OSI определены сети следующих трех типов: [] тип А  сетевые соединения с приемлемым уровнем остаточных ошибок и приемлемым уровнем сиrнализирующих отказов; [] тип В  сетевые соединения с приемлемым уровнем остаточных ошибок и с недоnyстимым уровнем сиrнализирующих отказов; [] тип С  сетевые соединения с уровнем остаточных ошибок, неприемл мым для пользователя транспортных служб. Для этих сетей определено пять служб тpaHcnopTHoro уровня: [] класс О  это простой класс, используемый в сетях типа А, т. е. сетях, KO торые самостоятельно обеспечивают приемлемую производительность. 
148 Передача данных в сетях: инженерный подход ОН был разработан предшественником CeIТT для использования с теле Ксным оборудованием, обеспечивая соединения, базирующиеся на управ Лении потоком данных ceтeBoro уровня с освобождением соединений; (] класс 1  ЭТО основной класс с исправлением ошибок, используемый в сетях типа В. Он бьU1 разработан eeIТT и предназначен для работы в ce тях Х25, [де он обеспечивает минимальное восстановление после ошибок (до уровня сетевых сиrнализирующих ошибок); (] Юlасс 2  это класс мульmплексирования, используемый в сетях типа А. О" является усовершенствованной версией транспортных служб класса О и, подобно этим службам, предполаrает надежное сетевое обслуживание. Службы этоrо класса поддерживают мультиплексирование множествен HblX транспортных соединений на одном сетевом соединении наряду с ин дивидуальным управлением потоком данных для каждоrо транспортноrо соединения; (] Юlасс 3  это класс служб с исправлением ошибок и мультиплексирова нИем, используемый в сетях типа В. Он является комбинацией классов 1 и 2 и обеспечивает мультиплексирование и управление потоком данных (как в классе 2) наряду с восстановлением синхронизации (как в классе 1) для сетей, склонных к отказам; (] Юlасс 4  этот класс обеспечивает обнаружение и исправление ошибок и используется в сетях типа С. В оТличие от дрyrих классов, которые Tpe бytoт сетевых служб, базирующихся на соединениях, службы 4ro класса MOryт поддерживать сетевые услуrи без установки соединений. Он npek полаrает, что сетевое обслуживание ненадежно, имеет недопустимо низ киli уровень управления осТатОЧНЫМИ ошибками и обеспечивает управле ние потоком данных, установку/завершение соединения и восстановление поСле сбоя. Транспортная служба класса 4 ISO и транспортная служба теР Internet aHa лоrИЧJiы. Однако все транспортные службы ISO ориентированы на установку соеДИJiений, и в них нет никакоrо эквивалента транспортной службе UDP Internet. 4.12.3. Классы транспортных служб Internet в модели Internet реализован друrой подход. Он, по существу, предполаrает, что сеть может обеспечивать только ненадежное обслуживание без установки соеДИJiений, и обеспечивает только два транспортных класса  ТСР, KOTO рый соответствует службе класса 4 ISO, и UDP, который не подцерживает соеДИНений. Оба эти протокола работают над IРпротоколом, который явля ется отдельной службой ceTeBoro уровня и разработан для Toro, чтобы испол нять роль "иrровоrо поля" этоrо уровня, на котором доступна любая сеть. 
fлава 4. С точки зрения сетей 149 Протокол пользовательских дейтаrрамм Протокол пользовательских дейта2Рамм (User Datagram Protocol, UDP) обеспечивает простой механизм, работающий без установки соединений и позволяющий приложениям обмениваться сообщениями. Хотя факт OTCyтcT вия установки соединений означает, что протокол имеет очень низкий уро- вень непроизводительных затрат (служебных данных) при передаче, это TaK же означает, что в нем нет никакоrо управления ошибками или потоком данных. Для некоторых служб реальноrо времени с очень низкими требова ниями к задержкам, таких как передача речи, отсутствие управления потоком является преимуществом, поскольку любые потерянные данные никаким об разом не MOryт быть повторены. UDP используется также для передачи ши роковещательных сообщений, т. к. ПОДХЕ>Д С установкой соединений в этом случае неприменим, а для периодических сообщений, подобных сообщениям для модификации таблиц маршрутизации, потеря данных не имеет значения, поскольку существующие данные можно сохранять до следующей модифи кации. Некоторые службы, подобные службе домеllllЫХ uмe1l (Domain Name Service, DNS), которая моrла бы использовать ТСР, обычно используют UDP (ради эффективности). Вместо ненужной траты времени на установку соеди нения и добавления наrрузки на хостузел, выполняется UDРзалрос без yc тановки соединения. Если этот запрос или отклик на Hero потеряны, Tf> после таймаута будет испытан друrой DNScepBep. .... протоколыlя едИllица обмеllа (Protocol Data Uni,PDU) протокола ИОР им ет заrоловок, содержащий четыре 16разрядных поля (рис. 4.53). Два первых поля (Порт источника И Порт назначения) содержат ссылки на процессы при ложений на локальном и удаленном хостузлах, соответственно. Исходный порт  необязательное поле; оно устанавливается в ноль, если такой порт не используется. В поле Длина дейтаrраммы указывается общее количество OK тетов в дейтаrрамме, включая заrоловок. Порт источника Порт назначения Длина дейтаrраммы Контрольная сумма Данные (максимальная длина 65527 байтов) Рис 4.53. Пакет UDP Обратите внимание, что сеrмент ИОР не содержит адреса получателя, а толь ко номер ero порта. Это происходит потому, что ИОР разработан для тpaHC портировки через IРпротокол, и эry информацию (адрес получателя) coдep жит IРзаrоловок, описываемый в разд. 4.13. Есть и еще одна проблема поскольку заrоловок UDP не содержит прямо информацию 06 адресе получа 
150 Передача данных в сетях: инженерный подход теля, то UDРдейтаrрамма может быть доставлена в неправильный хостузел, и транспортный уровень ничеrо не будет знать об этом. Чтобы решить эту проблему, из полей Адрес источника, Адрес назначения, Протокол И Длина заrоловка пакета IP (см. рис. 4.56) формируется псевдозаrоловок, который добавляется к дейтаrpамме UDP с целью вычисления контрольной последо вательностu кадра. Эта последовательность представляет собой дополнение до единицы ll арифметической суммы дейтаrраммы, вычисляемой последова тельно по всем ее 16разрядным полям. Если дейтаrрамма доставляется на неправильный хостузел, то контрольная сумма будет ошибочной. Поле Контрольная сумма  не обязательно устанавливается в ноль, если KOH трольная последовательность не используется. Но если она используется, то промежуточные маршрутизаторы Moryт проверять ее и сбрасывать испорчен ные пакеты (для сохранения сетевой заrрузки). Обратите внимание  сказанное означает, что UDРпротокол зависит от IP протокола и не может использоваться как транспортный протокол для друrих сетевых протоколов. Однако эта зависимость работает только в одном Ha правлении  IРпротокол не оrраничивается поддержкой только UDP протокола. Протокол управления передачей (тср) Протокол управления передачей (Transmission Control Protocol, ТСР)  это ориентированный на соединения коммуникационный протокол, предназна ченный для работы с IРпротоколом (рис. 4.54). Подобно UDP, ТСР позволя ет орrанизовать связь между определенными процессами на каждом XOCT узле, так что между двумя хостузлами может существовать MHOro различных соединений одновременно. Однако, поскольку идентификация соединения выполняется на основе портов каждоrо хосткомпьютера, то для пары COOT ветствующих узлов может существовать только одно соединение  между портом источника и портом адресата. Поскольку IРпротокол обеспечивает недостаточно надежный механизм пе редачи, а ТСРпротокол ориентирован на соединения, то последний должен обеспечить механизмы, rарантирующие, что любые потерянные или иска женные данные перед их доставкой к верхним уровням будут восстанавли ваться. Для этоrо используются механизмы ARQ. Работа ТСР разделена на три этапа: установка соединения, передача данныIx и завершение соединения. На этапе установки соединения изза недостаточной надежности ceтeBoro обслуживания используется тройное квитирование. 11 Дополнение до единицы HeKoтoporo числа  это ero двоичное представление с инверсией всех разрядов: О заменяется на 1, а 1  на о. 
rлава 4. С точки зрения сетей 151 Прикладной Транпортный v P IP Межсетевой Хост-узел сети Рис. 4.54. Протокол управления передачей (ТСР) тср является полнодуплексным поточно-ориентированным протоколом. Данные непрерывно передаются в тср из протокола BepxHero уровня. Затем они произвольным образом разделяются на блоки (сеrменты). Являясь пол- ным дуплексом, протокол позволяет орrанизовать межпроцессный обмен данными в любом направлении. CerMeHT ТСР Структура cerMeHтa тср показана на рис. 4.55. Каждый cerMeHT имеет двой- ное назначение. Он посылает данные соответствующему одноуровневому партнеру (процессу на друrом конце передающей линии), а вследствие TOro что ТСР-протокол является полнодуплексным, он подтверждает получение отправленных данных. Порт источника 1 Порт назначения Порядковый номер Подтверждение  .=':: Размер окна Рио. 4.55. CerMeHT ТСР 
162 Передача данных в сетях: инженерный подход в полях Порт источника И Порт назначения; хранятся 16разрядные числа (номера указанных портов). Эти поля комбинируются с [paдpeCOM хостузла и задают номер COKema 12 . Этот уникальный адрес называют точкой доступа к транспортным службам (Transport Service Access Point, TSAP). Чтобы контролировать правильность приема данных, в ТСР выполняется последовательная нумерация cerMeHToB. Поскольку cerMeHTbI MOryт изме няться в размерах, нумерация выполняется на базе индивидуальных байтов ПQТOка передаваемых данных (по модулю i\ а не посеrментно. Второе поле каждоrо cerMeHTa содержит порядковый номер, а третье  номер подтвер ЖДения. Порядковый номер  это номер первоrо байта cerMema. Номер под тверждения  это номер следующеrо байта, который данный хостузел ожи дает получить от cBoero одноуровневоrо партнера и который должен подтвердить, что все данные до этой точки были приняты правильно. Каждый cerMeHT не требует индивидуальноrо подтверждения. Перед посыл кой подтверждения рекомендуется подождать полсекунды после приема па кета на тот случай, если будyr продолжать прибывать дальнейшие данные, уменьшая тем самым наrрузку на канал подтверждений. Если за это время принимается второй cerMeHT, то оба они немедленно подтверждаются. Если полсекунды проходит без приема следующеrо cerMeHTa, то для первоro cer мента посылается ero собственное подтверждение. Потеря cerMeHTOB может привести или к потере данных, или к потере под тверждений. Потерю данных может указать адресат, подТВерждая прием cer мента с более низким порядковым номером, чем ожидается. В этом случае данные должны быть посланы повторно. Потерянное подтверждение BЫНY дит передатчик повторно посылать данные после завершения таймаута. Если приемник принимает данные, которые он уже правильно принял, он посьmает дополнительное подтверждение и сбрасывает дубликаты данных. Во время таймаута можно получить подтверждение приема следующеro cerMeHTa. Так как подтверждения определяют, что все данные предшествующие данному бай1)', уже были приняты, то это подтверждение может также подтвердить Прием тех данных, первоначальное подтверждение которых было потеряно, устраняя необходимость повторной посылки этих данных. В заrоловке ТСР допускаются различные необязательные элементы, предна значенные для соrласования с параметрами сеанса. Например, 4разрядное ПОле длины заrолоВка, которое указывает длину заroловка в З2разрядных Словах. Обычно это поле не используется, так что размер заrоловка остается равным 20 байтам. 12 Со"ет  объект, являющийся конечным элементом соединения, обеспечивающеro взаимо деЙСТВИе между процессами транспортНОro уровня сети.  Пер. 
rлава 4. С точки зрения сетей 153 Поле флажков (на рис. 4.55 вынесено в отдельный фраrмент) содержит сле дующие флажки: [J URG  указывает, что должно использоваться поле Указатель срочности. Это поле содержит номер байта поля данных, rде кончаются срочные дaH ные. Хотя это поле определено, во мноrих реализациях оно не используется; [J АСК  указывает, что данный PDU переносит подтверждение, и поэтому в поле Подтверждение содержится ero правильный номер; LJ PSH  указывает, что данные, которые узел держит в ожидании передачи, должны пересылаться напрямую, а не помещаться в буфер; [J RST  указывает, что соединение должен быть восстановлено; [J SYN  используется для установки соеинения; [J FIN  используется для завершения соединения. В поле Размер окна указывается количество байrов, которые способен при нимать приемник. В ТСР существует та же проблем отсутствия адреса приемника, как и в про токоле UDP. Разрешается она таким же способом, что и в UDP  путем по строения псевдозаroловка, включающеrо адрес источника, адрес пункта Ha значения, тип протокола и длину заrоловка IРпакета, который используется вместе с друrими 16разрядными словами cerMeHTa для построения KOH трольной последовательности кадра. Однако ка.нтрольная последователь ность кадра ТСР не является необязательной, как зто было в протоколе UDP. Как и в UDP, это оrраничивает тср работой с IРпротоколом, а не с любым сетевым протоколом, но уменьшает общие накладные расходы протоколов ТСР и IP дО 40байтноrо заrоловка. Чтобы представить ТСР в действии, вернемся к примеру поиска Web ,отраницы из разд. 1.4 с помощью WebcepBepa Боб и клиента Алиса. 'Чтобы установить соединение, Алиса посылает Бобу cerMeHT ТСР, с yc тановленным флажком SYN, и порядковым номером, который выбрала Алиса (в данном случае зто 5637114). CerMeHT тср не содержит никаких данных. Если соединение может быть установлено, то Боб отвечает: (а)  своим собственным порядковым номером (в данном случае зто 2454387047), и (Ь)  подтверждением порядковоrо номера Алисы (5637114 + 1 == 5637115), потому что это следующий байт, который он ожидает принять. Поскольку такой cerMeHT содержит подтверждение, то флажок АСК установлен, также как и флажок SYN. Наконец, Алиса под тверждает подтверждение Боба, не посылая никаких данных, кроме HO мера подтверждения (2454387048 == 2454387047 + 1). Orметим два момента. Вопервых, все эти cerMeHTbI содержат размер окна, указывающий количество данных, которые они хотят получать снова. Bo 
154 Передача даННЫХ в сетях: инженерный подход вторых, максимальный размер cerMeHTa (MSS, Maximum Segment Size), соrласуется через необязательные поля в заrоловке ТСР. Алиса запрашивает MSS = 536 байтов, что Боб и делает. Последовательность этих действий следующая. 1. Алиса посылает Бобу cerMeHT с порядковым номером 5637114, без данных, без подтверждения, с размером окна:::: 8192, установленным флажком SYN и MSS = 536. 2. Боб посылает Алисе cerMeHT с порядковым номером 2454387047, без данных, с подтверждением 5637] 15, размером окна 9112, установленным флажком SYN и MSS = 536. 3. Алиса посылает Бобу cerMeHT с порядковым номером 5637114, без данных, с подтверждением 2454387048 и размером окна 8576. Теперь соединение установлено. Затем Алиса посылает Бобу cerMeHT. Этот cerMeHT содержит запрос на Web страницу. Нормализуя порядковый номер к О, Алиса посылает 285 байтов данных, с порядковым номером 1 (номер первоrо байта данных в cerMeHTe) и подтверждение 1 (потому что Алиса ожидает, что следующий байт от Бо ба будет с номером 1). В этом примере в запросе также посылается флажок PSH, требующий, чтобы данные были доставлены в приложение немедлен но. Использование рsнфлажка не определено в стандарте и зависит от KOH кретной реализации На данном компьютере. Боб отвечает без данных, но с подтверждением 286 (285 + 1). Затем Боб посылает свои 536 байтов данных (первую часть WеЬстраницы). Так как WеЬстраница по длине больше, чем MSS, то Боб разбивает ее на блоки, каждый длиной MSS, кроме последнеrо, который имеет длину только 450 байт. Алиса подтверждает эти передачи, иноrда посылая одно подтверждение для двух пакетов, если эти пакеты по лучены в пределах 'таймаута размером в 500 мс. Полная последователь ность выrлядит так: A1.ice----+Вob PSH Seq = 1, 285 data bytes, Ack 1 win 8576 BobAlice Seq = 1, по data bytes, Ack 286 win 9112 BobAlice PSH Seq = 1, 536 data bytes, Ack 286 win 9112 A1.ic Seq = 286, по data bytes, Ack 537 win 8576 BobAlice Seq = 537, 536 data bytes, Ack 286 win 9112 BobAlice PSH Seq = 1073, 536 data bytes, Ack 286 win 9112 A1.iceВob Seq = 286, по data bytes, Ack 1609 win 8576 BobAlice Seq = 1609, 536 data bytes, Ack 286 win 9112 BobAlice Seq = 2145, 536 data bytes, Ack 286 win 9112 
rл аsа 4. С точки зрения сетей 155 tuic:eBob Seq  286, по data bytes, Ack 2681 win 8576 BobAlice PSH Seq 2681, 536 data bytes, Ack 286 win 9112 " ilU.ic:eВob Seq 286, по data bytes, Ack 3217 win 8576 obAlice PSH Seq 3217, 450 data bytes, Ack  286 win 9112 8u.ic:eВob Seq 286, по data bytes, Ack  3667 win 8126  .1 з. Протокол Internet (IР) r Jlротокол Internet (lnternet Protocol, IP)  это основа сети Internet. [P JIРОТОКОЛ был разработан, прежде Bcero, для орrанизации межсетевых .заимодействий. Это проСтой протокол, который может использовать поч pt любая сеть. Он обеспечивает, пожа.riуй, одну из самых распространен JibIX служб ceTeBoro уровня  службу дейтаrрамм. Данные транспортноrо " овня (ТСР или UDP) преобразуются в IРдейтаrраммы и передаются по и. IPceTb  это сеть соединенных друr с друrом узлов, использующих протокол, но поскольку сами эти соединения Moryт формироваться в , руrих сетях, то IPceTb можно рассматривать как сеть, наложенную на ь друrих протоколов, используемых для фактической транспортировки aHHЫX. ё -< Я TOro чтобы расширить применение сетей раJl.IИЧНЫХ типов, IРпротокол _ дъявляет к ним очень мало требований. Кроме Toro, он предполаrает, что , "неинтеллекryальна" и ненадежна, так что право подтверждать, что при _ адные данные были доставлены правильно (то есть не имели искажений и Imечали всем требованиям синхронизации) протокол предоставляет оконеч !ЫМ пунктам или приложениям. Если же с доставкой данных чтото не в п<r iSщке, то они должны самостоятельно предпринимать любые необходимые йствия. Подобный упрощенный подход распространяется и на промежуточные узлы IP-сети  маршрутизаторы. Они выполняют две основных функции  про .падывают маршруты, направляя по ним IРпакеты к их адресатам, и фраr .нтируют большие [Рблоки на более мелкие, как этоrо требует COOTBeТCT '8ующая технолоrия сетевой транспортировки. ,4.13.1. Формат IP-пакета 'Текущая версия IРпротокола  четвертая (lPv4). Пакет протокола IPv4 co t1'оит из заrоловка переменной длины (13 полей) плюс поле данных. Макси мальная длина IРдейтаrраммы (заrоловка и данных) составляет 64 Кбайт. Поля заrоловка подразделяются на 4байтовые блоки, и принято соrлашение, ЧТО [Рпакет состоит из 32разрядных строк, как показано на рис. 4.56. 
t$6 Передача данных в сетях: инженерный подход r,IL ,1::"d Смещение 1 Не используемый 2 Не фраrментированный 3 Добавочные фраrменты (все один байт)  .  .J.:1!(......_..  :  ..... Адрес пункта назначения Опции Максимум 64 Кбайт < Рис. 4.56. IРпакет Четыре поля первой строки связаны с общим форматированием IРпакета. 4битовое поле V (Version, версия), указывает версию используемоrо про токола. Поле IНL (Internet Header Length, длина заrоловка Internet) также 4 битовое, указывает длину IРзаrоловка в 32разрядных блоках, включая блоки необязательных свойств заrоловка, размещаемые в поле Опции после адресных полей. Третье поле ToS имеет длину 8 битов и указывает тип службы (Туре of Service). Теоретически оно позволяет хостузлу определять приоритеты (0---------7), указы ваюЩие, что представляется наиболее важным при передаче пакета  за держка, производительность или надежность. Однако на практике, большин ство маршрутизаторов иrнорируют это поле. Назначение поля Длина очевидно: в нем задается общая длина дейтаrpаммы. Максимальный размер, который можно задать в этом 16разрядном поле, pa вен,2!6 (то есть 65536) байтов, однако типичный размер дейтаrраммы обычно непревышает 1500 байтов и часто оrраничивается 576 байтами (ато мини мальный размер дейтаrpамм, с которым rарантированно работают все Mexa низмы IРтранспортировки). Вторая строка заrоловка используется для управления процессом фраrмента ции. Перед передачей большие пакеты разбиваются на более мелкие, причем для соrласования с ВОЗМОжностями сети фраrментация может выполняться и в промежуточных маршрутизаторах. Но если пакет уже фраrментирован, то он повторно не собирается до тех пор, пока не достиrнет приемника. 16разрядное поле Идентификатор позволяет определить (в принимающем хостузле), какой дейтаrрамме принадлежит данный фраrмент  все части принимаемой деЙ'farраммы должны иметь одинаковое поле идентификатора. Поля 2 (Don't Fragment, DF  не фраrментированный), 3 (More Fragments, MF  добавочные фраrменты) и Смещение фраrментов, связаны с управлением 
rлаsа 4. С точки зрения сетей 157 фраrментацией дейтаrраммы. Установка одноразрядноrо поля (флажка) DF YKa зывает, что фраrментация пакета не разрешается. Флажок MF указывает, что далее следует несколько фраrментов, причем МFфЛажки всех фраrментов, кроме последнеrо, устанавливаются в 1. Поле Смещение фраrментов указывает, rде в текущей дейтаrрамме установлен текущий фраrмент. Длина этоrо поля  13 разрядов, что на 3 разряда короче 16разрядноro поля Длина IРпакета (за счет флажков DF, MF И первоrо разряда (поле 1), который в настоящее время не используется), так что IPдейтаrраммы фраrментируются на целое число бл ков по 8 байтов. Процесс фраrментации показан на рис. 4.57. 3аrоловок Исходное сообщение Фраrменты (минимальный размер 2)  З 4 1 ..< ... :>'....f<; з 7 О "J--'" «....".  Рис. 4.57. Фраrментация IРпакета Третья строка (см. рис. 4.56) имеет дело с аспекr!ми оперативноrо управле ия продвижением пакетов через сеть. Поле Время жизни (Lifetime или Time 110 Live, TTL) используется как счетчик сетевых переходов (hopes) и для Toro, ;чтобы предохранять пакеты от задержки в сети, например, при циклической 'маршрутизации. Первоначально предназначенное для счета времени, оно ,стало, по умолчанию, считать сетевые переходы, поскольку большинство ,маршрутизаторов было неспособно давать точную и скоординированную версию времени. Каждый раз, коrда пакет проходиr через маршрутизатор, Значение этоro поля просто уменьшается на 1 (операция декремента). Коrда значение поле достиrает нуля, пакет сбрасывается. Поле Протокол указывает, с каким транспортным протоколом связана дейта rpaMMa, например, с ТСР или UDP. Оно полностью определено в RFС JЗ 1700. 13 RFC  сокр. от Reqиests for Commeпts, Запросы на комментарии (серия документов lETF, начатая в 1969 roдy и содержащая описания набора протоколов Internet и связанную с ними информацию). lETF  сокр. от Iпterпet Eпgiпeeriпg Task Force, Проблемная rpуппа проекти рования Intemet (одна из rpупп IAB, отвечающая за решение инженерных задач lntemet, выпускает большинсmо RFC, используемых производителями ДJIЯ внедрения стандартов в архитектуру ТСР/lР). IAB  сокр. от Iпterпet Activities Board, Координационный совет сети Intemet (технический opraH, отвечающий за развитие набора протоколов Internet (ТСР); включает технические rpуппы IRTF и IEТF, каждая из которых занимается решением своих задач).  Пер. 
158 Передача данных в сетях: инженерный подход поле Заl'О'nОВОК КОНТРОЛЬНОЙ суммы используется для защиты заrоловка от искажений при ero передаче по сети. Так как поле Время жизни изменяется маршрyntЗатором, то контрольная сумма должна повторно рассчитываться ДJDI каждоrо ceтeBoro перехода. Расчет основан на просто м двоичном допол нении ПOC1lедовательных двухбайтовых слов и операции дополнения до 1 окончател.ьноrо результата. Контрольная сумма очень проста и обеспечива ет элемеmарный уровень защиты, хотя, в зависимости от их позиции, две однобитовые ошибки MOryт оказаться незамеченными. Пакеты с поврежден ными зarОJ10вками сбрасываются. 4.13.2. Адресация Ключевым аспектом работы протокола IPv4 является маршрутизация. Для прокладки маршрута пакета необходимо знать пункт ero назначения (aдpe сат), а также полезно знать и ero источник. В IPv4 это делается явно  с по мощью двух адресных 32разрядных полей, позволяющих определять более 4 миллиардов адресов. На первый взrляд ЭТО, казалось бы, довольно большое число, но при близком рассмотрении орrанизации этих адресов мы видим иную картину. Струюура IРv4адресов по казана на рис. 4.58. о 8 16 24 (31) I  10 сети 10 хостузла Класс Д EJ 10 сети 10 хостузла Класс В  10 сети 1 10 хостузла I Класс С Широковещательный (rрупповой) адрес Класс D Экспериментальное использование Класс Е Рис. 4.58. Различные классы адресов (здесь ID  идентификатор) в IPv4 определено 5 возможных классов адресов  А, В, С, D и Е, ХОТЯ большинство специалистов используют только 3 класса, т. к. два последниХ класса предназначены для широковещательных операций и будущих сетей. Класс (или rpуппа), к которому принадлежит адрес, определяется состоянием ero nepBoro, второrо, тpeтьero и четвертоrо битов. По соrлаUlению, IPaдpeca являются иерархическими, так что соответствующий адрес выражается в 
rлаsа 4. С точки зрения сетей 159 терминах ceTeBoro и хостидентификаторов, а класс адреса указывает тип ce ти и количество индивидуальных устройств, поддерживаемых этой сетью. IPaдpeca имеют 4байтовый размер и обычно записываются в виде четырех подполей десятичных цифр, разделенных точками: ххх.ххх.ххх.ххх (табл. 4.1). Формат взаимноrо адреса определяется значением первоrо подполя. Таблица 4.1. Классы адресов /Pv4 Класс Диапазон Формат А O127 ппп. hhh.hhh. hhh\8 В 128191 nnn.nnn.hhh.hhh\ 16 С 192223 nnn.nnn.nnn.hhh\24 По умолчанию для маршрутизации всеrда используется сетевой идентифика тор, состоящий из всех нулей. Конкретным сетям такой идентификатор не назначается. Для целей обратной связи используется сетевой идентификатор, состоящий из всех единиц. Он тоже не назначается конкретным сетям. По добные оrраничения применяются и к идентификаторам хостузлов  все нули устанавливаются для указания текущей сети, тоrда как все единицы указывают на использование широковещательныХ, пакетов. 4.13.3. Подсети Рассмотрим случай, коrда для некоторой орrанизации требуется адресовать несколько отдельных сетей. Один из подходов состоит в том, чтобы в зави симости от числа хостузлой назначать каждому cerMeHТY свой собственный 'адрес класса В или С. Адрес класса С можно использовать, если число XOCT узлов меньше 254, иначе нужно использовать адресацию класса В. Это, OДHa ко, означает, что внешние маршрутизаторы должны знать, какая сеть орrани зации иrpает rлавную роль (то есть является хостсетью). Поскольку все они выступают в роли отдельных сетей, у орrанизации нет возможности пере lCЛючать хостроль между ними, что оrраничивает любые изменения, которые MOIyr делать ее сетевые менеджеры. Кроме тою, назначение нескольких ce тей индивидуальной орrанизации оказывается неэффективным, поскольку диапазон адресов класса В содержит 216  2 == 65 534 адреса. Если число Tep миналов в одной сети было бы, например, равно 300, то ясно, что потребуетс адресация класса В. Однако применение адресации TaKoro класса оставляет неиспользованными 65 234 адреса. Одним из решений указанной проблемы является использование подсетей. Это означает, что сеть внутренне (в смысле адресации) разбивается на He 
180 Передача данных s сетях: инженерный подход скольКо подсетей, но при просмотре внешними по отношению к этой сети узлами она остается единым объектом. Для этоrо в иерархию адресов вводит СJl третий подсетевой уровень (см. поле Подсеть между сетевой и XOCT частью адреса на рис. 4.59). Блаrодаря этому часть хостадресноrо простран ства, которую контролирует сетевой менеджер, резервируется для указания не отдельной хостмашины, а подсети крупной орrанизации. Сначала внешние маршрyrизаторы направляют пакеты в сеть обычным спо собом, базируясь на сетевом адресе. Затем локальные маршрутизаторы, ис Щ)льзуя маску подсети, определяют, для KaKoro локальноrо маршрутизатора предназначен конкреrnый пакет, причем локальный маршрутизатор не дол жен точно знать, для KaKoro хостузла данный пакет предназначен (если хост не 'ассоциируется со своей подсетью). Это означает, что для отображения HO sой трехуровневой (а не двухуровневой!) иерархии адресов нужно изменить roпько уже существующие таблицы маршрутизации внyrpенних узлов сети. Внешние маршрутизаторы этими изменениями не затраrиваются. Орrаниза ЦИ1l подсетей определена в документе RFC 950. Простой пример с подсетями показан на рис 4.59, rде три отдельные сети некоторой орrанизации пред ставляются для остальной части сети как одна сеть. """" 11111111111111111looooooool 1ЗО.159.подсеть? .' ::  0 j, .:>-,. 1ЗО.159.подсеть 5 '.,,'),:f"'"" Сеть I Хает  1ЗО.159.подсеть 3 Рис. 4.59. Адресация подсетей Б этом примере показано, что пакеты, предназначенные дЛЯ ЛБС типа 130.159/16, ПОС1)'пают в маршрутизатор в форме cerMemoB типа 130.159.28/22. Затем маршрутизатор использует маску подсети, чтобы с по мощью riростой операции "И" получить адрес под сети пункта назначения. После этоrо пакет отправляется в маршрутизатор соответствующей подсети. Сети типа 130.159/16 класса Б можно разбить максимум на 64 подсети, каж ДaJJ из которых может содержать до 1 022 хостузлов. Разбиение на подсети является внyrpенней операцией, которая скрыта от "внешнеrо мира", причем внутренняя конфиryрация подсетей выполняется сетевыми менеджерами  путем проrpаммирования внутренних маршрути заторов с подходящими масками. 
[лава 4. С точки зрения сетей 161 Например: LI маска 255.255.252/22 обеспечивает 64 подсети с 1022 хостузлами; LI маска 255.255.224/19 обеспечивает 8 подсетей с 8190 хостузлами; LI маска 255.255.255/24  это эквивалент адресации подсети класса С; LI маска 255.255/16  это эквивалент адресации подсети класса В. 4.13.4. Бесклассовая адресация Схема адресации, предлаrаемая IРпротоколом, приводит к неэффективному использованию aдpecHoro пространства, которое по современным меркам не так уж и велико, и нехватке адресов класса В. В докумеlПе RFC 15 19 опред лена бесклассовая междоменная маРШРУlfluзацuя (Classless InterDomain Rout ing, CIDR). Она работает следующим образом: сетям, которые первоначально намеревались использовать адреса класса В (но не использовали бы все эти мреса), адреса назначаются в виде блоков адресов класса С. В CIDR больше не делается различий между адресами классов А, В и С  отсюда и назва ние  бесклассовая. CIDR позволяет не оrраничивать больше адресный cer eHT типами /8, /16 или /24. аршрyrизаторы обращаются с этими адресами почти так же, как при Map шрyrизации подсетей  с каждым набором бесклассовых адресов они связы вают так называемую адресную маску (address mask), с помощью которой Ka ждый входящий пакетный адрес получает базо'3Ь1U адрес (base address) и, :raким образом, определяет маршрyrизатор, связанный с соответствующей сетью, причем эта маска теперь имеет переменный размер. С бесклассовой маршрyrизацией связывают дополнительную концепцию, состоящую в том, что конкретные адресные диапазоны связываются с reo rpафическими областями; например, адреса диапазона 194.0.0.0  195.255.255.255 выделяются для Европы, а адреса диапазона 198.0.0.0  199.255.255.255  для Северной Америки. Это облеrчает маршрyrизацию между сетями. Используется так называемая а2ре2ацuя маршрутов, с помо щью которой для описания или представления множественных сетей можно использовать отдельный сетевой префикс. Рассмотрим случай, коrда орrанизации был назначен диапазон IPaдpecoB от 130.159.80.00 до 130.159.95.255, который она будет соответствующим обра зом распределять между несколькими отделами. Эта адресация приведена на рис. 4.60. Сети известно, что маршрyrизатор может принимать любой пакет, чьи пер вые 20 битов адреса есть 100000 I О I 00 IIIII О I О 1, что эквивалентно IPaдpecy 130.159.80.0/20. В приведенном примере для четырех отделов орrанизации требуется соответственно 51 О, 510, 1022 и 254 хостузла, поэтому им может быть назначено адресное пространство 130.159.80.0/20. 
182 Передача данных в сетях: инженерный подход 130.159.88.0/21 130.159.84.0/23 130.159.86.0/23 Рис. 4.60. Пример СIDАадресов Если бы одна из орrанизаций должна была сменить cвoero Iпtеrnеtпровайдера QSP), то СIDRмаршрyrизация позволила бы сохранить назначенный ей диапа зон адресов. Новый ISP будет нспользовать как свой диапазон IРадресов, так и старый диапазон адресов cвoero HOBoro клиента. Рассмотрим, например, поль зователя с диапазоном адресов 130.84.0/23. Первоначальный провайдер ис пользовал свой диапазон адресов 130.159.80.0/20, в то время как новый ISP бу дет использовать диапазон 130.159.84.0/23. Промежyrочные маршрyrизаторы будyr использовать самый длинный префикс, который сможет распознавать, что пакеты диапазона 130.159.84.0/23 следует отравлять новому ISP, а не CTa рому (с диапазоном 130.159.80.0/20), поскольку диапазон /23 имеет приоритет над диапазоном /20. 4.13.5. Служба доменных имен Хотя с точки зрения компьютеров и маршрутизаторов IРадреса достаточно эффективны, но они не особенно дружественны по отношению к пользовате лим. По этой причине числовые адреса заменяются своей текстовой фор мой  доменными uмeHqA1U. Доменные имена имеют иерархическую CTPYK 1Уру и состоят из последовательности элементов, разделенных точками, которые иденrифицируют (справа налево) сначала сеть, затем индивидуаль- ный хостузел и, иноrда службу хоста (WWW, FTP и т. д.). Правый эле- мент  является доменом BepxHero уровня, который базируется либо на reo- rpафическом положении (например, uk  для Великобритании, us  для Соединенных Штатов Америки, au  ДЛЯ Австралии) или на типе орrаниза ции (этот тип доменов используется rлавным образом в CllIA) Так, напри- мер, для Toro чтобы получить имя, заканчивающееся на сот, мноrие орrани- зации реrистрируют свои доменные имена в США. Для отображения доменных имен на IPaдpeca используются специальные базы данных, содержащие IР-адреса для каждоrо доменноrо имени. Эти базы данных поддерживаются особыми серверами имен, доступ к которым выпол- 
 rлава 4. С точки зрения сетей 163 няется через специальный DNsnротоколJ4, а вся система доменов является иерархической. Домены BepXHero уровня реrистрируются в одном из He скольких реестров, rлавным из которых является InterNIC I5 (CllIA). Эта сис тема недавно была изменена, чтобы допустить некоторую конкуренцию с друrими провайдерами серверов имен. Домены BepXHero уровня разбиваются на nоддомены, а реrистраторы доменов BepXHero уровня реrистрируют раз мещение серверов имен каждоrо из этих по}Щоменов. Реrистраторы способны добавлять новые имена в с;вои по}Щомены, не контактируя с сервером имен BepXHero уровня. Например, домен BepXHero уровня uk разделяется на ПОk домены ac.uk, co.uk, gov.uk и org.uk. По}Щомен ac.uk академических инсти тутов Великобритании работает в сети JANET I6 . По}Щомен strath.ac.uk, KO торый назначен университету Strathclyde, реrистрирует свои серверы имен с помощью сети JANET. Это означает, что он может назначить по}Щомен еее факультету Электронных Инженеров, а по}Щомен garland  некоторому инди видуальному хостузлу этой сети, пyrем простоrо обновления их локальных серверов имени (рис. 4.61). gov edu сот uk fr nz  ас со'-,  gl8 strath qmw I еее I ( garland garland.eee.srtath.ac. uk Рис. 4.61. Иерархия имен адреса garland.eee.strath.ac.uk Чтобы иметь короткий, запоминающийся адрес, мноrие компании реrист рируются прямо в домене BepXHero уровня (скажем, в сот) и затем для 14 DNS, Domain Name Service  служба JЮменных имен.  Пер. 15 InterNIC  сокр. от /пteтet Network /riforтatioп Ceпter, Информационный центр сети Intemet (орraниэация, эанимающаяся вопросами формирования, реrистрации и стратеrическоrо раз вития сети Internet, включая реrистрацию доменных имен).  Пер. 16 JANET  сокр. от Joiпt Academic Network, университетская сеть Великобритании.  Пер. 
"64 Передача данных в сетях: инженерный подход выхода на W ebcepBep своей компании орrанизуют запросы по адресу www.organisation.com. На самом деле реrистрируется домен organisa tion.com, и поскольку компания может создавать любой IPaдpec, соrласо ванный с этим доменным именем, то WebcepBep может быть расположен на любом хостузле любой сети, даже если он будет направлен на сервер друrой компании, которая специализируется на хостинrе (публикации и обслужива нне) W ebcepBepOB. lbменяя возвращаемые IРадреса, DNS обеспечивает также ряд дополни тельных служб, таких например, как службы замещения (aliasing) имен XOCT узлов и почтовых серверов и служба распределения наrрузки. Формально эти ql1ужбы определяются в документах RFC 103411035. IРадрес и отображение имени хоста хранятся в форме записи ресурса (еsource Record, RR). Она состоит из 4 полей: Имя, Значение, Тип И Время зни. Существует четыре основных типа RRзаписей. Если сервер имен зна ет IPaдpec Tpe6yeMoro доменноrо имени, то он хранится в записи типа А (от ЩJthoritativе авторитетный), которая сопоставляет IPaдpec (из поля Значе ние) С именем хоста (из поля Имя). Если сервер имен не знает TaKoro IP адреса, то он будет знать адреса друrоro сервера имен, который должен знать  адрес (сам или через KOI'OTO еще), а записи типа NS сопоставляют имя Д<)мена (из поля Имя) С сервером имен (из поля Значение). Записи типа МХ српоставляют имя хоста почтовоrо сервера (из поля Имя) С ero псевдонимом (.flЗnOЛЯ Значение). И наконец, последний тип записи  CN. Записи этоrо типа сопоставляют каноническое имя (из поля Значение) С именем хоста (из поля Имя). HeKOTO рые компьютеры для удобства задают дополнительные, обычно более KO роткие, имена, а СNзапись сопоставляет эти имена с полным именем хоста. Компьютер австралийскоrо Института телекоммуникационных исследова ний (IТR) из примера, приведенноrо в разд. 1.4, отвечает на имя www.itr.unisa.edu.au. хотя ero полное (то есть каноническое) имя  charli.levels.unisa.edu.au. Эта система предоставляет услуry WеЬхостинrа17, Коrда любой пользователь может купить доменное имя, зареrистрировать ero и доrовориться с компанией насчет хостинrа ero WеЬстраниц. После этоro СNзаписи направляют их доменные имена на компьютеры предоставляющей ХОстинr компании, так что владелец доменноrо имени может и не иметь KOM Пьютера. Локальные серверы хранят результаты предыдущих запросов DNS в своей КЭшпамяти. Это дает возможность ускорить DNSпроцесс, т. к. нет никакой 17 WеЬхостинr (Web hosting)  предоставление провайдером cBoero дисковоrо пространства для публикации и обслуживания пользовательских WеЬсайтов. Пер. 
rлава 4. С точки зрения сетей 165 потребности входить в контакт с друrими серверами. Ясно, что нужно доби ваться равновесия между сохранением и сбросом входов кэша. Наконец, по следнее поле RRзаписи  Время жизни  указывает время, в течении KOTO poro запись должна оставаться в кэше перед выводом их Hero. При обмене DNSсообщениями между хостами и серверами имен использу ется UDРпротокол. Он вызывает подходящие серверы имен, которые oтo бражают имена на IРадреса. DNS возвращает запись ресурса, по}Щерживае мую сервером, которая содержит IPaдpec, так что приложения, например, telnet, FTP или НТТР, MOryт ero использовать. Различают локальные, корневые и авторитетные серВерЫ имен. В коммуни кационной цепочке MOryт также использоваться промежуточные серверы ямен. DNSзапросы Moryт быть рекурсивными или итеративными. В првом (наи более общем) случае, каждый сервер домена получает отображение имени Сервера или хоста, который сделал запрос. Итеративные запросы (обычно 'выполняющиеся между корневым и локальным серверами, чтобы минимизи ровать обработку заrрузкив корневом сервере) приводят в результате или к требуемому отображению, или к адресу следующеrо в цепочке сервера, KOTO рый позволяет сделать следующий прямой DNSзапрос. В примере на ;рис. 4.62 показан итеративный запрос (шаr 2), который дает отклик (шаr 3), еообщающий локальному серверу, чтобы он одил в прямой контакт с промежуточным сервером. Если бы запрос (2) был рекурсивным, ТО ОТЮIик (3) был бы направлен прямо к промежуточному серверу и поэтому не бьто ,бы никакоrо прямоrо диалоrа в любом направлении между промежуточным и локальным серверами. Корневой сервер (.сот) ","У",'" 0 0","'"'  Промежуточный '" k'  сервер o Локальный 0 t;;\ j I f5\ серер 7  + 0! 0 Рекурсивный  запрос Итеративный . запрос Серер домена ."". 111 111 "'.'<6.16." Рис. 4.62. Рекурсивный и итеративный DNSзапросы 
166 Передача данных в сетях: инженерный подход Последовательность событий при установке ТСРсоединения с хостузлом www.dufc.co.uk иллюстрирует рис. 4.63. '1. DNSзапрос хостузла www.dufc.co.uk. 2. АRPзапросl8 к 130.159.86.4, ARPoTBeT от 130.159.86.4. З. Разрешенный DNSзапрос, посылаемый к 130.159.86.4. Если запрос не разрешен локально, то следующие запросы посылаются к дополнительным нелокальным DNScepBepaM. 4. DNSOТBeT от 130.159.86.4. 5. Передача решения, oCHoBaHHoro на входе по умолчанию таблицы передач. 6. ARPзапрос 130.159.86.1, ARPOТBeT от 130.159.86.1. 7. Запрос ТСРсоединения посылается в www.dufc.co.uk через 130.159.86.1. 8. Запрос ТСРсоединения поступает в узел www.dufc.co.uk. 9. Возврат ответа ТСРсоединения. 10. OrBeT ТСРсоединения поступает в узел garland. 11. НТТРзапрос посылается узлу www.dufc.co.uk. 130.159.0.0/16 130.159.86.12 умолчание 130.159.86.1 garland.eee.strath.ac.uk 130.159.86.12 . НТТРдиалоr по тср @ О! ""''"01Ф dns.eee.strath.ac.uk 130.159.86.4 I Не обязательный DNSзапрос I Рис. 4.63. Цепочка событий для DNSзапроса к узлу www.dufc.co.uk 18 ARP, Address Resolution Protocol  ПрОТОКОЛ разрешения адресов (ПРОТОКОЛ из семейства TCP/IP. обеспечивающий преобразование IPaдpeca в МАСалрес (МАС address) ШIЯ пакетов lР).  Пер. 
fлава 4. С точки зрения сетей 167 4.13.6. IР-маршрутизация Маршрутизация в IРсетях точно такая же, как в любой сети передачи дaH ных, поскольку применяются те же основные принципы. Сеть рассматривается как объединение так называемых автономных сетей. Каждая из этих сетей независима и может выполнять свой собственный алroритм маршрутизации. Проблема заключается в соединении различных сетей, которая требует соrласованноrо Iпtеrпеtпротокола маршрутизации между соседними сетями. В настоящее время существует два общих протокола подобноrо типа  OSPF и BGp I9 , которые заменяют первоначальный протокол маршрутной информации (RIРпротокол) и внешний шлюзовой протокол (EGP 20 ), и.спользуемый в Internet. RIP и OSPF протоколы разработаны для маршрутизации в индивидуальных автономных сетях, тоrда как EGP и ВGРпротоколы предназначены для маршрутизаци между автономными подсетями (рис. 4.64). Анонимные подсети Рис. 4.64. Маршрутизация между автономными подсетями 19 BGP  усовершенствованный внешний шлюзовой протокол, основанный на опыте исполь зования протокола EGP в маrистральной сети NSFNЕт.  Пер. 20 EGP  сокр. от Exterior Gateway Protocol, внешний шлюзовой протокол (протокол внешней маршрутизации, реализующий пересылку маршрутной информации на маршрyrизаторы, которые соединяют межд собой автономные системы).  Пер. 
::;168 Передача данных s сетях инженерный подход Рассмотрим эти протоколы подробнее. LI ЮР  протокол маршрyrной информации (Routing Information Protocol). Эrо внyrpидоменный протокол, основанный на маршрутизации по вектору расстояния. Он базируется на счетчике сетевых переходов (hopecount), '\ который оrраничен числом 15 и обновляется каждые 30 с. ,CJ OSPF  протокол первоочередноrо открытия кратчайших маршрутов (Open Shortest Path First). Применяется в задачах маршрутизации внутри каждой подсети. По существу, это версия маршрутизации по состоянию " связей, которая обсуждалась ранее. Разрешает аутентификацию сообще ний маршрутизации и множественные маршруты. Кроме тосо, протокол позволяет устанавливать, каким образом домены разделяются на области, ," так что пакеты не всесда можно точно направлять в конкретный домен, а только  в правильно м направлении. CJ BGP  поrраничной шлюзовой протокол (Border Gateway Protocol). Это, по существу, протокол, который определяет правила обмена так называе мой информацией достижимости (reachability information) между Map шрутизаторами. Чтобы достичь сети назначения, трафик может заканчи ватъся в автономной сети или проходить через нее транзитом. BGP не имеет дела с поиском наилучшеrо пути  подходит любой путь, если он .;; не замыкается на себе. Пакеты передаются через различные домены, ис ';.; ! лользуя разные режимы маршрутизации, так что оптимальные маршруты :;",реально невозможны. Существует некоторый элемент выбора, позволяю .' щий найти "хорошие" пути. Политика выбора может базироваться на Tex . ' нических, деловых, политических, стоимостных задачах, решение которых предоставлено индивидуальным ВGР.маршрутизаторам. Сложность BaP протокола растет, скорее, с ростом числа автономных сетей, а не с числом хостузлов В этих сетях. Сложность протоколов внутридоменной маршру- тuзации, подобных ЮР или OSPF, зависит от числа хостовузлов или под- сетей в каждой автономной сети. 4.13.7. I Р-" рОТО КОЛ версии 6 (lРу6) IPvб принадлежит к следующему поколению IРпротоколов. Начальным толчком к есо разработке была ощутимая (с ростом числа хост-узлов и сетей) нехватка адресносо пространства в протоколе [Pv4. Динамическое распреде- пение IP.aдpecoB Iпtеmеtпровайдерами и бесклассовая адресация фактически продлили жизнь адресносо пространства IPv4. Новые разработки в техноло- rии мобильной телефонии и ASDL, которые всесда взаимосвязаны, требуют дополнительных IPaдpecoB. Хотя существует обходной путь, позволяющий разделять (совместно использовать) IPaдpeca сети и преобразовывать их с помощью шлюзов в меньший динамический диапазон IPaдpecoB и портов, 
 rЛава 4. С ТОЧКИ зрения сетей 169 видимых из внешней сети, адресное пространство IPv4 рано или поздно за кончится. У IPv6 нет никаких шансов исчерпать все свои адреса, поскольку их размер увеличен до 128 разрядов. При таких размерах можно назначить IPaдpec не только каждому пользователю, терминалу или даже электровыключателю, но электронные устройства будyr способны подобным же способом назначать адреса и всем адресатам EthernetKapT, ничуть не опасаясь уступить их KOMy то до конца жизни. Появляется также возможность назначать несколько aдpe сов одному устройству, выделяя дополнительные адреса различным ero KOM понентам или службам. Дополнительное свойство протокола  поддержка адресов специальноrо ви да, предназначенных для любоrо устройства в rруппе терминалов (anycast address), коrда пакет направляется любому из нескольких терминалов rруп пы. Это облеrчает адресацию запросов для служб, которые расположены в нескольких местах сети, так что для доступа к любой из них может использо ваться локальный провайдер. Дополнительное адресное пространство  не единственное преимущество IPv6. В настоящее время используются MHoro служб, для которых не была 'предусмотрена передача по IРпротоколу, не устанавливающему соединений. Серьезной проблемой ДЛЯ IPv4 было отсутствие l.Iоддержки службы качества. Протокол IPv6 использует специальные ресурсы  класс трафика и метку потока, которые позволяют идентифицировать пакеты KOHKpeTHoro потока ДЛЯ их специальной обработки, но эти дополнительные ресурсы должны быть предварительно соrласованы. Кроме Toro, IPv6 обеспечивает улучшенную по}Щержку средств защиты и механизм добавления необязательных полей к зarоловку с целью ero расширения. Процедура фраrментации в IPv6 выполняется HeMHoro иначе, чем в IPv4. Ми нимальный размер пакета, подлежащеrо обработке, увеличен с 576 байтов ДЛЯ IPv4 до 1280 байтов ДЛЯ IPv6. Кроме Toro, маршрутизаторы IPv6 не фраr ментируют пакеты, если это требуется, а посылают сообщение обратно на передатчик и просят, чтобы он сделал фраrментацию сам. Это означает, что маршрyrизаторы Moryт быть более простыми. В IPv6 имеется также возмож :ность использовать более крупные пакеты, называемые супеР2ра.ммами Oиm bograms). Упрощению маршрутизаторов способствует тот факт, что заrоловки IPv6 имеют меньше полей, чем зarоловки [Ру4. Однако даже без необязательных полей они вдвое больше по размеру заrоловков IPv4. Для протоколов, KOTO рые производят большое количество мелких пакетов, подобных протоколу "Речь через IP", это неприемлемо, но дополнительная поддержка качества обслуживания смяrчает такую ситуацию. Однако IРvб пока не получил ши 
110 Передача данных в сетях: инженерный подход рокой поддержки среди производителей, так что, возможно, потребуется He которое время, прежде чем он получит достаточное распространение. Час тично проблема состоит в том, что, хотя довольно просто обеспечить терми налы пользователя двойными стеками, способными использовать IPv4 или IPv6 (в зависимости от Toro, с помощью KaKoro из этих протоколов они под держивают связь), но если IPv6 не поддерживается базовой сетью или в лю бом звене между сторонами, то IРv6пакеты должны пересылаться с помо щью протокола IPv4, т. е. они должны быть вложены (инкапсулированы) в дейтаrраммы IPv4. Такой процесс известен как туннелирование (tunnelling). Оно увеличивает дополнительные непроизводительные затраты, но вследст вие тoro что IPv4 не поддерживает качественных сервисных средств IPv6, никакой выrоды от туннелирования получено не будет. Это означает, что пользователи получат HeMHoro пользы от своих вложений, пока большое KO личество друrих пользователей также не модернизируют свое оборудова ние  ситуация яйца и цыlенка.. Структура пакета протокола IPv6 показана на рис. 4.65. В поле v (Version, версия) указывается версия IP. В поле р (Priority, приоритет) указываются служебные типы с различными требованиями к качеству обслуживания (Quality of Service, QoS). Значения р в диапазоне от О до 7 указывают данные с управляемым потоком, т. е. данные не в реальном масштабе времени, в то время как значения р в диапазоне от 8 до 15 указывают данные в реальном масштабе времени, KQTopbIe не являются данными с управляемым потоком. Поле Метка потока позволяет узлам различать потоки трафика и их запросы. Наряду с адресом источника и адресом пункта назначения, метка потока ис пользуется для уникальной адресации потока. 16разрядное поле Длина опре деляет длину полезной наrpузки в байтах. Поле Следующий заrоловок указы вает, что используются необязательные "заrоловки расширений" (extension headers), т. е. дополнительные функции, связанные с пакетом. Определено шесть типов расширений со следующими названиями: Последовательные опции (Hopbybop options), Маршрутизация (Routing), Фра2ментация (Frag mentation), Аутентификация (Authentication), Шифрование (Encryption) и Пункт назначения (Destination). Эти зarоловки используются только коrда требуется, и в специфическом порядке. Необязательные заrоловки имеюТ фиксированный формат или определяются в виде полей Тип, Длина И Значение. Если поле Следующий заrоловок В пакете или расширении соrласу ется с полем полезной информации IPv4, то никакие дополнительные функ циональные возможности не требуются. Наконец, поле Предельное число переходов указывает максимальное число переходов маршрута. Коrда пакет передается по межузловому переходу, это число уменьшается на 1 (декре-- ментная операция); при нулевом значении этоrо поля пакет сбрасывается. Оно похоже на поле Время жизни (TTL) в IPv4. 
,rлава 4. С точки зрения сетей 171 1 2 3 4 v Длина Метка потока СледУЮЩИЙ эаrоловок Адрес источника (1б байтов) Адрес пункта назначения (1б байтов) СледУЮЩИЙ эаrоловок Тип Длина Значение Специальные опции Рис. 4.65. Структура пакета протокола IPvб 4.14. Качество обслуживания на IP Стек протоколов TCP!IP предлаraет, по существу, максимальное обслужива ние. Однако такое обслуживание не соответствует разнообразным потребно-- стям мноrих приложений, которые требуют HaMHoro более жестких оrpани чений на передаваемую информацию. В качесте средств, обеспечивающих аспект качественноrо обслуживания (Quality of Service, QoS) IРпередач, бы ло предложено несколько механизмов. 4.14.1. ИнтеrрироваННblе службbl Интеrрированные службы (Integrated Services, IntServ) пытаются распреде лять ресурсы потокам одно-- и мноroабонентскоro трафика на поточной (flow byflow) основе. IntServ требуют, чтобы сеть была способна (через свои мар-- шрутизаторы) распределять ресурсы конкретным потокам (парам источ ник/адресат) и управлять или контролировать потоки или объединенные по токи в различных точках сети. Это означает фундаментальное изменение стандартной модели Internet, которая имела дело с потоками только на чисто сквозной (endto--end) основе. В модели IntServ маршрутизаторы требуют идентифицировать потоки и сохранять информацию их текущеrо состояния. Это требует явноrо отображения или связывания потоков и служб. Ключевые элементы IntServ включают: управление соединением, протокол резервиро вания и поддержку порядка с помощью механизмов маршрутизации и про движения пакетО8. 
':172 Передача данных в сетях: инженерный подход 4.14.2. Протокол резервирования ресурсов Ключевой частью IntServ, а в действительности и всех друrих InternetcxeM, имеющих отношение к QoS, является протокол резервирования ресурсов (Re source Reservation Protocol, RSVP). -Этот протокол, по существу, является механизмом, с помощью Koтoporo резер-. вируются все ресурсы вдоль предварительно полученноrо пyrи как для OДHO, так И для MHoroaдpecHbIx коммуникаций. RSVP ориентирован на приемник, riоскольку запросы на ресурсы поступают от адресата, а не от источника. Первый этап протокола  установка пути между источником и адресатом. RSVP выполняет ero, посылая специальные IРпакеты, называемые PATH сообщениями, которые позволяют маршрутизаторам, расположенным меж д;у IfСТОЧНИКОМ и адресатом, отмечать обратный путь пакетов. Как только приемник принимает это сообщение (которое содержит также специфику трафика), он возвращает обратно по пути маршрутизатора так называемое RESVсообщение (рис. 4.66). Это сообщение содержит QоSспецификации как приемника, так и передатчика. Поскольку эти сообщения передаются обратно по тому же пути, каждый маршрутизатор решает, можно ли выол HIj1:b резервирование, которое удовлетворяло бы требованиям трафика каж дой из сторон. Отправитель А Получатель Х Рис. 4.66. Работа RSVP Если такое резервирование возможно, т. е. маршрутизатор чувствует, что у Hero имеется достаточно ресурсов, чтобы удовлетворить QоSтребования, он передает RESV сообщение обратно по дереву маршрутов предыдущему маршрутизатору. Эrот процесс продолжается до тех пор, пока RESV 'сообщение не доберется до источника или, в случае мноroадресной передачи, не доберется до первоro маршрутизатора, который поддерживает этот специ фический поток. Если в любой точке маршрутизатор решает, что он не может поддерживать такой поток и качество ero обслуживания (QoS) оrраничено, то назад к приемнику посылается сообщение об ошибке. 
rлава 4. С точки зрения сетей 173 Каждый маршрyrизатор сохраняет запись состояния потоков, которые он поддерживает. Эти состояния нуждаются в реryлярном обновлении. В RSVP протоколе обновления RESV сообщения посылаются приемниками каждые 30 секунд или так, чтобы поддерживать данное "соединение". Если маршру тизатор не принимает обновления, то он удаляет такую запись. Это помоraет поддерживать устойчивость и, кроме Toro, увеличивает rибкость. Приемники MOryr пытаться изменять свои требования в любой точке, а также изменять свои маршрyrы без явноrо уведомления всех маршрутизаторов системы. Ec ли в любой части пyrи происходит сбой, то IРмаршрутизация обладает дoc таточной устойчивостью, чтобы найти альтернативный маршрут, а RSVP соединения MOryr реаrировать на это автоматически, с минимальными уси лиями. Заметим, что приемник не знает фактическоrо пути, по которому про- ходит поток. RSVP поддерживает rpупповые (multicast) соединения, коrда потоки MOryr быть слиты, поддерживаются также различные QоSтребования (рис. 4.67). Moryr быть ПQддержаны даже множественные оmравители. ""'" IPATI .". IPATI -.", l6'i\'ТU1 .F <i'j /0"  I \. ЕS\11i;:s '-1 IPATHI .,". ..Jto -.....,,.. Получатель Х Отправитель А ...::..ц..... , -; 't;  "'. ff- .,}I Получатель У Рис. 4.67. Работа мноroпоточноro RSVP 4.14.3. Дифференцированные службы Хотя IntServ и RSVP в некоторой степени удовлетворяют требованиям QoS в IРсетях, можно отметить и несколько основных их недостатков. Отображе ние (резервирование) требований QoS на специфические потоки и связанная с этим обработка потоков в каждом маршрутизаторе является существенным усложнением, и поэтому такой метод, по существу, не может быть расширен. RSVP не всеrда ДОС'I)'пен для хостузлов, т. к. этот подход требует весьма сложноrо отображения требований QoS и сетевых ресурсов. Дифференцированные службы (DiffServ) предлаrают альтернативный подход к обеспечению качества обслуживания. Они орrанизуют пакеты в небольшое число четко идентифицируемых потоков, которые получают специфическое обслуживание и распределенные ресурсы. Затем эти arpe rированные потоки обрабатываются DiffSеrvмаршрутизаторами, причем 
174 Передача данных в сетях: инженерный подход различными способами, соответствующими их спецификациям. Этот под ход требует HaMHoro меньших усилий со стороны маршрутизаторов, чем управление индивидуальными потоками и поэтому является более расши ряемым. Однако, он не столь же rибок, как IntServ, поскольку потокам должно быть назначено оrраниченное число поточных типов, но за опре делениями служб не закреплены специфицированные поточные типы и их можно обновлять и изменять. Между источником и провайдером служб устанавливается С02лашение об уровне обслуживания (Service Level Agreement, SLA), и затем провайдер служб отображает исходный поток на поток KOHKpeтHoro типа, который удовлетворяет требованиям QoS. Потоки от нескольких различных источни ков объединяются в поток специальноrо типа в соответствии с ресурсами, которые ДОC'l)'пны в сети. DiffServ включает три ключевых элемента: классификацию пакета, создание условий для трафика и планирование пакета. Два первых выполняются на rранице сети, т. е. в первом же DiffSеrvмаршрутизаторе, который встречает ся на пyrи IРпакета. Более простая функция планирования пакета (то есть ero продвижение) выполняется промежуточными маршрутизаторами в базо вой сети (рис. 4.68). Классификация пакета и соэдание условий для трафика на конце сети '\. Получа1:ель Х Отправитель А Рис. 4.68. Функциональные возможности DiffServ Классификация пакета  это, по существу, отображение потока пользователя на подходящий поточный тип. rраничный маршрутизатор определяет тип нужноrо потока, рассматривая SLАсоrлашения (то есть QоSтре60вания) и доступные потоки. Затем пакеты из потока этоrо пользователя помечаются, чтобы указать, что они отображены на подходящий поток. Создание условий для трафика проводится также и на rранице сети. Оно co стоит из замеров поступающеrо потока, позволяющих убедиться, что он со- ответствует соrласованному профилю трафика. Пакеты, выпадающие из про 
aBa 4. С точки зрения сетей 175 [ g,иля или перемаркировываются на поток с более низким классом обслужи ания, или к ним применяется процедура формирования трафика, чтобы он tоответствовал текущему профилю. i РiffSеrvмаршрутизация все еще остается IРмаршрутизацией, т. к. функ ия планирования пакета просто определяет механизмы, с помощью KOTO рых обслуживаются пакеты, а не путь, который они проходят по сети. Что бы точно определять, какой тип обслуживания должен получать IРпакет рт DSмаршрутизатора (например, РНВ  Per Нор Behaviour, по ferMeHTHoe21 поведение). DiffServ использует 8разрядное поле TaS пакета D> (рис. 4.69). На самом деле, РНВ представляет класс обслуживания. Он e определяет, как такое поведение достиrается, а только указывает, KaKO во это поведение. Шесть битов поля DS (подполе DSCP  DiffServ Code Point) используются для представления 64 возможных типов поведения. Остальные два бита не опре деляют никакоrо РНВ, но raрантируют некоторую степень обратной COBMec тим ости с друrими (не DiffServ) маршрутизаторами. Не трудно заметить, что поле DS  это поле TaS В IPv4 и поле Traffic Class (Класс трафика) в IPv6. Последнее является объединением части ПОля Р (Priority, приоритет) и поля Flaw Label (Метка потока). -- DSCP (6 битое) Подполе DiffServ Code Point Поле DSCP, используемое для идентификации РНВ Время жизни Адрес источника Адрес пункта назначения Опции ЗаrоловокlРпакета Рис. 4.69. Идентификация DiffServ При стандартной работе поле DS устанавливается на rранице сети и в идеале остается постоянным, пока IРпакет путешествует к aдpeca'I)'. Однако есть возможность изменять или перемаркировывать это поле, коrда при прохож 21 Здесь имеется в виду межузловой переход (Ьор) сети. Пер. 
.'/76 Передача данных в сетях: инженерный подход дении через новые DiffSеrvдомены пакет должен быть "выведен" из профиля ИЛИ РНВ, и DiffSеrv.поля необходимо отображать заново. ПереlU1ючение мноrопротокольной метки .IРмаРlJlрутизация базируется на автономной маршрутизации по самому KO роткому пути, которая может сберечь сетевые ресурсы, но может привести к переrpузке некоторых каналов и недоиспользованию друrих. Пере1(Jlючение мноzопротокольных меток (MultiProtocol Label Switching, MPLS) позволяет направлять пакеты, опираясь на определенную метку, а не на IРадрес в заrоловке IPnaKeTa. Для этоrо используются специальные устройства, известные как маршрутuзаторы с переключаемыми метками (Label Switched Routers, LSR). LSR соrласует метку пакета со входом CBO ей таблицы продвижения и пересылает пакет по подходящему выходному эвеНу,-.заменив или обновив подходящим образом метку пакета. Метки Ha значаются IPnaKeTaM, коrда их вводят в МРLSдомен (с помощью BXOДHO ro маршрутизатора), и удаляют, коrда они покидают МРLSдомен (с по мощью выходноrо маршрутизатора) (рис. 4.70). Пакеты следуют по маркиров-анному переключаемому пути (Labelled Switched Path, LSP), KO торый определяется до передачи и выбирается в соответствии качеством услуr (QoS) источника или получателя. LSP можно определять, используя различные схемы, включая протокол резервирования ресурсов (Resource Reservation Protocol, RSVP) и маршрутизаЦИIQ, базирующуюся на оrраничениях. Добавленная метка ! Измененная метка ! Измененная метка Сеть MPLS  r rраничный марwрутизатор (входной LSR) rраничный марwрутизатор (выходной LSR) Рис. 4.70. Работа MPLS 
fлава 4. С точки зрения сетей 177 4.15. Вопросы к rлаве 4.15.1. Вопросы по сетевым конфиryрациям 1. Коммуникационная сеть состоит из N узлов. Определите число звеньев, требуемых для соединения этих узлов, предполаrая, что каждое звено является двунаправленным для следующих случаев: а) б) в) r) кольцо из 5 узлов; объединение 8 полностью связанных узлов; частично связанное объединение  1 О узлов, 5 соединений; . повторите три предыдущих случая для N == 96. 2. Определить связность двух сетей, заданных в двух диаrраммах на рис.4.71 и 4.72. Сколько требуются итераций, чтобы определить связность каждой из этих сетей? Рис. 4.71. Сетевая диаrрамма для расчета связности сетей D1E!F!G!HII !J 1 ! Рис. 4.72. Табличная диаrрамма для расчета связности сетей 
178 . Передача данных в сетях: инженерный подход 4.15.2. Вопросы по технике коммутации 1. Путь с переключением каналов и скоростью передачи 64 Кбит/с, между двумя пользователями, использующими 9 С"I)'пеней коммутации требует S секунд на установку. Сколько Bcero потребуется времени, чтобы напрямую передать полное содержимое дискеты 1,4 Мбайт между двумя пользователями, использующими этот канал? 2. Если вышеупомянутый путь с переключением каналов заменить 9ти узловой системой с пакетной коммутацией, использующей звенья со скоростью передачи 1 Мбит/с, то сколько потребуется времени, чтобы передать файл объемом 1,4 Мбайт, предполаrая, что нет задержки в узлах коммутации; полезная наrрузка пакета составляет 2S6 байтов, а накладные расходы пакета эквивалентны 18 байтам? 3. Сравните задержки, коrда полезная наrрузка пакета изменится до 128, 512, 1024 и 4096 байтов соответственно. 4.15.3. Вопросы по расчетам в сетях 1. Простой телефонный коммутатор состоит из 4 каналов. Если в самое занятое время дня вызовы прибываюr каждые 240 секунд, вычислите занятость коммутатора и определите вероятность Toro, что вызов будет oTBeprнyт . 2. Если в системе, описанной в п. 1, пользователей удовлетворяют 2%e потери, определите число требуемых каналов мультиплексора. з. Если интенсивность вызовов в системе, описанной в п. 1, увеличится впятеро, определите вероятность потерь вызовов и коэффициент использования каждоrо из 4x каналов коммутатора. 4. Терминальный концентратор состоит из шести входных линий СО скоростями S6 Кбит/с и единственной выходной линии со скоростью 128 Кбит/с. Средний размер пакета  450 байтов, и скорость ПОС"I)'пления каждой входной линии равна 5 пакетам в секунду. Какова средняя задержка пакета и каково среднее число пакетов, хранящихся в концентраторе? 8. два компьютера связаны линией со скоростью передачи 64 Кбит/с и поддерживают 8 диалоrовых сеансов связи (соединений). Если средняя длина пакета 150 битов, а сеансовая скорость  4 пакета/с, то должна ли сеть обеспечить каждый сеанс своим собственным выделенным каналоМ со скоростью передачи 8 Кбит/с, или все сеансы должны состязаться за полную пропускную способность канала, коrда наиболее важным критерием является задержка пакета? 
rлаsа 4. С точки зрения сетей 179 4.15.4. Вопросы по маршрутизации 1. Маршрутизёация сети из 6 узлов базируется на векторе расстояния; маршрутизатор А расположен рядом с маршрутизаторами В, D и Е. На рис 4.73 приведены таблицы с векторами расстояний, связанных с каждым из этих трех маршрутизаторов. Используя указанные таблицы, выведите новую таблицу маршрутизации для узла А. Предположите, что текущее расстояние между узлом А и ero соседями точно отражено в этих таблицах. Узел В А 10 В  С 20 D ЗО Е 10 F 10 Узел D А 20 В 15 С 40 D  Е 10 F 25 Узел Е А 15 В 10 С 25 D 10 Е  F 5 Рис. 4.73. Таблицы с векторами расстояний ДЛЯ трех узлов сети 2. На рис. 4.74 приведены текущие состояния звеньев сети, состоящей из 6 узлов. Нарисуйте :лу сеть и определите' таблицу маршрутизации, связанную с узлом А. Узел А 8(10) D(5) Е(20) В А(10) С(20) Е(10) F(10) С В(20) F(20) D А(5) Е(10) Е А(20) В(10) D(10) F(10) F В(10) С(20) Е(10) Рис. 4.74. Текущие состояния звеньев 6узловой сети 3. Чтобы передать пакет всем друrим маршрутизаторам сети, описанной в п. 2, используется маршрутизатор А. Если поле пакета содержит счетчик cerMeHToB (переходов), инициализированный диаметром сети, определите минимальное и максимальное число пакетов, которые MOryт потребоваться этой сети для передачи широковещательноrо пакета. 
!f80 ,  Передача данных в сетях: инженерный подход '4.15.5. Вопросы по защите от ошибок 1. Протокол звена данных имеет характеристики, показанные в табл. 4.2. Таблица 4.2. Характеристики протокола звена данных l' Характеристика Длина данных Длина заrоловка Пропускная способность канала Длина кадра подтверждения Вероятность потери кадра Вероятность потери подтверждения Задержка обслуживания и распространения значение 100 байтов 8 байтов 2 Мбит/с 8 байтов 2x103 5x104 О,15мс а) оцените максимально возможную эффективность этой системы, если протокол работает в простом режиме останова с ожиданием, исполь зуя положительные подтверждения. Каково влияние установки тайм аута с интервалом 1 мс; б) чтобы максцмизировать эффективность канала, протокол с ocтaHO ВОМ И ожиданием должен быть заменен на протокол со скользящим окном. Оцените подходящий размер окна, если в первом случае Ka нал предполаrается свободным от ошибок. 2. В табл. 4.3 заданы ключевые параметры канала связи и ero АRQпротокола. Если используется 3битовое поле SEQ, какой механизм повторной передачи дает оптимальную производительность канала? Таблица 4.3. КлючеВые параметры канала связи и ero АRQпротокола Параметр ИнФормационное поле Накладные расходы кадра Длина подтверждения Вероятность потери кадра Вероятность потери подтверждения Размер поля SEQ Значение 150 байтов 16 байтов 16 байтов ю.3 2х10"" 3 бита 
rлава 4. С точки зрения сетей 181 Таблица 4.3. (окончание) Параметр Тайм-аут подтверждения Битрейт канала Задержка распространения канала 3нrr 181... 150 мс 64 Кбит/с 50мс З. Двойное скоростное двухточечное коммуникационное звено использует канальный протокол двойноrо режима, который способен переключаться между протоколом упреждающей защиты от ошибок (FEC) и ARQ протоколом, базирующемся на схеме повторной передачи с возвратом N кадров. Этот канал работает на ОДнQЙ из двух скоростей  низкой и высокой  и имеет ключевые характеристики, приведенные в табл. 4.4. FЕСмеханизм коррекции ошибок канала характеризуется 50%й избыточностью и совершенным механизмом коррекции ошибок. Какой режим защиты от ошибок должен применяться для каждой скорости канала, если ключевая цель состоит в том, чтобы максимизировать ero эффективность? Таблица 4.4. Ключевые характеристики звена Характеристика Информационное поле Накладные расходы кадра Длина подтверждения Вероятность потери кадра Вероятность потери подтверждения Размер окна Тайм-аут подтверждения Звено с низким битрейтом Звено с высоким битрейтом Задержка распространения в звене ..... Значение 200 байт 16 байт 20 байт 10---3 2х 10-4 8 250 мс 32 Кбит/с 256 Кбит/с 100 мс 
CJ:S: 11 g Ь:7 е ::a е tr 2? IQ +101 3 . ::х: E ::с (1) е ::х: Е ::Х: (1) е ::с ::Х: p (') ::1 :s: е :i! S Е (1) '< 3: 3: CJ 101 11 ЕЬ:7 5 о- v 2? """"' -gr;;  + 2:,3 3 С  S ::  ::а (1) -& е ::с ::с tr Же ::с '"  Е :s: '< g 3: :s: (') о-) е (1) (') ::1 О-)" с\) е      (1) W   о g  (') е ::1 (') е '< (') Е е :s: "'" 5 :s:  5 tr :s:e W   ::Х:   р р. (1) (') ::а :s: Q ::с е Е (1) ::Х: :s: (1) (') :s: .., .  ::Х:   W ;: :11':3:(1) ...... sJ» 1 IQ (') """"' "t::s (') :s: t)  ::1 3:   g    е tr t)  g' 5 1 I g(1)'::: ;!  1 11 :11':  t) ..!.  (1) \,J ::с ::х: е t)  :s: 2? о- ." (1) """"' 2? .... 't:I ...... 't:I с\) 1 1 с\) = 'too =::Х:  Q SO ...... I V:S: '" (') а ::а '" (1) ::х: за.а  о. о-) ::1 (1) :s: ::а IQ !Е  о о v :s: 3: ..с:  ::с :11': о (') .., :s: о 3: :s:   tr О ::с ..с:   ::1 :11': 't:I с\) 9 ?<: 1  @  1  1 'Е о-  11 t)  о- т 2? " t)  I '::: 1 1  о- +  't:I O-   +   1  В 11  о-  1 -::::   +В  '::: 11 11   .J, 11 i Х 11 0".J, З I ct) o  -:::: . о- 2? '::: о" 11 1 I i 2?з,:::......  ....., I + о- 1 :::::::: { 1 11 Т о- "":: "t::s  2? 11 ':::s   1 I  11 'Е  2? 1I0-1';::-- " O-' .....7  I 'too I -;3S -ь    { 1 I   "":: "t::s,:::o-':::II 12? I  о- ,.,-....,  2?""'...... л 1 11 @     If   + 11   11 11 .... З ....., 11 11 .... 1::> 1 1::> :>l 11 :>l :>l  II :>l ...... ...... "'<: ...."'<: "'<: "'<: ...."'<: "'<: 11 1 11 11 11 I 11 11 ....  о ....  о     11 11   11 11 11 11 .... .... .... з з ....." --- ....., з 11 11 11 11 11  о 11 о  11 :>l 11 :>l :>l :>l ":>l :>l :>l "'<: ':::"'<: "'<: "'<: -:::::"'<: "'<: 11 I 11 11 . 11 1 11 11 I . S::: .0 . .c::: 5=' 1::>  '"""  ':::  1::>   11 I 11 11 11 11 11 .... 1::> .... .... о З --- '""" --- --- ....., з 11 11 11 11 11 11 о о  1::> ":>l 11 :>l :5l :2.."'<: ...... "'<: "'<: .... .... 11 I 11 11 1 ....  s о -З-П ....., --- 11 11  1::> ;J g- ! QI pia .... pia OJ   :х! о (') si!  IXJ !z:    (j) :t  I ::t ><  1  о-  -:::: jo о"  2?1Q = -::::2:& + g g 3 ::а  IV о ::х: (') :s:  tr IQ С::Х: ::1 .g.g W с\) (1) g C::X: v (') о-) (') + = о о (') b:7:11':  o-.g IV 2? о N-:::: -; + 5 v"' +>- S  IV С IV +>- '" l'->   g::p :s: b=I ::х:  11 8 v+>-   NCO VI С  ;:: t:Т103: . ",.9 о-) ..с: о о-) 3: о '< . +>-0-)= oc:S:2: с..с:..с: С(1):: "'(')(') :s:  ::а O-):: v O-J !:  (1) о 3: ",:: 2:  ::1 3:   (1) ::х: 't:I о  (1) :s: о = о-)  ::х: tr Е ::1 (1) (1) ::х: 't:I :s: g (1) с\) (')  :; ::х: :s: с\) ::х:!::!.. -&Е 0,< 't:I 3:  v .g :s: '" (')'< О (1) (') =:: :11': о О (1) 't:Iq О (1)  о tr't:l О ? n  =  (') о-) = '< о Е :s: (1) = (1) 't:I О IQ о-) ::х: о (') о-) :s: ::1 't:I :s: '" о  IQ 6 IQ = о-) с\) '" ::а ос s-i :S:e о :s: ::c  (') -&:11': О ::с    (') :s: g :s: (') O v g'  11 tr   1 g  ""::6  IQ  :11': ::: с\)  :s: :::  tr ::х: о (1) 101 ::с  (1) ::с :s: (1) = 101 с\) :s: ::: . ?' '"  "'b=lt;t1 :s: 11 с\)  '" (') W (') V' +>- о С::а 9Q о-) ::х: с\) tr :11': $< ..с: а g :s: CJ 11 .r:: W +>- С с'" О-а 2? """"' ...... +q, ;; 11 С...... СС C С 11 W +>-::::1 Со С'" х о-) \00 v =:: '< -....] N N  11 W ос С ос С ос v C   ::х:  :s: ::: '"  о  ..с: (1) 't:I (1) 101 v = tr   I ..с: (1) 't:I (1) 101 v"":: с\) 't:I  11 С  :::J   111 g; 1:1 111 :t f >ос IXJ 2  I  :t t ::::J   11   111 m !з) Q ii1 Q)  &  "ь i  с.>  
I ; rлава 5 v .' ....'1 _ .' '" ''J. с точки зрения звена 5.1. Уровень звена данных Уровень звена данных предоставляет сетевому уровню соединение между вумя терминалами. Он выполняет несколько функций, среди которых мож Ко выделить три основные. t:J Синхронизация кадров. Позволяет распознавать различные части ин формации и управлять передачей сиrналов.  Доступ к среде передачи. Позволяет посылать данные по звену в COOТBeT , ствии с определенными требованиями. Заметим, что эта функция приме няется только к совмес1НО используемым (разделяемым) средам. Если Me " жду поддерживающими связь терминалами имеется "",выделенная линия, никакоrо управления доступом к среде передачи не трбуется. t:J Защита от ошибок. Уровень звена данных пытается обеспечить надеж , ные данные для ceTeBoro уровня, так что, попадая на этот уровень, данные .' будут либо правильными, либо помечены как ошибочные. Для этоrо тpe буется обнаружение и исправление ошибок, хотя, если информация ис порчена, то эту проблему обычно решают на верхних уровнях с помощью , методики ARQ или маскировки. этой rлаве мы рассмотрим указанные функции и затем  некоторые LAN  МАNсистемы, которые обеспечивают большинство функциональных воз жностей звеньев данных в существующих сетях. Одной из таких систем lВляется асинхронный режим передачи, А ТМ 1, который бьш разработан как tuIя сетей, так и для обеспечения функциональных возможностей уровня зве 118 данных. Однако IРтехнолоrия развивается так, что она становится доми lIирующей на сетевом уровне, тоrда как А ТМ часто используется для под I АТМ, Asynchronous Transfer Mode, асинхронный режим передачи ------стандартизованная TeXHO лоrия коммутации пакетов фиксированной длины (ITU); является асинхронной в том CMЫC ле, что пакеты от отдельных пользователей передаются апериодически; обеспечивает эффек тивную передачу различных типов данных (roлос, ви:део, мультимедиатрафик ЛБС) на значительные расстояния. Пер. 
184 Передача данных в сетях: инженерный подход держки IРпротокола на уровне звена данных, что и является предметом об суждения в данной rлаве. 5.2. Разrраничение кадров Начало и конец кадра должны быть отмечены. Это особенно актуально, коrда среда передачи является разделяемой, но даже если имеется выделенная ли ния, то все равно требуется не которая форма синхронизации. Первая воз- можность состоит в том, чтобы для определения числа символов в каждом кадре использовать специальное поле заrоловка. Читая это поле, уровень зве. на данных адресата узнает, rде находится конец кадра. Такая методика неус. тойчива, и целостность кадра будет нарушаться изза ошибок передачи. Вторая методика предусматривает маркировку начала и конца каждоrо кадра последовательностью символов ASCII. Если кадр какимто образом искажа. erся (включая стартстопные символы), то звено данных может снова настро. иться, отыскивая маркеры следующеrо кадра, и потеряв в результате лишь несколько кадров. Вполне возможно, что такие последовательности ASCII символов MOryт образовываться внутри кадра естественным образом. Чтобы предотвратить ошибочную интерпретацию rраниц кадра, перед каждой по. следовательностью внyrренних (не rраничных) символов вставляются специ. альные символы, которые указывают, что следующие за ними символы не являются ни началом, ни концом кадра. Эта процедура известна как вставка символов (character.stuffing), или байт. стаффинz. Она тесно связана с 8битовыми символами и, в часrnости, с ко. дами ASCII. Однако по мере развития сетей зависимость от 8.битовых кодов постепенно уменьшалась, делая этот метод все более и более неприемлемым. Альтернатива состоит в том, чтобы отмечать rраницы кадра уникальной последовательностью символов. Наиболее часто используемой посlIедова тельностью TaKoro рода является 01111110, которая используется, напри. мер, в протоколе HDLC 2 версии 5.9.1. Чтобы rарантировать ее уникаль ность, всякий раз, коrда передатчик встречает в кадре 5 последовательных единиц, он автоматически, вставляет О в выходной поток, так что, напри мер, последовательность 10101011110110 111111 00101 принимает вид 10101011110110 1111101 00101. Этот процесс называется вставкой битов, или 6ит-стаффинzом (bit.stuffing). Процессы бит или байтстаффинrа прозрач. ны ДlJя ceтeBoro уровня, поскольку приемник будет автоматически удалять вставленный бит или байт. 2 HDLC, High.level Оат Link Contro1, высокоуровневый протокол ynравления звеном данных (JCaНалом). Этот международный коммуникационный протокол разработан в 180.  Пер. 
rлава 5. С точки зрения ЗВена 185 Последний способ маркировки начала/конца кадра звена данных состоит в ис- пользовании физической среды и нарушении специфических правил кодирова иия rpаниц кадра. Эra методика зависит от существования некоторой избыточ ности в кодированном сиmале и широко используется в локальных сетях и спецификациях Sшин [SDN (цифровых. сетей с интеrpированными службами). Такие механизмы являются наиболее общими, но, независимо от метода, марки ровка rpаниц кадра всеrда будет вводить элементы служебной информации. 5.3. Управление доступом к среде передачи Преимуществом статистическоrо мультиплексирования является то, что co вместное использование общей среды передачи  довольно эффективная стратеrия. Однако она вносит также и дополнительную проблему  терми налам нужно разрешать использовать эту среду, котда у них возникает в этом необходимость, но котда ее уже используют дрyrие терминалы. Это и есть задача управления средой доступа. Для любой схемы управления доступом к среде можно сформулировать следующие требования: C:J система должна быть надежна; C:J протокол должен быть устойчив; C:J схема должна обеспечивать абсолютный ДОСl)Н к системе; C:J необходимо управлять доступом к системе в соответствии с потребностя ми служб или по друrим причинам; C:J схема должна быть эффективной; . C:J она должна быть простой в управлении. Существует несколько различных схем доступа. Их можно разделить на две катеrории  централизованные схемы, в которых ресурсы сети распределя ются специальными узлами, и распределенные схемы, в которых все узлы работают кооперативно и в одинаковой манере. Друrое различие про водят между системами, базирующимися на резервировании (тде конкретные pe сурсы распределяются между терминалами), и системами, базирующимися на состязаниях за обладание этими ресурсами (rдe терминалы запрашивают pe сурсы, котда они в них нуждаются). Возможны также zибридные схемы, включающие как резервирование, так и состязания, и базирующиеся на тpe буемом обслуживании. Централизованная схема может также основываться на системе, в которой состязания используются терминалом для тото, чтобы информировать центральный контроллер о том, что требуются ресурсы, а за тем этот контроллер применяет резервирование для их распределения терми налам. эту стратеrию используют мноrие радиосистемы. 
186 Передача данных в сетях: инженерный подход 5.3.1. Схемы с состязаниями ALOHA Самой простой системой ДОС1)'па к среде передачи, базирующейся на состяза ниях, является АLОНЛ 3 . Эта система работает следующим образом  Korдa у терминала имеется информация для передачи, он передает ее. Если в это время начинает передачу друrой терминал, то происходит наложение пакетов, и обе передачи искажаются (рис. 5.1). Это называется столкновением кадров. Если терминал принимает подтверждение своей передачи, это значит, что прини мающий узел принял данные. Если  нет, то, вероятно, произошло столкюве ние с дрyrой передачей, и должен быть получен отказ. Затем передатчик ждет в течение случайноrо промежyrка времени и снова пытается выполнить переда чу. Важен тот факт, что этот период времени является случайным. Если бы терминал ждал фиксированный промежyrок времени, и на первой же попытке передачи произошло столкновение с кадром друrоrо терминала, то это проис ходило бы также и при всех последующих попытках передач. Еще одна TOH кость, связанная со схемой ALOНA,  следует оrраничить количество дaH ных, передаваемых в любой момент времени. Это не только хорошо для друrих пользователей, но и не переrpужает канал. Так как терминалы перед передачей не прослушивают канал, чтобы определять, свободна ли среда передачи, то чем больше размер передаваемоrо пакета, тем больше шансов, что друrой терми нал тоже будет передавать свой пакет и столкнется с ним. Удачная Удачная Столкновение передача передача Пакет 1 Пакет 1 Пакет 2 Пакет 1 Пакет 1 Пакет 2 ВkЛ ВЫКЛ ВКЛ ВЫКЛ ВКЛ ВКЛ ! ! ! ! ! ! I I I I I I L Второй пакет передается в то время, KorAa первый находится в канале. Столкновение разрушает оба пакета, и они должны быть переданы повторно. Рис. 5.1. Схема базовой сети ALOHA ALOНA  простая система, и поскольку она не требует централизованноrо управления, то ею довольно просто управлять. Однако она крайне неэффек тивна. В лучшем случае она может использовать в среднем только 18% eMKO сти канала. 3 ALOHA  сетевая система университета штата rавайи (США), базирующаяся на спyrнико ВЫХ радИоканалах.  Пер. 
[лава 5. С точки зрения звена 187 Квантованная ALOHA , lIаряду с тем что ALOHA неэффективна, не всеrда доступно и очевидное средство  прослушuванuе каНШlG перед началом передачи. Например, в сис ['reMe мобильноrо радио терминалы MOryт поддерживать связь с базовой CTaH :.цией, но изза препятствий при прохождении радиосиrналов или больших расстояний между узлами MOryт не знать о передачах друrих терминалов, ,даже при том, что сиrналы от них будут доходить до базовой станции и CMe шиваться с тем, что она передает (рис. 5.2). Это называется проблемой cкpы тых терМUНШlOв. Мобильный телефон 1, передающий информацию на базовую станцию, не слышен для телефонов 2 или 3 Преrрада Телефон 3 находится вне зоны приема и поэтому не может быть слышен тenефоном 1, но ero сиrнал может принять базовая станция, и TorAa этот сиrнал /// r ==:=-:d' d -:;елефон 2 начинает передачу сиrнала, который смешивается с сиrналом от телефона 1 -- Рис. 5.2. Проблема скрытых терминалов Квантованная ALOHA улучшает простую, оrраничивая передачу внyrpи Kaд ров. Это вдвое уменьшает шанс столкновений, потому что коrда два терми пала, которые собираются передавать в одном и том же кадровом интервале, пачнyr передачу в следующем кадре (и поэтому столкнутся), любой терми Пал, решающий передавать во втором кадровом интервале, не начнет переда чу до начала следующеrо кадра, и поэтому столкновения не про изойдет. Это повышает пропускную способность почти до 36% емкости канала. KBaHTO ванная ALOНA формирует часть схем управления доступом к среде боль шинства систем мобильноrо радио. Множественный доступ с контролем несущей и обнаружением столкновений (CSMA/CD) CSMAlCD  это только один из протоколов доступа, используемых в ло кальных сетях Ethernet. Такой протокол воспитанные люди используют для телеконференций, коrда обычные визуальные способы вставки слов OTCYТCT вуют. Вот ero правила: LJ слушайте, прежде чем начать rоворить; LJ не rоворите, пока КТOTO rоворит; 
eв Передача данных в сетях: инженерный подход C:J не rоворите MHoro и сбивчиво; с] если вы начали roвориrь, коrда Ю"CrТО уже roвориr, остановиrecь и замолчиre. fпaвHoe отличие рассматриваемоrо протокола от ALOНA состоит в том, что узлы перед передачей прослушивают линию для Toro чтобы узнать, свободна ЩJ она. Это приводит К значительному повышению пропускной способности. Если линия занята, терминал ждет, пока она не освободится. Так как ожидать освобождения линии MOryт несколько терминалов, то чтобы уменьшить Be роятность столкновений, некоторые реализации CSMA/CD требуют, чтобы перед началом передачи терминалы выжидали некоторый случайный интер.- вал времени после Toro, как канал освободится. В Ethernet, однако, использу ется обычная техника, коrда передача начинается сразу же после Toro как Ka нал становится свободным, без ожидания. Если два узла пытаются передавать в одно и то же или почти в одно и ТО же время, то в передающей среде происходит столкновение двух кадров. Обна ружение столкновений выполняется путем отслеживания каждым узлом co стояния шины при передаче кадра. Если данные в шине отличаются от пере даваемых данных, то столкновение произошло. Хотя узлы и не будут пытаться передавать пакеты в то время, коrда линия занята, столкновения все равно происходят, потому что для распространения кадра по всей длине шины требуется некоторое время, и узлы MOryт начинать передачу, коrда предварительно переданный кадр уже находится в пути. Это показано на рис. 5.3. Передача распространяется по шине приблизительно за (2 х 1 08}) мс. В худшем случае сталкивающиеся терминалы находятся на про тивоположных концах шины (рис. 5.3, а), и второй терминал начнет передачу непосредственно перед получением первоrо кадра (рис. 5.3,6). Чтобы обна ружиrъ, что столкновение произошло, каждый терминал должен продолжать передачу, иначе пакеты MOryт столкнуться без Toro, чтобы передатчикам cтa ло известно об этом факте. Второй терминал обнаруживает столкновение очень быстро (рис. 5.3, в), но для Toro чтобы первый терминал обнаружил ero, сиrнал должен распространиться по шине в обратном направлении (рис 5.3, z). Это означает, что в системе CMSAlCD минимальная длина пакета должна равняться удвоенному времени распространения по всей шине (плюс некоторое дополнительное время для обработки). Для коаксиальноrо кабеля длиной 2,5 км это время составляет 51,2 мкс, следовательно при скорости 1 О Мбит/с минимальный размер кадра составляет 64 байта. Именно этот фактор оrpаничивает пропускную способность CSMA/CDcxeM. Если задержка распространения мала по сравнению со скоростью передачи по ШИНе, то кадры MOryт быть небольшими, а пропускная способность MaK симальна. Однако, Коrда скорость передачи возрастает, оrраничение времени распространения становится значительным, поэтому или размер кадра дол жен увеличиться, оrраничивая производительность, или длина шины должна быть уменьшена. Первое решение нежелательно не только с точки зрения liеэффективности передачи небольШИХ Кадров, но и в плане обеспечения 
tFлава 5. С точки зрения звена 189  i !обратной совместимости с предыдущими (более медленными) версиями :стандарта. Более быстрые версии Ethernet обходят эту проблему, используя ;вместо физической лоrическую шину на физической звезде. Концентратор в цeHтpe звезды может обнаруживать столкновения и reнерировать сиrнал столкновения, если несколько соединений активны одновременно. Это озна 'чает, что существует оrраничение на длину отдельноrо cerMeHTa KOHцeHTpa тора, а не сквозное оrраничение на шину (рис. 5.4). о !  ! о а О ! .! о б ! ! о . Ч О  .JI: В О ! .  r Рис. 5.3. Столкновения в сети Ethernet, использующей шину Рис. 5.4. Обнаружение столкновений в сети Ethernet с концентратором Коrда происходит столкновение, оба узла прекращают передачу и будут пы таться повторять передачу кадра после HeKoтoporo интервала времени, из вестноrо как время выдержкu (BackOff time). В идеале время выдержки 
190 Передача данных в сетях: инженерный подход должно быть различно для каждоro из узлов, вовлеченных в процесс столк новения, и поэтому обязано быть случайным. для решения проблем состязаний между несколькими узлами (максимум 1024) разработан специальный алrоритм, известный под названием Ал20ритм двоичной эксnоненцuШlЬНОЙ выдержки (Binary Exponential Backoff Algorithm, ВЕВ), используемый в Ethernet. В ВЕВалrоритме после столкновения узел ждет Х единиц времени (размером 51,2 мс), rAe Х  случайное число между О и (2 N  1) для О < N < 10, или О и 1023 для 11< N < 16, rAe N  число попы ток повторной передачи. После 16 попыток кадр считается потерянным, и решение, что с ним делать, предоставляется более высоким уровням. 5.3.2. Схемы с резервированием Более эффективное использование среды передачи обеспечивают схемы с резервированием, потому что при этом досryп становится управляемым и столкновений не происходит. Их можно разделить на системы с опросом, ис пользующие центральное устройство управления, и распределенные системы. Опрос В схеме с опросом за разрешение ДОС'I)'па к разделяемой среде отвечает цeH тральный КОН1роллер. Он направляет хостузлам специальные сообщения, раз решающие им использовать среду в течение определенноrо периода времени. Самый простой метод  схема ЦuклuчеСКО20 опроса, KorAa контроллер входит в KOнraкт С каждым опрашиваемым хостузлом и приrлашает ero передавать свои данные. Korдa тот заканчивает передачу, центральный контроллер опра шивает следующий хостузел. В расширенной методике время передачи XOCT узла оrpаничено, так что каждый узел получает хороший шанс для передачи. Существенное преимущество схемы с центральным управлением состоит в том, что у хостузлов появляется возможность сообщать центральному KOH троллеру об имеющемс у них трафике, который часто измеряется в терми нах наполнения их локальных очередей, но это можно, например, сделать также на основе приоритета или скорости поступления трафика. Orсюда сле дует, что центральный контроллер имеет rлобальное представление о состоя нии системы, HaMHoro превосходящее более оrраниченное представление о состоянии хостузлов, И поэтому может располаrать доступом к COOTBeТCT вующим хостузлам по приоритетам. В примере на рис. 5.5, а очередь XOCT узла С почти полна, и контроллер назначает ему высокий приоритет передачи (рис. 5.5, 6). Так как контроллер обладает знаниями о доступе к каналу, то он может в некоторых пределах предсказывать требования хостузлов, yMeНl) шая тем самым необходимость сообщать ему их точное состояние. Одним из недостатков данной схемы опроса является то, что хостузел опра ШИвается независимо от Toro, имеются ли у Hero данные для передачи или 
rлава 5. С точки зрения звена 191 нет. Если ему нечеrо передавать, он немедленно просиrнализирует об этом контроллеру, и тот будет опрашивать следующий хостузел. Если в сети име ется достаточно большое количество хостузлов, которые не часто передают свою информацию, то в этом процессе наблюдаются значительные издержки. Обойти эти проблемы позволяют так называемые 2uбрuдные схемы, исполь зующие в определенные "установочные" периоды времени схему с состяза ниями, а все остальное время  схему с опросом. cf} ф   J,  I   . 1.1,  I j,  J I tr l 'fl .; . ,...........,.._ а 6 OJI, Рис. 5.5. Схема опроса, базирующеrося на приоритетах в rибридных схемах вместо опроса всех хостузлов контроллер хранит список опроса активных узлов и опрашивает только узлы из этоrо списка. В YCTaHO вочные периоды хостузлы используют схему с состязаниями для Toro, чтобы информировать контроллер о том, что они имеют информацию для передачи. Контроллер будет помещать информировавшие ero узлы в список опроса и управлять их передачами вне установочных периодов (по схеме с опросом). KorAa хостузлы заканчивают передачу, они удаляются из списка опроса. Схемы с маркерами Схемы с маркерами позволяют орrанизовать опрос в распределенной манере, так что никакоrо центральноrо контроллера не требуется, хотя на практике один из узлов должен первоначально сrенерировать специальный кадр  маркер  и затем постоянно проверять, распространяется ли он по сети. Маркер в такой схеме передается от узла к узлу. Обладание маркером дает разрешение на передачу данных. Чтобы rарантировать успешный доступ, OT резок времени, в течение KOToporo узел может хранить маркер и передавать свои данные, оrраничивается. KorAa достиrается конец этоrо интервала или KorAa узлу с маркером нечеrо передавать, он пересылает маркер на следую 
19 Передача данных в сетях: инженерный подход щий узел. Этот процесс продолжается в цикле или лоrическом кольце до тех пор, пока все узлы не получат шанс принять маркер и передать данные, после чеrо цикл повторяется. Существует MHoro разновидностей схем с маркером, однако типичным пред ставителем такой схемы является MACcтaндapт ШЕЕ 802.5 "Маркерное кольцо" (Token Ring). Маркер в этой системе формируется из пустоrо ин формационноrо кадра. Если данные для передачи отсутствуют, то маркер (или пустой кадр) передается от узла к узлу. Коrда у узла есть что переда вать, он ждет маркерный кадр, вставляет в Hero данные, которые он должен передать, а также адрес пункта назначения (и свой собственный адрес  в качестве адреса источника), и посылает ero в сеть. Приняв информационный кадр, каждый узел проверяет ero, чтобы узнать, не является ли адрес пункта назначения ero собственным адресом. Если нет, то кадр пересылается дальше без изменения. Коrда достиrается адрес узла назначения, тот извлекает ин формацию из кадра, заменяет ero данные подтверждением приема и направляет ero назад в кольцо для отправки к источнику. Получив этот кадр, узел источника извлекает подтверждение (получив, таким образом, подтвер ждение приема отправленных адресату данных) и пересылает пустой кадр назад в кольцо к следующему узлу. Это означает, что каждый узел может пе редавать свои данные только один раз, коrда он владеет маркером. Если все узлы имеют какието данные для передачи, то они будут циклически пере мещаться BOKpyr кольца от терминала к терминалу. В качестве при мера рассмотрим цепочку событий в системе, показанной на рис. 5.6, rде узел А хочет послать данные узлу С. Узел А ждет свободный маркер (рис. 5.6, а). Получив ero, он заполняет ero своими данными, YCTaHaB ливает флажок занятости маркера и направляет этот кадр по кольцу к узлу С (рис. 5.6, 6). Узел С принимает кадр, устанавливает в "хвосте" кадра биты oт вета, подтверждающие прием данных от узла А, и помещает ero обратно в кольцо для отправки к узлу А (рис. 5.6, в). Узел А принимает кадр, подтвер ждающий получение данных, сбрасывает биты ответа и возвращает свобод ный маркер в кольцо (рис. 5.6,2). Друrой МАСпротокол  FDDI (Fiber Distributed Data lnterface, интерфейс передачи данных по оптоволокну)  использует ту же базовую процедуру, хотя и с некоторыми различиями в деталях. rлавное различие состоит в том, что под управлением FDDI узел посылает свободный маркер сразу же после Toro, как он послал свои данные (то есть перед тем как он примет подтвер ждение). В больших сетях, для которых был разработан FDDI, ожидание подтверждения перед освобождением маркера было бы слишком неэффек тивным. При этом появляется возможность второй (и даже нескольких) пе редач данных или их подтверждений по кольцу, но так, чтобы в любой дaH ный момент только одна передача присутствовала в каждой отдельной части кольца. 
fлава 5. С точки зрения звена 193 в а б в r Рис. 5.6. Схема управления доступом к-;:реде передачи, использующая маркеры Существенным преимуществом схем с маркерами по отношению к распреде ленным CSMAlCDcxeMaM с состязаниями, является то, что продолжая рабо '{ать в распределенной манере, они MOryт назначать передачам различные приоритеты. Для этоrо в маркере выделяется специальное поле  поле пpи , оритета  и указывается, что использовать этот маркер MOryт только те ужбы, приоритет которых больше, чем уровень приоритета, заданный в маркере. Чтобы rарантировать передачу кадров в приоритетном порядке, He обходимо также дополнительное поле для указания приоритета следующеrо передаваемоrо кадра. Различные маркерные схемы поразному реализуют систему управления доступом к среде передачи, но самой типичной общей процедурой является протокол ШЕЕ 802.5. Коrда у узла имеется кадр для передачи, он вычисляет ero приоритет, причем этот приоритет, по всей вероятности, будет связан со службой, для которой предназначены данные. Так, например, передача речи, требующая более же стких оrpаничений на задержку, будет иметь более высокий приоритет, чем передача файла. В каждом маркере указывается текущий и резервный уровни приоритетов. Коrда свободный маркер достиrает узла, желающеrо передавать данные с приоритетом, равным или меньшим, чем приоритет передаваемоrо 
,94 Передача данных в сетях: инженерный подход трафика, узел использует кадр нормальным способом. Если приоритет Map кера больше, чем приоритет трафика, то маркер передается немедленно. Чтобы сиrнализировать, что у них имеется roтовая для отправки приоритет Ная информация, узлы используют второе приоритетное поле кадра  поле резервирования (reservation field). В нем указывается так называемый резерв ный приоритет (или приоритет резервирования). Если приоритет в поле pe зервирования проходящеrо кадра оказывается ниже, чем у данных, ожидаю щих передачи, то узел вставляет в поле резервирования передаваемоrо кадра приоритетный уровень э1их данных. KorAa владелец маркера освобождает маркер, подтверждающий прием ero кадра, он сравнивает приоритет маркера с приоритетом в поле резервирования. Если приоритет резервирования OKa Зывается больше, чем приоритет маркера, то приоритет маркера повышается до приоритета резервирования, что rарантирует передачу маркера по кольцу до тех пор, пока он не достиrнет высокоприоритетноrо передатчика. Этот приоритетный механизм работает следующим образом. Для всех поль 3Ователей OAHoro приоритетноrо уровня кадры передач следуют Apyr за дpy roM в циклической последовательности, а KorAa все передачи на этом уровне заканчиваются, происходит переход к передачам следующеro приоритетноrо уРовня и т. д. Любой узел, который при освобождении маркера с ПОДТВер Ждением повышает ero приоритетный уровень до уровня резервирования, ОТвечает также и за понижение этоrо уровня до ero предыдущеrо значения. Это произойдет только TorAa, KorAa высокоприоритетные передачи закончат ся, и кроме Toro, это позволяет избежать ситуации блокировки сети с BЫCO 1{0ПРИОРИТетным маркером при наличии низкоприоритетноrо трафика, KOTO РЫй ожидает продолжения передачи. "ример работы маркерной схемы с приоритетами приведен на рис. 5.7, [де ПОказано 6 последовательных состояний этой схемы. В исходном состоянии (рис. 5.7, а) отражена текущая ситуация, KorAa текущий передающий узел А Посылает в кольцо кадр с параметрами P{Priority):::: О и R(Reservation):::: О, а в Узлах В и С имеются данные для передач с приоритетами 3 и 4 COOTBeTCTBeH 110. KorAa этот кадр передается узлу В, он занят трафиком данных узла А, по- Тому узел В только заполняет поле резервирования кадра значением приори 'feтa своих данных (R:::: 3) и отправляет кадр дальше (рис. 5.7, 6). KorAa он ДОСтиrнет узла С, который имеет данные более BbIcoKoro приоритета, то С ТОЖе только заменяет приоритет резервирования на 4 (то есть устанавливает R==4) {рис. 5.7, в). KorAa узел А освобождает маркер с подтверждением ПРиема своих данных, он помещает в поле приоритета значение 4 (Р == 4) (РИс. 5.7, 2). Этот маркер снова передается в узел В, который устанавливает в ПОле резервирования значение 3 (R == 3) (рис. 5.7, д). Получив этот маркер, УЗеЛ С начинает передачу своих данных (рис. 5.7, е). KorAa их передача будет закончена, он выпус1ИТ в сеть свободный маркер, но вследствие Toro что ОН Принял маркер с приоритетным уровнем 4 (р:::: 4), оставит этот приоритет на ТОМ же уровне. Затем свободный маркер, циркулируя по кольцу, прибывает в 
rлава 5. С точки зрения звена 195 узел А, который распознает (по полю Priority), что перед этим пересылался высокоприоритетный трафик и поэтому уменьшает приоритетный уровень. В обычной ситуации узел А уменьшил бы этот уровень дО О, но изза Toro что он получил свободный маркер с уровнем резервноrо приоритета 3 (R == 3), выпустит маркер с приоритетом 3, запомнив, что он теперь поднял приоритет маркера с О до 3, но возвратит приоритет к уровню О в следующий раз, KorAa встретится с пустым маркером приоритета 3. [iJ Кадр Р=О R=O Приоритет = 3 [iJ Kaдp D Р=О R=4 Приоритет = 4 /1' с а [iJ " Кадр Р=О R=3 Приоритет = 3 б E::::I:::J Маркер Р=4 R=O Приоритет = 3 Приоритет = 3 в [iJD Р=4 R=3 Приоритет = 4 )/ С Маркер Р=4 R=3 Приоритет = 3 Приоритет = 3 д е Рис. 5.7. Маркерная схема с nриоритетами 
196 Передача данных в сетях: инженерный подход у протокола FDDI дрyrая система приоритетов, потому что ero узлы передают маркеры немедленно после посылки своих данных, но результат тот же. 5.3.3. Сравнение методов доступа Среди различных систем с состязаниями только CSMAlCD обеспечивает ca мую высокую пропускную способность. Квантованная ALOHA обеспечивает более высокую пропускную способность, по сравнению с простой, поэтому лучше использовать именно квантованный вариант ALOНA. Если использу ется схема с состязаниями и возможно считывание состояния среды, то сле дует выбирать CSMAlCD. Из сх(;м резервирования, самой лучшей является схема централизованноrо опроса, которая обеспечивает и наивысшую производительность, потому что распределитель ресурсов обладает полным знанием состояния системы. Oд нако наличие центральноrо управления часто нежелательно. Маркерные Системы обладают преимуществами распределенноrо подхода, но даже в варианте с приоритетами, такие системы только приближаются по произво Дительности к централизованной схеме с резервированием. Если сравнивать схемы с состязаниями и с резервированием, то первые в об 1Цем случае проще и, коrда заrрузка невелика, обеспечивают более быстрый доступ. поскольку терминалы не должны ждать разрешения на передачу. Oд нако в таких системах невозможно назначать различные приоритеты трафи кам различных типов, так что они не подходят для сетей со смешанным тpa фиком ИЛИ для сетей с высокоприоритетным трафиком и низкими требованиями к задержкам. Доступ к каналу с помощью CSMA/CD имеет Be роятностный характер, что может привести к переменным и неоrраниченным задержкам, и он очень нестабилен при наrpузке, превышающей зо% полосы пропускания канала. Кроме Toro, такие схемы сравнительно неэффективны и не очень хорошо масштабируются, т. к. С увеличением размеров сети растет и задержка распространения. для небольших сетей, например, локальных, распределенный характер и низ кая Стоимость CSMAlCD, безусловно, делают ero выбор наиболее популяр-- ным. Orносительная неэффективность не так важна, поскольку при коротких расстояниях недостаточная скорость передачи может быть существенно Скомпенсирована. Для больших сетей стоимость среды передачи становится СУЩественно выше, чем затраты на терминалы, поэтому предпочтительнее более эффективный механизм, даже если он приводит к весьма сложным и поэтому дороrим терминалам. Кроме Toro, более важным является требова Hlie rарантии качества обслуживания. Поэтому большие сети используют схемы с резервированием. 
rлава 5. С точки зрения звена 197 5.4. Кодирование канала Реальный канал может добавлять к передаваемому сообщению некоторое KO личество ошибок. Для обнаружения этих ошибок приемнику необходимо просто заметить, что они были добавлены, а для nря.мО20 исправления оши боi (Forward Епоr Сопесtiоп, FEC) существует дополнительное требова ние  нужно определить их расположение в принятом сообщении. Проектировщик кода не может контролировать ошибки, но у Hero есть воз можность определить код таким образом, чтобы для большинства возникаю щих ошибок сообщение можно было восстановить по принятому кодовому слову. Распознавание возможно до тех пор, пока сообщения достаточно OT личаются Apyr от Apyra, а число ошибок. не слишком велико. Задачу форми рования достаточно различающихся кодовых слов можно решить путем дo бавления к сообщению избыточной информации. Примером добавок TaKoro рода является акустический Шlфавит, используемый при чтении слов по слоrам в радиоканалах. Мноrие буквы (анrлийскоrо) алфа вита, например, В, С и D, имеют очень близкое звучание, которое можно пер пyrать при произношении по шумящему каналу. Чтобы было леrче отличить APyr от Apyra буквы алфавита, в акустическом алфавите для каждой буквы ис пользуются специальные кодовые слова. В табл. 5.1 приведен акустический алфавит, используемый британской полицией. Кp.QMe Toro, числа произносят с небольшими изменениями и rиперболизацией слоrов, например, nine  как niner и five  как fife, чтобы их было леrче произносить по слоrам. При проектировании кода, исправляющеrо ошибки, избыточность, которая добавляется в форме дополнительных символов (в двоичном коде  это ДBO ичные символы, или биты), следует использовать с осторожностью, чтобы она была эффективной. В частности, избыточность должна делать похожие кодовые слова более разными. Различие между кодовыми словами можно представить в виде расстояния между ними. Коррекцию ошибок следует выполнять пyrем просмотра pac стояний от полученноrо KOAoBoro слова до всех возможных допустимых KO довых слов, И выбора самOl'О близкоrо KOAoBoro слова. Если это сделано, то ошибки можно BcerAa исправить, если они разрушают кодовые слова на pac стоянии, которое меньше, чем половина расстояния между двумя самыми близкими кодовыми словами, или их можно обнаружить, если они разру шают кодовые слова на расстоянии, которое меньше, чем минимальное pac стояние между двумя кодовыми словами. 4 Прямое исправление ошибок  исправление ошибок без требования повrорения передачи.  Пер. 
J!8 &УК88 (сообщение) А а В Ьвв С see D dee Е в F ef G gee Н aitch J jay К kay L el М em Передача данных в сетях: инженерный подход Таблица 5.1. Акустический алфавит Акустическое &УКВ8 Акустическое "кодовое слово" (сообщение) "кодовое слово" Alpha N en November Bravo О о Oscar Charlie Р рее Рара Delta Q cue Quebec Echo R ar Romeo Foxtrot S es Sierra Golf Т tee Tango Hotel U u Unifor India V vee Victor Juliet W doubIe Whiskey you Кilo Х ех Xray Lima У ще Yankee Mike' Z zed Zulu Коррекцию и обнаружение ошибок можно выполнять одновременно. Если минимальное расстояние между любой парой кодовых слов обозначить как dт/n (рис. 5.8), то пока d min 2: dd + dc, исправлять ошибки можно в радиусе dc, а обнаруживать  в радиусе dd от каждоrо кодовоrо слова, т. к. если получен ное сообщение находится вне изображенных KpyroB, то можно лишь узнать, что имеется ошибка, хотя ее нельзя "исправить", потому что она не находится в Kpyre радиуса d c BOKpyr любоrо KOAoBoro слова. Изменяя размер KpyroB, можно поменять местами возможности исправления и обнаружения ошибок. Заметим, что для фиксированноrо d mт увеличение d c уменьшает dd, и появля ется еще одна проблема  возможность неправильноrо "исправления" полу ченноrо сообщения. Если сqобщение было так сильно разрушено, что пере местилось более чем на dd и попало в Kpyr радиуса d c друrоrо кодовоrо слова, то оно будет декодировано неправильно. Математическим аналоroм расстояния является метрика. Самый простой и наиболее общей метрикой для бинарных сиrналов является расстояние XeM MUHza. Расстояние Хемминrа между двумя битовыми потоками определяется выражением а  Ь, rде а и Ь  это так называемые веса этих битовых пото ков, которые определяются числом их ненулевых компонентов. 
rлава 5. С точки зрения звена 199 6) G Рис. 5.8. Расстояние между кодовыми словами Рассмотрим три кода, использующих сиволы, составленные из трех двоич ных цифр (рис. 5.9). Первый код (рис. 5.9, а) использует все возможные KOM бинации трех битов и поэтому имеет минимальное расстояние 1. Он не может исправлять или обнаруживать никакие ошибки, потому что любая ошибка формировала бы новое кодовое слово. Второй код (рис. 5.9, б) имеет мини мальное расстояние 2. Он построен путем удаления всех кодовых слов с pac стоянием 1 из кодовоrо слова на рис. 5.9, а. Этот код может обнаруживать одиночную ошибку, хотя не исправляет ее (ошибочный код О 1 О Mor бы сформировать кодовые слова 000, 011 или даже 110). Две ошибки не MOryr быть обнаружены. Код на рис. 5.9, б  это, в действительности, код прове(r ки на четность, который обнаруживает также И:lipИ ошибки. Код (рис. 5.9, в) имеет расстояние 3. Он будет исправлять одну ошибку или обнаруживать 2 (но не одновременно). Если бы он использовался для исправления ошибок, то код 010 был бы исправлен на 000, как было бы и для кодов 100 и 001, что по казано маленькими стрелками. 110 111 110 100 011 001 000 100 000 а 111 011 001 000 001 б в Рис. 5.9. Коды, составленные из трех двоичных цифр Существование расстояния между кодовыми словами не обязательно означа ет, что сообщение можно леrко извлечь из полученноrо кодовоrо слова, даже если случается. меньше ошибок, чем код может теоретически исправить. В наихудшем случае нужно будет сравнивать полученный битовый поток со 
200 Передача данных в сетях: инженерный подход всеми возможными кодовыми словами, чтобы увидеть, к какому из них он ближе Bcero. Если длина потока велика, то существует MHoro возможных KO довых слов, так что этот процесс может сильно затянуться во времени. По этому выбор кодирующей функции должен быть сделан так, чтобы сущест вовал простой метод декодирования. Рассмотрим, например, относительно небольшой циклический композици онный код (l43 120). Блочный код этоrо типа можно декодировать, исполь зуя правила ero кодирования за 264 простых шаrа (сдвиrа). Однако этот код имеет 2'20 кодовых слов, так что полный перебор потребовал бы порядка 1 000 000 000 000 000 000 000 000 000 000 000 000 (то есть 10 З6 ) сравнений. Существует несколько методов проектирования кодов, позволяющих выполнять кодирование и декодирование на практике. Если кодирование есть линейная функция относительно информационноrо сообщения и если принятые слова яв JUlЮТCя кодовыми, то мы получаем простой метод кодирования и тестирования. Коды с повторенuямu  очень просты, но не очень эффективны. Коды Xe.мми1l za  это специальный ЮIасс кодов, исправляющих одиночные ошибки. Такие коды достаточно просты в построении и использовании. К друrим общим кодам относятся ЦUЮluческuе коды, и один из их типов  коды РидаСоломона, KOТO рые являются сложными, но теперь все шире используются на практике (напри мер, в комnaктдисках). Сверточные коды работают с данными в последователь ной,мlt'Нeре, и хотя они не столь эффективны, как коды РидаСоломона, в проекrиpoвании и использовании они достаточно rибки и просты. 5.4.1. Вероятность ошибки Рассмотрим передачу информации через двоичный симметричный канал с вероятностью перехода а. Двоичный симметричный канал не имеет памяти, и BepOJftHOCТb перехода (то есть ошибки) одна и та же как для нулей, так и для единиц. Вероятность тoro, что п битов принимаются без ошибки, равна (]  а)п. Вероятность одной ошибки равна вероятности Toro, что данный бит  ошибочный, а все друrие  правильные, т. е. (а х (J  a}п ') п, поскольку для KOHkpeтHoro бита имеется п возможностей быть ошибочным. В общем слу чае, вероятность Toro, что е из п битов  ошибочны, равна сп = п! = п(п  1) . . . (п  е + 1) е е! (п  е)! i! Чаще нас интересует вероятность Toro, что произошло более, чем заданное число (скажем, е) ошибо которая вычисляется следующим образом: Р(число ошибок> е):= J  Р (число ошибок  е) == е == l LC;(la)'Ha; 1=0 
rлава 5. С точки зрения звена 201 5.4.2. Построение кодов с исправлением ошибок Здесь будем рассматривать только двоичные коды (если не утверждается противоположное). Коды, исправляющие ошибки, можно строить и из друrих символов, но мы не будем детально рассматривать такой случай. Коды с повторениями Очень простой метод кодирования состоит в том, чтобы повторять сообще ние 2d + 1 раз и декодировать полученные кодовые слова, опираясь на боль шинство принятых символов. В этом случае расстояние между кодовыми словами будет равно 2d + 1, и это означает, что может быть исправлено до d ошибок. Такой код оптимален для d == 1 .и сообщения длиной 1, т. е. для кода с исправлением однобитовых ошибок и кодовыми словами 000 и ] ] 1. OДHa ко, коrДа нужно передавать больше двоичных символов, эффективность кода (в смысле скорости передачи при заданной способности коррекции ошибок) очень мала. Заметим, что определение скорости для кода с исправлением ошибок выrлЯДИТ так: R == (среднее число исходных символов) I (среднее число символов кодо-- вых слов). Концепции эффективности кода не существуе1J. однако ero избыточность можно определить как 1  R (сравните с кодированием источника, коrда CKO рость рассматривается как эквивалент эффективности и предпс;>лаrается, что источник имеет максимальную энтропию  один бит на двоичный символ). Двоичный код с повторениями способен исправлять 2битовые ошибки в 6 битовом коде (для d== 2) и имеет скорость 0,2. Сверточный код типа (2, 1, З), о котором речь пойдет далее, имеет такую же способность коррекции оши бок, но скорость 0,5, а более сложные блочные коды  еще больше. Код с одним разрядом контроля четности Код с исправлением ошибок на самом деле не относится к наиболее общей и простой форме кодов, т. к. он может обнаруживать только одиночные ошибки. Таким свойством, скорее, обладает так называемый код с одним разрядом KOH троля четности (single parity check coдe) двоичный код, в котором К каж дому сообщению добавляется один дополнительный бит, raрантирующий, что в нем имеется четное число единиц. Это означает, что к сообщениям с четным числом единиц добавляется О, а к сообщениям с нечетным числом единиц  1. Любой одиночный ошибочный бит оставляет в сообщении нечетное число единиц, так что MOryr быть обнаружены одиночные ошибки, но двойные ошибки (или любое четное число ошибок) в результате дaдyr четное число единиц и пройдут незамеченными. Поэтому такой код обнаруживает только 
202 Передача данных в сетях: инженерный подход одну ошибку и не способен ее исправлять. Но т. к. все сообщения различны и имеют четное число единиц, то минимальное расстояние равно 2, что, вообще roворя, соrласуercя с возможностью коррекции. Если биты сообщения обозначить как т"...т п , то бит проверки на чет ность  это просто сумма (по модулю 2) этих битов р == т) +... + т п , так что проверку на четность можно задать как т) + ... + т п + р == О. КОД Хемминrа научный метод определения кода Mor бы состоять в предположении, что ДЛЯ разрешения проблемы ошибок кодовое слово должно поставлять достаточно информации, чтобы содержать как сообщение, так и ошибку. Рассмотрим He обходимость исправления одиночной ошибки. Если мы снова обратимся к трехбитовым кодам (см. рис. 5.9), то увидим, что одиночная ошибка может произойти в любом из их битов. Кроме TOro, может вообще не быть никакой ошибки. Поэтому имеется 3 + 1 == 4 возможных сообщения об ошибках. Что бы их кодировать, требуется два бита информации (lOg2 4). Число битов про верки на четность (избыточность), добавляемое к коду, должно равняться по крайней мере 2. Bcero в коде имеется три бита (п == 3). Поэтому число инфор мационных битов равняется 1 (то есть k == 1). Код На рис. 5.9, в  это фактически код с исправлением однобитовых оши бок с k == 1 и двумя кодовыми словами 000 и 111. Мы можем расширить .нашу rипorезу следующим образом. Если бы мы имели в кодовом слове п битов, то нам нужно бы было IOg2(n + '} битов проверки на четность, оставляя для информации k == п  IOg2(n + 1} битов. Чтобы наиболее эффективно использовать разряды проверки на четность, имеет смысл сделать п == 2 Ч  1, так чтобы мы моrли выдвинуть rипотезу, что имеются коды с пара метрами п ==2 Ч  1, k==nq (например, (3, 1), (7, 4), (15,11) и т. д.}. Оказывает си, что такие коды существуют и называются по имени их исследователя Koдa .ми Xe.м.мUHza. Тривиальным примером TaKoro кода и является код на рис 5.9, 6. Первый интересный пример этоrо кода  код (7, 4), который может исправ пять одну ошибку в 7 битах и имеет скорость 57,1 %. Впрочем, все еще существует проблема построения этих кодов. Простая npo верка на четность может только обнаружить, но не исправить ошибку. Мы, од. нако, имеем три бита проверки на четность. Если для формирования четности мы используем различные комбинации этих битов, то коrда такие комбинации покажут сбой, мы сможем найти ошибку. С 3 битами проверки на четность мы имеем 8 различных комбинаций их значений. Пусть комбинация 000, т. е. от. сyrcтвие сбоев в четности соответствует отсyrcтвию ошибок. Пусть каждый биr четности проверяет сам себя и три из четырех битов сообщения. Тоща три бита сообщения проверяются двумя битами четности, а один  тремя такими битами, в то время как каждый бит четности проверяет только caMoro себя. 
rлава 5. С точки зрения звена 203 Единичное значение в одном бите проверки четности свидетельствует об ошибке в самом этом бите. Единицы в двух проверочных битах показывают сбой в соответствующем бите сообщения, а единицы во всех трех битах Про верки на четность указывают ошибку в бите сообщения, который проверяется всеми тремя битами про верки на четность. 5.4.3. Линейные коды Если проектирование кодов с повторениями было довольно простой процеду рой, то коrда мы соодаем более эффективные коды, эти процедуры становятся сложнее, и мы вынуждены искать более систематические пyrи проектирова ния. Линейным называют такой код, в котором каждое кодовое слово форми руется как линейная комбинация векторов сообщения. Двумерный код можно сформировать следующим образом  сообщение ; кодируется в двумерное кодовое слово и, 2;). Этот код  линейный, т. к. каждая линейная комбинация кодовых слов формирует друrое кодовое слово. Наилучшие коды формируют ся теми функциями, которые строят широко раздвинутые кодовые слова  с большими расстояниями между ними. В данном примере формируется код с исправлением одиночных ошибок, поскольку ошибки MOryт изменять только один элемент в каждом измерении. Так, на рис. 5.10 буквами А, В, С, D и Е обооначены пять кодовых слов. Каждая из остальных точек двумерной сетки занимает по крайней мере одну rоризонтальную или вертикальную позицию около каждоrо кодовоrо слова. их можно видет. по маркировке каждоrо He кодовоrо слова малыми буквами ближайшеrо кодовоrо слова. Если принима ется код, обооначенный любой из малых букв, то предполаrается, что был по слан код соответствующей заrлавной буквы. Линейные коды часто определяются с помощью так называемой порож дающей матрицы, составленной из кодовых слов, причем k этих кодовых слов независимы, так что порождающая матрица (скажем, G) имеет k строк и п столбцов. Все кодовые слова можно формировать добавлением строк, так что кодовое слово, скажем с, формируется из сообщения, CKa жем т, с помощью выражения с == mG. Структура матрицы G такова, что, коrда она помещается в стандартную ступенчатую форму, то имеет CTPYK туру [ljP] 5. Существует соответствующая матрица Н == [PTI1], называемая матрицей проверок на четность. GH T == о. Матрица Н используется для декодирования кода. Если нет ошибок, то сН Т == mGH T == тО == о. Если случается ошибка, например, е, то мы принимаем кодовое слово с' == с + е, так что с,н Т == (с + е)Н Т == сн т + еН Т == 0+ еН Т == еН Т . Эта величина, назы ваемая синдромом, зависит только от ошибки, а не от передаваемоrо KOДO Boro слова. В этом  ключевое свойство линейных кодов. s /  от анrл. /п/orтatioп, а Р  от Parity.  Пер. 
204 Передача данных в сетях: инженерный подход а с с '" а .. .' . с ,,/., е .. \ .../ '.. с 'е " ",,"ь '. Е .. '. I "\ \ ь ь .... е В ..' d ...\ \ , ,// ....... Ь .../ d .... D d, \ \. /.. ... .' .' '. а с а \ е А Рис. 5.10. Простые двумерные линейные коды (вычисляемые по модулю 5) Синдром используется для исправления ошибок. Синдром О указывает, что было получено кодовое слово, причем это означает, что или никаких ошибок не произошло, или что ошибка является КОДОВЫМ словом, поскольку линей ные свойства кода таковы, что принимаемый код (е' == с + е) также будет KO довым словом. Любая ошибка, имеющая ту же форму кодовоro слова, имеет вес. раВflЫЙ или превышающий минимальное расстояние между кодовыми словами, и не может быть никак исправлена. Линейные коды достаточно просты в реализации, потому что вместо записи деталей каждоrо кодовоrо слова, можно записывать детали линейной функ ции и умножать на них сообщение. Однако в общем случае коррекция оши бок не так проста. Для некоторых линейных кодов нужно определять специ алъные методы для обнаружения ближайшеrо кодовоrо слова в присутствии ошибок, но в общем случае, чем лучше код (в смысле числа ошибок, Kopыe он исправляет и числа добавляемых дополнительных битов), тем более слож ный алrоритм требуются для ero декодирования. Матричная форма КОДОВ Хемминrа Напомним определение кода Хемминrа. Уравнение проверки на четность формируется из линейной комбинации кодовых слов, поэтому код Хемминrа линеен и может быть выражен в матричной форме. Матрица про верок кода на четность, которую мы сформировали ранее, фактически ВЫfЛЯДИТ так: Рl == тl + т2 + т4 :::) т) + т2 + т4 + Р) == о Р2 == т) + тз + т4 :::) т) + тз + т4 + Р2 == О Р) == т2 + тз + т4 :::) т2 + тз + т4 + Рз == О н = (    о I I    ) о о I 
rлава 5. С точки зрения звена 205 Построение кода (15, 11) затруднено изза Toro, что отсутствует простое правило проектирования. Обратите, однако, внимание, что в форме Cl)'пенча тых строк каждая строка отличается по крайней мере двумя элементами (изза lчасти матрицы). Если каждая строка в Рчасти матрицы различна, и coдep жит по крайней мере 2 бита (чтобы обеспечить минимальное расстояние, равное з; любая строка с меньшим количеством битов была бы ближе чем в Зх битах от всех нулей кодовоrо слова), результатом будет матрица, пред ставляющая комбинацию проверок, которые удовлетворяют всем нашим тpe бованиям. Поэтому, чтобы построить код Хемминrа, мы просто заполняем Р каждой комбинацией битовых последовательностей с двумя или большим количеством единиц в любом порядке. Различные порядки будyr давать раз личные, но эквивалентные коды ХеММИНl:а. Коды Хемминrа очень просто декодируются с помощью Нматриц, поскольку они позволяют исправлять одиночные ошибки. Любое KOДO вое слово умножается в обычном порядке (начиная с младшеrо раз ряда) на транспозицию Нматрицы, что дает нулевой вектор. Если име ется одиночная ошибка, то принятое кодовое слово с' можно считать равным однобитовому вектору е плюс кодовое слово с, так что с,н Т = (с + е)Н Т = СН Т + еН Т = 0+ еН Т . Однако, поскольку е  это вектор только с одной единицей, то еН Т  это просто столбец в Нматрице, пози ция KOToporo соответствует ошибке. Этот apreHT применяется ко всем исправлениям однобитовых ошибок с помощью линейноrо кода, а не только к кодам Хемминrа. Циклические коды Специальные типы линейных кодов, называемых циклическими, имеют чет кую структуру и ПрОCl)'ю реализацию. В дополнение к формированию новых кодовых слов из их линейных комбинаций, в циклических кодах новые KOДO вые слова формируются также путем цuкличеСКО20 сдви2а кодовоrо слова. Например, левый циклический сдвиr кодовоrо слова 01001 О 11 дает новые кодовые слова 1001 О 11 О, 001 О 110 1 и т. д., поэтому такие коды можно созда вать из сдвиrов и линейных комбинаций еДинственноro кодовоrо слова, KO торое называют 2енератором. При подходящем проектировании такой reHe ратор обеспечивает равномерное распределение кодовых слов в кодовом пространстве, и код имеет хорошие дистанционные свойства. Леrко также проверять, имеет ли принятое кодовое слово какиенибудь ошибки, посколь ку все кодовые слова кратны reHepaTOpy. По этой же причине для обнаруже ния (но не коррекции!) ошибок используются специальные циклические KO ДЫ, называемые кодами с циклической проверкой избыточности (Cyclic Redundancy Check, CRC). 
206 Передача данных в сетях: инженерный подход При мер линейноrо кода: расширенный код Хемминrа Код Хемминrа (7,4), исправляющий одиночные ошибки, имеет следующую порождающую матрицу: [        ] 0010011 0001111 Чтобы сформировать код (8,4) с минимальным расстоянием 4, мы можем дo бавить к этому коду полную проверку на четность 6 . Это выполняется путем кодирования выхода кода Хемминrа с полной проверкой на четность. Выход кода Хемминrа задается выражением с == mG, rде G  порождающая матрица кода Хемминrа. (СI С2 СЗ С4 CS С6 С7) 1 О О О О О О 0100000 0010000 О О О 1 О О О О О О О 1 О О О О О О О 1 О О О О О О О 1 == 1 О О О О О О 1 О 1 О О О О О 1 О О 1 О О О О 1 О О О 1 О О О 1 О О О О 1 О О 1 О О О О О 1 О 1 О О О О О О 1 1 (т, т,  т.) [i  !   i  J (т, т, тз т.) [  !     iJ 6 Мы можем добавлять полную проверку на четность к любому коду, который еще не имеет такой проверки, и расстояние будет увеличено на 1. Если код уже имеет полную четность, ВСе кодовые слова будyr иметь четный вес, поэтому бит проверки на четность вcerдa будет О, так Что и расстояние, и способность коррекции ошибок останyrся неизменными. 
rлава 5. С точки зрения звена 207 Поэтому reHepaTOp полноrо кода (8, 4), называемый расширенным кодом i)(емминzа, имеет вид: , [ 1 О О О 1 1 О 1 ] 01001011 00100111 00011111 J30т кодовые слова этоro кода: 00000000 00100111 00011110 00111001 10001101 10101010 10010011 10110100 01001011 01101100 01010101 01110010 11000110 11100001 11011000 1111]1]1 OДOBыe слова можно rенерировать прямо из порождающей матрицы или fеречисляя кодовые слова кода Хемминrа и добавляя завершающий бит, ЧТО ры обеспечить четное число единиц. ikли нет ошибки, синдром равен О (точнее, 00000000). Как выrлядят FИНДРОМЫ дЛЯ всех одиночных ошибок, показано в табл. 5.2. Таблица 5.2. Синдромы одиночных ошибок  Оwибка СИНдРОМ Оwибка .-. СИНДрОМ 1000ххю 1101 00001000 1000 ,'01000000 1011 00000100 0100 .,00100000 0111 00000010 0010 ,00010000 1110 00000001 0001 ce синдромы различны, так что MOryт быть исправлены все одиночные шибки. 28 возможных двойных ошибок показаны в табл. 5.3. Таблица 5.3. Синдромы двойных ошибок ! Ошибки Синд- Ошибки Синд- Ошибки Синд- Ошибки Синд- ром рОМ ром рОМ " 11000000 0110 01100000 1100 00101000 1111 00010001 1111 10100000 1010 01010000 0101 00100100 0011 00001100 1100 10010000 0011 01001000 0011 00100010 0101 00001010 1010 10001000 0101 01000100 1111 00100001 0110 00001001 1001 
208 Передача данных в сетях: инженерный подход Таблица 5.3. (окончание) Ошибки Синд- Оwибкt'I Синд- Ошибки Синд- Ошибки Синд- ром ром ром ром 10000100 1001 01000010 1001 00011000 0110 00000110 0110 10000010 1111 01000001 1010 00010100 1010 00000101 0101 10000001 1100 00110000 1001 00010010 1100 00000011 0011 Хотя не все синдромы двойных ошибок различны (например, коды 11000000, 00100001 и 00011000 производят одни И те же синдромы), все они отличаются от синдромов для ОДиночных ошибок. Это означает, что, хотя мы не можем исправлять две ОIlIИбки, мы можем обнаруживать их в дополнение к исправле нию одиночных ОlUliбок. Это и составляет отличие от стандартноrо кода XeM минra, rде мы МО)}(ем или исправлять одну ошибку, или обнаруживать две ошибки. Для раСIlIИренноro кода Хемминrа мы можем исправлять одну и об наруживать Две ОlUlfбки или обнаруживать три ошибки. 5.4.4. СвеРТОчные КОДЫ Коды, обсуждаВШиеся До сих пор,  это так называемые блочные коды, rде информация обраба1'ывается блоками. Альтернативой им является последо вательное КОДИРОваlIие и декодирование. При этом каждый раз, коrда прини мается входной бит, reнерируется несколько выходных битов. То же самое делает одноБитовы1 код с повторениями, который просто повторяет входной бит несколько раз. Если бы скорость повторения была равна 2, то мы получи ли бы следующее: LJ Вход  1 1 О 1 LJ Выход  11 11 00 11 В действительности это очень бедный код. Он имеет скорость 1/2, а расстоя ние  только 2, и Поэтому может обнаруживать лишь одну ошибку. Произ водительность МОЖlfо Значительно увеличить путем добавления в кодер (кодирующее YCТPOifCTBO) некоторой памяти и делая текущие выходные биты зависимыми не ТОЛЬJю от текущеrо входа, но также и от предыдущих битов. Такие коды называются сверточны.ми. Число принимаемых в расчет битов  память кода + 1 назыаетсяя длиной (кодовО20) 02раниченuя (constraint length). Примером npocтoro сверточноrо кода является код (2,1,3). Два первых числа в этом обозначении указывают, что 2 ВЫХОдных бита ПРИХОДЯТСЯ на 1 BXOД ной, а последнее  это длина кодовоrо оrраничения (З). Первый бит этоrо 
rлава 5. С точки зрения звена 209 кода является двоичной суммой текущеro входноro бита, последнеro и двух предшествующих ему входных битов. Второй бит является суммой текущеrо входноrо бита и бита, расположенноrо через два бита после Hero. Схема, re нерирующая этот код, показана на рис. 5.11. Кодовое расстояние этоrо кода равно 5, так что он может исправлять две ошибки. Он может исправлять и больше ошибок, если они находятся на достаточно больших расстояниях (превышающих размер ero памяти). Рис. 5.11. Сверточный код (2, 1, З) Кодировать и декодировать сверточные коды довольно просто, но если при этом происходят ошибки, то мноrие выходные биты будут искажены, по скольку декодер будет пытаться исправлять битовый поток и внесет в про-- цесс дополнительные ошибки. По этой причине желательно иметь возмож ность обнаружения таких ошибок. ... Состояние системы определяется памятью на сдвиrовых реrистрах сверточно то кодера. Для сверточноro кода (2, 1, З) имеется 2 L  1 = 4 различных состоя ,inu{ В диаrpамме переходов состояний этоro кода (рис. 5.12) имеются узлы Д1Iя каждоro возможноrо состояния, соединенные линиями, изображающими все возможные изменения этих состояний. Эrи линии маркированы входами, 'которые вызывают данное изменение состояния, и соответствующими BЫXO дами. Например, если кодер находится в состоянии 00, он может остаться в состоянии 00, приняв на входе О, после чеrо на выходе будет 00, или он может перейти в состояние 1 О, коrда при приеме 1 на выходе будет 11. 0100 1/10 Рис. 5.12. Диаrрамма переходов состояний кода (2, 1, З) 7 L здесь обозначает длину КОДОВЫХ оrpаничений (В данном случае L  3).  Пер_ 
210 Передача данных в сетях: инженерный подход ХОТЯ диаrрамма переходов состояний полезна для показа возможных перехо ДОВ между состояниями системы, для сверточноrо кода важнее прослеживать последовательность изменений состояний и соответствующих выходов, По лучаемых в ответ на различные входы. Для ЭТОй цели полезна кодовая pe шетко. Она похожа на диаrрамму переходов состояний, но существующие состояния перечисляются в ней слева, следующие состояния  справа, а пе реходы состояний изображаются в виде стрелок между ними (рис. 5.13). 0100 00 00 01 01 10 10 11 11 Рис. 5.1 з. Решетчатая диаrрамма для кода (2, 1, З) в табл. 5.4 приведен пример состояний и выходов кода (2, 1,3) при кодиро вании двоичноrо потока 101001011100. Последовательность переходов co стояний на соответствующей решетчатой диаrрамме (рис. 5.14) обозначена толстой линией. Таблица 5.4. Состояния входов и выходов Номер 2 3 4 5 6 7 8 9 10 11 12 шаrа ВХОДНОЙ О О О О О О бит Текущее 00 10 01 10 01 00 10 01 10 11 11 01 состояние Cn.AYIO- 10 01 10 01 00 10 01 10 11 11 01 10 Ще. СОСТОЯНие Выходные 11 10 00 10 11 11 10 00 01 10 01 11 биты 
rлава 5. С точки зрения звена 211 11 11 11 11 11 11 11 11 11 11 11 11 11 Рис. 5.14. Пример кодирования, использующий код (2,1,3) Известно несколько методов декодировани!, сверточных кодов и, как и следо вало ожидать, существует компромисс между сложностью декодирования и производительностью. Orносительно простой метод, называемый последова тельным декодированием, состоит в прокладке трассы переходов через После Довательность решеток кодирования, опираясь на биты, ПОС'I)'пающие на вход декодера (отмечены на рис. 5.15 толстыии линиями). Пyrь трассы в каждом узле выбирается по наименьшему числу расхождений между полученными битами и битами, которые были бы сrенерированы (на рис. 5.15 эти числа YKa заны над стрелками переходов ). Такие числа отражают метрику ветвлений. Если два пути, исходящих из узла, имеют одинаковхю метрику, то между ними производится случайный выбор и декодирование продолжается. Если метрика превышает nopor, основанный на ожидаемом числе ошибок, то декодер реша ет, что на одном из ее случайных выборов, по всей вероятности, была сделана ошибка, удаляет этот путь и пытается сделать выбор снова. 2 з 4 5 6 7 8 9 10 11 12 Вход 11 1 О 01 10 01 00 1 О 01 10 11 11 01 2 э 4 2 4 2 э 4 4 5 5 7 11 11 11 11 11 11 11 11 11 Выход о о о о о о Рис. 5.15. Пример декодирования, использующий код (2. 1, З) 
212 Передача данных в сетях: инженерный пoдxo Этот подход можно расширить, обеспечив декодирование по критерию макси мальноro правдоподобия (то есть выбирая такую передаваемую последова тельность, которая обеспечит наименьшее число различий между ее Кодовыми словами и получаемыми последовательностями). Если от каждоrо узла исходит несколько возможных nyreй, то в расчет принимаются все возможности. OДHa Ко, если два или большее число nyreй входят в один и тот же узел, все они бу дут продолжены совершенно одинаково, так что можно удалить все входящие пyrи, кроме пути с наименьшей метрикой. Это значит, что число "выживших" (при посТроении трассы) nyreй в большинстве случаев сохраияется равным числу состояний, так что такое усложнение процедуры прокладки трассы пере ходов имеет определенный смысл. Этот алrоритм называют Wlсоритмом Ви тербu (Viterbi). И хотя он сложнее последовательноrо алrоритма, современная техника позволяет довольно леrко ero реализовать. Еще одна проблема, связанная со сверточными кодами, состоит в том, что они имеют довольно низкую скорость, обычно меньше 50%. Скорость можно увеличить "прокалывая" код. ПРОКWlывание (code puncturing)  это процесс удаления некоторых дополнительных битов коррекции ошибок. Такой метод уменьшает способность кода исправлять ошибки, но дает возможность найти компромисс между числом добавляемых битов и, следовательно, способно стью кода к исправлению ошибок, и требованиями передачи в смысле уменьшения числа битов. 5.4.5. Чередование Двоичный симметричный канал вводит ошибки случайным образом. Это pa зумная оценка работы некоторых каналов (в частности, каналов с белым шу .мо.м). Но мноrие каналы имеют память, и ошибки возникают пакетами (этим свойством, в частности, обладают радиоканалы). Большинство кодов с ис Правлением ошибок (включая коды Хемминrа и сверточные коды) наиболее эфФективны при случайных ошибках. Если ошибки возникают rруппами, то их оказывается слишком MHoro для исправления в конкретном интервале, хотя в среднем интенсивность ошибок находится в пределах корректирую щей способности кода. Чтобы справиться с этой проблемой, используется специальная процедура  интерливИН2 (interleaving), или чередование, по Зволяющая разнести Биты так, чтобы перед кодированием смежные переда ваемые Биты оказались разбросанными по битовому потоку (рис. 5.16), orpa НИЧивая число находящихся рядом битов в пределах корректирующей СПособности кода. Если количество ошибок при таком разбросе превышает возможности успешной работы кода, исправляющеrо ошибки, то использова ние этоro кода приведет к еще большему числу ошибок. Orсюда следует, что если средняя интенсивность ошибок больше, чем код может исправить, то Интерливинr будет уменьшать производительность, т. к. он будет вносить 
rлава 5. С точки зрения звена 213 ,ошибки, которые не MOryт бьпь исправлены, в предварительно свободные от ошибок кодовые слова. 6 12 18 24 Последовательность битов перед чередованием Чтение битов по rоризонтали '" '" , . , с . ! , . . , . ! . . ! . . . t t t . . ! . . , . t t : . . Чтение битов по вертикали Последовательность битов после чередования (используется для передачи) DDDDDDDD[I][]DIIIIJ[] Чтение битов по <: rоризонтали     ...... """"')  . -  - - ... 4t . . '-' Чтение битов по "" вертикали Последовательность битов после дечередования - обратите внимание на разброс ошибок . Рис. 5.16. Чередование 15.4.6. Объединение кодов ':Различные типы кодирования MOryт быть объединены. Часто это может ока- , .JaТься полезным для объединения преимуществ компонентных кодов. 'kомпозиционные КОДЫ Один из самых простых способов объединения кодов состоит в формирова- НИи композициО1lНО20 кода. Символы, которые нужно кодировать, размеща- ются в массиве (рис. 5.17), и затем один тип блочных кодов применяется к строкам, а друrой  к столбцам. Возможно объединение нескольких (более 2) кодов, но наиболее общей является композиция двух кодов. 
214 Передача данных в сетях: инженерный подход СИМВОЛЫ Код проверки сообщения четности строк Код проверки Проверка четности столбцов проверок Рис. 5.17. Композиционный КОД Композиционные коды не должны быть различными. Простой композицион ный код является произведением двух кодов с одиночным разрядом про верки на четность (Single Parity Check, SPC), которые иноrда называют кодами rильберта. Сами SРСкоды не MOryт исправлять ошибки, но в композицион ном коде пакет ошибок может быть идентифицирован пере крестной ссылкой проверки на четность (рис. 5.18). Если т\  число строк, а т2  число столбцов, то код имеет следующие параметры: [] полное число битов в кодовом слове: п == т,т2; О число информационных битов: k == (т,  1) (т2  1). Такой код способен исправлять одиночные пакеты ошибок ДЛиной до т,  1 битов. Ошибки \ Биты проверки четности строк  24 бита сообщения **** I t I I . ..1 d !ic" ,,нш', ' . 1,'" - 'н'-"', Сбой проверки 't, 1-: : J 1 ,:  1J' ,';", ш ". четности k ш шJ",ш Сш<шшJ., ',. " (код для столбцов) i , " , ш ,1 Сбой проверки    четности , (код для строк)  Биты проверки четности столбцов Рис. 5.18. КОМПОЗИЦИЯ SРС-КОДОВ Каскадные коды Дрyrой метод объединения кодов состоит в том, чтобы по отдельности приме мять к данным два или большее количество КОДОВ в процессе, который назы Бают конкатенацией, или сцеплением. Конкатенация может принимать две 
"'лава 5. С точки зрения звена 215 tюрмы. Чаще Bcero используется последовательная конкатенация, Коrда один код применяется к данным, которые будyr передаваться, а затем к выходу, co общению и четности nepBoro кода применяется второй код. Часто перед при менением BToporo кода используется интерливинr, как показано на рис. 5.19. Внешний код (RS или CRC) Сверточный код Интерливинr Коррекция (RS) Обнаружение (CRC) Сверточное декодирование Деинтерливинr Рис. 5.19. ПоследоватеЛЫiая конкатенация I качестве канальных кодов обычно используются сверточные коды. Для ;повышения производительности и обнаружения ошибок, с которыми CBep !точный код не справляется, используются также интерливинr и обнаруже .- ие ошибок. Для дополнительной коррекции ошибок часто используются ффективные линейные блочные коды РидаСоломона, которые хороши .,' я исправлении пакетов ошибок. Кодирование выполняется в следующей оследовательности: коррекция блоков ошибок или обнаружение ошибок, оррекция случайных ошибок, интерливинr. Нприемном конце все это существляется в обратной последовательности и с выполнением обрат . ых процедур (рис. 5.19). Интерливинr выполняется на самом низком ровне, самом близком к каналу, так что любые пакеты ошибок, вызван . ых каналом, разбрасываются по потоку так, чтобы код, корректирующий лучайные ошибки (обычно это сверточный код), Mor бы их исправить. Если сверточный код переrружен ошибками, то при их исправлении он, Вероятно, будет ошибаться, rенерируя блок ошибок, который' может ис рравить внешний код (если этот код способен исправлять блочные ошиб 1Си). В конце таких последовательностей обычно используется цикличе екая проверка избыточности, которая просто обнаруживает, являются ли полученные данные правильными. Второй метод  парШlЛельная конкатенация (рис. 5.20). Здесь входные дaH ные преобразуются одновременно в два различных кода, причем символы Четности одноrо кода при втором кодировании не изменяются. Чтобы изме нить взаимосвязи между символами сообщения и сделать комбинацию более эффективной, используется интерливинr. С учетом интерливинrа параллель ная конкатенация двух кодов становится похожей на композиционный код за исключением Toro, что проверки четности одноrо кода не накладываются на проверки четности друrоrо. 
216 Передача данных в сетях: инженерный подход Вывод Мультиплексор Рис. 5.20. Параллельная конкатенация Турбо-коды Принцип параллельной конкатенации обладает существенным преимуще ством. Поскольку два кода строятся на одних и тех же данных, мы можем использовать информацию о позиции ошибок, предоставляемую одним кодом, чтобы помочь друrому коду в коррекции этих ошибок. Этот Про цесс можно применять итерационно, делая несколько проходов с обме ном информацией между разными кодами. Рассмотрим два кода, рабо тающих на строках и столбцах, каждый из которых способен исправлять одну ошибку. Корректирующие коды, отмеченные на карте ошибок (рис. 5.21, а), ликвидируют эти ошибки следующим образом: первый про ход позволит исправить ДВе ошибки с помощью строчноrо кода (рис. 5.21, б), который затем позволит кодам столбцов очистить данные и удалить остающиеся ошибки (рис. 5.21, в).  х   х  а б в Рис. 5.21. Итеративное декодирование, исправляющее ошибки эта процедура была изобретена Беру (Berrou), rлавье (Glavieux) и Титимайшимой (Thitimajshima) для их "Параллельносцепленных рекурсивно систематических сверточных кодов", которым они дали также краткое назва ине "'I)'p60КОДЫ". Первоначально это было применено к систематическим сверточным кодам, подобным коду, рассмотренному в вопросе 1 разд. 5.11.2 (с кодирующим устройством, модифицированным так, чтобы ero выходной сиrнал был сформирован отдельно из сообщения и разрядов проверки четно сти). Турбопринцип может применяться также и к друrим типам кодов. Фак тически ero можно применять прямо к композиционным кодам, просто заме няя декодер. Композиционные коды с итеративным декодером называются турбокомпозициоIlныии кодами. 
rлава 5. С точки зрения звена 217 Интерес к турбокодам возник, в основном, изза Toro, что они обладают очень высокой производительностью и приближаются к теоретическим пре делам пропускной способности, задаваемой rраницей Шеннона (см. разд. 6.2.4). Недостаток турбокодов состоит в том, что для Toro, чтобы близко по дойти к этому пределу, требуется довольно rромозДкая и сложная аппаратура BpeMeHHoro уплотнения, которая вводит большую задержку, хотя это Только одна из самых незначительных проблем турбокомпозиционных кодов. Клас сические турбокоды не очень подходят для передачи речи, но современные приложения передачи данных все шире используют эту новую технолоrию. 5.5. Сравнение методов коррекции оuмбок Представляет определенный интерес сравить методику прямой коррекции ошибок (FEC) со стратеrией коррекции ошибок в системах с обратной связью (ARQ), обсуждавшейся в разд. 4.11.2. Недостатком FEC является то, что дополнительная избыточность вводится таким образом, чтобы можно было исправлять максимально возможное KO личество ожидаемых ошибок. Если же ошибок будет меньше, чем ожидал ось, то эта избыточность будет растрачиваться впустую. В результате мы получа , ем более низкую, чем обычно, пропускную способность канала. :При использовании ARQ, если происходит ошибкз., то приемник просит, что бы передатчик повторил передачу информации. Схемы ARQ будут работать ;только в том случае, коrда есть разумный шанс передать информационный 'блок без ошибок. Если существует вероятность, что передаваемый блок уже . содержит ошибки, то в некоторых случаях он тоже будет передаваться по 'БТОРНО. Лучше Bcero схемы ARQ работают при наличии rрубых случайных ошибок, которые происходят не часто, но при использовании FЕСметодики потребовали бы слишком MHOro избыточности. Про ведем количественное сравнение избыточности FEC и АRQсистем. Для .FЕСсистем избыточность фиксирована и определяется количеством битов 'коррекции ошибок в коде (заштрихованные участки на рис. 5.22, а). В схеме ARQ тоже имеется фиксированный резервный элемент  биты обнаружения ошибок, но их меньше, чем в FЕСсистемах. Однако в схемах ARQ эффек тивно избыточны также и отдельные блоки передаваемой информации (за штрихованные участки на рис. 5.22,6), так что если их передачу приходится повторять слишком часто, то полная производительность будет ниже, чем в FЕСсистемах. Схемы ARQ, как правило, обладают меньшей сложностью, чем FЕСсистемы, поскольку обнаружение ошибок проще, чем их исправление. Однако схемы ARQ требуют обратноrо канала к передатчику с достаточно низкой интен 
218 Передача данных в сетях: инженерный ПОДХод сивностью ошибок. Кроме Toro, в то время как FECcxeMbI имеют фиксиро ванную задержку, схемы ARQ вводят переменную задержку, зависящую от количества необходимых повторных передач. Поэтому они не подходят для служб с постоянной задержкой, подобных речевым службам. FEC ARQ Избыточность  Избыточность '] ... ' iV\ а б Рис. 5.22. Сравнение избыточности FEC и АRQсистем Возможно объединение FEC и АRQметодик. FЕСстратеrия наиболее эф фективна, коrда интенсивность ошибок относительно постоянна, в то время как АRQсистемы лучше применять для ошибок переменной интенсивности. Если характеристики канальных ошибок таковы, что наряду с большими па кетами ошибок существуют фоновые случайные ошибки с постоянной ин тенсивностью, то FEC можно использовать внутри ARQ дЛЯ Toro, чтобы ис праlЛЯТЬ фоновые ошибки постоянной интенсивности. Если же встретится пакет ошибок, то FЕСсистема откажет, но Тоrда сработает схема ARQ, KOTO рая повторит посылJ<y информации, чтобы попытаться исправить эти ошибки. Примером такой системы является так называемая "rибридная" схема ARQ. В ней используется FЕСметодика, но если она терпит неудачу, то вместо BTO ричной посылки блока посылается дополнительная информация коррекции оmибок, которая объединяется с уже посланными данными, чтобы попытать ся исправить ошибки. rибридные схемы ARQ требуют сложных xeM KOp рекции ошибок, но очень эффективны для служб, в которых допустима пере менная задержка. 5.6. Локальные сети Локальные сети (Local Area Networks, LAN 8 )  ЭТО, по существу, достаточно высокоскоростные сети передачи данных, которые связывают вычислитель ные устройства внутри неБОЛЫllОЙ rеоrрафической или производственной зоны (локальной области). По преимуществу, они при надлежат одной opra низации и не зависят от сетей общеrо пользования. 8 В отечественной литературе этому сокращению соответствует ЛБе  локальная ВblЧИСЛИ тельная сеть.  Пер. 
rлава 5. С точки зрения звена 219 Локальные сети  это, как правило, ведомственные частные сети в том смысле, что они обслуживают одну орrанизацию в пределах оrраниченноrо пространства. Затраты, связанные с локальной сетью и ее установкой, осуще ствляются из собственных средств пользователей (владельцев). Локальная среда обычно охватывает площадь максимум в несколько километров, заня тую относительно небольшим числом строений. Существует несколько требований к проектированию ЛБС: О они должны быть способны к обработке трафика данных, поскольку это основной и характерный для них тип трафика; О они должны обеспечивать высокие скорости передачи. Большинство коммуникационных требований сосредоточено именно в локальных областях, так что локальные сети должны иметь более высокие скорости передачи данных по сравнению с rлобальными сетями. Речь идет о CKOpO стях ОТ 1 О до нескольких сотен меrабит в секунду; [] они должны быть достаточно просты в управлении, так как операторами таких сетей являются сами. пользователи, а не специалисты коммуникаци онной компании. Это вообщето требует некоторой формы распределен Horo управления и общей среды передачи с совместным доступом; О они должны иметь низкую стоимость установки и обслуживания. Все эти требования приводят к необходимости ИСJ}ользования общеrо cтaH дарта на устройство, управление и недороryю cpдy передачи сети. Такой стандарт должен также обеспечить независимость от изrотовителя ceтeBoro оборудования. к настоящему времени соответствующими орrанизациями разработано и yr I$ерждено довольно MHoro сетевых стандартов, так что существует большая свобода их выбора. 5.6.1. Конфиryрации локальных сетей Ранние локальные сети обычно имели шинную конфиryрацию, поскольку это позволяло избеrать дополнительных сложностей, связанных с узлами KOMMY тации, и добавлять терминалы в любое место шины, а также облеrчало управление. Однако в этом случае требуется довольно дороrая среда переда чи в виде коаксиальноrо кабеля. С проrрессом в обработке сиrналов и уменьшением затрат на компоненты появились недороrие концентраторы, которые позволяют использовать более дешевые и достаточно скоростные неэкранированные витые пары, так что в настоящее время самой популярной конфиryрацией является физическая звезда, построенная на базе таких KOH центраторов. 
 Передача данных в сетях инженерный пoдxo Оптическое волокно не подходит для шинной системы, поскольку оно обра зует двухточечное звено. Поэтому оптоволоконные локальные сети имеют кольцевую или звездообразную конфиryрацию. НО независимо от Toro, используется ли физическая шина или звезда, локаль ные сети имеют общую среду передачи, которая, хотя и требует управления ДОС1)'пом к среде, но существенно уменьшает сложность управления, так что любую абонентскую систему можно просто подключить к ней и запустить в работу. Локальные сети ориентированы на работу с пакетами, т. к. для обработки пульсирующеrо и непредсказуемоrо трафика данных от самых разных источ ников больше подходит пакетная коммутация, а не коммутация каНШlOв. 5.6.2. ЛокаЛЬНblе сети rpYnnbl стандартов IEEE 802 Наиболее популярными стандартами локальных сетей является ряд CTaH дартов американскоrо Института электро и электронных инженеров IEEE 802. Эти стандарты (названные по имени одноrо из подкомитетов ШЕЕ) определяют семейство локальных сетей, дифференцированных в COOTBeT ствии. с их схемой управления доступом к среде передачи. На рис. 5.23 по казаны упрощенные соотношения между различными стандартами IEEE и моделью взаимодействия открытых систем (OSI) Международноrо инсти тута стандартов (ISO). В настоящее время существует более двадцати ,?тандартов ШЕЕ. Стандарт ШЕЕ 802.1 покрывает два нижних уровня модели OSI  lй (Звено данных, или КанШlЬНЫЙ) и 2й (ФuзическиU). Этот стандарт обеспечивает oc 1f. 0 8У дЛЯ формирования более высоких уровней и, по существу, является KOH 1'екстом для друrих стандартов. Стандарты 802.3, 802.4 и 802.5 определяют спецификации физическоrо и МАСуровней для трех различных типов ло кальных сетей: CSMA/CD, Token Bus (маркер ной шины) и Token Ring (Map KepHoro кольца). МАСэлементы определяют способы доступа к физической среде и обеспечивают подмножество функций звена данных. Функции BepxHero уровня звена данных определены в стандарте ШЕЕ 802.2. Этот стандарт обеспечивает единообразный интерфейс между MACypOBHeM любой локальной сети и протоколами более высоких уровней. Полное назва ние стандарта: ШЕЕ 802.2 Logical Link Control (LLC)  Управление ЛО2иче cкuм звеном. Он обеспечивает унифицированный интерфейс между протоко-- лами более высоких уровней и фактической сетью и делает реализацию МАСуровня локальной сети прозрачной (невидимой) для более высоких уровней и, в частности,  для приложений. 
rлава 5. С точки зрения звена 221 'ЕЕЕ 802 QS1 Управление лоrическим звеном Управление доступом к среде Физический YPOBeHb_ Сетевой уровень 802.1  802.2 Уровень лоrическоrо звена 802.3 802.4 802.5 CSМA/CD Token Token Bus Ring  Среда передачи Звено данных Физический _<;!"Ib Рис. 5.23. Стек протоколов IЕЕЕ 802 Блаroдаря LLc 9 радиовещательная сеть, например, представляется на сетевом уровне в виде двухточечноrо звена. LLC обеспечивает работу следующих служб: CI обслуживания без подтверждений и соединении  это дейтаrраммная служба, которая поддерживает только отправку и прием кадров. Простота делает ее самой леrкой в реализации и полезной в сиryациях, коrда сквоз ное управление ошибками и потоком данных оtеспечиваются более BЫCO кими уровнями; CI обслуживания, ориентироваННО20 на соединения  обеспечивает ВИр ryальный стиль соединения между точками доступа к службам, позволяет пользователю запрашивать установку и завершение лоrиче cKoro соединения, обеспечивает также управление ошибками и потоком данных. Полезно в приложениях, rде оконечное устройство относи тельно простое и работает с несколькими протоколами BepxHero уровня (если таковые вообще имеются). Примерами таких устройств являются терминалы; CI обслуживания с подтверждениями без установки соединений  обеспечивает механизм, с помощью Koтoporo доставка кадра подтвержда ется без необходимости установки соединения. Такое обслуживание по лезно в приложениях реальноrо времени, коrда сиrналы требуют подтверждений. 9 Из рис. 5.23 видно, что LLC (уровень лоrическоrо звена) является верхним подуровнем ка- нальноrо уровня (уровня звена данных) модели 081.  Пер. 
222 Передача данных в сетях инженерный пОДХов- 5.6.3. Адресация устройств Стандарты ШЕЕ определяют 48разрядный MACaдpec, который разделен на 4 части (рис. 5.24). Первый бит указывает, предназначен ли кадр для Одиноч Horo (О) или rрупповоrо (1) адресата, а второй  является ли он универсаль ным (О) или локально управляемым (1). Третье поле указывает часть адреса, которую изroТОвители реrистрируют (при получении) в ШЕЕ, а три послед них октета выбираются изrотовителем устройства. Адрес устройства rло бально уникален и обычно зашивается в аппараryру. 11 22 Ш 3ареrистрирован в IEEE иночный Lупповой 24 Номер интерфейса о: универсальный 1: локально управляемый Рис. 5.24. MДCaдpec IEEE 802 Протокол преобразования адресов Адрес канальноrо уровня (например, определенный в ШЕЕ 802)  это адрес, который распознает сетевая плата хостузла. Он называется адресом точки прuсоедuненuя к сети (Network Point of Attachment, NP А). Более высокие уровни используют друrой адрес (обычно, IP), поэтому пакет более BbIcOKoro уровня с IРадресом должен быть инкапсулирован (встроен) в пакет каналь Horo уровня с адресом каналъноrо уровня (рис. 5.25). Таким образом, сущест вует потребность в отображении (преобразовании) между этими двумя типа ми адресов. Для IPaдpecOB Э1'о отображение выполняет протокол разрешения (преобразованuя) адресов (Address Resolution Protocol, ARP). IРдейтаrрамма Кадр (Frame) 802.3 NPAaдpec Рис. 5.25. IPnaKeT и ero адрес, инкапсулированный в пакет Ethernet 
(лава 5. С точки зрения звена 223 Хостузлы И шлюзы хранят пары адресов IPINPA всех хостузлов своей сети в специальной таблице, которую называют АRPтаблицей. АRPпротокол ис пользуется для Toro, чтобы информировать станции об этих адресных парах и обеспечить преобразования между IP и NРАадресами и наоборот. В примере на рис. 5.26 шлюз принимает IРдейтаrрамму для хостузла, чей NРАадрес он не знает. Поэтому он рассылает широковещательный пакет АRPзапроса с собственной парой IPINP A адресов и IРадресом узла, KOTO рый он разыскивает. Соответствующий хостузел распознает свой IРадрес и посылает обратно на шлюз сообщение ARPoTBeTa со своей парой IРINРАадресов. Узнав, куда следует посылать данный пакет, шлюз отправ ляет ero нужному адресаry и обновляет АRPтаблицу для будущеrо исполь зования. Входы АRPтаблицы периодически объявляются устаревшими, что позволяет учитывать любые изменения в' CTpYKrype сети. Полезным свойст вом АRPпротокола является то, что АRPтаблицы строятся автоматически и ие должны устанавливаться вручную. .... т Широковещательный АРRзапрос  ! (I'."'C'! Ответ на АРRзапрос Рис. 5.26. Операции АRРпротокола Обратный протокол преобразования адресов Обратный протокол преобразованuя адресов (Reverse Address Resolution Protocol, RARP), как видно из ero названия, выполняет обратное отображе иие адресов, т. е. аппаратный адрес преобразуется в IРадрес. Полезно не 
224 Передача данных в сетях: инженерный подход хранить lPaдpeca в хостузлах, а иметь ОДИН, централизованно управляемый список ЭТIix адресов. Эro позволяет леrко изменять адреса и справляться с про блемами 6ездисковых рабочих станций, которые не MOryr хранить постоянные записи своих IPaдpecoB. Протокол применяется во время заrpузки узла, Korдa тот направ.ляет в сеть (и в частности на сервер) rpупповое сообщение: "Знает ли ICIO-RИбущ. мой IPaдpec?". CepBp принимает это сообщение и просматривает свои таблицы (или просит об этом Koroтo еще), и затем пересылает найденный адрес обр а 1'Но на запросивший узел. Друrие станции сети тоже MOryr слушать этот диалоr и локально сохранять э1)' информацию в своих ARPтаблицах. RARP ПОЗВоляет разделять IРадреса между не часто используемыми XOCT узлами. Однако, поскольку эти узлы не имеют постоянных IPaдpecoB, с ними будет ТРУДно ВС'I)'пать в контакт, и поэтому на них невозможно выполнять такие проrраммы, как проrрамма W ebcepBepa. С друrой стороны, такие службы MOryт нормально работать на узлах, которые постоянно включены. 5.6.4. Локальная сеть IEEE 802.3 (Ethernet) Стандарт IEEE 802.3 описывает физический и МАСслои локальной сети, ИСПОЛЬЗУЮЩей множественный доступ с контролем несущей u 06наружеllием столкновений (Carrier Sense Multiple Access with СоШsiоп Detection, CSMA/CD). Этот стандарт базируется на локальной сети Ethernet, разработанной фирмой Xerox, а имена Ethernet и CSМA/CD часто рассмаТРИВаются как синонимы. Впрочем, хотя между ними MHoro общеrо, но все же они не в точности одинаковы. CSMA/ СDсети используют шинную технолоrию (на основе ЛО2ической ши ны) и так Называемое манчестерское кодирование. Физическая среда переда чи таких сетей строится по следующим стандартам: (] lOBase-S  "толстый" коаксиальный кабель с линейной скоростью 1 О МБИ'l'/с. Это ориrинальная версия Ethernet с максимальной длиной cer мента 500 М. , (] lOBase-2  "тонкий" коаксиальный кабель с линейной скоростью 10 Мбиl'/с. Такую сеть часто называют Cheaperпet. Она имеет максималь ную ДЛину cerMeHTa 185 м; (] lBase:S  витая пара с линейной скоростью 1 Мбит/с и тополоrией физи ческои З8езды, но лоrически она действует как шина; (] lOBase--l'  витая пара с линейной скоростью 1 О Мбит/с и тополоrией физичеСI(ОЙ звезды; (] lOBase-F  оптоволокно с линейной скоростью 1 О Мбит/с и звездной тo полоrие; (] lОВrоаdЗ6  широкополосная версия, работающая по коаксиальному Ka белю. 
rлава 5. С точки зрения звена 225 На рис. 5.27 показана CSMAICDceTb простой конфиryрации. Лоrически сеть представлена одиночной шиной. Если у узла есть информаuия для передачи, то ero трансивер (приемопередатчик) "прослушивает" трафик линии (KOHTpo лирует несущую). Если на шине нет трафика, то передается один кадр дaH ных. Если шина используется друrим узлом, т. е. занята, то трансивер ждет, пока линия не освободится и только тоrда начинает передачу. MACKaдpы принимаются всеми узлами как в широковещательных сетях. Трансивер aд ресата идентифицирует кадр, предназначенный для этоrо узла, по адресному полю принятоro кадра. Нежелательные кадры сбрасываются. C" [ ! ? 1" !J 6 Q ) Длина cerMeHTa Рис. 5.27. Шинная структура IE 802.3 На рис. 5.28 показан формат кадра ШЕЕ 802.3. Кадр имеет переменную длину 'и начинается с 8байтовой преамбулы, первые 7 байтов которой содержат код 101 О I О I О, а последний байт  код 1 О 1 О 1 О 11, так что два последних бита это ro байта (11) отмечают начало кадра. За преамбулой следует адрес пункта назначения и адрес источника, оба в 6байтном NРАформате. В двух сле дующих байтах указывается длина поля данных, затем Идет само поле дaH UbIx и, наконец, 4байтовая проверочная последовательность кадра. Если ДЛина поля данных меньше 46 байтов, оно расширяется символами заполнителями до 46 октетов, так что полный кадр имеет длину, достаточную для схемы доступа CSMA/CD. 7 6 6 2 46 s L < 1500 байтов 4 .а r::: I!! Адрес Адрес со Заполнители nреамбула :s: :z: LLСданные FCS :ii пункта :s: источника  (если нужно)  назначения со о. Рис. 5.28. Формат кадра IEEE 802.З 
226 Передача данных в сетях: инженерный подхо"! Формат кадра ориrинальной Ethernet слеrка отличается от формата кадра IEЕЕ 802.3. В нем определяется просто 8байтовая преамбула, без выделения разделителя начала кадра, но биты в действительности те же. Однако поле ДЛИНЫ в ориrинале было полем типа, определяющим используемый прото кол, например, IP. Совместимость поддерживается тем фактом, что все пер воначально определенные типы кодов используют числа, большие 1500, так что сетевой адаптер может отличить кадр Ethernet от кадра ШЕЕ 803.2. Если в сети ШЕЕ 802.3 используются друrие протоколы, это указывается в начале поля данных. 5.6.5. Высокоскоростные сети Ethernet Высокоскоростные сети Ethernet  это набор сетей, базирующихся на KOH центраторах и методах доступа протокола CSMA/CD. Хотя работа ориrи нальноrо протокола CSMA/CD была оrраничена физическими факторами, архитектуры с центральными концентраторами не имеют таких оrраничений, поскольку шина в таких архитектурах скорее лоrический, а не физический элемент, и поэтому нет никаких проблем, связанных с распространением сиr налов. Высокоскоростной доступ реализуется через комбинацию усовершен ствованной среды передачи и методов кодирования плюс увеличение числа проводов. Существуют высокоскоростные Еthеrпеtсети трех типов: (] изохронная Ethernet (isoENET); (] быстрая Ethernet; (] rиrабитная Ethernet. Изохронная Ethernet Изохронная (синхронная) Ethernet  это, по существу, расширение стандарта 10BaseT. Пропускная способность синхронноro канала увеличена почти вдвое (точнее, на 6,144 Мбит/с). это расширение предназначено для обслуживания мультимедийноrо трафика, чувствительноrо ко времени (mu1timedia time sensitive traffic). Характеристики такой сети определены в стандарте ШЕЕ 802.9 IsoENET. Сеть IsoENET может поддерживать 96 синхронных каналов по 64 Кбит/с вместе с поддержкой roлосовой связи по телефонной сети. Синхронный сиrнал 20 Мбит/с передается по витой паре, но манчестерское кодирование заменяется кодированием по схеме 4В5В, которое используется в FDDIпротоколе передачи данных по оптическим линиям. Эта схема коди рования имеет 80%ю эффективность (для сравнения  манчестерское коди рование имеет 50%ю эффективность). Система является rибкой и обновляемой. Для нее требуется специальный isoENET KOHцeHтpaTOp, но пользователи, не требующие изохронной под 
rлаsа 5. С точки зрения звена 227 держки, MOryт использовать адаптерные платы стандарта 10BaseT. В покуп ке платы адаптера isoENET нуждаются только пользователи, требующие поддержки изохронных передач. Быстрая Ethernet Быстрая Ethernet  это термин, который отсылает нас к трем спецификациям физическоrо уровня (предназначенным для работы на скоростях до 100 Мбит/с), формирующим часть дополнения к стандарту ШЕЕ 802.3Jl (рис 5.29). эти спецификации отличаются используемыми методами кодирования и средой передачи. Они совместимы со всеми друrими стандартами ШЕЕ 802. Уровень звена данных . LLC МАС Подуровеньсинхронизации Независимый интерфейс I среды Кодирование Кодирование В86Т 485В Физический уровень B ВВ 1 OOBase Т 4 1 OOBase тх Рис. 5.29. Стек протоколов быстроrо Ethernet (РМА  Physical Medium Attachment, подсоединение к физической среде, РМО  Physical Medium Dependent, зависимый от физическоro носителя) Изменения в среде и методике кодирования возможны изза использования физической звезды вместо шины. Манчестерское кодирование работает на тактовой частоте, которая вдвое превышает требуемую скорость передачи данных. При кодировании по схеме 4В5Т выбираются 4 двоичные цифры и заменяются на 5 двоичных цифр. Дополнительный бит используется для за щиты. По существу  это блочный код с эффективностью 80%. Он перено сит в 1,6 раза больше данных, чем манчестерский код, использующий ту же тактовую частоту. При кодировании по схеме 8В6Т берутся 8 двоичных цифр и отображаются 6 троичными. Такая методика кодирования способна переда вать в 2,6 раза больше данных, чем манчестерская схема, использующая ту 
228 Передача данных в сетях: инженерный подход же тактовую частоту. Далее приводится краткая характеристика трех CTaH дартных спецификаций физической среды для таких сетей: r:J 100Взsе-ТХ  ИСПОЛЬЗ1ет две пары высококачественноrо сбалансирован 80ro UTpIO (или STpl ) кабеля 5й катеroрии и кодирование по схеме 4BSB l2 с высокой тактовой частотой. Это та же конфиryрация пар, что и у спецификаций 1 О Base Т Ethemet (1 О Мбит/с), те же разъемы (RJ45) и та же максимальная длина cerMeHTa (100 м), но спецификация 100BaseTX требует кабеля более BbIcoKoro качества. Если установлена сеть Ethernet типа 1 OBase Т с UТРкабелем 5й катеrории, то в дальнейшем возможно ее обновление до типа 1 OOBase ТХ; r:J 100Base- Т4  работает с UТРкабелем более низкоrо качества (3й KaTe rории) с тактовой частотой 25 Мбит/с. Хотя длина cerMeHTa (100 м) та же, что и у сетей типа 1 OBase Т и 100BaseTX, данная сеть использует четыре пары проводов, а не две. Три пары выделяются для данных (с мультиплек сированием передаваемых по ним СSМА/СDкаДров), а последняя пара используется для управления. Дrrя кодирования применяется схема 8В6Т; О 100BASEFX  использует два мноrожильных мноrомодовых оптоволо конных кабеля, один  для передачи, друrой  для приема. Используется кодирование по схеме 4В5В и такое преимущество сетей типа 100BaseT, как возможность построения больших сетей. rиrабитная Ethernet rиrабитная Ethernet  это дальнейшее расширение стандарта ШЕЕ 802.3. По аналоrии с быстрой Ethernet основные принципы работы (структура кадр&, доступ к среде по протоколу CSМAlCD) были сохранены, что позволяет ис пользовать в этой схеме более медленные Еthеrпеtстандарты, в то время как скорость работы была увеличена. На рис. 5.30 показан типичный пример rиrабитной Ethernet, rде она используется как маrистраль между KOHцeHтpa торами типа 100BaseT. В таком варианте rиrабитная Ethernet заменяет CTa рые технолоrии, подобные FDDI. Несмотря на то, что в этом случае узлы должны быть заменены, можно использовать те же оптоволоконные связи с существенным увеличением скоростей. И хотя нет никакой технической при чины напрямую использовать rиrабитную Ethernet для терминалов, все еще существует несколько типов настольных компьютеров, требующих столь BЫ соких скоростей передачи данных. 10 UТP  сокр. от Uпshielded Twisted Pair, неэкранированная витая пара (кабельные системы на основе неэкранированных попарно скрученных медНЫХ проводов).  Пер. 11 SТP  сокр. от Shielded Twisted Pair, экранированная витая пара (термин используемый ДЛЯ кабельных систем на основе экранированныХ скрученных пар медных проводов).  Пер. 12 4858  читается как "4 из 5".  Пер. 
(лава 5. С точки зрения звена 229 1000Base-X/Т КонцентраторlПереключатель Оптоволокно или коаксиал ,/ '1:] D D Высокопроизводительные серверы Рис. 5.30. rибридная сеть с rиrабитной Ethernet Далее ПРИВОДИТСЯ краткое описание спецификаций четырех ТИПОВ физиче ;,ских сред, используемых в rиrабитной Ethernet: iO 1000BaseCX  средой передачи является одножильный 150омный Meд 1 ; НЫЙ про вод С максимальным расстоянием между устройством и KOHцeH f тратором 25 м; JO 1000BaseТX  использует 4 пары UТРкабеля 5й катеrории (каждая пе редает со скоростью 250 Мбит/с) с максимальным расстоянием между YCT ройством и концентратором 100 м; .. ;,0 1000BaseSX  использует коротковолновую передачу (длина волны :' 850 нм) по OДHO или мноrомодовому оптоволокну. Мноrомодовые опто волоконные линии Moryт быть длиной до 275 м, с удвоением до 550 м для одномодовоrо оптоволокна; ;0 1000BaseLX  использует OДHO или мноrомодовоое оптоволокно и передачу на длине ВОлны 1300 нм. В этом случае мноrомодовые оптоволо конные линии MOryт быть длиной до 550 м, а одномодовые  до 5 км. : Метод ДОС'I)'па, связанный с rиrабитной Ethernet, должен быть функциональ , но эквивалентен методам ДОС'I)'па всех друrих версий стандарта 802.3. OДHa ко, как отмечалось в разд. 5.3.1, схемы CSMAlCD требуют, чтобы передачи имели минимальную длину, равную удвоенной задержке распространения по среде. Десятикратное увеличение эффективной битовой скорости по cpaBHe нию с высокоскоростным Ethernet (СSМAlСD)протоколом (или CTOKpaT ное  по сравнению со стандартным СSМAlСDпротоколом) может сущест венно сократить диапазон передач или эффективность звена. Для систем с оrраничениями на задержку распространения/передачи разрабо тан специальный способ передачи кадров, называемый расширением Hecy щей, который позволяет терминалам обнаружить любое возможное столкно 
230 Передача данных в сетях: инженерный пoдxo вение. После передачи стандартноrо СSМAlСDкадра терминал в течеНие времени, paBHoro, по крайней мере, удвоенному времени распространения, продолжает передавать некоторые дополнительные данные. Эти данные добавляются к кадрам, длина которых меньше 512 байт' З (рис. 5.31). Характер дополнительных данных расширения не столь важен, но они должны добавляться в конец кадра, сразу после поля с проверочной последовательностью (FCS). ДЛЯ идентификации и удаления этих данных средства физическоrо кодирования используют помощь KOHцeHTpaTO ров/переключателей. Заметим, что СSМAlСDкадр остается без изменений, и ero можно передавать в подходящий выводной порт без какихлибо изме нений или дополнительной обработки. ,", , 100 -1 ;;;':; !:'А .т.:.:: q 100 м 1 cl о 4  200 м @ 1000 Мбит/с Минимальный размер кадра J:l 4 . 6 6 2 46$L<1500байт 4 ..а  Адрес Адрес '" Заполнители :J: Преамбула  лункта s LLСданные FCS Расширение :if назначения источника  (если нужно) '" о. 4 . Минимальный временной интервал = 512 байт @ 1000 Мбит/с Рис. 5.31. Столкновения в rиrабитной сети Ethernet Недостатком этой методики является добавление к коротким пакетам слиш ком большоro числа служебных байтов. Кроме Toro, если нужно передавать меньше байтов, чем в минимально допустимом по размеру кадре, то размер кадра должен оставаться таким же, как в быстрой Ethemet (с битрейтом 13 Напомним, что ДЛЯ сетей Ethernet 10 и 100 Мбит/с минимальный размер кадра равен 64 байтам, так что 512  это восьмикратный минимальный размер (512 = 64 х 8). 
rлава 5. С точки зрения звена 231 100 Мбит/с). Этоrо следует ожидать, т. к. синхронизация у этих вариаmов Ethemet устроена одинаково. Если терминалу нужно передать несколько KO ротких кадров, то для повышения эффективности можно использовать Meтo дику nакетuрованuя кадров (frame bursting). Если при передаче минимально-- ro по размеру кадра (512 байт) не произошло никаких столкновений, то опасность миновала, и терминал эффективно управляет средой. Это значит, что при передаче первоrо кадра терминал может использовать расширение несущей, и, если никакоro столкновения не произошло, то ему разрешается продолжать передачу друrих коротких кадров, но уже без расширения (рис. 5.32). Чтобы предотвратить монополизацию среды терминалами, время, в течение KOТOpOro отдельный терминал может передавать пакеты, оrраничи вается. Этот предел называют nОрО20М nакета (burstlimit) и устанавливают равным 8192 байтам. . MACKaдp L!:"'';':W ''' . tI,A МАС-кадр МАС-кадр  - т enepb друrие терминалы MOryт . осуществлять доступ Возможны столкновения Нет столкновений, поэтому ра8Щирения не требуются I о( Начальный доступ Пороr пакета 8192 бита Рис. 5.32. Пакетирование кадров 10-rиrабитная Ethernet Один из подходов к разработке новых коммуникационных систем можно проиллюстрировать на примере работ по расширению rиrабитной Ethemet до 10rиrабитной. В расширенном варианте Ethemet используется та же CTPYK 'lYpa кадра и тот же протокол, что и в стандартной Ethemet, хотя возможен только переключаемый доС1)'П, известный под названием полный дуплекс. Полнодуплексный режим был необязательным режимом в более медленных стандартах Ethemet (rде с ero помощью терминал имел выделенное подклю чение к переключающему концентратору), но он становится обязательным для 1 Оrиrабитной Ethemet. Преимущество этоro режима состоит в том, ЧТО он делает ДОС1)'пной для терминала полную пропускную способность канала, так что коэффициеm ее использования может приближаться к 100%, и по 
2з2 Передача данных в сетях: инженерный подход скольку среда не разделена между несколькими терминалами, то нет никаких столкновений, оrраничений на размер кадра или потребности в расширении несущей. При этой скорости большинство физических линий должны Про кладываться только двухточечным оптоволокном, а медные провода можно было бы использовать лишь для очень коротких линий, длиной приблизи тельно 20 метров. 1 Оrиrабитный вариант Ethemet предложен как более дe шевая альтернатива сетям типа SDWSONET, единственной технолоrии, pa ботающей на таких скоростях. 5.6.6. Локальные сети IEEE Token Ring (Маркерное кольцо) Стандарт IБЕЕ 802.5 Token Ring описывает локальную сеть с маркерным кольцом. В отличие от стандарта IБЕЕ 802.3 (для сетей CSMAlCD) ДОС1)'п к среде в таких сетях управляется при помощи специальноrо кадра  маркера (token). В локальных сетях, использующих маркеры, имеются один маркер и узлы, которые MOryт передавать свои данные, только завладев этим MapKe ром. Маркерные сети работают в ЛО2uческом кольце (рис. 5.33), но физически допустимы кольцо, шина или звезда. Физические кольцевые конфиryрации используются в реrиональных (MAN) сетях, а локальные (LAN) сети обыч но иМеют шиную или звездообразную конфиryрацию. Высокоскоростная версия стандарта 802. требует конфиrурации звезды. .......*"-_.... .... ,/'/ i \ \. '. ......."'..... ............... ...........,\ ) .' "" ......................-- Рис. 5.33. Token Ring Подобно стандарту 802.3, возникшему из локальной сети Ethemet, стандарт 802.5 вырос из маркерной локальной сети, разработанной фирмой IВM. Сис теМа работает на скоростях 4 и 16 Мбит/с и поддерживает 8 приоритетных уровней. Определена также версия со скоростью 100 Мбит/с, работающая как переключаемая звезда. Сети с маркерным кольцом (Token Ring) имеют преимущество перед СSМА/СDсетями, потому что доступ в них детерминирован, и узлам можно назначать различные приоритеты. Однако кольцо не устойчиво в том смысле, 
rлава 5. С точки зрения звена 2ЗЗ что маркер движется по кольцу, и отказ узла может разорвать это кольцо и привести к отказу всей сети. Друroй стандарт ШЕЕ 802.4 Token Bus (MapKep ная шина) пытается устранить эту проблему, позволяя узлам отсоединяться или присоединяться к лоrическому кольцу. Он поддерживает 4 уровня при оритетов, но чрезвычайно сложен, т. к. каждый узел требует поддержки 10 таймеров и 25 переменных состояния. Маркеры пересылаются от старших к младшим адресам, причем каждый узел хранит адрес следующей станции в лоrическом кольце. Если следующий узел будет не в состоянии принять Ma кер (или сам узел будет потерян), то держатель маркера начинает процедуру восстановления, чтобы найти HOBoro преемника и удалить этот узел из лоrи ческоrо кольца. Узлы, покидающие кольцо, не принимают маркеры. Перио дически текущий держатель маркера принимает запросы от узлов, желающих присоединиться к кольцу. Это достиrается использованием специальных Kaд ров "запрос преемника". Затем предшествующий узел настраивает свой Xpa нимый адрес на следующую станцию. 2или6 2или6 132 4 .s ..о ер ер os ер  s :1 s а. s :r О iIi :1 Адрес :;f жos ..о s ер Е: :ii 8. пункта Адрес '" "'а. :iii I[ Данные FCS  gif i!i [if назначения источника ер :r <t Е:  t) :I:a. >- FF  биты типа кадра (00 - МАС-кадр. 01  LLCKaдp. 1х - не определено) ррр - биты nриоритетов (8 уровней). М  биты монитора. RRR  биты резервироаания (8 уровней). т  биты маркера Рис. 5.34. Форматы кадров стандарта IEEE 802.5 5.6.7. Стандарт IEEE 802.11 Wireless LAN (Беспроводные локальные сети) Стандарт ШЕЕ 802.11 определяет несколько связанных стандартов беспро водных локальных сетей (Wireless LAN, WLAN), которые работают на раз личных скоростях. Подобно друrим сериям стандартов ШЕЕ 802, WLAN стандарты 802.11 совместно используют функции уровня звена, что облеr чает взаимодействие различных стандартов. Как и друrие серийные CTaH дарты, эти стандарты различаются средой передачи, конфиryрацией и Meтo дом доступа. 
234  Передача данных в сетях: инженерный подход Управление доступом к среде Стандарты IEЕЕ 802.11 WLAN используют схему с состязаниями, подоб ную CSMA/CD. Однако, как отмечено в разд. 5.3.1, схемы с контролем He 'Сущей не очень хорошо работают в радиосреде изза проблемы скрытых терминалов. Однако квантованную схему было бы трудно орrанизовать в распределенной WLАNсреде, т. к. она потребовала бы использования центральной базовой станции, а в локальной среде проблема скрытых терминалов не слишком ощутима, поэтому IEЕЕ 802.11 пытается исполь зовать схему множествеННО20 доступа с контролем несущей (Carrier Sense Multiple Access, CSMA). Обнаружение столкновений в радиосреде  весьма непростое занятие, пото му что оно требует, чтобы терминал был способен передавать и принимать данные в одно и то же время, а также, чтобы он был способен отличать по ступающий сиrнал от тoro, который он передает (на той же частоте). ЭТО сложная задача, которая, если была бы решена, сделала бы терминалы дo вольно дороrими устройствами. В любом случае, если бы столкновение про изошло с кадром CKpbITOro терминала, то оно никоrда не было бы обнаруже но передатчиком. Это означает, что обнаружение столкновений в схеме CSMAlCD заменяется на "предотвращение столкновений", т. е. CSMAlCD заменяется на схему CSMA/CA (Carrier Sense Multiple Access/Collision Avoid апсе  множественный доступ с контролем несущей и предотвращением столкновений). Прежде чем начинать свою передачу, терминалы прослушивают линию, что бы узнать, выполняется ли в ней чьято передача. Хотя это не очень надежно, но уменьшает риск столкновений. Если они не слышат никакой передачи в течение интервала, известноro как распределенное межкадровое пpocтpaH ство (Distributed Inter Frame Space, DIPS), то они передают свой пакет. По ДОЖДав некоторое время после приема кадра (которое называют коротким межкадровым пространством (Short Inter Frame Space, SIFS), принимающий узел посылает сообщение подтверждения. Эти подтверждения требуются из за Toro, что сам терминал не может обнаружить столкновения, поэтому об ратно на передатчик должен быть послан положительный признак TOro, что данные были получены правильно. Ожидая DIРSинтервал, остальные Tep миналы не будут сталкиваться по ошибке в течение SIFSинтервала и разру шать подтверждение еще одноrо правильноro сообщения (направляемоro ne редатчику друrим терминалом). Как и в протоколе IEЕЕ 802.3, коrда терминал захочет чтото передать, то, обнаружив передачу в канале, он будет ждать. Однако, в отличие от cтaH дартноrо варианта IEЕЕ 802.3, rде терминал делает свою первую попытку передачи немедленно, протокол ШЕЕ 802.11 требует, чтобы терминалы с цe 
rлава 5. С точки зрения звена 235 лью уменьшения вероятности столкновений ждали в течение случайноrо ин тер вала времени даже при первой попытке. Кроме тoro, протокол позволяет терминалам объявлять об их намерении пе редавать данные. Передатчик посылает приемнику специальный сиrнал, тpe бующий разрешения на посылку данных, приемник подтверждает ero, после чеrо передатчик посылает свои данные. При посылке сообщений с обоих концов линии возрастает вероятность TOro, что любой терминал, достаточно закрытый от взаимодействия с передачей, все же будет слышать подтвержде ния или передатчика, или приемника, что смяrчает проблему cKpblToro Tep минала. Конфиrурации WLАNсети имеют эффективную шинную CТPYKrypy с беспроводным ("воз душным") интерфейсом, формирующим общую среду. Обычная компоновка состоит из узлов, объединенных в локальную сеть, реализующую досryп к внешнему миру или фиксированным внешним устройствам, таким как прин теры (рис. 5.35, а). Поскольку WLAN не имеет центральноrо контроллера, , возможна также независимая rруппировка узлов, называемая спецuШlЫЮЙ (ad . boc) сетью, которая формируется из любых терминалов. в пределах далЬН(r сти связи (рис. 5.35,6). B 9gB Q ВВ а б Рис. 5.35. Конфиryрации беспроволочных локальных сетей 5.7. Соединение локальных сетей Первоначальные спецификации локальных сетей ШЕЕ 802.3 CSMA/CD ycтa навливают физические оrраничения для длины сеrмента и числа пользовате лей, которые MOryт быть присоединены к этому cerMeHry. Для обычной вер.- сии CSMA/CD максимальная длина cerMeHTa равна 185 м, а число пользователей не должно превышать 30. Ясно, что индивидуальный cerмeHT имеет весьма оrpаниченный размер, что особо чувствительно для больших 
236 Передача данных в сетях: инженерный подход орrанизаций. Однако для эффективноrо расширения масштаба локальной ce тв индивидуальные сеrменты можно связывать с помощью повторителей, "онцентраторов и мостов. 5.7.1. Повторители По стандар1)' ШЕЕ 802.3 CSМAlCD LAN дЛЯ соединения сеrментов допуска ется максимум 4 повторителя, что позволяет построить 5сеrментную сеть длиной 985 м, способную подцерживать до 150 присоединенных узлов. При ЭТом создается довольно большая зона столкновений. Соединять повторители можно по каскадной (рис. 5.36, а) или мноrопортовой (рис. 5.36, б) схеме. Поскольку повторитель это довольно простое устройство  он повторяет (ретранслирует) ПОС1Упающие биты для всех друrих активных cerмeнтoB  протокол CSМAlCD не обращает внимания на ero присyrствие. Это значит, что одновременная передача любой парой узлов на любом cerMeHTe приводит к СТолкновению (рис. 5.36, в). Единственной дополнительной функцией, появ ЛЯющейся у сетевоro менеджера при использовании ретранслятора, является Возможность блокировать индивидуальные cerMeHTbI и останавливать nOBTo рение битов между этим и остальными сеrментами. Такая изоляция может леr ко нарушить управление и должна выполняться с большой осторожностью  например, в случае каскадной конфиryрации, подобl:lая изоляция cerMeHTa MO жет закончиться тем, что "большая" локальная сеть будет разделена на две. ::tщ а i'#    (jI  l "tl!&ЯlII!мmJll!II!IIIiII.... .1 IIIa.L1  е 1';; ....:.] z..':."JI.л..III1 б  в Рис. 5.36. Соединение локальных сетей с помощью повторителей: а  каскад; б  мноrопортовая схема; в  область столкноаения 
rлава 5. С точки зрения звена 237 Вообще rоворя, роль повторителя состоит в обеспечении физическоrо соедИне-- ния cerMeНТOB локальной сети. Однако следует признать, что, несмотря на свою простоту, физическая шинная струюура не идеальна. Существуют активные устройства, так называемые концентраторы (hubs), которые выполняют Функ ции управления доcryпом к среде передачи (обычно по протоколу CSМAlCD) в звездообразной схеме. Лоrически концентратор продолжает работать по схеме широковещательной шины, но станции MOIyr теперь связываться через цeH тральное устройство, используя иную передающую среду, например, неэкрани рованную вИ1)'IO пару UTP5, а не просто коаксиальный кабель. Для соединения устройств с концентратором используются разъемы RJA5 и витые пары про во до в класса 10BaseT длиной до 100 м, что обеспечивает MaK симальное расстояние между узлами щ)рядка 200 м. Далее LАNсеrменты можно связывать иерархически через специальные ма2истральные (backbone) концентраторы (на самом деле это просто повторители). Концентраторы и повторители выполняют, по существу, одну и ту же функцию  имитацию СSМА/СDдоступа. Кроме Toro, концентраторы обеспечивают дополнительные свойства управления сетью, включая cpeд ства изоляции индивидуальных ветвей сети, сбор и просмотр статистики cerMeHToB (например, интенсивность столкновений, коэффициент использо вания и т. д.). ... 5.7.2. Мосты в отличие от концентраторов и повторителей, мосты позволяют сохранять независимость индивидуальных локальных сетей. Соединение трех CSМA/CDcerMeHTOB через концентратор создает единую сеть с максималь ной суммарной скоростью 10 Мбит/с. Использование же моста позволяет увеличить суммарную скорость до 30 Мбит/с, т. к. образуется, по существу, три отдельных области столкновений. Столкновение в одном сеrменте не бу дет отражаться на друrих сеrментах. Прозрачные мосты Наиболее общим типом моста является так называемый "прозрачный", или "древовидный", мост. Такое устройство должно быть полностью "открытым" в том смысле, что им можно быстро и просто пользоваться. Мост работает, по существу, в смешанном режиме. Он принимает все кадры, передаваемые по всем присоединенным к нему сетям, и затем пытается направить кадр в подходящую локальную сеть, просматривая большую маршрутную таблицу. Алrоритм маршрутизации работает следующим образом. Первоначально таб лицы пусты, и все принимаемые мостом кадры направляются во все осталь 
238 Передача данных в сетях: инженерный подход ные непередающие cerMeHTbI. Коrда мост принимает кадры, он может pe шать, какой локальной сети принадлежит каждый узел. Например, в трехсеrментной сети, показанной на рис. 5.37, узел А хочет послать кадр уз лу D через Мост 1. Коrда мост принимает кадр из cerMeHтa с узлом А, он Ha правляет ero на оба cerMeHTa, содержащих узлы В и D. Но мост также "зап мннает", что сеrмент узла А включен, и обновляет маршрyrную таблицу. Если какойнибудь кадр прибудет в Мост 1 для узла А, то мост теперь знает, что'сеrмент этоro узла включен. Чтобы rарантировать, что маршрyrные таблицы отражают динамическое co стояние сети (коrда машины MOryт подключаться к линии и отключаться от нее), они периодически очищаются и процесс запускается повторно. Однако для правильной работы этой схемы в ее структуре не должно быть циклов, и должно быть сформировано дерево охвата (spanning tree). Рис. 5.37. LANcerMeHTbl, соединенные мостами Алrоритм дерева охвата Простой подход, не допускающий циклов, не особенно устойчив. Если мост около вершины структуры откажет, то большая часть сети станет недоcryп ной. Противостоять этому можно только с помощью циклов  множествен ных соединений между сеrментами  но если мы сделаем это, то простой алrоритм, описанный ранее, не будет работать, и пакеты будyr циркулир вать бесконечно. По этой причине в мосты встраивается специальный алro ритм, который отсекает некоторые пути в сети с множественными соедине ниями, формируя так называемое дерево охвата (spanning tree), которое Является не содержащим циклов подмножеством системы. В качестве KopHeBoro моста выбирается мост с самым высоким приоритетом н наименьшим идентификатором. Мосты реryлярно обмениваются сообще ниями, позволяющими определять, какой из их портов прокладывает к KOp невому мосту путь наименьшей стоимости. Этот порт называют корневым (root port) и используют для связи с корневым мостом. Стоимость пути, свя занноrо с портом, зависит от ero битрейта (скорости передачи информации в битах). Чем выше битрейт, тем ниже назначаемая стоимость. 
r лава 5. С точки зрения звена 239 Для отправки кадров каждоro LANcerMeHTa к корневому MOC'I)' выбирается мост с пyrем наименьшей стоимости. Если два моста имеют пyrи одинаковой стоимости, то выбирается мост с минимальным идентификатором. Порт, co единяющий мост с cerMeHToM кабеля, называется обозначенным портом (designated port). После Toro, как это сделано, любой порт моста, который не является ни корневым, ни обозначенным, отключается. При этом остается только один маршрyr от любоrо cerMeHTa до KopHeBoro моста, что и форми рует дерево охвата. Мосты периодически обмениваются сообщениями, так что, если какойто мост откажет, то дерево охватов будет изменено так, что бы принять ЭТО во внимание. На рис. 5.38, а представлена исходная сеть с множественными соединениями (мосты обозначены однобуквенными идентификаторами, а кабельные cer менты  алфавитно-цифровыми). На рис:5.38, б показана сеть после работы алrоритма дерева охвата (корневые порты отмечены как RP (Root Port), а обо- значенные  как ОР (Designated Port)). RP 51 4 54 ОР а б Рис. 5.38. Дерево охвата Мост с маршрутизацией от источника Подход с деревом охвата не оптимален, т. к. используется только подмноже СТво сети  дерево охвата. Альтернативой прозрачных мостов с деревом ox вата является схема на базе мостов с маршрутизацией от источника. Разра ботанная для использования в сетях с маркерным кольцом (Token Ring), эта схема rарантирует максимальное использование полосы пропускания ло кальной сети. Такая схема, по существу, базируется на знании узлом передачи, rде нахо- Дится узел адресата и какой пyrь нужно выбрать. эту информацию получают при помощи специальных широковещательных кадров "обнаружения", KOТO 
2'40 Передача данных в сетях: инженерный подход рые передаются всякий раз, коrда узел не имеет такой маршрутной информа ции. Кадры обнаружения содержат маршруты, что и позволяет системе найти все маршруты и выбирать наилучший, но их передача может существенно повлиять на производительность, а схема становится непрозрачной. 5.8. ПРОТОКОЛbl rлобаЛЬНblХ сетей 5.8.1. Стандарты SDH/SONET До введения в 1992 r. стандартов SDH I4 /SONET 1S оптоволоконные системы базировались, в основном, на патентованной архитектуре и оборудовании. Эrозначит, что сетевые операторы часто привязывались к одному изrотови телю оборудования. Нет ничеrо удивительноro, что они были заинтересованы в появлении OTKpbIToro стандарта, который позволял бы им покупать COBMec тимое оборудование от разных изrотовителей, обеспечивать конкурентоспо с06ные цены на оборудование и сокращать потребность в дороrом и сложном взаимодействии с друrими сетями. Следующий недостаток традиционных систем  то, что все они относятся к классу иерархических плезиохронных (почти синхронных) систем. В плезио хронных системах наблюдается колебания скоростей битовых потоков. В стандартах SDH/SONET применяет синхронный подход, вследствие чеrо бит?вые потоки имет совершенно одинаковые скорости передачи. rлав ный недостаток плезиохронных систем состоит в следующем  для мультиплексирования (уплотнения) несколько потоков, которые имеют раз личные скорости, в них добавляются дополнительные Биты, чтобы довести скорости всех потоков до единоro общеrо уровня. Эта методика известна как битстаффиН2 (битовая подстановка). Ее не следует путать с одноименныМ процессом, который обычно используют при описании кадров. Чтобы из влечь конкретный битовый поток, вся иерархия сиrналов плезиохронной сис темы должна быть демультиплексирована, а остальные битовые потоки перед отправкой к их адресату должны быть повторно мультиплексированыl. Нетрудно заметить, что это сложная и дороroстоящая операция. ДrnI транспортировки сиrналов в стандарте SDH предусмотрены так называе мые синхронные транспортные модули (Synchronous Transport Modules, SТМ). Они определены для различных битовых скоростей, а самый низкоскоростной 14 SDH  Synchronous Digital Hierarchy, синхронная цифровая иерархия, европейский стандарт на оптоволоконные средства передачи данных.  Пер. 15 SONET  Synchronous Optical Network, стандарт синхронных оптических сетей, определяю щий скорости, сиrналы и интерфейсы для синхронной передачи по оптоволоконным лини ЯМ.  Пер. 
rлава 5. С точки зрения звена 241 модуль называют кадром SТМ 1. STMKaдp содержит верхний раздел и раздел полезной наrpузки (информации)  это так называемый административный элемент. Формат кадра STM 1 включает 9 строк и 270 столбцов, rдe каждая позиция содержит один байт. Из этих 270 столбцов, первые девять формируют верхний раздел, а остальные 261 предусмотрены для полезной наrpузки. Раздел полезной наrpузки содержит виртуальные контейнеры (Virtual Containers, УС). Виртуальные контейнеры MOryт быть вложенными, так что в один виртуаль ный контейнер допускается поместить друrой. Полезная наrpузка STM 1 MO жет содержать один контейнер YC4, в который, в свою очередь, допустимо поместить друrие виртуальные контейнеры, например YC4 может содержать четыре контейнера yC31. Кроме тоro, виртуальные каналы возможно сцеп лять, что обеспечивает ряд дополнительных свойств поточной полосы пропус кания. Расположение виртуальных контейнеров в административном блоке не фиксировано, им разрешается "плавать" по последовательности SТМмодулей; это позволяет компенсировать рассоrласование по фазе. Например, если один из подчиненных сиrналов имеет более низкую скорость, виртуальному контей неру может быть разрешено плавно скользить (изменять свою начальную по. зицию в кадре) по временному периоду. Указатели в верхнем разделе помечают начало виpryальноrо контейнера, т. е. начало пакета данных в STM модуле. это ключевое свойство SDНпротокола, которое подrотавливает дaH ные к извлечению из битовоrо потока. в SDH имеется полный набор сообщений об авар».ях и ошибках (в стандарте их называют дефектами и аномалиями). Аварийные сообщения передаются в верхнем разделе SDH. Полный отказ линии передачи вызывает аварийное сообщение "Loss of Signal" (Потеря сиrнала). Приемный узел информирует передающий узел об отказе линии через обратную линию в форме аварийно rp сообщения "Remote Defect Indication" (Индикация удзленноrо дефекта). J{оrда rенерируется сообщение "Loss of Signal", служба Automatic Protection Switching (Переключение на автоматическую защиту) SDK, переключает бу дущие передачи на резервную линию. Аналоrично, ошибки на принятом сиr нале обозначаются аварийным сообщением "Remote Error Indication" (Инди кация удаленной ошибки). Надежность стандарта SDНlSONET является существенным фактором ero популярности. 5.8.2 Режим асинхронной передачи (А ТМ) IP  очень rибкий протокол, который работает во мноrих сетях и технолоrи ях передачи данных. Однако эта rибкость отражается на стоимости. Общий характер формата IРпакетов показывает, что они не оптимизированы по oт ношению к любому транспортному механизму и трудны для обработки. это важно для высокоскоростных сетей, rде сложность влияет на обработку за держек в переключателях и маршрутизаторах. 
f.f2  Передача данных в сетях: инженерный подхо4.. режим асинхронной передачи (Asynchronous Transfer Mode, А ТМ) предлаrает 8Ной подход. Он использует небольшие пакеты фиксированноrо размера, Ha ,ыремые ячейками, и очень простые функции в транзитных узлах. В заrо ловках выполняется несколько простых операций обнаружения ошибок, но для содержимоrо ячеек никакой про верки или восстановления ошибок не BЫ Щ)JIНЯется, и используется передача информации, ориентированная на соеди нНИЯ, что позволяет применять в сети очень быстрое и простое переклю чalOщее оборудование. Каков бы ни был тип трафика, он переносит ряды ячеек. Узкополосный тpa фик будет использовать ячейки HaMHoro реже, чем, скажем, широкополосный (такой, например, как видеотрафик). Поскольку использование ячеек не син хронизировано и ведется по требованию, то поток ячеек не вписывается во фреймовую структуру. Коrда источник трафика rенерирует интенсивный па кет, то используется MHoro ячеек, если же у источника нет трафика, то ячейки становятся доступны для использования друrими потоками, образуемыми, например, с помощью статистическоrо мультиплексирования. службы А 1М Режим асинхронной передачи (А ТМ) ПО,lЩерживает трафики 4x типов (рис. 5.39): [] CBR (Constant BitRate)  с-постоянным битрейтом (битовой скоростью). Разработан прежде Bcero, чтобы нести синхронный чувствительный ко времени (timesensitive) трафик, типа rолосовоrо; [] VВR (Variable ВitRate)  с переменным битрейтом. Разделен на два под класса: реальноro времени (Real Time, RT) или не реальноrо времени. VBR используется для служб, в которых поток данных не производится или транспортируется на постоянной скорости, например, видеослужб. Для RТслужб оrраничения, связанные с задержками (дрожание и пр.), HaMHoro более жесткие. VВRслужба определяется в терминах средних и пиковых битрейтов; [] ABR (Available BitRate)  с доступным битрейтом. Обеспечивает службу "максимальных усилий" и пытается использовать пики и спады, связанные с мультиплексным VВRтрафиком. Если пропускная способность велика, АВRисточники MOryт передавать на более высокой скорости, но, коrда VВRнаrpузки увеличиваются, АВRисточники должны уменьшать своИ скорости. АВRтрафик предназначен для приложений, rде задержка не co ставляет особой проблемы. Полоса проnyскания АВRтрафика может быть оrраничена так, чтобы пользователь получил по крайней мере минималь ный уровень обслуживания; 
rлава 5. С точки зрения звена 243 CJ UBR (Unspecified BitRate)  снеопределенным битрейтом. Это служба с низкой стоимостью и низким качеством обслуживания (QoS), которая не обеспечивает никаких rарантий производительности. Идеален для таких приложений, как фоновая передача файлов. ВЫВОД ячеек CBR VBR ABR UBR Фиксирован Средний и пи Управляемый ный ковый raранти Неопределенный рован сетью Чувствителен Нечувствительныкзадержкам к задержкам Нет Да Нет Задержка Управление переrрузкой Рис. 5.39. Типы трафиков АТМ На рис. 5.40 при водятся основные характеристики четырех основных служб rPовня адаптации АТМ(АТМ Adaptation Layer, AAL). Каждая служба разра ботана для поддержки различных приложений в А ТМсетях и описывается в рминах режима переключения, битовых скоростей, допуска по задержкам и ;примера приложения, использующеrо этот уровень адаптации. J AAL1 AAL2 AAL5 AAL 3/4'6 Ориентированные на соединения .11\ Без соединений Постоянные Переменные Чувствительны к задержке Нечувствительныкзадержке IРдля Переключаемые rолос Пакетное протокола Х.25 мультимедиа видео цифровые служ бы (SMDs 17 ) Рис. 5.40. AAL службы Стек протоколов АТМ Стек протоколов АТМ по казан на рис. 5.41. Уровень АТМ полностью незави сим от физическоrо механизма, используемоrо для передачи. Он посылает данные, передаваемые уровнем адаптации АТМ, своему адресату. Подуро вень сходимости передачи (Transmission Convergence sublayer) обеспечивает 16 Первоначально AAL 3 и AAL 4 были похожими, но разными службами, но затем было при мято решение слить их в единую ААLслужбу  AAL 3/4. 17 SMDS  Switched Multimedia Digital Service, переключаемая мультимедиа цифровая служ ба.  Пер. 
244 Передача данных в сетях: инженерный подход инreрфейс с транспортной средой. Наиболее важные ero функции  это BЫ JIВJIение ячеек и rенерация НЕСсообщенийI8.   . ! ! i I ! , L...."'"):::.'."....,..,...._ J AAL AAL АТМ АТМ АТМ Сходимость Сходимость анспоnтиnовки анспоnтиnовки одимост" анспо ти онки Физический Физический Физический Конечная точка Переключатель АТМ АТМ Конечная точка АТМ Рис. 5.41. Набор протоколов ДТМ. Слева приведен стек протоколов 081: Д (Дррliсаtiоп)  прикладной; Р (Рrеsепtаtiоп)  представительный; 8 (8ession)  сеансовый; Т (Transport)  транспортный; N (Network)  сетевой; D (Data Link)  канальный; Р (Physical)  физический Поскольку А ТМ не обеспечивает услуr типа повторной передачи искажен пых данных, уровень адаптации А ТМ (AAL) задает сквозной протокол, KOТO рый обеспечивает интерфейс между уровнем А ТМ и протоколами более BЫ соких уровней (включая приложения). AAL отвечает за прием сообщений от протоколов более высоких уровней и их фраrментацию на меньшие объекты, предназначенные для транспортировки в ячейках. Он также обеспечивает любые дополнительные услуrи, которые моrли бы потребоваться приложе ПИЯМ более BbIcOKoro уровня, такие как синхронизация, упорядочивание, TaK тирование и обнаружение/исправление ошибок. AAL, таким образом, обеспечивает основные функциональные возможности А ТМ. Наличие ААLуровня у А ТМ означает, что А ТМ  это не только канальная технолоrия, но она может также обеспечить транспортный и сетевой уровни, без необходимости использования друrих протоколов, таких как тсрпр. Oд нако популярность IРпротокола в обеспечении общей структуры сетей пока зывает, что сквозной А ТМпротокол не оказался столь успешным, как ожи далось, хотя он имеет HaMHoro лучшую по.z:щержку rарантий качества 18 НЕС  Header Error Control, контроль ошибок заroЛО8Ка.  Пер. 
rлава 5. С ТОЧКИ зреНИЯ звена 245 обслуживания, чем даже у служб базовоrо IРпротокола. Впрочем, именно А ТМ обычно используется для обеспечения связи с базовой сетью. Передача АТМ Парадиrма А ТМ ориеmирована на соединения. Ячейки транспортируются по траюу передачи и переключаются таким образом, чтобы они достиrли cBoero адресата. Тракты передачи орrанизованы лоrически в виртуальные каналы (Virtual Channel, УС) и виртуальные nyти (Virtual Path, УР). Виртуальный канал  это, по существу, виртуальная схема и основная транспортная еди ница А ТМ, образующая соединение между источником и адресатом. Порядок передач rараmирован, но ВИрl)'альный канал предрасположен к потере ячеек. ВИрl)'альный путь  это эффективно сrруппированные и упакованные вир l)'альные каналы (рис. 5.42). Виртуальные каналы Виртуальные каналы Виртуальные каналы Путь передачи ... Рис. 5.42. Виртуальные каналы, упакованные в виртуальные пути Ячейка А ТМ имеет длину 53 байта: 5 байтов  заroловок и 48 байтов  информация. Заrоловок используется для адресации, контроля ошибок и управления сетью. Имеется возможность использовать отдельный бит для указания BbIcOKoro или низкоrо приоритета. Это свойство привлекает зна чительное внимание исследователей при разработке приоритетных схем принятия вызовов. На рис. 5.43 приводятся два формата ячеек: первый представляет ячейки интерфейса ПользовательСеть (User to Network Interface, UNI), а второй  ячейки иmерфейса CeтbCeтb (Network to Network Interface, NNI). Формат и, следовательно, функциональные возможности этих ячеек аналоrичны, He мноro различаются только заrоловки. Различие состоит в том, что NNI ячейка предоставляет больше возможностей для адресации  у нее в 12 разрядном поле Идентификатор виртуалЬНО20 пути (Virtual Path Identifier, VPI) выделено поле Контроль обобщеННО20 потока (Generic Flow Control, GFC), которое управляет передачей ячеек, коrда необходим множественный ДОСl)'п к среде. 
,246 Передача данных в сетях: инженерный подхо!:!. Ячейка интерфейса ПользовательСеть (UNI) Полезная Контроль Тип Идентификатор Идентификатор наrpузка ошибок полезной (48 байтов) заroловка 1+ наrpузки виртуальноrо канала виртуальноrо пути  Полезная наrpузка (48 байтов ) -Контроль .. ошибок заrоловка Тип полезной наrpузки . 1 01234567 01234567 01234567 Идентификатор Идентификатор Контроль виртуальноrо виртуальноrо обобщенноrо канала пути потока """<l l ' ] Qe. И 2Е"!!!Т $!!P  jo 1234567 ячеiiКИ234567   1  Ячейка интерфейса CeтbCeтb (NNI) Рис. 5.43. Форматы ячеек АТМ Контракт АТМ-трафика Прежде чем направлять поток ячеек между конечными точками, должно быть установлено соединение. Частью этоrо процесса является передача так назы BaeMoro контракта трафика (traffic contract), описывающеrо характеристики траФика. Все взаимодействующие стороны должны твердо придерживаться этоro контракта. Ключевыми элементами контракта являются дескриптор (описатель) источника и требуемое качество обслуживания (QoS). Дескриптор содержит информацию о скоростях передачи, задержках и потерях. (] Пuковой скоростью (передачи) ячеек (Peak СеН Rate, PCR) называют верхний предел скорости потока ячеек. Эта скорость не требуется все Bpe мя, если трафик не относится к типу CBR (с постоянным битрейтом). НОРМШlьная скорость (передачи) ячеек (SustainabIe СеН Rate, SCR)  это Верхний предел средней скорости передачи ячеек (она меньше или равна PCR). Трупповым допуском (burst tolerance) называют флуктуации BpeMeH Horo интервала между двумя последовательными ячейками. (] Разброс (времени) задержки ячеек (Се Н Delay Variation, CDV) описывает OT КJ10нения, которые существуют между моментами отправки (или моментами прибьпия в пункт назначения) последовательных ячеек в данном потоке. (] Скорость потери ячеек (СеН Loss Rate, CLR) определяет число от6рошен HblX ячеек в схеме АТМ. Скорость ошибочных ячеек (сеН error rate) связа на с искажением содержимоrо ячеек, которые вызываются rлавным обра Зом незначительными сбоями в среде передачи. Скорость потери ячеек ЯВляется более ПОЛНОй характеристикой потерь, чем скорость ошибочных Ячеек, и, как правило, должна быть больше последней. (] Процесс определения контракта трафика и затем распределение ресурсов для поддержки соединения и удовлетворения требований качества обслу Живания (если возможно) называют контролем за установкоu соединений (Connection Admission Control, СЛС). 
rлава 5. С точки зрения звена 247 Контроль параметра использования После соrласования контракта между пользователем и сетью сеть должна ra рантировать, что трафик, направляемый в сеть источником, не превышает оrраничений контракта. Нарушение контракта способно привести к переrруз ке, которая может затронуть друrих пользователей, не нарушавших своих контрактов. Контракт может быть нарушен пользователем умышленно, или сетевые эффекты MOryт неосторожно заставить поток превысить соrласован ные пределы. Поэтому существует необходимость в системе наблюдения за потоками трафика, которую часто называют контролем параметра uспользо ванuя (Usage Parameter Control, UPC). Используя эту систему (рис. 5.44), сеть следит за потоками ячеек (в виртуаль ных каналах или виртуальных путях) и определяет ячейки, нарушающие рабо 1)' сети. Эти ячейки либо маркируются, чтобы сбросить их на более поздней ,стадии передачи, если поток столкнется с сmyацией переrрузки, либо c6pacы ваются немедленно. Orмеченные ячейки вносят в сеть дополнительную стои 'мость, которая может быть переложена на пользователей. Маркировка выпол ;tiяется изменением СLРбита в заrоловке ячейки и части AALзаюловка. Все 'ячейки с подтверждениями передаются без изменений. . j1иковая и, иноrда, средняя скорость, достиrаются с помощью специальноrо ...еханизма, который называют "протекающим сосудом". Это  простой ,счетчик, который увеличивается на 1 (инкрементная операция) с прибытием 1(аждой ячейки и уменьшается на 1 (декрементнц операция) с предваритель :'Ifio соrласованной скоростью, т. е. ведет себя точно так же, как дырявый сосуд "при заполнении ею водой. Коrда счетчик достиrает предопределенноrо поро :"rз, ячейки маркируются или отбрасываются. UРСконтроль размещается как ,fвнутри сети, так и на ее rpаницах. ;Чтобы максимизировать производительность и rарантировать, что контракт : не нарушается, источники MOryт формировать трафик еще до ero ввода в  сеть. Для этоrо используются соответствующие устройства. IID IEJ ""'I I _ I!:D Действительная скорость :t:....-:. :""'?"---' : '_ I Маркировка . '" или сброс   l8J "" y,",.< J 1, ш-rl " . II!I!I......J :,"...,..,J Соrласованная скорость Рис. 5.44. Система наблюдения АТМ 
248 коммутация в А ТМ лТМ базируется на концепции быстродействующих аппаратнореализованных коммyrирующих (переключающих) устройств (рис. 5.45). Существует большое разнообразие различных коммyrационных архитеК1)'р, каждая со своими "за" и "против". Независимо от своей внутренней струК1)'рЫ, AТМKoMмyraTop BЫ полняет две ключевые функции: Передача данных в сетях: инженерный подход [] он должен быть способен распознавать и интерпретировать адресную ин формацию в заroловке ячейки. Наряду с входным портом, эта информация указывает, куда должна быть направлена ячейка; [] он должен передавать А ТМячейку со cBoero входа на правильный выход очень быстро. Кроме Toro, существует дополнительное требование  до тoro, как ячейки покинyr KOMмyraTop, их заrоловки должны быть OTKOp ректированы. Маршрyrизация выполняется либо в форме самомаршрутизации, либо на основе таблиц маршрутизации. В первом случае входной каскад KOMMyтaTO ра добавляет в заroловок ячейки дополнительную информацию, которая ис пользуется, чтобы направлять ячейку через коммутирующую матрицу. До момента оmравки ячейки ее заrоловок удаляется. В случае табличной Map шрyrизации, используются специальные справочные таблицы, отображаю щие адресную инфорацию заrоловков на направления в коммутирующей матрице и связанные с ними элементы. AТМKOMMyтaTOpы, подобные показанному на рис. 5.45, по существу, явля ются мультиплексорами. Они должны иметь дело с состязанием, т. е. с си 'I)'ацией, коrда две ячейки, прибывающие в одно и то же время, требуют OT правки через один и тот же порт. Эта СИ'I)'ация разрешается с помощью буферизации или сброса ячеек. Поскольку обе этих процедуры влияют на кa eCТBO обслуживания (первая добавляет задержку, а вторая увеличивает ск()- рость потери ячеек), то они должны быть под коmролем. В!l80 8Е]-З В!If8E] (,;@  вg [;E]f110 Рис. 5.45. Коммутация в АТМ 
rлава 5. С точки зрения звена 249 Ячейка А ТМ содержит два адресных поля  Индикатор виртушzьносо KaHa па (Virtual Channel Indicator, VCI) и Индикатор виртушzьносо пути (Virtual Path Indicator, VPI). VСIиндикатор используется, чтобы определить вирту альный канал, по которому должна передаваться ячейка. Таблица маршрyrи зации в каждом узле будет преобразовывать УС! поступающей ячейки в УС! следующеro узла, куда будет направляться эта ячейка. VРIиндикатор ис пользуется, чтобы указать виртуальный путь, на котором запланирована yc тановка сквозноrо соединения для передачи ячеек. Возможна также KOMMyra ция виртуальных путей. В этом. случае используются сразу оба поля  УР! и VCI. Для преобразования адресов и модификации VPI и VСIполей требуют ся специальные KOMMyraTopbI. VP и VСкоммyrация показаны на рис. 546. При VРкоммyrации переклю чаются виртуальные пути и все виртуальные каналы, которые в них coдep жатся. При VСкоммyrации переключаются только индивидуальные вирту альные каналы. VC1...1J""" "V. I · t" . VC7 VC2____ /.iiiiiii;;''" ,,: :,"""" /  tt" ,. ,,.' / '1Л!JJ]. ) . ;......... ..'. . VC4 1 ,' /I ,   VC2 ;:'" '.,  ;  VC5 Коммутация Коммция виртуальных путей виртуальных каналов Рис. 5.46. Коммутация виртуальных путей Термин виртушzьный используется потому, что хотя ячейка считает канал или путь, по которым она передается, своей собственностью, они не предна значены для использования только одной этой ячейкой. На самом деле канал ИЛИ путь совместно используются мноrими друrими ячейками. Ключевой ,проблемой управления является назначение ресурсов каждому виртуальному nyrи или каналу. Возможны соединения разных типов. Постоянные виртушzьные схемы (co . единения) (Pennanent Virtual Circuits, PVC) эквивалентны перекрестным co единениям и означают продолжительное назначение ресурсов соответствую ЩИМ путям или потокам. Коммутируемые виртушzьные схемы (Switched Virtual Circuits, SVC) переключают пути и, следовательно, ресурсы динами Чески, коrца требуется соединение. Непрактично нумеровать виртуальные каналы в масштабах всей сети. VC. номера назначаются динамически на каждом cerMeHTe соединения между ис точником и адресатом. По мере прохождения ячеек через коммyrационные узлы YCHOMepa MOryr изменяться. Всю рабо'I)', связанную с этими измене 
250 Передача данных в сетях: инженерный подход ниями, выполняет сетевой уровень (с помощью таблиц маршрутизации). На рис. 5.47 показан пример сети с тремя маршрутами и соответствующая таб лица маршрутизации коммутационноrо узла Х. In ou\ Д1 УЗ 81 У2 82 У1 У1 82 У2 81 УЗ Д1 2   Рис. 5.47. Нумерация виртуальных путей Попя АТМ-ячейки Формат А ТМячейки показан на рис. 5.43. В дополнение к 48разрядному по лю полезной наrрузки, в ней имеются три rлавных поля управления. Поле Идентификатор типа полезной нazрузкu (Payload Туре Identifier, PТI) указы вает, относится ли эта ячейка к пользовательскому или к сетевому потоку, переrружен ли поток или нет, и к AAL KaKoro типа относится ячейка. Второе поле управления  это поле Приоритет потери ячейки (СеН Loss Priority, CLP), которое используется службой Контроля параметра использо вания (UPC), чтобы определять относительный приоритет ячейки. Если CLP флажок установлен (== 1), то это указывает, что ячейка имеет более низкий приоритет и может быть сброшена сетью, если происходит переrрузка пото- ка. CLP == О указывает на более высокоприоритетные потоки. Флажок CLP может быть установлен источником или изменен сетью. 8разрядное поле Контроль ошибок засоловка (Header Error Control, НЕС) защищает заrоловок ячейки от любых ошибок, которые MOryr привести к He правильной маршрутизации. Полезная наrрузка здесь не защищается  pe шением этой задачи занимаются верхние уровни или даже само приложение. для защиты полезной наrрузки потребовалось бы больше 8 разрядов и, кроме тoro, возросли бы неnpоизводительные затраты. Для защиты заrоловка используется восьмиразрядный порождающий MHoro 1(Лен, который способен обнаруживать и исправлять все однобитовые ошиб ки, обнаруживать (но не исправлять) все двухбитовые ошибки в 4байтовой 
rлава 5. С точки зрения звена 251 функциональной части заrоловка. Механизм обнаружения и коррекции OCHO ван на двух мноrочленах: LI G{x)==X 8 +X 2 +X+ 1(100000111); LI с{х)==х 6 +х 4 +х 2 + 1(01010101). Их можно построить из простых цифровых схем. Как показано на рис. 5.48, защита работает в двух режимах  коррекция и обнаружения. Нормальная работа проходит в режиме коррекции, коrда без ошибочные ячейки пересылаются на более высокие уровни. Если происходит одиночная ошибка, то она исправляется, ячейка передается, но состояние из меняется на состояние обнаружения. Изменение состояния происходит также и при обнаружении MHoroKpaTHblx ошибок. Устройство переходит из состоя ния обнаружения обратно в состояние коррекции, в котором обнаруживаются безошибочные ячейки. MHorOKpaTHbIe ошибки Ячейки не передаются   .ш . , .". " .  "'-. ' Одиночные ошибки исправляются L"'''''''" "'" '<' ::> Ячейки передаются   Нет ошибок Ячейки передаются  а  Ошибочные ячейки сбрасываются Нет ошибок Ячейки передаются Рис. 5.48. Обнаружение ошибок АТМ Процедура синхронизщии показана на рис. 5.49. Система стартует в состоя нии поиска, а в состояние предсинхронизации переходит только тоrда, коrда получен успешный НЕСпроцесс. Затем она или возвратится к поиску. если про изойдет сбой следующеrо НЕСпроцесса, или перейдет в состояние Син хронuзацuя (в котором ей и нужно быть), коrда произойдет !J. последователь ных успешных НЕСпроцессов. Система будет оставаться в этом состоянии, пока а последовательных НЕСпроцессов не окончатся неудачей, после чеrо она возвратится к состоянию поиска. Типичными значениями параметров а и !J. являются 7 и 6 или 7 и 8. Точное их значение зависит от используемой cxe мы передачи. 
252 Передача данных в сетях: инженерный подход OДHёI ошиБКёI  ". '<.,  .v..... !J. успешных НЕСпроцессов Рис. 5.49. Синхронизация АТМ 5.9. IР"транспортировка в rлобальных сетях 5.9.1. Двухточечный протокол Двухточечный протокол (PoinHoPoint Protocol, РРР)  это протокол TpaHC портировки сетевых пакетов по двухточечным линиям. Он было разработан для замены протокола SLIP (Serial Line IP, IРпротокол для последовательных линий). В отличие от SLIP РРРпротокол может переносить целый блок дей тarpaMM ceтeBoro уровня, тоrда как SLIP предназначен исключительно для последовательных IРпередач. РРР был первоначально разработан для связи по простым последовательным линиям. Весьма вероятно, что изза ro спо собности к изменению конфиryрации и надежности, этот протокол использу ется для соединения компьютеров по телефонным линиям с коммyrируемым доступом. Но РРР не оrраничен какойто конкретной транспортной техноло rией и может работать по любой двухточечной линии. Он используется, Ha пример, для транспортировки IРдейтаrрамм (и друrих типов дейтаrрамм 3ro уровня) между маршрyrизаторами по протоколам SDНlSONET. Структура PPPKaдpa показана на рис. 5.50. Каждый PPPKaдp начинается и заканчивается строкой 01111110. Она используется для определения rраниц кадра. Поскольку кадр имеет переменную длину, необходимо, чтобы эта строка не появлялась как часть информационноrо блока. РРР использует байтстаффинr, подобный битстаффинry, описанному в разд. 5.2, но работающему на уровне байтов. Если в сообщении появляется строка О 111111 О, то перед ней вставляется управляющий (escape) байт 0111 J 1 О J . 
rлава 5. С точки зрения звена 253 Над байтом данных, который отмечен еsсаребайтом, выполняется операция XOR (исключительное лоrическое ИЛИ) с числом 00100000 в качестве BTOpo ro операнда. Если в сообщении появляется сама управляющая последова тельность, то перед ней тоже вставляется управляющий байт. Приемник Bce rда удаляет управляющий байт из данных сообщения. Единственная цель управляющеrо байта состоит в том, чтобы предотвратить ложную интерпре тацию данных сообщения как разделителей кадров. В полях Адрес И Управление (оба размером по 8 битов) всеrда устанавли ваются значения 11111111 и 00000011 соответственно, хотя стандарт не исключает возможность установки друrих значений, определяемых позд нее. Поле Протокол определяет протокол ceTeBoro уровня, который пере носит кадр. 1 или 2 перемеННдЯ Полезная Harp'Ka 2или4 Контрольная сумма Рис. 5.50. Кадр РРРпротокола Для установки соединения и соrласования параметров передачи РРР исполь зует протокол управления линией (Link Control Protocol,. LCP). Кроме Toro, LCP используется для проверки состояния соедин@Ния и упорядоченноro ero изменения при завершении сеанса связи. Правила формирования PPPKaдpa заимствованы из протокола HDLC (High Level Data Link Control, управление звеном данных верхне20 уровня), который РРР использует в качестве основы. HDLC имеет ту же структуру кадра и разделители, и от Hero в кадр РРР перешли довольно избыточный адрес и поля управления. Протокол HDLC, который был разработан в 1979 r., более сложен, чем РРР. Коrда разрабатывался HDLC, проблем тактирования и синхронизации между устройствами было больше, чем Te перь, коrда появились усовершенствованные методы обработки. HDLC асинхронен в том смысле, что разделитель кадра может появляться в лю бой момент времени и будет обнаружен. Проблемами этоrо подхода явля ются потребность в байтстаффинrе, а также ошибки, искажающие пакет и приводящие к потере синхронизации. РРР может работать с друrими протоколами линии связи, например, с прото колом SDL (Simple Data Link, простое звено данных). Кадр SDL имеет в заro ловке поле длины, которое указывает длину кадра и позволяет быстрее обра батывать пакет. Поле длины кадра защищено от ошибок проверочной последовательностью кадра. 
254 Передача данных в сетях: инженерный подход 5.9.2.IP и SDH/SONET SDН/SONET  это простой интерфейс канальноrо уровня, и поэтому сам по себе не способен выполнять IРтранспортировку. Чтобы реализовать такую транспортировку в качестве канальноrо протокола, можно использовать пару протоколов PPPIНDLC. Были также разработаны предложения по использо ванию пары PPP/SDL. АТМ тоже может использовать SDНlSONET для своих транспортировок. В этом случае АТМ будет переносить IPKaдpbI, как описано в разд. 5.9.3, а SDНlSONET будет переносить ячейки А ТМ. Стеки протоколов для различ ных вариантов таких передач показаны на рис. 5.51. IP РРР IP AAL-5 АТМ Transport Convergence SONET Optical Fibre HDLC SONET Optical Fibre Рис. 5.51. Альтернативные подходы ДЛЯ передачи IP-кадров по SDH/SONEТ 5.9.З.IР и АТМ Для переноса РDUблоков IРпротокола по сетям А ТМ используется прото кол AAL5 (рис 5.52). AAL5  это простой протокол, обеспечивающий ми нимальные накладные расходы при транспортировке таких высокоуровневых РDUБЛОК08, как ячейки А ТМ. IРдейтаrрамма передается в поле полезной наrрузки РDUблока CPCS (Соmmоп Part Convergence Sublayer) адаnтационноrо уровня AAL5. Размер поля полезной наrрузки CPCSPDU колеблется между О и 65 538 байтами, так что этот PDU может пере носить IPnaKeT любоrо размера. Чтобы raрантиро вать, что CPCS-PDU содержит целое число 48байтных блоков, в Hero добав ляется дополнительное поле Раd-заполнителей. Эти 48байтные блоки из CPCSPDU вставляются в поле полезной наrрузки А ТМячейки. Обратите внимание, что AAL5 не вносит в поле полезной наrрузки АТМячейки ника ких служебных данных, так что все 48 байтов этоrо поля доступны для пере носа полезной информации. Кроме Toro, блок CPCS-PDU содержит также поле длины (2 байта) и поле CRC (4 байта). 
rлава 5. С точки зрения звена 255 C =!I':= < . J IP AAL5 АТМ Транспортный Стек протоколов Рис. 5.52. Перенос 'Рпакетов по АТМсетям АRР-протокол для IP/ATM Блаrодаря взаимодействию А TM и IРпротоколов IРмаршрутизаторы получают возможность орrанизовать высокоскоростное межсетевое взаи модействие по каналам, ориентированным на работу с А ТМячейками. Co единения между маршрутизаторами можно реализовать в форме SVC или PVCcxeM коммутации (см. разд. "Коммутация в АТМ''). В дополнение к форматированию РDUблоков, А ТМIIРпротоколы требуют исполь зования процедур разрешения адресов (чтобы соrласовать адреса IРмаршрутизаторов с соответствующими А ТМдресами). Эти процедуры подобны АRРпроцедурам локальных сетей за исключением Toro, что А ТМтехнолоrия ориентирована на соединения, а не на широковещатель ную передачу данных. Каждый маршрутизатор поддерживает ARP таблицу (по существу, динамический список), которая указывает, куда следует направлять каждый прибывающий IPnaKeT. Если эта таблица не содержит подходящеrо адреса, запускается специальная АRРпроцедура. АRРпротокол имеет две формы: АRPсервер и широковещательный ARP (рис. 5.53). В первом случае (рис. 5.53, а) маршрутизатор направляет cep веру (по виртуальному каналу) специальный АRРзапрос. Получив этот запрос, сервер отвечает маршрутизатору подходящим адресом, по KO торому маршрутизатор может отправлять полученную IРдейтаrрамму. В широковещательной АRРсистеме (рис. 5.53, б), маршрутизатор направля ет АRРзапрос всем маршрутизаторам, связанным с А ТМсетью, по специ ально выделенному для АRРзапросов виртуальному каналу. Маршрутиза тор адресата соrласует свой IРадрес с А TMaдpeCOM и посылает ответ с адресом на исходный маршрутизатор, используя тот же виртуальный Ka нал. Затем исходный маршрутизатор может передавать IРдейтаrрамму. 
256 Передача данных в сетях: инженерный ПОДХод  ARP-поток . IP-потОК ..  ARP-cepeep АТМ а .- 1''''''''';1  ARP-поток . IP-noтОК б Рис. 5.53. АRР-nротокол для АТМ-систем: а  серверный ДАР; б  широковещательный ААР 5.10. Реrиональные сети Реrиональные (МAN) сети  это высокоскоростные сети, охватывающие достаточно большие, по сравнению с локальными сетями, области, но не со столь ДЛИНными расстояниями, как в rлобальных (W AN) сетях. В отличие от локальных сетей реrиональные сети эксплуатируются телекоммуникацион- ными компаниями и обслуживают множество различных орrанизаций. Идеи, заложенные в разработки' реrиональных сетей, были заимствованы у локальных сетей, так что МАNсети часто описывают как большие и быстрые LANсети. Это, однако, не означает, что MACcxeMЫ локальных сетей напря мую подходят для использования в реrиональных сетях. С реrиональными сетями связано одно требование  широкая полоса про nyскания, т. е. более высокие скорости передачи. Для поддержки достаточно ШИрокоrо диапазона приложений, использующих МАNтехнолоrии, требу ются высокоскоростные линии передачи (100 Мбит/с и выше). Кроме TOro, МАNсети должны покрывать расстояния, превосходящие покрываемые ло- калЬНыми сетями, скажем, 100 км (вместо максимум 5 км В случае локальных сетей). Необходимо, наконец, рассмотреть характер служб, поддерживаемых 
rлава 5. С точки зрения звена 257 МАNсетями. В отличие от LANсетей в МANсетях требуется поддерживать как синхронный, так и асинхронный трафик. Видео и rолосовые службы, например, являются источниками с постоянной скоростью передачи (то есть с синхронным трафиком), что отличает их от более традиционных источни ков данных с асинхронным трафиком. Стандарт локальных сетей ШЕЕ 802.3 CSMA/CD не подходит для использо вания в среде реrиональных сетей по ряду причин: О увеличение скорости линии привело бы к тому, что протокол стал бы даже более неэффективным. Минимальную длину кадра пришлось бы увели чить, чтобы не возросла вероятность столкновений; О увеличение длины шины привело бы к увеличению задержки распростра нения и поэтому возросла бы верояТl'IOСТЬ столкновений. Это, конечно, можно было бы компенсировать увеличением минимальной длины кадра, но за счет дальнейшеrо уменьшения эффективности передачи; LI CSMA/CD  это, по существу, механизм асинхронноrо доступа и больше подходит для асинхронноrо трафика данных. Он далек от идеала при под держке синхронноrо трафика, который требует постоянных и предсказуе мых задержек. Для больших сетей больше подходит резервируемый доступ Он позволяет более эффективно использовать среду, что достаточно важно, поскольку стоимость большой сети зависит, скорее, от дли линий, а не от стоимости индивидуальных узлов. Кроме Toro, поскольку реrиональная сеть использу ется мноrими орrанизациями, то доступ к среде для них должен быть rapaH тирован. Схемы с состязаниями не дают такой rарантии. Разделительная линия между реrиональными и локальными сетями всеrда была довольно нечеткой, поэтому оnтоволоконный FDDIинтерфейс часто используется и в локальных сетях. Поскольку локальные сети становятся бы стрее, разработки, подобные rиrабитной Ethernet, предлаrают возможности, довольно похожие на возможности МАNсетей, но по более низкой цене. С друrой стороны, rлобальные сети теперь способны предложить скорости пе редачи, приближающиеся и даже превышающие скорости реrиональных ce тей, без какихлибо компромиссов по расстояниям. Поэтому, весьма вероят Но, что любые новые технолоrические разработки будут нацелены на рынок либо rлобальных, либо локальных сетей. 5.10.1. Интерфейс передачи данных по оптоволокну Интерфейс FDDI (Fibre Distributed Data Interface, интерфейс передачи данных по оптоволокну) был разработан Американским национальным институтом стандартов (ANSI) исключительно для высокоскоростных сетей передачи 
258 Передача данных в сетях: инженерный подход данных. Версия BToporo поколения FDDI 11 была создана для поддержки ин теrpированноrо трафика, и именно эту версию мы и будем здесь обсуждать. FDDI ориентирован на работу в высокоскоростных сетях (с битрейтом по pJIДКa 100 Мбит/с), использующих тополоrию физическоrо кольца. В приме неиии к реrиональным сетям FDDI обладает следующими ключевыми свой ствами: а маркерная схема управления доступом к среде, построенная по стандарту IEEE 802.5, который совместим со стандартом IБЕЕ 802.2 LLC (управление лоrическим'звеном). FDDI совместим со всеми локальными сетями IEEE; а тополоrия двойноro кольца, которая допускает полностью оптоволокон иый тракт длиной до 200 км (100 повторителей с максимальным расстоя иием между ними 2 км) И максимум 1000 оптоволоконных соединений. В результате FDDI может поддерживать до 500 пользователей, связанных друr с друrом на расстоянии более чем 100 км. Оптоволоконный кабель может быть OДHO или мноrомодовым. FDDI можно также использовать как LANстандарт для сетей с витыми парам и "роводов вместо оптово локна. Максимальное расстояние между повторителями в этом случае co кращается до 100 м. Чаще Bcero FDDI используется для связывания He . Скольких локальных сетей, как показано на рис. 5.54; а способность динамически распределять ширину полосы, чтобы можно было одновременно обеспечивать как асинхронную, так и синхронную службы. FDDI поддерживает до шестнадцати каналов по 6,144 Мбит/с со схемнопереключаемыми изохронными потоками данных. Каждый из этих потоков (по 6,144 Мбит/с) равен или трем CEPTKaдpaM19 (по 2,048 Мбит/с) или четырем Т1KaдpaM20 (по 1,544 Мбит/с). I Рис. 5.54. Использование FDDI для связи локальных сетей FDDI базируется на тополоrии двойноrо кольца. Два кольца можно исполь Зовать ИЛи для параллельной передачи, что обеспечивает эффективную CKO р<>еть передачи 200 Мбит/с, или, чаще, со вторым кольцом в качестве резерва. 19 СЕРТ  Conference of European Postal and Telecommunication Administrations, Европейская конференция почтовых и телекоммуникационных ведомств.  Пер. 20 ТI  линия Тl (термин, используемый компанией АТ&Т для обозначения каналов передачи цифровых данных с полосой 1.544 Мбит/с).  Пер. 
rлава 5. С точки зрения звена 259 в этом случае эффективная скорость передачи данных составляет 100 Мбит/с. Такая тополоrия обеспечивает высокую степень отказоустойчивости (рис. 5.55, а). Если узел или линия отказывает, то два кольца меняют конфи ryрацию и формируют одно кольцо. Если происходит один разрыв, то под держивается полная связность, но кольцо удваивает свою первоначальную длину (рис. 5.55, 6). Если происходит второй разрыв, то сеть разделяется на две отдельных сети, каждая из которых способна работать независимо, но с потерей полной связности (рис. 5.55, в). Несмотря на свое название, FDDIинтерфейс можно использовать и с медным проводом (не только с оптическим волокном), хотя в этом случае расстояние между повторителям.. сокращается до 100 м. При использовании оnтическоrо волокна это расстояние возрастает до 2 км. Фактически в FDDI используется скорость передачи 125 Мбит/с (по кольцу) и схема кодирования "4 из 5" (4В5В), rде каждый символ представляется 5 тактовыми интервалами и эф фективно представляет 4 бита. Это требует меньшей полосы проnyскания, чем при манчестерском кодировании, но, в отличие от манчестерскоrо коди рования, никакой синхронизирующей информации в сиrнале не присутству ет, поэтому используется длинная преамбула. Медная версия протокола ис пользует кодирование MLT3. r.  rJ  ",/. .".. '....1 ... а б в Рис. 5.55. Возможности отказоустойчивости FDDI: а  нормальная работа; б  одиночный отказ; в  двойной отказ в формате FDDIфрейма допускается информационное поле переменной длины (рис. 5.56). Фрейм FDDI начинается с 8байтовой преамбулы (РА), KO торая используется для синхронизации приемников. За ней следует однобай товый начальный разделитель (Start Delimiter, SD), который указывает начало кадра, и поле управления кадром (Frame Control, FC), в котором указывается функция фрейма. FDDI поддерживает 16 или 48разрядную адресацию, а на кольце можно ис пользовать смешанные адресные форматы: Адрес пункта назначения (Des tination Address, ОА) и Адрес источника (Source Address, SA) MOryT по этому иметь длину 2 или 6 байтов. За информационным полем Данные 
260 Передача данных в сетях: инженерный подход следует поле последовательности проверки кадра (Frame Check Sequence, FCS), и 4-битовый (то есть односимвольный) концевой разделитель (End Delimiter, ЕО), указывающий конец кадра. За кадром следует поле состояния кадра (Frame Status, FS), которое используется для ответа источнику. В нем может бьпь указано, что была обнаружена ошибка, что адресат распознал свой адрес, и что кадр был принят. 10 2 2 4 или 12 4 или 12 8 1 или 2 3 FC Адрес пункта FCS ЕО FS назначения а 10 2 2 1 или 2  б Рис. 5.56. Кадры FDDI (размеры приведены в символах: 4 символа"" 2 октета): а  информационный кадр; б  маркер Работа МАСуровня FDDI В FI)DI используется маркерная система, подобная ШЕЕ 802.5, и, так же как в ЭТом стандарте, трафик может иметь разные приоритеты. Станции разрешено передавать кадры только в том случае, если она захватила маркер. В кольце может находиться сразу несколько маркеров. Правила захвата и освобождения маркера определяются типом трафика, типом маркера и ypOB нем приоритета. Прием и захват маркера не синонимы, и, если станция при НИмает маркер, но он не разрешает передачу, то маркер должен быть возвращен следующей станции на кольце. Правила захвата и удержания Map epa описаны в протоколе обращения (целевою) маркера (Target Token Rota tюп Protocol). FDDIсистема поддерживает трафик 4 типов  с разными при орИТетными уровнями. Два трафика имеют дело с синхронными типами данных и два  с асинхронными. СИнхронный трафик имеет две разновидности  просто синхронный и uзо ХРОнный. Изохронный трафик связан с канальнокоммутируемыми синхрон ными данными, которые синхронизируются единственной (обычно внешней) временной привязкой. Трафик передается с использованием специальных кадров, чья длина фиксирована во время Bcero соединения и определяется требуемой пропускной способностью. Синхронизация этоrо трафика, бази рующаяся на 8-килоrерцовых циклах, устанавливается и управляется специ 
rлава 5. С точки зрения звена 261 альной станцией, которую называют Владельцем циклов (Cycle Master). CTaH ции доroвариваются относительно использования этой пропускной способно сти И права быть Владельцем циклов. Полоса пропускания для обеих форм синхронноrо трафика распределяется из общей полосы FDDI. Остающаяся полоса используется для передачи асин xpoHHoro трафика. Различают два типа асинхронных трафиков: LJ 02раниченный асинхронный трафик  такой трафик может быть передан после захвата оrpаниченноrо или неоrраниченноrо маркера. Используя неоrраниченные маркеры, станции доrовариваются передавать информа цию в оrраниченной форме. Это, по существу, режим, ориентированный на виртуальные каналы и виртуальные соединения, в котором станции конкурируют за остаток полосы проПускания при каждой установке c<r единения; LJ НеО2раниченный асинхронный трафик  такой трафик может быть пере дан после захвата только неоrраниченноro маркера. Это, по существу, pe жим дейтаrрамм (без соединений), коrда станции конкурируют за остаток полосы пропускания при передаче каждоro пакета. В дополнение к двум классам асинхронноro трафика имеется 8 уровней при оритета, которыми можно пользоваться по желанию. Маркерная схема FDDI отличается от стандартa.lЕЕЕ 802.5 тем, что маркер освобождается сразу же после Toro, как данные переданы, а не после Toro, как получено подтверждение. Преимуществом такой схемы является лучшее использования среды, но возникает проблема, связанная с одновременным присутствием в кольце сразу нескольких маркеров. Это означает, что система приоритетов ШЕЕ 802.5 не будет работать, потому что станция моrла бы pe зервировать полосу с помощью одноrо маркера только для Toro, чтобы уви деть, что она уже используется друrой станцией, владеющей друrим MapKe ром. Еще одна проблема FDDI  присутствие синхронных данных. Схема FDDI позволяет всем узлам передавать свои синхронные данные, раз деляя оставшуюся часть полосы пропускания среди узлов с асинхронным трафиком (рис. 5.57). На этапе инициализации все узлы соrласовывают временной интервал, KOТO рый называют временем обращения маркера (Target Token Rotation Тime, ТТRТ). Это время, которое требуется для обращения маркера BOKpyr кольца. По величине ТТRТ должен быть больше, чем время, затрачиваемое на переда чу синхронных данных всех узлов (ero называют временем СИНХРОНН020 pac пределения, Synchronous Allocation Тime, SA Т), плюс временной размер кадра, временной размер маркера и время распространения по кольцу (кольцевая за держка, Ring Latency, RL». Если бы это было не так, то не все узлы были бы способны передавать синхронные данные. Разность между ТТRТ и суммой 
262 Передача данных в сетях: инженерный подход всех потребностей передачи синхронных данных (1: SA Т) определяет время, ДОС1)'Пное для асинхронной передачи. Поскольку потребности в передаче асинхронных данных всех узлов являются динамическими (то есть перемен ными), то узлам довольно трудно решать, как долrо они MOIyr передавать Ta кие данные. Чтобы решить эту задачу, каждый узел поддерживает специальный таймер, называемый таймером обращения маркера (Token Rotation Timer, TRT). Он считает, как долrо маркер идет BOKpyr кольца и возвращается к данному узлу. Если при получении маркера счетчик TRT еще не сравнялся с TTRT, то име ется резерв времени для передачи асинхронных данных. Количество данных, которое может быть передано, равно разности TTRT  TRT. эту разность Ha зывают временем удержания маркера (Token Hold Time, ТНТ). Приняв Map кер, узел будет передавать свои синхронные данные, даже если TTR Т  интервал еще не истек, и затем, если TRT < TTRT, будут переданы или все имеющиеся асинхронные данные, либо максимум те, которые удалось пере дать за время удержания маркера (ТНТ). Синхронная передача U r Асинхронная передача ТТRТ 1Тj! . 11  : ; ТНТ, ! SAT !ij I '. . ........ i I \ r Только синхронная пеРlТча  ТТRТ SAT . ........ TRT TRT SAT Т ау(1) Т.Р) ... , Время Рис. 5.57. ТТRпротокол Производительность FDDI Протокол FDDI обладает двумя важными характеристиками: [J zарантированным максuмШlЬНЫМ временем отклика  в наихудшем слу чае прибытие двух последовательных кадров от синхронноro источника не будет превышать 2 х ТТRТ единиц времени. Это произошло бы, если бы узел принял маркер назад немедленно (TRT == О), после чеrо он передавал бы ТНТ == TTR  TTRT == ТТRТ единиц времени. Остальные синхронные кадры затратят на передачу по крайней мере TTRT единиц времени (так как TTRT > L SA1j ); ; 
rлава 5. С точки зрения звена 263 LJ максимальным коэффициентом использования сети, который можно предсказать. Он равен и= N(TTRTRL)  ТТЯТЯL (NxTTRT+RL) ТТЯТ' rде RL  кольцевая задержка, а N  число активных станций. Отсюда сле дует, что FDDI чувствителен к размеру кольца, значению параметра ТТRТ и полному числу станций (включая активные). Увеличение ТТRТ ведет к YBe личенной эффективности, но увеличивает задержку синхронных кадров. С ростом размеров кольца увеличивается кольцевая задержка, что сокращает эффективность. 5.10.2. Двойная шина с распределенной очередью Стандарт ШЕЕ 802.6  Двойная шина с распределенной очередью (Distributed Queue Оиа) Bus, DQDB) предназначен для реrиональных (MAN) сетей. Хотя он разрабатывался для обслуживания тех же потребностей, что и FDDI, он по своей природе сильно отличается от более ранних МАNстандартов. DQDB был создан специально для множественных типов трафика (в отличие от FDDI, который первоначально поддерживал только трафик данных и был расширен до версии FDDI 11, поддерживающей асинхронный и синхронный трафики). Ключевые возможности DQDB включаjpТ: LJ использование архитектуры двойной шины, rAe каждая шина работает He зависимо от друrих. Чтобы обеспечить определенную степень отказо устойчивости, можно использовать тополоrию зацикленных шин; LJ переменные скорости передачи (от 34 Мбит/с до 155 Мбит/с и выше) и отсутствие единственной специфической среды. В качестве среды можно использовать все  коаксиальный кабель, оптическое волокно и микро волновые каналы; LJ практическую независимость работы от числа станций; LJ поддержку cnapeHHoro изохронноrо и асинхронноrо трафика. Хотя система называется шиной  это не физическая шина в истинном смысле. Шина формируется из нескольких однонаправленных двухточечных звеньев между узлами (рис. 5.58). При наличии двух шин, по одной в каждом направлении, данные можно по сылать уЗлам по любому передающему направлению. В начале каждой шины находится rоловная станция. Она может быть отдельным объектом или включаться в состав первоrо узла. 
264 Передача данных в сетях: инженерный подход rоловная станция шины А Шина А re=;l-+R-+R FIl  Шина В rоловная станция шины В . Начало потока данных I Конец потока данных Рис. 5.58. Конфиryрация DQDВсетей Концепция шины возникла вследствие Toro, что данные распространяются по направлению ко всем узлам (по крайней мере, ко всем узлам "ниже" передат чика). Узлы не MOryт удалять данные из шины, они MOryт только добавлять их, заменяя проходящие "О" на "}". Схема присоединения узла показана на рис. 5.59. Узел устроен так, что он может отслеживать индивидуальные биты внyrpи последовwrельных слотов проходящеrо потока данных и изменять их перед передачей следующему узлу шины. Блок OR выполняет лоrическую функцию OR (лоrическое ИЛИ), так что узел может только изменять прохо ДЯЩИе данные, заменяя "О" на "} ", но не "}" на "О". Использование такой про стой схемы сложения приводит к тому, что шина может работать очень быст ро. На первый взrляд может показаться, что неэффективно пересылать данные за пределы Toro узла, которому они были предназначены. Но чтобы иСпользовать 1)' дополнительную часть полосы пропускания, которую зани мают эти данные, потребовались бы довольно сложные методы сиrнализации и управления ресурсами, что не позволило бы извлечь из этоrо никакой cy щественной выrоды. Шина А [JIQ!J Шина А CiШU чтение C!iliJ Элемент доступа Шина В чтение Шина В Рис. 5.59. Работа DQDВ-узла 
rлава 5. С точки зрения звена 265 Как и друrие стандарты серии ШЕЕ 802, стандарт DQDB сохраняет пол ную совместимость со стандартом ШЕЕ 802.2 LLC. В стандарте ШЕЕ 802.6 определена высокоскоростная сеть, использующая MACCTaHдapT DQDB, и описываются два уровня протоколов  физический и DQDB. Упрощенная версия архитектуры DQDВпротоколов показана на рис. 5.60. Текущий стандарт поддерживает ряд систем передачи данных, но явно не указывает ни максимальной длины шины, ни максимальноrо числа CTaH ций. Эти характеристики будут зависеть от фактически используемой сис темы. 8 Службы данных, LLC ориентироваНt:'ые на соединение МАСслужбы Ф . к LLC . Изохронные службы ф КАНАЛЬНЫЙ IMCF I Фу.....' Функции Объекты сходимости сходимости управле ния Функции управляемой Функции уровнем очереди (ОА) предуправления(РА) ..I!\ I Общие функции I (LME) Функции сходимости физическоrо уровня I (WE) I + Среда передачи I   ФИЗИЧЕСКИЙ Рис. 5.60. Стек DQDВпротоколов DQDBYPoBeHb эквивалентен нижней части канальноrо уровня, т. е. MAC уровням ШЕЕ 802. Он обеспечивает поддержку трех базовых служб BbIcoKoro уровня  синхронноrо трафика, трафика данных, ориентируемоro на соеди нения и трафика данных без соединений. Службы высоких уровней поддер живаются с помощью двух методов досryпа: LJ доступ с предварительным управлением (PreArbitrated Access)  исполь зуется службами, чувствительными ко времени (timesensitive services), 
266 Передача данных в сетях: инженерный noДХ'од т. е. источниками СИНХронноro трафика. ДОС'I)'п реализуется путем пред варительноro назначения определенных октетных позиций в слотах KOH Kpeтнoro соединения; LJ доступ с управляемой очередью (Queue Arbitrated Access)  используется асинхронными источниками, которые запрашивают свободные, нераспределенные слоты. ДОС'I)'п к этим слотам определяется с помощью протокола доступа с распределенной очередью (Distributed Queue Access Protocol), DQDBKaдp (рис. 5.61, а) имеет синхронную CTPYK'I)'PY со слотами фиксиро ванной длины (рис. 5.61, 6). Каждый слот начинается с поля управления дoc тупом (Access Control Field, ACF), за которым следует сеrмент с данными. АСFполе содержит слеДУЮЩие элементы: LJ Занят (Busy)  указывает, содержит ли слот данные или нет; LJ Тип (Туре)  указывает тип слота (синхронный или асинхронный); LJ PSR (Previous Segment Received)  предыдущий cerMeHT принят (это, по существу, подтверждение приема предыдущеrо cerMeHTa); LJ Резерв (Reservation)  подтверждает, что слот зарезервирован; LJ Запрос (Request)  Jfспользуется узлами для запроса ДОС'I)'па к СЛО'I)'. КOI'да у узла имеются асинхронные данные для передачи, он будет ис пользовать шину, идущую в противоположном направлении, чтобы заре зервировать слот для переНоса этих данных. В таком контексте эта шина называется шиной запроса, Тоrда как друrая шина называется шиной пepe дачи. в узле инициализируются ДВа счетчика  счетчик Запроса и счетчик Об ратНО20 счета, после чеrо узел начинает отслеживать кадры, которые He сет шина запроса. Узел информирует rоловную станцию шины, что он xo чет получить слот, пытаясь изменить биты запроса в слотах, проходящих по шине запроса, Но преДЫдущие узлы также MorYT запрашивать слоты, так что биты запроса в проходящих слотах MorYT быть уже установлены. Для К8ЖДоrо предварительно зарезервированноrо слота, который проходит через узел, счетчик запроса увеличивается на 1 (инкрементная операция). Таким образом, узел пытается оценить, сколько узлов перед ним находят ся в очереди за свободным Слотом. 
rлава 5. С точки зрения звена 267 Заrоловок кадра Слот 1 Слот 2 Слот N Резерв а 1 бит 1 бит 1 бит 2 бита 3 бита 4 байта Заrоловок cerMeHTa 48 байт Полезная наrрузка cerMeHTa ... AFC Сеемент б Рис. 5.61. Структура кадра (а) и слота (6) в стандарте ОООВ Для передачи по шине В выполняется сле;ующая процедура 21 : iпc сч.Запрос, если бит Запрос установлен на шине А dec сч.Запрос, если бит Занят сброшен на шине В Коrда узел успешно изменяет соответствующий бит запроса (то есть передает невостребованный слот), содержание счетчика запроса передается в счетчик обратноro счета: сч. Запрос  сч. Обратный, установить запрос в О dec сч. Обратный, если бит Занят сброшен на шине В -11\ коrда сч. Обратный  О, использовать следующий слот со сброшенным битом Занят на шине В Теперь узел контролирует слоты, передаваемые по шине передачи. Протокол доступа с очередью обеспечивает хороший ДОС'I)'п ко всем узлам, соединенным с сетью, если максимальное расстояние между узлами  меньше чем время, которое он тратит на передачу одноro слота размером 53 бита. Однако, если расстояние между активными узлами превышает это pac стояние, производительность QАпротокола уменьшается и возникают про блемы, связанные с равнодос'I)'ПНОСТЬЮ узлов. В QАпротоколе вследствие эффектов распространения узлы, более близкие к roловной станции, будут способны захватывать свободные слоты, прежде чем они достиrнут узлов, расположенных ниже по шине. Это приводит к неравноправию, поскольку узлы, более близкие к roловной станции шины, имеют более короткое время ожидания, чем узлы в середине шины. Чтобы противодействовать этому, ис пользуется специальный механизм, балансирующий ширину полосы пропус 21 inc  инкрементная операция, т.е. увеличение счетчика на 1; dec  декрементная операция, т.е. уменьшение счетчика на 1.  Пер. 
26в  Передача данных в сетях: инженерный подход камия, который, по существу, разделяет ДОС'I)'пную ширину полосы и защи щает индивидуальные асинхронные источники от превышения своих долей распределения. Балансировка ширины полосы, хотя и rарантирует большее равноправие асинхронным пользователям, может привести к уменьшению проnyскной способности. 5.11. BonpocbI к rлаве 5.11.1. Вопросы по линейным кодам 1. Какова вероятность Toro, что в системе, использующей код Хемминrа (7,4), будет правильно принято 4битовое сообщение, если вероятность однобитовой ошибки равна 2%? 2. Какая вероятность больше  свыше одной ошибки при передаче 16 битов через двоичный симметричный (BSC) канал с вероятностью перехода 0,1 или свыше двух ошибок при передаче 8 битов через канал с вероятностью перехода 0,2? 3. Каково минимально возможное число разрядов проверки на четность, теоретически требуемых для 16разрядноrо кода с исправлением двух ошибок? 4. Придайте следующей матрице стандартную С'I)'пенча'I)'Ю форму: [        ] О 1 О 1 1 О О 1011000 S. Сформируйте порождающую матрицу кода Хемминrа (15, 11) и ее матрицу проверок на четность. 6. Кодовое слово 011001 О было принято в системе, использующей код Хемминra со следующей порождающей матрицей: [' о о о 1 1 ;] О ] О О 1 О О О 1 О О 1 О О О 1 1 1 Какое бьто передано сообщение? 
rлава 5. С точки зрения звена 269 7. Двоичная схема кодирования сообщений построена из двух информационных символов Ь, и Ь 2 И трех символов четности (Р" Р2 И Рз). Порождающая матрица следующая: G == ( 1 О 1 1 1 ) 01101 а) сколько существует кодовых слов? Каковы эти кодовые слова? б) каково минимальное кодовое расстояние? в) каковы теоретические возможности коррекции ошибок этоrо кода? r) определите матрицу проверок на чепюсть Н; д) каков синдром для следующих образцов с ошибками: (О 1 000), (0010]), (10010) и (11111)? е) сreнерировано следующее кодовое слово: (11010), которое искажено следующим образом: (1001 О). Если код используется для коррекции ошибок, то каково будет декодированное кодовое слово? Объясните ваш выбор. 8. Двоичный код строится добавлением к трем информационным символам (Ы, Ь2 и Ь3) трех символов проверки на..... четность. Для следующих кодовых символов: С, == Ь, С2 == Ь 2 Сз == Ь з С4 == Ь 2 + Ь з cs == Ь. + Ь з С6 == Ь, + Ь 2 необходимо определить: а) кодовые слова; б) порождающую матрицу G и матрицу проверок четности Н; в) минимальное расстояние Хемминrа этоro кода. Ero возможности по обнаружению и исправлению ошибок. 9. Двоичный линейный блочный код построен из кода с одним разрядом проверки на четность (Sing]e Parity Check, SPC), в котором для каждых 
270 Передача данных в сетях: инженерный подход трех информационных символов добавляется один символ про верки на четность, так что в каждом кодовом слове имеется четное число единиц. а) определите G и Нматрицы этоrо кода; б) каково ero минимальное расстояние? 10. Двоичный линейный код имеет следующую матрицу проверок на четность: ( 1 1 1 Н== О о 1 1 О О 0100 ] 1 1 1 О О 1 1 1 а) каковы параметры п и k для этоrо кода? Сколько кодовых слов имеет этот код? б) представляя Нматрицу в виде [pTI], rде /  единичная матрица, оп ределите систематическую порождающую матрицу (т. е. матрицу в форме [/Р], чтобы первые k разрядов кодовоrо слова были те же, что и у сообщения); в) перечислите все кодовые слова; r) KaKoBQ. минимальное расстояние этоrо кода? Сколько ошибок он может исправлять? д) после передачи двух кодовых слов через двоичный симметричный (BSC) канал, использующий систематическую форму кода, прини маются кодовые слова (1000001) и (100] 100). Вычислите синдром для каждоrо из полученных кодовых слов. В обоих случаях опреде лите наиболее вероятное переданное кодовое слово и наиболее Bepo ятное сообщение; е) предположим в этом примере, что ВSСканал имеет вероятность перехода менее 0,5. Что это rоворит об относительных вероятно стях ошибочных и безошибочных разрядов? Если бы было из вестно, что вероятность перехода больше 0,5, нашелся ли бы про стой способ использования кодов, подобных этим, и если да, то какой? 5.11.2. ВОПРОСЫ по сверТОЧНblМ кодам 1. Сверточное кодирующее устройство имеет схему, показанную на рис. 5.62. 
rлава 5. С точки зрения звена 27 Нечетные выходные биты (1, 3, 5 и т.д.) Входные биты Четные выходные биты (2, 4, 6 и т.д.) Рис. 5.62. Схема кодера к вопросу 1 а) нарисуйте кодовую решетку для соответствующеrо кода; б) что оrраничивает длину кода? Минимальный ненулевой путь этоrc кода reнерируется из входа 100... Найдите минимальное расстояние этоrо кода и опишиrе ero возможности по коррекции ошибок; в) повторяя решетчатую диa'tрамму каждоrо входноrо биrа и четко BЫ деляя каждое изменение в состоянии, закодируйте последователь ность 10110100; r) рисуя решетчатую диаrрамму и показывая веса путей на каждом ша- re, используйте алrориrм Виrерби для декодирования последова тельности 00 11 11 11 1 О 1 О 00 00 по методу максимальноrо правдо подобия и, следовательно, получите наиболее вероятнуlC переданную последовательность. 2. Сверточное кодирующее устройство имеет схему, показанную на рис. 5.63: ... Входные биты Нечетные выходные биты (1, 3, 5 и т.д.) Четные выходные биты (2, 4, 6 и т.д.) Рис. 5.63. Схема кодера к вопросу 2 а) нарисуйте кодовую решетку для соответствующеrо кода;' б) что оrраничивает длину кода? Минимальный ненулевой путь этоrc кода rенерируется из входа 100... Найдите минимальное расстояни<: этоrо кода и опишите ero возможности по коррекции ошибок; в) повторяя решетчатую диаrрамму каждоrо входноrо бита и четко вы- деляя каждое изменение в состоянии, закодируйте последователь. ность 10110100; r) рисуя решетчатую диаrрамму и показывая веса путей на каждом ша. re, используйте алrориrм Витерби для декодирования последова. тельности 00 01 1 О 01 11 по методу максимальноrо правдоподобия и следовательно, получите наиболее вероятную переданную последо. вательность. 
272  Передача данных в сетях: инженерный подход 5.11.3. BonpocbI по локаЛЬНblМ и реrионаЛЬНblМ сетям 1. Для передачи данных между двумя компьютерами, располаrающимися на расстоянии 15 м друr от друrа, используется LANceTb, построенная по стандарту ШЕЕ 802.3 CSMA/CD 10Base2: а) если LLC использует простую службу без соединений, сколько по требуется времени, чтобы передать файл объемом 1 Мбайт между этими устройствами при условии, что никакие друrие устройства в сети не используются? Предполаrается межкадровый промежуток 9,6 мкс и максимальный размер кадра; б) сколько времени будет длиться передача файла, если LLC использу ет дейтаrpаммную службу с подтверждениями? в) если теперь друrие устройства используют сеть, так что каждый кадр подверrается воздействию в среднем 4x столкновений, оцените время, необходимое для передачи файла объемом 1 Мбайт с исполь зованием LLСслужбы без подтверждений. 2. Оцените время, необходимое для передачи 1 Мбайт данных по BЫCOKO скоростной И rиraбитной полнодуплексным Еthеrnеtсетям (для кадров c,, размерами полей полезной наrрузки 248 и 1500 октетов). з. ,Определите эффективность процесса передачи, связанноrо с полудуп лексной rиrабитой Еthеrпеtсетью, при передаче кадров минимальноrо размера с пакетиj)oванием кадров и без Hero. 4. Для CSMAlCD сетей типа 100Base и 1000Base оцените, сколько потребу ется времени для передачи 1 Мбайт данных через полудуплексную KOH фиryрацию без состязаний, Korдa полезная наrрузка кадра составляет 248 и 1500 октетов. 5. Реrиональная сеть, построенная по FDDIстандарту, состоит из 50 узлов, отстоящих друr от друrа на расстояние 4 км И соединенных кольцом, pa ботающим со скоростью 100 Мбит/с. Каждый узел reнерирует трафик данных со средней скоростью 100 Кбит/с, при этом половина узлов reHe рирует речевой трафик со скоростью 256 Кбит/с, а друrая половина  видеотрафик со скоростью 2,5 Мбит/с, который имеет оrраничение по за держке в реальном масштабе времени, так что последовательные кадры не должны тратить более 12 мс на прохождение сети: а) если для циркуляции по сети MACMapKep затрачивает 600 мкс, то оцените фактический и максимально возможный коэффициент ис пользования сети в этих условиях; б) какие существуют возможности для улучшения максимальной эффек тивности и как это будет сказываться на общей производительности? 
, . rлава 6 V",/"' ,,." ....../ , ""..... с точки зрения канала передачи 6.1. Введение В этой rлаве рассматривается самый низкий уровень коммуникационной сис темы  физический. Все верхние уровни действовали так, чтобы изолиро . вать систему от деталей работы более низких уровней, на физическом же  уровне видно, что такая система фактически способна делать. Здесь следует учитывать два основных элемента  собственно физическую среду передачи и ее возможности, а также и кодирование и модуляцию сиrналов в канале (линии) передачи, т. е., по существу, процессы подrонки "сырых" данных, представленных на физическом уровне, к форме, которая может успешно транспортироваться по каналу. ,6.2. Пропускная способность канала 6.2.1. Дискретный канал без памяти в 2Лаве 2 мы рассматривали информационное содержание источников, reHe рирующих сообщения. Однако, в коммуникационной системе нас больше ин тересуют каналы. КанШl  это "трубопровод" для сообщений, объект, KOTO рый транспортирует сообщения из одной точки системы в друryю. Каналы 'Moryт быть бесшумными или шумящими. В бесшумном канале выходной сиrнал эквивалентен входному и, хотя возможно преобразование входноrо сиrнала, но имеется взаимнооднозначное отображение выходноrо сиrнала обратно во входной. В шумящем канале к информационному сиrналу добав ляется некоторый шумовой сиrнал, так что заданный выходной сиrнал обра зуется из нескольких (по крайней мере двух) входных сиrналов  информа ционноrо и шумовоrо. В этом случае на входе канала мы имеем сиrнал Х, а на ero выходе  сиrнал У (рис. 6.1), rде Х и У  случайные величины. Обычно канал присоединяется к источнику с известными характеристиками, так что распределение вероятностей входноrо сиrнала Х известно. Нас инте 
274 Передача данных в сетях: инженерный подход ресует такая передача информации, коrда наблюдатель находится на прием ном конце канала, поэтому вопрос ставится так: "Что мы можем узнать об х, наблюдая У'?". Шум ВХОД, Х  ВЫХОД, У Рис. 6.1. Канал передачи с шумом Дискретный канШl без памяти эквивалентен дискретному источнику без пa мяти. Такой канал передает (reнерирует) символы сообщения с вероятно стью, которая не изменяется во времени и не зависит от предварительно пе реданных (сreнерированных) символов. Предположим, что источник Х может rенерировать символы алфавита А=={х\, Х2, ..., Xj}, а на выходе канала прини Маются символы алфавита В == {У\, У2, ..., Yk}. Определим набор (множество) вероятностей переходов как {P(Yk I Xj) == Р(У== Yk I х== Xj)} для Bcexj и k. Из этих вероятностей можно сформировать массив значений, который называют матрицей каНШlа (сЬаппеl matrix). Эта матрица (вместе с алфавитами А и В) Полностью определяет канал. [ <Р(У\ I Х\) Р(У2 I Х\) ... Р(У к I Х\ ) ] Р(У\ I Х 2 ) р(у 2 1 Х 2 ) ... Р(Ук I Х 2 ) ... ... ... Р(У\ I XJ) Р(У2 I XJ) ... Р(Ук I XJ) Каждая строка этоrо массива соответствует фиксированному входному сиr налу канала. Сумма элементов каждой строки должна быть равна 1. Каждый столбец соответствует фиксированному выходному сиrналу канала. Обычно входной и выходной алфавиты совпадают. Чаще Bcero используется так называемый "двоичный симметричный канал" с двоичными входным и ВЫХодным алфавитами и матрицей переходов, показанной на рис. 6.2. Двоич ный симметричный канал вводит ошибки с вероятностью р. O  O : 1p 1 1 1p [ l Р Р ] Р l Р Рис. 6.2. двоичный симметричный канал 
(лава 6. С точки зрения канала передачи 275 6.2.2. Пропускная способность дискретноrо канала без памяти Напомним понятие взаимной информации. В 2лаве 2 мы определили инфор мацию о случайном событии Х, передаваемую друrим случайным событием У, как /(Х; У) == Н(Х)  Н(ХI У), т. е. неопределенность (энтропия) события Х становится меньше после Toro, как становится известно событие У. В каналь ном контексте это звучит так: если У  принятый, а Х  переданный символ, то взаимная информация  это та информация, которую принятый символ У передает о символе  так что при приеме символа У неопределенность сим вола Х уменьшается. Итак, взаимная информация  это та информация, KO торая передается по каналу. Рассмотрим вероятность перехода Р == О. Принятый символ равен переданно му символу, так что Н(ХI у) == О (то есть нет никакой неопределенности OТHO сительно значения Х после тoro, как принят У). Поэтому, взаимная информа ция равна Н(Х), т. е. энтропии источника. Если Р == 0,5, то полученный бит будет с равной вероятностью либо переданным битом, либо ero инверсией, так что никакой неопределенности относительно значения переданноrо сим вола снято не будет, т. е. Н(ХI у) == Н(Х), так что взаимная информация будет равна нулю (/(Х; у) == О). Выражаясь более формально, энтропия случайной величины Х при заданном .. конкретном значении (Yk) друrой случайной величины У, определяется как: H(XIY:::: Yk):::: LP(X ::::Х } IY =x k )log2(P(X ::::Х } I У = Yk»' j Вычисление энтропии Х по всем значениям У дает следующее выражение: В(Х I У)== L(H(X I У == Yk»P(Yk)==  LLP(Xj'Yk )log2(p(Xj \Yk»' k k j Обратите внимание, что H(X)== LjP(X j )log2 p(Xj)' Но, поскольку p(X j )= LkP(Xj'Yk),TO H(X)=LjLkP(Xj'Yk)log2 p(x j ), то /(X;Y)=H(X)H(X 'Y)== LLP(x j 'Yk)log 2 (p(x j )Р(Х ) IYk»' j k 
276 Передача данных s сетях: инженерный подход Заметим также, 'По информация, передаваемая по каналу, зависит от энтро- пии информационноrо источника, а также от вероятностей переходов. Дру- тими словами, она зависит не только от caMoro канала, но и от способа, кото- рым ОН используется. Это не очень удобно для изучения каналов, поэтому мы определяем маКСUМШlыюе количество информации, которое может переда- ваться по каналу (ero называют пропускной способностью (capacity) канала), как максимальное среднее количество взаимной информации между источ- ником и приемником на любом этапе использования канала. Максимизация выполняется по всем возможным исходным распределениям вероятностей (P(Xj)} входноro сиrнала Х Она обычно измеряется в битах на символ. Рассмотрим двоичный симметричный канал, для KOToporo р(уо I Xt) == р(У! I Хо) == р; р(уо I хо) == р(У! I хд == 1  р. Пропускная способность тaKoro канала вычисляется так: С == шах I(Х; у) == 1 + plOg2P + (l  p)log 2 (l  р). Заметим, что plOg2P + (1  р) IOg2 (1  р)  это энтропия двоичноrо источника с вероятностями р и 1  р. Максимальная энтропия двоичноrо источника рав- на 1 биry на символ, так что пропускная способность двоичноrо симметрич- ното к,анала равна 1 (энтропия источника)  Н(р) (энтропия двоичноrо источ- ника с вероятностью р : 1  р). Если канал свободен от шумов, то р == о и пропускная способность канала равна 1 биту на символ, а если р == Т, то про- пускная способность канала равна О. 6.2.3. Теорема кодирования канала Как показано ранее, даже если канал вводит ошибки, то, как правило, через нето можно передать некоторую информацию. Количество передаваемой ин- формации определяется пропускной способностью канала. Шеннон дока- зал  если дискретный источник без памяти с энтропией Н(А), reнерирую- щий символы каждые Ts секунд, передает сиrналы по дискретному каналу без памяти с пропускной способностью С, используемому каждые Те секунд, то возможно создать схему кодирования с произвольно малой вероятностью ошибки, если (H(A)/T s );5; (С/Те)' Далее, если (H(A)/T s ) > (С/Те), то информация Не может передаваться с произвольно малой вероятностью ошибки. Для дво- ИЧноrо симметричноrо (или BSC-)l канала (I/T s ) ;5; (С/Те). Скорость передачи при такой кодовой схеме r == TJT.. Иначе rоворя, если r ;5; С, то можно по- строить работающий код. С зависит от вероятности перехода р. I BSC  Binary Symmetric Channel.  Пер. 
rЛава б. С точки зрения канала передачи 277 6.2.4. Аналоrовые каналы  теорема о пропускной способности канала Предыдущее обсуждение имело дело с дискрет1lыми источниками и канала ми. Во мноrих случаях мы можем использовать эти дискретные каналы (Ha пример, в цифровой системе передачи), но реальный мир, как правило аналоrовый, а для аналоrовой передачи нужен иной подход. Если мы расши рим принцип энтропии на а1lшlо206ыe сиrналы, описывая сиrнал в терминах бесконечно малых дискретных временных интервалов, то получим бесконеч- ную энтропию, поскольку мы совершенно не уверены, в каком интервале следует размещать значение аналоrовоrо сиrнала. Можно использовать дuф фере1lцuшlыlюю энтропию, но обосновать такой подход достаточно сложно. Наилучшим решением будет возврат к пеРlюначальному методу Шеннона. Вспомним определение информации по Хартли: 1 == log2 S, rде s  число воз- можных сообщений. Используя аналоrовый сиrнал с шириной спектра В, мы ,можем получить скорость передачи 2В символов в секунду и пропускную "способность канала С == 2В log2S битов (Закон Хартли). Заметим, что, BO 'первых, мы можем увеличивать пропускную способность, увеличивая число ,уровней сиrнала, но, BOBTOpЫX, закон Хартли ничеrо не rоворит нам о MaK !симально возможном числе таких уровней н, таким образом, не может ДIПЬ 'нам абсолютное значение пропускной способности канала. Для этоro мы [должны рассмотреть ошибки канала, уровень моII.1'A9сти и шум. tomeTbI на все эти вопросы дает теорема ШеННOliа, к выводу которой мы и (переходим. Рассмотрим reометрическое место точек (rодоrpаф) на опреде ленном расстоянии от некоторой точки пространства. Расстояние есть корень ;YMMЫ квадратов каждоrо измерения (х н у ДЛЯ 2-мерноrо пространства, х, у и ;z  ДЛЯ 3-мерноrо). Этот rодоrраф формирует ОКРУЖ1l0сть в двухмерном 1npocтранстве, сферу  в трехмерном или 2uперсферу в пространствах раз- :мерностей более 3-х. Если мы рассмотрим пMepHoe пространство сп» 1, то :,Получается очень инrересная сиryация  большая часть "объема" этих m- ;персфер сосредоточена около их rpаниц. Для двухмерной сферы только 2% 'ПЛощади Kpyra лежит вблизи внешней ero rpаницы (примерно на 1 % расстоя :ния от центра), тоща как ДЛЯ стомерной rиперсферы уже 99,996% объема на- 'ходится на таком же расстоянии от ее центра. Пусть источник ведет передачу . по каналу с шириной полосы В каждые Т секунд. Если передаются символы 'Х), Х2 И т. д., то полная энерrия пропорциональна E=x +х: +...+x. Это уравне- ние есть сумма квадратов расстояний от центральной точки rиперсферы. Ес- ли средняя энерrия символа равна S, то полная энерrия сообщения составит 2BTS джоулей. Коrда п  00, эти точки стремятся к поверхности rиперсферы радиуса ..J2BTS . Каждый символ может быть искажен шумом, так что мож- 
278 Передача данных в сетях: инженерный ПОДХ'?В. но представить точки "сиrнал + шум" как rиперсферы раднуса .J 2BTN с цеНтрОМ в каждой точке сообщения, rде N  мощность шума. Вследствие охватывающеrо характера в сех поверхно стей системы, мы имеем объединен ную rиперсферу радиуса .J 2BT(S + N) . Если канал находится в пределах своей пропускной способности, эти rиперсферы не MOryr перекрываться, так что пропускная способность будет равна числу малых rиперсфер, которые вписываются в большую rиперсферу. Объем пмерной rиперсферы равен ar", rде а  не которая константа (а == 1t  для 2мерной сферы, а == t 7t  для 3 мерной сферы и т. д.). Мы имеем 2BTMepHoe пространство, поэтому объем 2ВТ большой rиперсферы равен a .J 2BT(S + N) , а малой rиперсферы  2ВТ a .J2 BTN . Максимальное число различимых сообщений, которые Moryт быть посланы по такому каналу, равно ( s-;:' )8T. Поэтому пропускная спо собность канала равна log,( ( S  N( ) BТlOg2(1 + ). rде Т  длительность каждоrо сиrнальноrо символа и, хотя S и N COOTBeTCT вуют энерrиям, обе эти величины соотносятся с некоторым временным ин тервалом, и поэтому их отношение  это отношение мощностей. Приведенное рассуждение позволяет нам сформулировать теорему Шеннона о пропускной способности канала в следующем виде С == Blog 2 (1 + ) бит/с. 6.3. Передающая среда Передающая среда  этот тот материал, из KOToporo физически формируется канал (звено) передачи данных между передатчиком и приемником. 6.3.1. ПрО80дная среда Самая простая форма материала среды передачи  медный провод. Такие провода почти всеrда имеют изолирующее покрытие. Внутри оборудования и для связей на коротких расстояниях (меньше 1 метра) используются простые провода  без экранирования. Если нужно передавать большое количество сиrналов, то используется мноrожильный про вод, rде MHoro независимЫХ изолированных проводов имеют общую защитную оболочку. Мноrожильный провод, изroтовленный из индивидуальных про водников, расположенных 
rлава б. С точки зрения канала передачи 279 рЯДОМ друr с друroм, образует плоский ле1lточ1lый кабель. Ленrочные кабели MOryr использоваться со специальными 6реЗ1lblМU разъемами (Insulation Displacement Connectors, IDC), которые вжимаются в лету для соединения с каждым из проводов, что устраняет потребность индивидуальной припайки разъемов к каждому проводу. Провода MOryr состоять из одиночноrо мноrожильноro проводника, сформированноrо из мноrих одножильных, или из нескольких мноrожильных проводников, сформированных из множества меньших мноrожильных проводников, скрученных вместе. Проводники тaKoro провода более прочны и лучше противостоят переrибам (при переме щениях связанных с ними устройств), тоrда как одиночный проводник He MHoro дешевле мноrожильноrо, но имеет меньшее сопротивление изrибам (для заданноrо размера провода). Одиночные мноrожильные провода можно использовать только в том случае, если их 'Не будут сильно переrибать. Существует ряд проблем, связанных со следующими свойствами простых металлических проводников  сопротивлением, индуктивностью и eMKO стью. Различаюr два вида сопротивлений  сопротивление между провод никами или по отношению к земле, которое, в идеале, должно быть очень высоким, и сопротивление 61lутри проводника, которое должно быть Ha столько низким, насколько возможно. Современные изоляционные материа лы почти устранили проблему изоляции проводников друr от друrа, и боль шинство проводников хорошо изолированы по всей длине. Исключения составляют лишь линии электропередач. ВнешнИ&, неизолированные кабели электропередач страдают от проблем, связанных с атмосферными ocaдKa ми  поскольку влаrа способна замкнуть провод через изолятор на подвеску И вызвать существенную утечку энерrии при влажной поrоде. Старые теле ;.фонные кабели не были изолированы и устанавливались на столбы с исполь !зованием керамических изоляторов, имевших форму, похожую на колоколь . чик, так что нижняя их сторона оставалась сухой, что минимизировало опасность увлажнения. Изоляторы линий электропередач имеют форму "rap . мошки", что позволяет максимизировать их поверхность, увеличивая, тем . самым, поверхностное сопротивление слоя влажности. Кабели передачи дaH ных теперь всеrда изолируются, но проникновение влаrи все еще остается проблемой для соединительных блоков, rде влажность может вызвать утечку между присоединяющими клеммами. Продольное сопротивление проводника есть функция сопротивления исполь зуемоrо материала и ПЛощадИ ero поперечноro сечения. Обычно провода изrотавливаются из меди, которая обеспечивает хорошее соотношение низкоrо сопротивления и низкой цены. Сопротивление можно понизить, если исполь зовать провода с большей площадью поперечноro сечения, но это увеличивает стоимость материала, из KOToporo изrотавливаются провода. При подвешива нии на опоры более тяжелые провода требуюr большеrо количества опор, что очень дороrо. Если провода укладываются в маrистральный каналопровод, то 
280 Передача данных в сетях: инженерный Подход чем больше сечение проводов, тем меньшее их количество можно вставить в такую маrистраль. Чтобы не уменьшать число проводов в маrистральном KaHa пе, часто предпочитают устанавливать на ero щюводах специальные повтори тели, реrенерирующие сиrналы (их распределяют равномерно по длине маrи страли). Повторители, однако, привносят свои собственные щюблемы (необходимость источников питания и техническоrо обслуживания). Вторая проблема для металлических проводов связана с их емкостью. Коrда провода укладываются рядом, то между ними появляется емкостная связь, которая действует так, как будто между проводами установлен конденсатор. ЭJy проблему можно минимизировать путем скручивания проводов, что Позволяет укладывать их достаточно близко друr к друry и одновременно уменьшает их емкостные связи. И, наконец, последней проблемой для металлических проводов является их индуктивность. Если несколько проводов проходят рядом друr с друrом, пе- ременное напряжение в каждом из них индуцирует ток в соседних проводни кзх. Простое решение, которое обычно используется в ленточных кабелях передачи данных, состоит в зазе.млении соседних проводов. На ленточном кабеле это соответствует заземлению каждоrо BToporo разъема. Однако при ЭТОМ все еще Moryт индуцироваться nереходные nроцессы, а число проводов уменьшается наполовину. Наилучшим решением этой проблемы является тakoe спаривание проводов, которое позволяло бы образовывать токовые nеmли, т. е. tпобы для' любоrо тока, текущеrо от передатчика к приемнику, существовал соответствующий ток, текущий в противоположном направле- нии  от приемника к передатчику. Переходные процессы в каждом проводе таkОЙ пары будут rаситься соответствующими переходными процессами в прЬводе друrоrо направления. Это не будет нейтрализовать напряжения, на- веденные дрyrими про водами, но их влияние может быть минимизировано пyreм скручивания двух спаренных проводников. Ориентация таких прово Дов по отношению к электрическому полю наведенноrо напряжения будет Изменяться, и эти напряжения будут взаимно уничтожать друr друrа. Для высокоскоростной передачи данных на относительно короткие расстоя- Ния (десятки метров) обычно используются витые (или скрученные) пары Проводов. Такие пары используются, например, в сетях Ethemet, использую- ЩИХ UТРкабель2 для скоростей порядка 100 Мбит/с. Коrда расстояния YBe личиваются, доступная скорость передачи уменьшается. Стандартизовано 5 различных катеrорий UТРкабелей: а К8теrория 1  для передачи речи или низкоскоростных данных (до 56 Кбит/с ); 2 UТP  сокр. от Uпshie/ded Тwisted Pair, неэкранироliaнная витая пара.  Пер. 
rлава 6. С точки зрения канала передачи 281 1:] К8теrория 2  для скоростей передачи до 1 Мбит/с; 1:] К8теrория 3  для скоростей передачи до 16 Мбит/с; 1:] К8теroрия 4  для скоростей передачи до 20 Мбит/с; 1:] К8теrория 5  для скоростей передачи до 100 Мбит/с. Эти характеристики можно улучшить, создав экранирующую оболочку под внешним покрытием BOKpyr изолированных проводов и присоединив ее к земле, что позволяет увеличить расстояние до нескольких километров. Ис пользуя сложные способы линейноrо кодирования и различные способы MO дуляции, можно еще поднять скорости передачи для этих расстояний, а пред ложения стандартов SDL (Symplified Data Link) для упрощенных линий передачи данных позволяет обеспечить даЛьнейшее расширение полосы про пускания витых пар в обычной телефонной сети. Можно еще повысить скорость передачи данных металлических провод ников, если использовать коаксиальный кабель. Он состоит из провода, окруженноrо изолятором, и высококачественноrо твердоrо или плетеноrо экрана, соединенноrо с землей, и позволяет поддерживать более высокие скорости передачи данных на боле длинных расстояниях. Так, в Ethernet сетях класса 10base2 используется 50омный кабель, который работает в основной полосе частот и поддерживает скорости передачи до 1 О Мбит/с ... на расстояниях до километра. Изза некоторых :rрудностей с присоедине нием к коаксиальному кабелю и с совершенствованием способов предва 'рительной обработки сиrналов (например, с помощью линеЙНО20 кодиро рания) этот тип кабелей используется теперь довольно редко, поскольку ту . же работу по передаче данных может делать и обычная, не витая пара проводов. Но на более высоких скоростях передачи наилучшим выбором 'Все еще остается 75омный широкополосный коаксиальный кабель, KOТO рый применяется, например, в кабельном телевидении и имеет пропуск ную способность почти 1 rбит/с при расстояниях между повторителями до 4 км. Коаксиальный кабель часто используется в коммуникациях реrио нальных компьютерных сетей. Возможна работа даже на более высоких частотах (около 2 rrц), если полно стью удалить центральный провод и оставить в качестве волновода только внешний экран. Такой прием часто используется для подключения передат чиков и приемников к антеннам. 6.3.2. Оптическое волокно Если увеличивать частоту передаваемоrо сиrнала, то в конце концов можно достичь оптической части спектра. Световой сиrнал можно посылать rю,(}п 
282 Передача данных в сетях: инженерный подхо-9.. тическомУ волокну  мноrожильному проводу из светопроводящеrо MaTe риала (стекла или некоторых видов пластика) обычно покрытоrо непрозрач ной оболочкой, предотвращающий проникновение в оптоволокно любоrо постороннеrо света. Хотя на коротких расстояниях дешевле использовать оmоволоКНО, содержащее единственный световод, для этих целей чаще Ис- пользуется сдвоенный оптический световод, состоящий из центральноrо оп- товолокна, окруженноro оболочкой из оптическоrо материала с друrим KO эффициентом преломления. Использование световых сиrналов позволяет устранить мноrие проблемы металлических проводников. В оптоволокне нет перекрестных наводок и на- водок между оптоволокном и внешними источниками питания. Незаконный отвод от оптоволокна затруднен. от электрическоrо провода отвод можно выполнить напрямую или с помощью индуктивной катушки. Так же можно поступать и с некоторыми типами оптических волокон, но факт TaKoro под- ключения HaMHoro заметнее, чем в электрических про водах. Orcутствие электрических сиrналов делает более безопасным использование оmоволоконных линий в тех помещениях, rде большую опасность представ- ляет электрическая искра (при появлении которой, скажем, от механическоrо повреждения линии может возникнуть пожар или взрыв). При этом следует заметить, что, хотя сами аппараты, соединенные оптоволокном, электрически не связаны по входам и выходам, но чтобы обеспечить передачу определен- ной световой мощности от одноrо аппарата к друrому, их все же нужно под- ключать к электросети и, следовательно, нужно изолировать от помещений, в которых проложен оптоволоконный кабель. В большинстве случаев, однако, электрическая изоляция между передатчиком и приемником дает определен- ные преимущества  оптоволоконные кабели меньше и леrче чем коакси- альные, что упрощает их про кладку. В оптоволоконной линии нет проблем, связанных с резистивными, индуктив- ными или емкостными свойствами электрических проводников, так что ОПТО- волоконные соединения MOryт быть более длинными (4050 км между по- вторителями) и MOryт передавать более высокие частоты. Их недостатком является некоторое ослабление cBeТOBoro сиrнала в материале, из KOTOpOro изrотавливается оптоволокно. Кроме тoro, возникает друrая проблема  or- раничение самых высоких передаваемых частот вследствие рассеивания све- TOBoro сиrнала. Скорость, с которой свет распространяется через оптическую среду, связана с показателем прело мления материала 11. Оптические волокна работают таким образом, что коrда свет встречается с rраницей разделения двух материалов с различными коэффициентами прело мления (скажем, 110 и 11Ь), ero скорость и 
rлава 6. С точки зрения канала передачи 283 направление изменяются, причем то же самое происходит и с уrлом падения и преломления е. По закону преломления Снелла (Snell) V a  Т}Ь  sine a V b  Т}а  sin е ь ' так что, если Т}а > Т}Ь, то е ь > е а и существует точка, rде е ь == 900. COOTBeTCT вующий уrол е а называют критическим. Если уrол падения больше критиче cKoro, то световой луч не пересекает rраницу между материалами а и Ь, а OT ражается от нее. Такое оптическое волокно построено в виде центральноrо сердечника, окруженноro оптической оболочкой с более низким показателем прело мления (рис. 6.3, а). Защитная оболочка / Оболочка .,....... .....  В . П . '.. .'. . .. . .. f' ' (  и    ! .    ---1 о + " , ...... \ Сердечник а ::П::t fj Выходной импульс л 6 :=t  1\ в Входной +  . I импульс               ""jt       5-10мкм tl  . Иl . '. . . r Выходной импульс Л Рис. 6.3. Оптоволоконный кабель: а  строение, 6  со ступенчатым покаэателем преломления; в  с MHoroypoBHeBbIM покаэателем преломления; r  одномодовое оптоволокно 
284 Передача данных в сетях: инженерный пoдxo Оптоволокна различных типов имеют разные показатели преломления и светопроводящие свойства. Свет источника входит в волокно под разНыми уrлами, так что, коrда один луч перемещается прямо по центру волокна, остальные отражаются от rраниц сердечника, формируя пучки отраженных лучей, которые принято называть модами (modes). Прежде чем достиrнуть адресата, отраженный световой импульс проходит по более длинным путям, чем тот, который направлен вдоль сердечника. Это приводит к тому, что входной световой импульс, проходя по разным лучам пучка, будет ДВиrать ся вдоль оси кабеля с разными продольными скоростями до тех пор, пока не дисперrирует (то есть не расплывется) до такой степени, что выделить ero среди друrих импульсов будет невозможно. Стандартное мноrомодовое оп -товолокно со ступенчатым показателем прело мления и диаметром сердеч ника около 50 100 мкм, имеет полосу про пускания примерно 20 200 MrцlKM, что оrраничивает ero применение для больших расстояний. Ослабление сиrнала в оптоволоконных кабелях этоrо типа составляет от 1 О до 50 дБ/км (рис. 6.3, 6). Ситуацию можно улучшить с помощью оnтоволокна с МlIО20уровllевым пока зателем прело мления (graded index), значения Karoporo изменяются по диа метру сердечника, уменьшаясь к ero краям (рис. 6.3, в). Это приведет не только к уменьшению отклонений cBeToBoro пучка от центральной оси кабе ля, но и к увеличению скорости лучей с более низким показателем преломле ния, что оrраничивает дисперсию выходноrо импульса. Оnтоволоконные Ka бели с MHoroypoBHe8bIM показателем преломления MOryт иметь полосу пропускания ar 200 MrцlKM до зrrцlкм и ослабление порядка 715 дБ/км. Если диаметр сердечника достаточно мал (порядка нескольких длин волн), то по нему будет распространяться только одиночная волна, и единственной причиной расширения импульса будет несовершенство материала оптово локна. Но даже если этar материал совершенен, то все же останется оrрани чение изза несовершенства материала на молекулярном уровне, так что Ta кие волокна можно использовать только в диапазоне частот 3 100 rrцlKM. Для наиболее часто используемых длин волн 1,31,5 мм, которые имеют малое зmyxание при проходе через стекло, потери на рассеяние импульса из за дефектов материала составляют приблизительно 0,15 дБ/км. Эти цифры были получены в лабораторных исследованиях, а в коммерческих кабелях этот показатель возрастает примерно до ] дБ/км. Од1l0модовый тип оптоволокна (рис. 6.3, 2)  самый дороrой, но именно он наиболее часто используется в линиях связи. Стоимость собственно волокна составляет относительно небольшую часть стоимости установки кабеля, но более высокая пропускная способность и уменьшение потребности в повто рителях, которые обеспечиваются этим типом волокна, HaMHoro перекрывают дополнительные расходы на ero приобретение. 
rлава 6. С точки зрения канала передачи 285 Источником света для оптоволокна обычно является или светоизлучающий диод (Light Emitting Diode, LED), или инжекционный лазерный диод. CBeтo диоды дешевле и служат дольще, чем инжекционные диоды, но они не reHe рируют света с достаточно узким спектром. Типичный светодиод, rенери рующий свет с длиной волны около 800 нм, испускает световой поток с длинами волн, колеблющимися в диапазоне 800:1:50 нм. Разные длины волны распространяются с разными скоростями, что ведет к дисперrированию ("расползанию") cBeToBoro импульса, похожему на расползание импульса в мноrомодовом оптоволокне с вариациями длин волн порядка 50 нм. Такое расползание составляет примерно 5 нм на километр, что оrраничивает CKO рость передачи приблизительно до 5100 MrцlKM. Это означает, что, He смотря на увеличенную стоимость и более сложное управление, для линий связи с большой полосой про пускания следует использовать не LED, а ин жекционные лазерные диоды. Так же, как и в друrих средах, в оптоволокне можно использовать мульти плексирование с частотным разделением каНШlOв (TDM), только в этом случае ero называют мультиплексированием с разделением длин волн (Wavelength Division Multiplexing, WDM). Инжекционные лазерные диоды используются потому, что они MOryт rенерировать достаточно узкий CBeTO вой спектр, причем на одном волокне можно использовать десятки волн раз ной длины, каждая из которых способна вести передачу примерно со CKOpO стью одномодовоrо волокна. WDM можно приенять и после установки оптоволокна, что позволяет ретроспективно расширять пропускную способ ность сети. 6.3.3. Радиоэфир Классической средой коллективноrо пользования является радиоэфир. Oт сутствие проводов и способность преодолевать большие расстояния делают ero естественной средой передачи для подвижных терминалов. Проблема только в том, что имеется только один диапазон радиочастот, который дол жен быть разделен между всеми пользователями. Поскольку радиослужб создается все больше, наrрузка на радиочастотный спектр постоянно увели чивается, а ero верхние частоты используются все интенсивнее. К сожалению, верхние частоты радиоспектра не очень хорошо распространя ются, да и сам этот поддиапазон не очень широк. Радиовещание Радиовещание  очень эффективное средство MaCCOBoro распространения информации. Очевидными примерами таких систем являются радио и теле видение, rде сам факт использования радиосиrнала означает, что терминалы 
286 Передача данных в сетях: инженерный подход Ф "" не нуждаются в точке подключения к ин ормационному питанию, а радио службы не требуют разворачивания слишком сложной и дороrой инфра структуры. Именно отсутствие инфраструктуры, а не какието потенциальные выrоды от беспроволочноrо подключеНИЯ, является rлавной причиной Toro, что эти службы в первую очередь использовали именно радио каналы (рис. 6.4). Ф s :J:  Ф lfI :::Е < Ф о m о :J: :3 m о :J: :J: S  Ф s :J:  Ф m ::i: < Ф о m о :J: 1:; О m Ф :J: Qf а. () 105 10S  s ::s ('Q s m ('Q о: s :1 а. ('Q 15 1:;  :ii :J: О м IU с: IU S ';t u:-  :т со ..о м ..а о: мв 150  u s 0:00:1 ('QSIU   а. ('Q s u.. :J: ..о a.:I: ..а м t> о: :10:10 В ФIUО О 1:; :J: :Е s :a Ф  . О:!: S а.  ) :z: u: о: :J:O:a.s бmф..аil :3.!1!:g\;i; ml:;o:slOm о !lI ('Q ct о ('Q a.!S:J: IU :1 :J: 5101:; 9- \!1 \!1 Ф!i!IU:::Еmm ILII:;:]'" u.. < < ..о м о: m u о s ct IU а. о: IU :J: ..а 1:; s 10 О :1 о: IU :J: 1:; ('Q :т Ф s :J: Ф ct s m Ф с;  Ф о :J: ..о 1:; Ф 1-- ::s IU 3":::Е Фа Ша ф 8.:::Е Sfl) 3G s :т Ф с: fI) Ф 1-- :ii :::Е m ::> о о :J: а 1:; CIO g ..... о :::Е е- fI) s G :::Е 107 108 Рис. 6.4. Радиочастотные диапазоны 109 1010 Частота (rЦ) Однако отсутствие доступноrо диапазона радиочастот для друrих служб, Ha пример, ДЛЯ систем сотовой радиосвязи, которым радиолинии требуются для орrанизации мобильной телефонной сети, увеличивает стоимость диапазона радиочастот, используемоrо широковещательными компаниями. В частности, отсюда следует, IffO новый спектр ДЛЯ радиовещательных услуr очень трудно получить. Это подталкивает в направлении использования цифровых, а не аналоrовых служб, блаrодаря чему в заданном участке спектра можно раз местить HaMHoro больше служб и, кроме Toro, можно обеспечить ряд допол нительных услуr. Широковещательные службы MOryr пере носить также и узкополосный Tpa фик, но двухточечные проводные линии в этом случае HaMHoro эффективнее используют частотный спектр. 
rлава 6. С точки зрения канала передачи 287 в некоторых приложениях, таких как телевидение, нет смысла использовать широковещательные радиоканалы, поскольку неподвижное аппаратное co единение через коаксиальный или оптический кабель обеспечивает HaMHoro большую ширину полосы для каждоrо пользователя. К сожалению, затраты на инфраструктуру при таком подходе достаточно высоки, так что он не ЭКО номичен для изолированных установок. Альтернативу в этих случаях MOryт обеспечить спутниковые системы, освобождающие широковещательный диапазон радиочастот. Двухточечная радиосвязь между терминалами rлавным преимуществом двухточечной радиолинии является то, информа цию можно пересылать от точки к точке", не имея между ними никакой ин фраструктуры. Такую инфраструктуру довольно трудно создать, если, Ha пример, между этими точками расположен rористый ландшафт, но даже при . относительно ровной местности радиолиния имеет то преимущество, что она не требует получения права про кладки кабеля по чужой территории, наложе ния на друrие кабельные сети и т. д. 1:] Микроволновые линии связи. Хотя для радиолюбительских и HeKOTO рых друrих низкоскоростных передач используется нижняя часть радио диапазона, большинство двухточечных радиолиний строится на базе BЫ сокочастотных (микроволновых) линии связи. -t)бычно В них используют ся частоты 4, 6 и ] ] fТц, что позволяет фокусировать радиолуч в антеннах (рупорных или параболических) с направленной мощностью. Высокочас тотный диапазон позволяет реализовать высокие скорости передачи  порядка ] 00 Мбит/с, но требует, чтобы радиотракт находился в зоне види мости между передатчиком и приемником, так что антенны обычно YCTa навливаются на высоких опорах с ретрансляторами через каждые 4050 км. Заметим, что для частот порядка ] О rrц, сиrнал может быть ослаблен дождем и cHeroM. 1:] Беспроволочные локальные каналы. Отсутствие кабельной инфра структуры довольно важно и для связи на коротких расстояниях. Напри мер, коrда нужно обеспечить связь между домами или офисами, располо женными в разных районах rорода, предприятие связи должно будет пойти на значительные затраты по подземной про кладке кабеля через улицы. Альтернативой является использование воздушной радиолинии, проходящей над строениями, которую называют беспроволочным ЛОКШlЬ ным канШlОМ (Wireless Local Loop, WLL). Такой канал обеспечивает очень дешевые средства выхода на рынок коммуникационных услуr и весьма популярен в странах со слаборазвитой инфраструК"I)'pОЙ связи. Подобная тех.нолоrия используется в некоторых схемах беспроводной телефонии, и 
288 Передача данных в сетях: инженерный подход есть предложения использовать WLLканалы для BbICOKOCKOpocTHoro Iпtеrпеtдоступа к отдельным rородским строениям. (] Замена коротких проводов. Orcyrcтвие инфраструктуры связи в форме Ka 6ельных соединений между передатчиком и приемником может оказаться чрезвычайно полезным даже при очень малых расcroяниях между ними. Так, с быстрым распространением nереНОСНО20 электронноrо оборудования (компь теров, РDЛ 3 устройств, моБwIьных телефонов, электронных ф и видео- IaiМep и т. д.) возНИЮ1И проблемы с обменом информацией между ними. C единяющие провода очень rpoмоздки, а миниа11орныIe разъемы и rнезда при частом использовании быстро изнашиваются. Большие надежды возлarались Ifa инфракрасныIe беспроволочные соединения, но они действуют только в пре Делах прямой видимости. Чтобы избежать этоrо оrpаничения, бьmи преД1юже IfbI различные радиосистемы. Одна из них  с романrическим названием 'T JIy60й Зуб" (Bluetooth)4  может пересьтать информацию со скоростью до 384 Кбиr/с, используя нелицензированный диапазон 2,4 IТц на расcroяние около 1 О м. Tor же частотный диапазон применяется и в беспроволочныx ло-- 1ЩllЫIЫХ сетях (WLAN). для передачи данных со скоростью в нескольких Me raбиr в секунду они используют более сложное (и поэтому более дороrое) об рудование. WLAN--сети облацают тем преимуществом перед обычными I1poводными локальными сетями, что позволяют абоненraм перемещаться по офису, оставаясь присоединенными к сети без проводов. Некоторые компании СТали использовать WLАN..сети, например, в залах аэропортов. Мобильное радио Мобильные радиосистемы разработаны для обслуживания передвижных (или моБWlЬНЫХ) терминалов. Это означает, что хотя линия связи остается ДBYXТO чеЧ}fОЙ, используется широковещательный сиrнал, кorорый будет интерфе РИровать (смешиваться) с сиrналами друrих пользователей, если не предпри нять специальных мер для разделения передач. "'  ....  ... .. J'f . Рис. 6.5. Интерференция, вызванная передачами мобильных радиостанЦИЙ 3 РОд  Реrsoпаl Digital Assistant, "карманный" компьютер, предназначенный для выполнения Hell:oтopbIx специальных функций.  Лер. 4 'ТОJlубой Зуб"  технолоrия Bluetooth ( новая универсальная технолоrия беспроводной связи разНотипных микропроuессорных устройств локальной сети в диапазоне 2,4 [[ц. названная так в честь датскоro короля [аРОЛWlа 11 по прозвищу 'Толубой Зуб", всемирно прославивше rocя в Х веке собирательством датских земель).  Лер. 
rлава 6. С точки зрения канала передачи 289 Есть несколько способов достижения этих целей. Основной способ  разде лить обслуживаемую область (известную, как "зона охвата") на множество "ячеек"  индивидуальных областей, обслуживаемых одним передатчиком. Передатчики в различных ячейках используют различные радиочастоты так, чтобы они не смеши вались друr с друroм. На некотором расстоянии друr от друrа частоты повторно используются. Чем меньше расстояние, тем больше частот доступно в каждой ячейке, но тем больше интерференция между ни ми. rруппу ячеек, использующих разные частоты, называют кластером (cluster, рис. 6.6), а число ячеек в каждом повторяющемся образце кластера называют ero "размером". Внyrpи ячейки пользователи разделяются путем выделения им для передачи разных частот (FOMA  Frequency Oivision Multiple Access, множественный доступ. с разделением частот), разных вpe меllllЫХ UllтервШlOв (ТОМА  TimeOivision Multiple Access, множественный доступ с временным разделением или уплотнением каналов) или разных MO дУЛЯЦUОllllЫХ кодов (СОМА  Code Oivision Multiple Access, множественный доступ с кодовым разделением каналов). Более подробно различные способы модуляции рассматриваются в разд. 6.5. а 6 8 Рис. 6.6. Кластеры, содержащие 3 (а), 4 (6) и 7(8) ячеек Перемещения терминалов, свойственные системам мобильноrо радио, созда ют дополнительные проблемы. При вещании на достаточно большую область терминал будет получать радиосиrнал, распространяющийся по путям разной длины (рис. 6.7, а). Это означает, что компоненты передаваемоrо сиrнала бу дут изменяться по фазе, что приведет как к конструктивной, так и к дeCTpYK тивной интерференции сиrналов в точке приема (рис. 6.7,6). Мощность сиr нала в приемнике будет быстро меняться, причем в широком диапазоне (рис. 6.7, в). Этот процесс известен как "быстрое замирание", или фаст федu1lZ (fast fading). Быстрое замирание влияет также и на фиксированные радиосистемы (если объекты двиrаются около передатчика или приемни ка),  но в меньшей степени. 
290 Передача данных в сетях: инженерный nодхов- TH"" i  ЕI\I\ 1\1\1\ vvv VV'V V\j'.J'v  а б в Рис. 6.7. Быстрое замирание (фастфединr) в системе связи с мобильными объектами При передвижении моБМьноrо терминала позади какойнибудь преrpады по-- лученный сиrнал может ослабевать. Этот процесс называют "медленным зами ранием" (slow fading). Наконец, с увеличением расстояния от передатчика мощность принимаемоrо сиrнала уменьшается изза потерь при ero распро странении. В системах мобильной радиосвязи должна использоваться сложная модуля ция, а соотвеТСТВУЮЩие схемы приемника должны уметь справляться с этими проблемами. МОЩность передатчика обычно изменяется в COOTBeTCT вин с уровнем сиrнала, фактически обнаруженноrо приемником. Этот про цесе называют "реryлировкой мощности". Кроме Toro, система в целом доnжна обладать достаl'очно сложными функциями управления ресурсами, которые rарантировали бы соединение перемещающихся мобильных CTaH ций с самой близкой по отношению к ним базовой станцией. Это позволяет минимнзировать интерференцию, вызванную сиrналами от друrих пользо-- вателей. Спутник Спyrники предлаraют во мноrих отношениях предельно возможные широко вещательные радиоплатформы. Изза их размещения на высоких орбитах земные преrpады почти Ife влияют на сиrнал (исключением являются прием ники, находящиеся вблизи полюсов Земли, откуда rеостационарные спутники Вндны очень низко над I:'оризонтом). Спутники обычно используют широко-- ПОЛОСНЫе соединения, Поскольку вследствие своей высокой стоимости ОНИ должны и ретранслировать достаточно большие объемы данных, чтобы быть Экономически выrодными. Спyrники относятся к той или иной катеrории по высоте своих орбит. Спут ники на rеостационарноii орбите (35.784 км выше экватора) совершают обо-- рот за то же время. что и Земля, и поэтому кажутся постоянно висящими в 
rлава 6. С точки зрения канала передачи 291 одной и той же точке небосвода. Такие спутники используются для фиксиро-- ванных двухточечных и широковещательных коммуникаций, коrда на спут ники можно сфокусировать параболические антенны с достаточно высоким усилением. У rеостационарных спутников имеется три недостатка, которые MOryr повлиять на некоторые приложения. Во--первых, изза большой высоты спутника над земной поверхностью радиоволнам требуется довольно MHoro времени, чтобы достичь поверхности, несмотря на то, что они движутся со скоростью света. Поэтому при прохождении сиrналов туда и обратно суще ствует большая задержка  примерно 300 мс, и это заметно даже при rоло-- совом телефонном вызове. Кроме TOro, на таком расстоянии возникает значи тельное ослабление сиrнала, вынуждающее использовать передатчики повышенной мощности, что является проблемой для батарейноrо силовоrо оборудования спутника. Во--вторых, rеостационарная орбита становится все более переполненной разными спутниками, что накладывает существенные оrраничения на их размещение на орбите и используемые ими частоты. Большие параболические антенны можно фокусировать довольно точно, и поэтому они MOryr иrнорировать друrие спутники даже на уrловых расстоя ниях в доли rрадуса. Однако меньшие по размерам домашние параболиче ские антенны, например, ведущие прямой прием широковещательных радио-- сиrналов, не обладают такой узкой направленностью. Ширина луча зависит "'" от размера параболической антенны и частоты предачи. Типичная антенна для телевизионноrо вещания с полосой 1 rru имеет диаметр 60 см и ширину луча ':Iримерно 30, так что направления на домашние широковещательные спутники должны отличаться, по крайней мере, на такую же величину. Ну, и втретьих, поскольку орбиты rеостационарных спутников проходят над эква тором, то около полюсов они находятся под очень низким ушом к rоризонту, что также может привести к некоторым проблемам со связью. По этим причинам все чаще стали использоваться коммуникационные спут ники с низкими околоземными орбитами. Они обеспечивают HaMHoro MeHЬ шие задержки и меньшее ослабление сиrналов, и поэтому спутниковые мо-- бильные телефоны MOryr работать без эллиптических антенн с большим коэффициентом усиления. Однако каждый такой спутник охватывает лишь небольшую область земной поверхности, и поэтому на низких орбитах тpe6y ется размещать rораздо больше спутников связи, чем на высоких. Жизнь спутника обычно оrpаничена количеством имеющеrося на нем топлива, с помощью Koтoporo он должен выходить на орбmy и поддерживать на ней cooт ветствующую станцию. Большие проблемы возникают у низкоорбиraльных спутников при сходе с орБиты, поскольку она расположена слишком близко к атмосфере, а сами спутники должны заменяться каждые несколько лет. 
292 Передача данных в сетях: инженерный подход  cil Передающая станция Рис. 6.8. Системы спутниковой связи Самолетный ретранслятор Системы мобильной радиосвязи с высокой проnyскной способностью требу ют качественных радиоканалов. Одной из трудностей, связанных с использо-- ванием наземных базовых станций, является то, что передаваемый сиrнал отражается от препятствий и рассеивается. Это уменьшает максимальную скорость передачи. Решения, предлаrаемые спутниковыми радиоканалами, довольно дороrи и страдают от задержек, связанных с большими расстояния ми. В качестве компромисса для ретрансляции радиосиrналов и покрытия зон мобильных телефонов можно использовать высотные самолеты или аэроста ты. Некоторые консорциумы выдвинули предварительные предложения по созданию служб передачи данных с использованием пилотируемых или бес пилотных самолетов, которые работали бы в качестве ретрансляционных станций в течение десятков часов. 6.3.4. Друrие виды передающих сред Инракраснаясреда Дешевое беспроволочное решение для коротких звеньев передачи данныХ может обеспечить инфракрасная передающая среда. Поскольку инфракрас ный канал должен располаrаться в зоне прямой видимости между передатчи ком и приемником, то интерференция почти OTcyrcTBYeт. Дешевые устройст ва со светоизлучаюшими диодами не обладают высокой направленностью и не подходят для наружноrо использования Изза помех от слишком сильноrо 
rлаsа 6. С точки эрения канала передачи 293 солнечноrо освещения. Очень короткие инфракрасные каналы (длиной в He скольких десятков сантиметров) MOryт работать на скоростях в несколько меraбит в секунду. Если в качестве передатчиков использовать инфракрасные лазеры и иметь возможность точной настройки оборудования, удается создавать HaMHoro бо лее длинные (до нескольких километров) наружные инфракрасные каналы, работающие со скоростями до 155 Мбит/с. С их помощью можно, например, связать подсети, расположенные в разных зданиях предприятия  без про- кладки кабеля между ними. Индуктивные контуры На очень малых расстояниях (до нескольких сантиметров) для передачи ин формации можно использовать т. н. индуктивные контуры (inductive loops). В системе индуктивных KOH"I)'pOB при меняются две ка"I)'ШКИ  коrда в одной из них появляется ток, то он индуцирует ток в друrой ка"I)'шке. Напряжение, индуцированное в прием ной ка"I)'шке, часто используется в качестве силово ro питания приемника, который может работать без батарейноro питания (требуется только, чтобы он находился вблизи от передающей ка"I)'ШКИ). В качестве примера такой среды передачи данных можно привести карточки со встроенными микропроцессорами ("интеллеК"I)'альные", или smartKapтbI), широко использующиеся для оплаты товаров (услуr) или для ДОС"I)'па в за крытые помещения. Такую карточку нужно приизить к передатчику, KOTO рый выполнит ее опрос (транзакцию), причем данные на карте хранятся в долrовременной памяти без KaKoro либо источника питания. Кроме Toro, что с помощью таких KOH"I)'pOB можно отказаться от быстро изнашиваю щихся соединительных контактов, они MorYT работать даже тоrда, коrда приемный и передающий KOH"I)'Pbl находятся на некотором расстоянии друr от друrа. Например, smartKapTY, используемую для управления дoc тупом в помещение, можно проверять, даже коrда она еще находится в кармане пользователя. Линии электропередач Разработано несколько систем для передачи данных по линиям, передающим электроэнерrию в жилые или промышленные здания или к электрически управляемым устройствам типа электропоездов. rлавным преимуществом TaKoro способа передачи данных является использование уже существующей инфраструк"I)'РЫ передающей среды. Однако имеется ряд проблем, связанных с изоляцией коммуникационноrо оборудования от источников электропита ния и с изоляцией нескольких источников электропитания друr от друra и от коммуникационноrо оборудования. Их решение направлено на то, чтобы энерrосеть можно было использовать для орrанизации сразу несколько линий связи. 
294 Передача данных в сетях: инженерный Подход 6.4. Кодирование в линиях связи Обычно среда не может принимать передаваемые символы в их "eCTeCTBeH ной" форме. Требуется такое преобразование этой формы, чтобы она наи лучшим образом соответствовала используемой физической среде передачи. Преобразование данных в наиболее удобную для передачи по физической линии форму принято называть кодированием линий связи, или линейным KO дированием (Ное codiog). Сиrнал передается по физической среде в двух основных формах: (] в основной полосе частот, коrда кодированные символы передаются напрямую, без преобразования их спектра (сиrналы в такой форме обычно называют "линейным кодом"); (] в модулированной форме, коrда передача ведется на некоторой "несущей" частоте, над которой во время передачи выполняются определенные Ma нипуляции. К линейным кодам предъявляются следующие требования: (] по СWlXронизации линейный код должен иметь такую форму, чтобы не возникало никаких проблем с ero синхронизацией; (] по наличию постоянной составляющей в спектре СИенала  линейный код должен следить за наличием постоянной составляющей в спектре пе- редаваемоrо сиrнала, чтобы иметь возможность вести передачу через спа ренную среду переменноrо тока; (] по энеР2етическому спектру  энерrетический спектр сиrнала должен быть как можно меньше, что существенно увеличивает эффективность (КПД) Передачи; (] по контролю за производительностью  желательно иметь возможность обнаруживать ошибки, возникающие при передаче; (] по низкой вероятности ошибкu-------- код должен обеспечивать, по возможно- сти, наименьшую вероятность ошибки; (] по прозрачности  код должен работать при любой форме передаваемых символов; (] по сложности  линейное кодирование и декодирование должны быть достаточно простыми, чтобы уменьшить стоимость оборудования; (] по уникальности  процесс декодирования должен быть способен одно- значно идентифицировать исходные данные. 
rлава 6. С точки эрения канала Передачи 295 Существует две основные формы линейных кодов KOДЫ с уровнями И коды с переходами: t:I коды с уровнями  информация передается уровнями напряжения или TO ка сиrнала. Различают две формы таких кодов: . без возврата к нулю (Non Return to Zero, NRZ)  уровень импульсов в коде символа поддерживается на постоянном уровне (см. рис. 6.9, а, 6); . с возвратом к нулю (Return to Zero, RZ)  уровень возвращается нулю в конце каждоro кодовоrо импульса (см. рис. 6.9, в, 2); t:I коды с переходами  информация передается изменениями уровня напря жения или тока сиrнала. 6.4.1. Двоичные линейные коды Униполярные коды с возвратом и без возврата к нулю Униполярные коды без возврата к нулю являются самой простой схемой ли нейноrо кодирования. Для передачи кодовой единицы используется постоян ный сиrнал (напряжение или ток) определенноrо уровня, а при передаче KO довоrо нуля ничеro не передается (рис. 6.9, а). При таком подходе возникают две проблемы. Вопервых, при передаче последовательных нулей или единиц не происходит никаких изменений сиrнала, чтоатрудняет ero синхрониза цию. Проблема может быть решена, если при передаче единицы посылать импульс, а не постоянное значение, так чтобы при передаче каждой единицы сиrнал возвращался к нулю. Такая схема называется униполярным кодирова нием "с возвратом к нулю" (рис 6.9, в). Однако синхронизация нулей все еще остается проблемой. В то же время схема с возвратом к нулю помоraет также справиться с друrой проблемой  смещением по постоянному току. Она ra рантирует, что изменения на выходе канала связаны именно с передачей ко-- довых единиц, а не с прекращением их передачи при выходе из строя канала, который не передает сиrналов постоянноrо тока. Существует разновидность униполярноrо NRZкода  NRZIкод (без возвра та к нулю с инверсией единиц  NonReturn to Zero, Invert to опе)  который представляет О таким же сиrналом, как в предыдущем временном интервале, а ]  переходом к противоположному уровню. В некотором смысле NRZI код является униполярной версией биполярноrо кода с чередующейся инвер сией маркера (см. далее). Униполярный характер этой схемы означает, что код имеет постоянную составляющую. С точки зрения синхронизации NRZI код лучше, чем NRZ, поскольку у Hero переходы между уровнями сиrнала происходят только в последовательностях единиц (но не нулей). В NRZ кодах никаких переходов не происходит ни в последовательностях нулей, ни в последовательностях единиц (рис. 6.9, а. 6). 
296 Передача данных в сетях: инженерный подход 1 1 О 1 О О О О О 1 О 1 110100000101 .. . I I . I I . . I I I I . I I . . . . . . I . . .....+.....---! . . . . I . . . I I . I I I t I .. а б .. . . . . в r Рис. 6.9. Линейные коды: а  униполярный код без возврата к нулю, б  биполярный код без возврата к нулю, в  униполярный код с возвратом к нулю, r  биполярный код с возвратом к нулю Биполярные коды с возвратом и без возврата к нулю В униполярных сиrналах всеrда присутствует постоянный (дc) компонент, который называют постоянным смещением (дс offset) см. рис. 6.9, а. Этот компонент можно устранить, если для передачи нулевоrо значения кода ис пользовать сиrнал с отрицательной полярностью (рис. 6.9, 6). Чтобы обозна чить моменты синхронизации каждоrо кодовоro символа, можно снова ис пользовать схему с возвратом к нулю (рис. 6.9,2), но при этом предъявляются более высокие требования к ширине полосы пропускания линии связи. Поскольку каждый нулевой разряд кода теперь передатся своим (отрица тельным) сиrналом, а не просто отмечается отсутствием напряжения, то воз можность синхронизации  это настоящий подарок для длинной последова тельности Нулей. Однако, продолжает существовать проблема постоянной составляющей, которая отсутствует в передаваемом сиrнале только тоrда, коrда в нем имеется равное количество нулевых и единичных компонентов. Но даже если это так для длинных кодовых последовательностей, то в сиrна лах более коротких отрезков кода постоянное смещение все же может при сутствовать, что создает ряд проблем при их передаче. Биполярный код с чередующейся инверсией маркеров в биполярной системе кодирования с чередующейся инверсией маркеров (ко-- довых единиц) (Alternate Mark Inversion, AMI) нули передаются напряжени 
rлава 6. С точки зрения канала передачи 297 ем нулевоro уровня, а единицы представлены чередующимися (по направле нию) изменением полярности напряжения (рис 6.10, а). Меняющиеся по Ha правлению переходы для передачи кодовых единиц довольно просто полу чать с помощью простой триrreрной электронной схемы. Чередование полярностей сиrнала при передаче единиц raрантирует отсyrствие постоян ной составляющей, но существует проблема с синхронизацией в длинных последовательностях кодовых нулей, поскольку при этом сиrнал остается на нулевом уровне. Манчестерский код Проблему синхронизации удается решить с помощью манчестеРСКО20 кодирования. Переход полярности сиrнала в этой схеме происходит в центре каждоrо BpeMeHHoro интервала, передающеrо соответствующий кодовый символ (рис. 6.10, б). Нуль всеrда представлен сиrналом низкоrо (отрицательноrо) уровня (в первой половине cBoero интервала), за которым следует переход на высокий (положительный) уровень, а единица наоборот  сиrналом высокоrо уровня, за которым следует переход к сиrналу низкоrо уровня. Тот факт, что переход всеrда происходит в одном и том же месте интервала очень хорош для синхронизации, но чтобы rарантировать это, сиrнал должен быть разбит на два. Отсюда следует, что в потоке чередующихся нулевых и единичныхиrналов число переходов вдвое превосходит битовую скорость передачи. Это удвоение скорости схем линейноrо кодирования мы уже рассматривали ранее. Манчестерское кодирование используется в качестве стандартноrо метода кодирования в LАNстандарте IEEE 802.3 CSMA/CD. 1 О 1 О О О О О 1 О 1 1 О 1 О О О О О 1 О 1 .. .. а б Рис. 6.10. Биполярные коды: а -.....с чередующейся инверсией единиц, б  манчестерское кодирование Модуляция с задержкой (Код Миллара) в биполярной схеме кодирования модуляции с задержкой, известной под Ha званием код Мwиара (Millar code), единицы кодовой последовательности представлены сиrналами, попрежнему изменяющими свою полярность в ce 
298 Передача данных в сетях: инженерный подход редине соответствующеrо BpeMeHHoro интервала, однако сиrналы нулей CB ей полярности внутри интервала не изменяют (рис. 6.11, а). При этом, чтобы избежать проблем с синхронизацией, вызванных последовательностями нулей в коде, переход полярности выполняется между каждой парой по следовательных нулей. это означает, что максимальная частота (коrда в KO довой последовательности  все единицы) возвращается к своей прежней величине  R/2, поэтому использование полосы пропускания улучшается, но тот факт, что переходы MOryт происходить или в середине сиrнальных интер валов, или на их концах, делает код более сложным для обнаружения. Фазо вый сдвиr компонентов сиrнала на половину интервала может также закан чиваться записями ложных битов. Кодирование с инверсией кодовых посылок В биполярной схеме с инверсией кодовых посылок 5 (Содед Mark Inversion, CMI) нуль представлен переходом в середине cBoero интерва ла, а единица  чередующимися переходами с BepxHero уровня на ниж иий и обратно (рис. 6.11, б). Максимальная частота переходов уровней равна R (битовой скорости), но проблемы фазовоrо смещения, как в MO дуляции С задержкой, не возникают, хотя тот факт, что переходы не Bce rда происходят в одном и том же месте сиrнальноrо промежутка, увели чивает сложность кодlfрования. 110100000101 1 О 1 О О О О О 1 О 1 .. .. а б Рис. 6.11. Биполярные коды: а  модуляция с задержкой (код Миллара), б  кодирование с инверсией кодовых посылок Расщепление по фазе Обнаружение упрощается, коrда каждый символ кодовой последовательн сти имеет переход в середине cBoero сиrнала, причем кодовые единицы пред ставлены изменением направления перехода по отношению к предшествую s Под кодовой посылкой (маркером) здесь понимают единицу.  Пер. 
rлаsа 6. С точки зрения канала передачи 299 щему сиrналу, а у нулевых символов переходы происходят всеrда в том Ha правлении, что и у предшествующеrо сиrнала. Такую схему кодирования Ha зывают расщеплением по фазе (Split Phase) кодовых посылок (рис. 6.12, а). Максимальная частота передаваемоrо сиrнала равна битовой скорости пере дачи (R). Расщепление фазы сиrнала нулевоrо Символа происходит аналоrич но, но хотя уровни сиrнала в соответствующем интервале изменяются, это все равно означает, что в нем передается нулевой компонент кода. Заметим, что аналоrичную схему манчестерскоrо кодирования иноrда называют коди рованием по фазе, хотя манчестерский код относят к rpynne уровневых кодов, а данный код  к кодам с переходами. Бифазный код в бифазной схеме кодирования все кодовые разряды (как единичные, так и нулевые) имеют переход в начале сиrнальноro интервала, что способствует хорошему восстановлению синхронизации на каждом сиrнальном интервале, а вот единичные компоненты TaKoro сиrнала, кроме Toro, имеют переход в центре cBoero интервала (поэтому он и назван бифазным маркером  рис. 6.12, 6). В то время как максuмШlЬНая чаСтота TaKoro сиrнала равна R, ero средняя частота HaMHoro ниже, что дает этой схеме некоторое преимуще ство перед схемой с расщеплением фазы. Альтернативная схема  с бифаз ным нулем 6 имеет дополнительные переходы на аесте нулевоrо, а не единич HOro разряда передаваемоrо кода. 1 1 О 1 О О О О О 1 О 1 1 1 111.. I 1 1 1 I . I , I I . ! а 110100000101 .. б Рис. 6.12. Биполярные коды: а -.....с расщеплением по фазе кодовых посылок, б  бифазный Двоичный код с замещением N нулей Линейный АМIкод достаточно прост, имеет хорошие частотные характери стики, а постоянная составляющая отсутствует. Ero проблема  длинные 6 Представляет нулевой разряд кода.  Пер. 
300 Передача данных в сетях: инженерный подход рЯДЫ нулей, rде синхронизация теряется. Если для исправления этой ситуа ции добавить в код больше переходов, как это делается в друrих линейных кодах, то можно добиться хорошей синхронизации, но за счет увеличения требований к ширине полосы пропускания линии. Однако мы можем испра- вить проблему друrим способом  заменяя длинные последовательности нулей специальными последовательностями, которые содержат переходы и поэтому поддерживают синхронизацию приемника. Эти варианты АМI-кодов называются кодами с замещением N нулей, rде N  длина нулевой последо вательности, в которой один (обычно последний) нулевой сиrнал заменяется едИНИЧНЫМ (рис. 6.13, 6). Подстановочные последовательности отличаются от нормальных тем, что внутри них нарушаются правила переключения уровней положительноrо и отрицательноrо напряжения при представлении единичных разрядов АМIкода. Одним из наиболее популярных типов таких линейных кодов является высокоплотный биполярный код 3 (High Density Bipolar 3, НОВ3), к KO тором 4элементный ряд кодовых нулей заменяется специальными кода- ми ОООУ или ВООУ, rде В  нормальный АМIимпульс, а V  импульс- "нарушитель", который имеет ту же полярность, что и предыдущий им пульс. Код OOOV используется, если имеется нечетное число CTaHдapT ных АМIимпульсов с момента последнеrо нарушения, а BOOV, если их число  четное. Наличие двух несколько различающихся специальных кодов, нарушаю- щих АМI-правила, позволяет избежать постоянноrо смещения в любой ero разновидности (рис. 6.13, б, в). Если бы имелся только один специальный код, скажем, OOOV, то не трудно заметить, что длинный внутренний ряд нулей в кодовой последовательности вводил бы некоторое постоянное смещение в соответствующую часть передаваемоrо сиrнала. А если бы единственным специальным кодом был BOOV, то последовательность 000010000100001 создавала бы постоянное смещение в сиrнальном пото- ке. На рис. 6.13, а показана АМIпоследовательность, которая не имеет никакоrо постоянноrо смещения, но rенерирует лишь несколько сиrналь ных переходов (в местах, rде в коде расположены единицы), так что ее сиrнал очень трудно синхронизировать. На рис. 6.13, б показана простая форма НОВ3-кода, который использует только один тип нарушающей по следовательности (OOOV). Не трудно заметить, как появляется и растет по- стоянное смещение. На рис. 6.13, в показан настоящий НОВ3-код, rде используются оба типа нарушающих последовательностей, почти устра- няющих постоянное смещение. 
rлава 6. С точки зрения канала передачи 301 1 О О О О О О О О О О О О 1 О О О О О О О а б в ..-. Рис. 6.13. Сравнение влияния схем AMI и НDВЗкодирования на передаваемую последовательность 6.4.2. Миоrоуровиевые КОДЫ Для уменьшения интенсивности пере ходов и, следовательно, ширины требуе мой полосы пропускания, можно воспользоваться МН020уровневыми сиrналами (с количеством уровней больше 2). Для биполярноrо сиrнала можно использо вать, например, схему кодирования MLT3 (MultiLevel Тrапsitiоп3  MH020 уровневая, с 3 переходами). Сиrнал при такой схеме изменяется от 1 до О, за тем от О до + 1, потом в обратном направлении  от + 1 до О и от О до  1. Каждая единица исходноrо кода осуществляет переход к следующему уровню сиrнала, а нуль не представляется никаким переход ом. Максимальная интен сивность изменений сиrнала достиrается при передаче сплошной последова тельности единиц, коrда они одна за друrой пере ключа ют все возможные уровни сиrнала. Поэтому максимальная частота смены уровней вчетверо меньше скорости передачи в битах. Линейные коды, которые мы рассматривали до сих пор, были двоичными, а каждый сиrнальный элемент ("символ") передавал один бит (разряд) BXOДHO ro кода. Он может передавать и больше битов на символ. Это означает, что 
Передача данных в сетях: инженерный подход. скорость передачи в бодах 7 отличается от скорости в битах. Передавая боль ше одноrо бита на символ, мы можем понизить скорость в символах для за данной скорости в битах и, следовательно, уменьшить требования к шИрине полосы сиrнала. Мы можем сохранить ширину полосы на том же уровне, но вести передачу с более высокой битовой скоростью. Эти режимы изображены на рис. 6.14. На рис. 6.14, а скорость передачи в битах сохраняется на всех rpафиках неизменной, а частота в канале постепенно уменьшается, что пока занО в виде все более rладкой кривой. На рис. 6.14, б скорость в символах и, следовательно, ширина полосы остаются на rрафиках одинаковыми, а CKO рость в битах увеличивается (что показано как сокращение времени передачи одноrо и TOro же количества битов). 302 3:. , I , '1 I ' yr ' ' 1\ I I I I I II I I ,-- , -j \..' ')" , I I Т-------Т I I 1:- 1:- : ,- I ----+- '+---- , , " I I I 3:. I , ,- I -_О :--- :".. I I :N I , т---- I I I I I --. :-:- I I --, "А;: а . , , t I II N II б Рис. 6.14. ВЛИSlние различных MHorOYPoBHeBbIx кодов на времSI передачи и ШИРИНУ полосы сиrнала Расплатой за такой подход является рост интенсивности потока ошибочных битов. Чем ольше используется сиrнальных уровней для передачи элемен тов кода, тем меньше различий в уровнях соответствующих сиrнальных KoM 7 Бод (baud)  единиJ,tа скорости передачи сиrнала, измеряемая числом дискретных переходов или событий в секунду.  Лер. 
rлава 6. С точки зрения канала передачи зоз понентов, и тем труднее отличать их друr от друrа. Если в канале появляются шумы, то они леrко MOryт скрыть э1)' разницу и спровоцировать тем самым ошибочную ситуацию, коrда один уровень сиrнала будет принят за друrой, т. е. передаваемая кодовая последовательность будет искажена. На рис. 6.15 показан простой мноrоуровневый 2В 1 Qкод с четырехуровне вым сиrналом: уровень 3 используется для передачи кода 00, уровень 1  для передачи кода 01, уровень +1  для передачи кода 11 и уровень +3  для передачи кода 10. Двухразрядные последовательности 00, 01, 11, 10 Ha зывается кодами rрея (Gray encoding). Они отличаются от eCTecTBeHHoro ДBO ичноrо кодирования только одним битом, позволяющим различать сиrналы соседних уровней; т. к. наиболее вероятная ошибка при приеме сиrнала co стоит в перепутывании соседних уровней, эта схема минимизирует вероят ность однобитовых ошибок. 1 О О 1 О О О О О 1 О 1 3 (+3) . 1 Н) . о (З) i о (3) I О Н)! 1 Н) . ! . 1 . I . ! ! . ! I ! , . . , . , . , : I , I : , Рис. 6.15. Мноrоуровневый код, построенt4\"IЙ по схеме 281а , Возможны более сложные схемы. В коде, использующем схему кодирования 4В3Т (рис. 6.16), 4 бита исходноro кода передаются с помощью тpexypOBHe вой сиrнализации. Уровни, передающие кодовые последовательности, MOryт , иметь три значения: +V (fl), о () и v (u.). Некоторые исходные кодовые по ,следовательности отображаются на такую последовательность сиrнальных уровней, которая не содержит постоянной составляющей, тоrда как друrие , (например, 1000, которая передает на выход линии кодовую единицу с помо щью сиrнала u.ftft)  содержат такую составляющую. Для каждой последо вательности с постоянным компонентом в этой схеме определены две воз можные последовательности сиrнальных уровней. Причем для передачи соответствующей части входноrо кода используется та из них, которая при ближает к нулю значение постоянной составляющей во всем передаваемом сиrнале. Используя схему кодирования 4В3Т, можно более чем в 2,6 раза по высить пропускную способность канала по сравнению с манчестерским KO дированием для той же максимальной битовой скорости передачи. Именно эта схема рекомендована в широкополосном варианте стандарта ШЕЕ 802.3 CSMAlCD. 
304 Передача данных в сетях: инженерный подхо.LJ.. Данные (на входе канапа) Выходной сиrнап Выходной сиrнап (вариант) для кодов с постоянным компонентом 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 ft  JJ (О) ft JJ  (О)  JJ ft (О) ft JJ  (О) ft(1)  ft  (1) ft   (1) ft JJ ft (1) JJ ft ft (1) ft ft JJ (1) ft ft ft (3) ft  ft (2)  ft ft (2) ft ft  (2) ft JJ (О) JJ  ft (О) JJ(I) JJ(I) JJ(l) JJ ft JJ (1) ft JJ JJ (1) JJ JJ ft (1) JJ JJ JJ (3) JJ  JJ (2)  JJ JJ (2) JJ JJ  (2) Рис. 6.16. Кодирование по схеме 483Т 6.4.3. Перемешивание I Коммуникационные системы часто передают достаточно реryлярные после довательности битов, и эта реryлярность может порождать нежелательные побочные эффекты. Мы уже упоминали проблему синхронизации при пере даче длинноrо ряда нулей, но реryлярные образцы единиц .и нулей также MO ryт создавать нежелательные частотные или постоянные составляющие сиr нала в линейных кодах некоторых типов. Чтобы разРУШIfТЬ такие образцы, часто используется специальный процесс, называемый перемешиванием, или скремблированием. С помощью специальной схемы к передаваемой последо вательности добавляется случайный -набор нулей и единиц (рис. 6.17). На ca мом деле последовательность является псевдослучайной, поэтому, хотя в ней нет никаких реryлярных образцов, но биты добавляются так, чтобы прием ник, добавляя к принимаемой последовательности псевдослучайную, иден тичную входной, Mor восстанавливать исходное сообщение. Эффективный reHepaTop перемешивающей последовательности можно построить на сдвwовом pezucmpe с обратной связью, спроектированном так, чтобы выходной сиrнал представлял собой приемлемую для переда чи смесь битов. Такая последовательность должна начинаться по край 
rЛава 6. С точки зрения канала передачи , .:: ней мере с одной единицы, и если обратные связи (или сиrналы ответ ления) тщательно подобраны, пкаскадный сдвиrовый реrистр будет r "{ерировать псевдослучайную последовательность с периодом 2"  1 б roв (без повторения). Напимеf' 5каскадный сдвиrовый реrистр ноrочленом ответвлений х + х + 1 (рис. 6.18) rенерирует последов rельность 00001010111011000111110011010010 и затем повторяет ее. reHepaTop перемешивающей последовательности reHepaTop перемешивающей последовательности + Канал + Соощение Сообщение, смешанное со случайной последовательностью Сообщение. смешанное со случайной последовательностью Сообщение Рис. 6.17. Система с перемешиванием ( Примечание ) "Тщательный подбор" отводов означает выбор в качестве мноrочлена, по КС рому строятся отводы реrистра, примитивН020 мноrочлена, Т.е. TaKoro мне члена, который не может быть факторизован (разбит на сомножители) и кс рый делится на 2 k + 1 ДIlя k = 2 п  1, !jp не делится на 2 k + 1 ДIlя k < 2 п  1, п  степень мноrочлена. Таким примитивным мноrочленом является, Harl мер. х 5 + XL + 1. Функция обратной связи X S +x 2 + 1 o. или 1 XS+X2  B Рис. 6.18. reHepaTop перемешивающих последовательностей Можно просто добавить эту последовательность в передатчик и приеМl kaK это делается в LFSRcxeMe шифрования (см. рис. 3.9). Однако при Э' возникает проблема инициализации сдвиrовоrо реrистра так, чтобы ero . следовательность содержала начальную "1", а передатчик и приемник заl kали свои последовательности одновременно. Систему можно сделать CIJ синхронизирующейся, используя HeMHoro иные подключения реrистров, показано на рис. 6.19. До тех пор, пока в канале не происходит никаких о бок. приемниК будет автоматически синхронизироваться с передатчИJ При появлении ошибок в канале может потребоваться периодическое OT 
306 Передача данных в сетях: инженерный подход чение и возврат сдвиrовоro реrистра в определенное состояние, чтобы ocтa новить распространение ошибок на правильно передаваемые биты. В мобильных радио и друrих системах, rде используется общая среда переда чи, перемешивающая последовательность часто инициализируется с разНЫми начальными значениями для каждоrо терминала, так что, если терминалом бу дет принят неправильный сиrнал, то перемешивание приведет к неправильным полученным значениям, и будет очевидно, что произошла ошибка. Рис. 6.19. Система самосинхронизирующеrося перемешивания 6.4.4. Пример применения линейноrокодирования Стандарт последовательных линий связи RS232 использует биполярное ли нейное NRZкодирование. Такой способ кодирования достаточно прост и полностью подходит для низких скоростей передачи, предусмотренных в стандарте,  приблизительно ДО 9600 символов/с. Однако он меньше подхо дит для использования в более высокоскоростных интерфейсах RS232, в ко-- торых скорости превышают сотни килобайт в секунду. Кодовое слово cтaн дарта RS232 состоит из нулевоrо cтapToBoro бита, за которым следуют 5, 6, 7 или 8 битов данных, заканчивающихся единичным стоповым битом. Может быть определен разряд про верки на четность, а число стоповых битов (1, 5 или 2) зависит от числа используемых битов данных. Если передается 8 битоВ данных, то разряд проверки четности отсутствует и используется только оди ночный стоповый бит. При передаче биты инвертируются. Единичный бит представляется напряж нием ниже 3 в, а нулевой  напряжением, HeMHoro превышающим +3 в, причем первыми передаются наименее значащие биты. Код АSСIIсимвола "А" (01000001) передается как 01000000101. Передача асинхронная, так что никакоrо сиrнала синхронизации вообще не требуется. В нормальном со- стоянии в канале поддерживается отрицательный уровень напряжения, по- этому стартовый бит Bcerдa инициирует переход к следующему уровню. Он вызывает переустановку таймера приемника и rенерацию тактовых импульсов, управляющих переходами между уровнями напряжения (0,5, 1,5, 2,5 и т. д.). 
rлава 6. С точки зрения канала передачи 307 Стоповый бит означает возврат канала к отрицательному напряжению, KOTO рое ПОJЩерживается до прихода следующеrо cтapтoBoro бита. Переустановка тайера на каждом кодовом слове означает, что он может быть не очень точ ным, а схема приемника  достаточно простой и не очень дороrой. Сети Ethemet работают с более высокими скоростями, так что для них реше ние проблем синхронизации  одна из самых rлавных задач. Ethernet, рабо тающая на скоростях порядка 1 О Мбит/с, использует манчестерское кодиро 8 вание, которое обеспечивает очень хорошую синхронизацию. Проблема лишь в том, что при такой схеме кодирования для обеспечения скорости 1 О Мбит/с требуется канал с шириной полосы пропускания не менее 1 О Mr ц. в быстрых сетях Ethemet, работающих на скоростях порядка 100 Мбит/с, и FDDI--сетях, работающих с такими же скоростями на проводной (не оптоволо конной) среде, используется схема кодирования МLT3. Дополнительно в обоих случаях применяется схема кодирования 4В5В, позволяющая rарантировать, что в выходном сиrнале будет достаточно переходов, используемых для целей син хронизации. В результате такая схема кодирования оказывается значительно бо лее эффективной в отношении ширины полосы канала, чем манчестерская. Старые стандарты телефонных сетей использовали более простые и эффек 'тивные (в отношении ширины полосы канала) схемы кодирования, отражая . те времена, коrда цифровая обработка не была столь быстрой и дешевой, как теперь. Стандарты CCIТT G702 цифровых маrисwалей Еl(2 Мбит/с), Е2 и Е3 (34 Мбит/с) используют схему биполярноrо кодирования с высокой плот ностью 3 (НDB3), в то время как стандарт Е4 (для маrистралей, работающих на скоростях порядка 140 Мбит/с) использует схему кодирования с инверсией .' кодовых посылок (CMI). '6.5. Модуляция 6.5.1. Введение . Мноrие физические среды не способны передавать постоянный ток. Этой способностью не обладают, например, радио или ультразвуковые линии, а на инфракрасных линиях такая передача затруднена, поскольку вместе с полез ным сиrналом передается мешающий фоновый свет. Даже тех в случаях, KO rда передающей средой является простой провод, наличие в системе индук тивных каryшек или иных аналоrичных устройств препятствует передаче постоянных составляющих сиrнала. Если данные посылаются по про водной 8 Манчестерский КОД с ero переходами ПО центру импульсноro интервала не требует использо вания никаких дополнительных синхросиrналов, поэтому ero часто называют самосинхронизи РУЮЩUJlfСЯ КОДОМ.  Пер. 
З08 Передача данных в сетях: инженерный пOДXOIl линиИ, например, из fлазrо в Эдинбурr, но потенциал "земли" на конце ли нии 8 fлазrо оказывается выше, чем в Эдинбурrе, то изза такой разности по тенциалов коммуникационная система fлазrо начнет поставлять в Эдинбурr довольно мощный сиrнал постоянноrо тока. По этой причине в целях изоля ции на обоих концах линИИ связи устанавливаются каryшки индуктивности (или друrие изолирующие устройства, например, оптроны). Каryшки индук тивности используются также на установочных опорах телефонных линий, чтобы защитить коммуникационное оборудование от rрозовых разрядов. Общее заземление, изолирующее линию передачи данных, очень полезно дa же в том случае, коrда два устройства, имеющие различные напряжения пи тания или пробующие одновременно управлять линией, расположены в oд ном помещении. Как бы ни выполнялась изоляция (с помощью каryшек индуктивности или конденсаторов), линия передачи не сможет больше передавать постоянный ток. Решение состоит в том, чтобы вместо постоянноrо тока передавать по фи зическому каналу модУЛUРО6штый синусоидальный сиrнал. Синусоидаль ную волну, на которую накладывается модуляция, называют несущей час тотой. Передаваемый (модулирующий) сиrнал может изменять любую из трех характеристик несущей: амплиryду (амплитудная модуляция), часто ту (частотная модуляции), фазу (фазовая модуляция) и даже их комбина цию. Друrим существенным преимуществом TaKoro способа передачи яв ляется возможность передавать сразу несколько информационных сиrналов по одной физической среде (каждый сиrнал передается на своей несущей). 6.5.2. Множественный доступ Чаще Bcero передающая среда должна быть объектом коллективноrо поль зования. Примеры некоторых служб TaKoro рода показаны в табл. 6.1. Ши рокополосная среда передачи (такая, например, как коаксиальный кабель или оптоволокно) может обслуживать сотни таких служб, так что возника ет следующий вопрос: как можно мультиплексировать (уплотнить) всех пользователей в одной предающей среде? Ресурсами, с которыми МЫ должны работать, являются полоса nроnусканuя (диапазон передаваемых частот) среды передачи и время доступа к этому ресурсу. Сиrналы, пере даваемые средой от разных пользователей, MorYT различаться по частоте (множественный доступ с частотным разделением канала), по времени (множественный доступ с временным разделением канала), или модули рующему сиrналу (множественный доступ с кодовым разделением KaHa ла). Возможны также комбинации этих способов разделения (иноrда roBO рят "уплотнения") канала. 
rлаsа 6. С точки зрения канала передачи 309 Таблица 6.1. Примеры служб, использующих модуляцию несущей частоты Служба Требуемая ширина полосы пропускания Фактическая ширина полосы пропускания Речь 3 кrц 15 кrц 4 кrц (POTS) 15 кrц (FМрадио) 22 кrц (СО) Высококачественная музыка FМрадиостанция 240 кrц Телевидение (аналоrовое) 4,5 мrц 6мrц Множественный доступ с частотным разделением канала Коrда ширина полосы пропускания передающей среды достаточно велика (радиоканал, оптоволокно или коаксиальный кабель), обычно используется множественный доступ с частотным разделением канала (Frequency Division Multiple Access, FDMA). Весь диапазон частот разделяется на несколько более .-. узких поддиапазонов, которые распределяются между пользователями широ кополосноrо канала, образуя в нем несколько самостоятельных коммуника ционных линий (подканалов). Между частотными подканалами должен oc тавляться некоторый защитный интервал, чтобы предотвратить помехи от ,соседнеro канала. Это означает, что практически невозможно использовать весь диапазон частот каждоrо подканала. Такой защитный интервал умень- шает эффективность системы, поскольку, коrда мы увеличиваем число noд диапазонов и уменьшаем ширину каждоrо поддиапазона, доля диапазона час тот, Занятоrо защитными интервалами, в общей полосе частот канала увеличивается. Поэтому, коrда мы уменьшаем ширину полосы частот подка Нала, мы уменьшаем также и количество информации, которую мы можем передавать в каждом подканале (рис. 6.20). Ширина спектра передаваемоrо сиrнала зависит от частоты модулирующеrо сиrнала. Очевидно, что полоса частот, выделяемая для передачи сиrнала, должна быть столь же (или даже более) широкой, как и полоса частот модулированноro сиrнала. Так, при пе редаче речи ширина каждоrо частотноrо поддиапазона оrраничивается величиной в 5 кrц. Некоторые эффективные системы радиосвязи для передачи речевых сиrналов используют интервал разделения несущих частот подканалов шириной в 6,25 ЮЦ, но чаще используется интервал шириной в 12,5 кrц (в более старых системах  шириной в 25 ЮЦ). 
310 Передача данных в сетях: инженерный подход Время  :iI B !}!':;  CO c:l Q) С r в о .. .., ....., ,. '7-.. I L"" :  :.1 З [1 ;j :. :: : . .. " <.: ] . :i . ....-.,.-"'. ...."b.. .  ' ., а "'it rr" , j.li1 F , :l : I ..   R t! f "';!  1'\  ' j : I ' i :   J r i . ,  I  : t .,,: I 1 r ! Ji= . ! i! " ; 1; I 1 g  :' f,!  !r. ..::i LJ k..;J &  Защитные интервалы в Q) ,. 3' (j' Q) :з:  ш\"Ш':!jj [:1.I::jl&,,;цr.,:.Бl [-f:!5i;;Ъ!!iа :;; Q) ::t: :;; О ::t: .., ..СО оС ..со u ,. CO::i :то С -'._ .>0;;  J.v'. ...,o:'Jj: ""-'.,:;o. .. _;v '.: V.,' ,." . 6 Защитныа диапазоны ::t: О .., со С со ,. о:[ .,. :ii ::t: .. О  со :т :ii Q) ::t: 15  ::t:.. .. С fl .. <t :тg С " FiЦf ВR  Ш e  f1 m a L]t,;;, "W LiI tJ F.;rI пе Ij :1 Ш I ElО m ШD L1 r.'J tJ !.'э 13 и ОП Ш LJ  ... .... в IOВ m ВIJ .1 iJ lli LJ .. . 'J оп a с 6  IO IO rn пв .iJ M m пm g  по m f] . :i: . ;;;;J  Защитныа интервалы r Рис. 6.20. Разделение частотноrо ресурса (а): по частоте (6); по времени (в); и по времени. и по частоте (r) FDMA  концептуально простая система, но в ней имеется несколько про- блем. Каждый подканал занимает один поддиапазон частот, и для Hero требу ется отдельный передатчик и отдельный приемник. Чтобы иметь двунаправ ленный (дуплексный) канал, нужно передавать и принимать сиrналы одновременно, кроме Toro, передатчик и приемник тоже должны быть актив ными (то есть работать) одновременно, что требует весьма сложных схем для их построения. Более серьезной проблемой является передача данных с раз НЫми скоростями. Если мы хотим увеличить скорость, с которой передаются данные в FDМАсистеме, следует или увеличивать ширину каждоrо поддиа пазона, или использовать несколько поддиапазонов с разной шириной поло сы. Если мы увеличиваем ширину каждоrо поддиапазона, то те поддиапазо ны, которые не требуют более высоких скоростей передачи, не до конца используют выделенные им частотные ресурсы. Использование нескольких 
rлава 6. С точки зрения канала передачи 311 разных по величине частотных поддиапазонов ДЛЯ увеличения скорости пе редачи увеличивает сложность системы. Однако, если ДЛЯ всех пользователей необходима одинаковая скорость передачи (как, например, при передаче pe чевых или аналоrовых телевизионных сиrналов), то FDМАсистемы предла rают достаточно простое и надежное решение, которое не требует такой сложной синхронизации, как в системах множественноrо доступа с BpeMeH ным разделением каналов (TDMA). Множественный доступ с временным разделением канала При передаче цифровО20 сиrнала ero можно сохранять и передавать не He прерывно, анесмежными rpуппами. Рассмотрим цифровой сиrнал, который передается со скоростью 1000 бит/с. Если этот сиrнал передается непрерыв но, мы принимаем один бит каждую миллисекунду. Однако, если сохранять полученные сиrналы и просматривать их только от случая к случаю, необхо димость в непрерывной передаче сиrнала отпадает. Рассмотрим наблюдателя, который записывает сиrнал на некоторое устрой ство. Записывающее устройство работает с пакетами, а не индивидуальными битами, записывая все, что было принято, каждые 1 О мс. После Toro как за пись закончена, ясно только одно  каждый из записанных битов был полу чен в одну из предшествующих миллисекунд. H если вместо передачи по одному биту каждую миллисекунду делать паузы. в 1 О мс И затем быстро (пачкой) передавать все десять импульсов в конце каждой паузы, то для Ha блюдателя ситуация остается неизменной  на маrнитофоне в конце переда чи будут записаны те же самые биты (и в том же порядке), что и в случае их . непрерывной передачи (рис. 6.21). I . I 001 /   в этих точках наблюдения принимаются одни и те же биты при любых режимах передачи Рис. 6.21. Быстрая пересылка информации в разделенных по времени rруппах Этот принцип можно расширить и на друrие, более длительные временные интервалы. Если мы записываем сиrнал, скажем, каждые 100 миллисекунд, нам надо только передать эти 100 битов в любой точке внутри этоrо 1 oo миллисекундноrо интервала, но с более высокой скоростью. Что касается Ha 
312 Передача данных в сетях: инженерный подход блюдателя, то ему совершенно безразлично, коrда внyrри интервала ОЖИДа ния последующей передачи были переданы биты и с какой скоростью. Мож но было бы передавать биты непрерывно со скоростью 1 Кбит/с, пакетами длиной в 1 О мс со скоростью 1 О Кбит/с или даже пакетами длиной в 1 мс со скоростью 100 Кбит/с или кaKTO еще. что здесь изменяется, так это задержка сиrнала. Если сиrнал посылается не- прерывно, то почти никакой задержки нет. Если сиrнал посылается отдель- ными пачками (bursts) в конце каждоrо 10миллисекундноrо интервала, то, хотя последний передаваемый бит передается почти без задержки, первый бит этоrо пакета должен ждать передачи почти 10 мс (рис. 6.22). Это величи на и составляет здесь маКСUМWlЬ1lУЮ величину задержки. Для мноrих инфОJr мационных потоков система должен выводить входной сиrнал с исходной скоростью (как, например, в случае Передачи речи). В таких случаях все БитыI должны передаваться с одинаковой максимальной задержкой, чтобы сохра- нить общую скорость. Самая небольшая задержка - у последнеrо бита в пачке lr Самая большая задержка - у последнеrо бита в пачке Рис. 6.22. Задержки в системе пакетной передачи Передача информации короткими пачками обеспечивает еще несколько воз можностей. Первая, наиболее важная, состоит в том, что теперь можно муль- ТИWIексировать несколько информационных потоков в один канал. Этоro достиrают путем передачи подобным же способом (пачками) информации друrих пользователей в те временные интервалы, коrда канал не использует- ся. Так осуществляется временное разделение . (уплотнение) канала (Time Di vision Multiple Access, TDMA), коrда мы передаем информацию по каналу с . большей скоростью, чем нужно индивидуальному пользователю, и затем рас- пределяем время передачи между всеми пользователями. Каждую индивиду- альную порцию информации называют пачкой (burst), а последовательностЬ пачек образует кадр (frame), который непрерывно повторяется во времени. Кадр делится на слоты  небольшие по размеру временные интервалы, каж- дый из которых передает пачку сиrналов. Этот процесс для ТDМА-системы с четырьмя пользователями и поэтому с четырьмя пачками в кадре показан на рис. 6.23. 
rлава 6. С точки зрения канала передачи З1З Кроме Toro, наряду с разделением ресурсов между разными пользователями, имеется возможность включать в нормальный поток данных пользователя управляющую информацию, выделяя некоторые пачки сиmалов специально для этой цели. 1J1JlJ1IlllIIМ ., ,. i'I'i i l l1 '"П Ii"" i' 'i Р fi ... I I'IIIIIIII"IIIPI::,I:'II:'I:. ai::!t:ii:!i::i:ii::i!:iiai::; \J1.!!.,LJ...Li.J!.,\.tl!..U,,"I.!!.' Рис. 6.23. Система передачи с временным уплотнением (ТОМ) rлавные вопросы при проектировании ТDМсистем  сколько пачек нужно )3ключать в кадр, и какова должна быть скорость передачи информации на Hecy .' {щей. для заданной длины кадра мы можем увеличивать скорость передачи, чис }Ю слотов в кадре или количество информации в каждом слоте, так что rлавными параметрами TDM являются: число пачек в кадре и скорость передачи информа ;'ции на несущей. Оrpаничениями, влияющими на этот выбор являются  Maк j fСИМальная задержка, которую может допустить служба (так как длина кадра Iдолжна быть меньше, чем эта задержка), и ширина полосы несущей. "Комбинация FDM и TDM i С увеличением скорости передачи увеличивается и ширина полосы передавае ; Moro сиrнала. В чистой ТDМсистеме она может стать равной ширине полосы  Bcero канала, но обычно принято комбинировать TDM и FDM, разделяя полосу , канала на несколько частотных FDМподдиапазонов (каждый со свой несущей) 'и используя для каждой несущей ТDМдос1)'П. Такая система применяется в радиосвязи, коrда спектр радиочастот разделяется между различными пользо ,вателями. Для широкополосных каналов чистая ТDМсистема должна была бы передавать с такой высокой скоростью, что обслуживающие их электронные схемы оказались бы очень сложными и дороrими, что является еще одной при чиной использования комбинированных FDМAffDМАистем. FDМистемы концеmyально проще и их леrче реализовать для очень высоких скоростей 
314 Передача данных в сетях: инженерный подхов. (вплоть до десятков rrц). тDмистемы обладают тем преимуществом, ЧТО имеют дело скорее с пакетной информацией, а не с непрерывными потоками, а пакerированные данные леrче переключать и маршрyrизировать. Мноrочис ленные приемопередатчики FDМсистемы заменяются более сложными пере ключателями, но возникаer новая проблема  трудно создать переключатели, способflые работать достаточно быстро. Уже ДЛЯ частот, превышающих несколько сотен меrarерц, они становятся очень дороrими. Лучший компромисс часто дают комбинации FDМA с ШМА. 6.5.3. Цифровая модуляция Типы модуляции Чтобы получить мультиплексирование с частотным разделением каналов, нужно передавать сиrналы в диапазонах частот, начинающихся не с нулевой частоты. Это можно сделать, модулируя синусоидальный сиrнaJI несущей сиrналами друrих частот. Синусоидальный сиrнал имеer форму vJ...t)==Acos(21t/c.t + <р). Тип модуляции определяется тем, какой из трех пара метров будer изменять модулирующий сиrнал: LI изменение ампли'I)'ДЫ несущей (Ас) даer амплитудную (АМ) модуляцию (рис. 6.24, а); LI Изменение частоты несущей (fc) даer частотную (ЧМ, FM) модуляцию (рис. 6.24, 6); LI Изменение фазы несущей (rp) дает фазовую (ФМ, РМ) модуляцию. \ ; ,; ; . :1 "HI""  ;: ;: :i . '1" a\''!,, . . . 1 ,1 !: i. ' :: i  ; . .. i j ;' , i ' ,  ' ! , ; : . " ; , '. ,,', О, ,: ';;,' . . ;; J -. t .  . . i I if i f , ; , , а б Рис. 6.24. а  амплитудная (ДМ) модуляция и б  частотная (ЧМ) модуляция 
rлава 6. С точки зрения канала передачи 315 Формирование импульсов На рис. 6.25, а показан прямоуrольный импульс с MrHoBeHHo меняющимися фронтами во временной области. На рис. 6.25, б показан бесконечно широкий спектр этоrо импульса в частотной области, полученный с помощью преоб разоваllUЯ Фурье: н (f) == А Т SiП 1t j{!) . Н(f) : тп'.l Т ( СП == А Tsinc(1tj7) f а б Рис. 6.25. Преобразование Фурье для прямоуrольноrо импульса: а  временная область; б  частотная область Чтобы уменьшить ширину полосы передаваемоliP импульса до разумноrо уровня, приходится прибеrать к фWlьmрацuu. К сожалению, фильтрация при водит к сrлаживанию сиrнала (во временной области), изза чеrо символы "расползаются" и частично накладываются друr на друrа, что называют меж Символьной интерференцией (Inter5ymbol Interference, [51). На практике час то используются фильтры, частотная характеристика которых имеет форму "прuподllяmой" косинусоиды (Raised Cosine Filters). Их называют так потому, что форма их аМПЛИ1)'дночастотной характеристики (А ЧХ) меняется от пря моуrольной до косинусоидальной (рис. 6.26). Если через r обозначить коэф фuцuеllm спада (rolloff factor) этой характеристики, то отклик (выходной сиrнал) TaKoro фильтра имеет плоскую форму в интервале частот от О до (1  ,)!с. В интервале от (1  ,)!с до (1 + ,)!с отКJtик имеет форму косинусоиды, а выше (1 + ')Ic отклик равен О. При r == О мы имеем "идеальный" фильтр нижних частот. Это означает, что никакой дополнительной полосы канала не требуется, поскольку все посто ронние сиrналы будyr отфильтрованы, но, к сожалению, такой "идеальный" фильтр построить невозможно. При r == 1 фильтр реализуется довольно леrко, но имеет бесконечную полосу. Если обозначить ширину полосы канала как В, то максимальная скорость передачи (без учета межсимвольной интерферен ции) составит R == (символов в секунду). На практике обычно используют коэффициент спада, равный примерно 1/3 (, 1/3). 
316 Передача данных в сетях: инженерный подхов. H(f) Отклик "идеальноrо" низкочастотноrо фильтра,  или "приподнятая" косинусоида при r = О Отклик "приподнятая" косинусоида при r = 0,35 Отклик "приподнятая" косинусоида при r = 0,5 J. 2!. / Рис. 6.26. Импульсы "приподнятой" (по краям) косинусоидальной формы Эффекr фильтрации сиrнала во временной области показан на рис. 6.27. Мrnо венные переходы в начале и конце символа обычно связаны с появлением высо-- кочастотных компонентов, а аМПЛИ1)'да соответствующих сиrналов быстро уменьшается. Эro означает, что высокочастотные компоненты имеют неБОЛIr шую мощность. r l а б , , ,,- " ,. , " " , , , , , , 8 Рис. 6.27. Эффект фильтрации во временной области: а  двоичные данные для передачи; б  неотфильтрованный модулированный сиrнал (в данном случае использован метод двоичной фазовой манипуляции, BPSK); в  модулированный сиrнал после формирования 
rлава 6. С точки зрения канала передачи 317 Амплитудная манипуляция (ASK) Самым простым способом модуляции является амплитудная модуляция (АМ), Korдa информационный сиrнал изменяет амплитуду несущей (рис. 6.28). При менительно к цифровым модулирующим сиmалам этот вид модуляции иноrда называют амплитудной манипуляцией (АМн или ASK, AmplitudeShift Keying). Для демодуляции таких сиrналов выплняетсяя две простых операции  BЫ прямление и сrлаживание. Передаваемый сиrнал определяется как vc(t) == == h(t)cos(21tjJ), rдe h(t) == А) или А 2 , В зависимости от передаваемоrо символа. Существует даже более простая форма амплитудной манипуляции, которую называют двухпозиционной манипуляцией (OnOff Keying, ООК). Коrда сиr нал в канале присyrcтвует, то считается, что была послана 1, а коrда OTCYТCT BYeт то был послан о. Манипуляция т.ипа OOK это ASK с двумя aM ПЛИl)'дами: О и 1. Такой сиrнал может rенерироваться очень просто  применением выключателя, который или блокирует несущую или позволяет передавать ее по каналу. Хотя методика ООКманипуляции достаточно про ста в смысле модуляции и демодуляции, но сам факт отсутствия сиrнала при передаче нулей может привести к трудностям с синхронизацией, т. к. сиrнал синхронизации невозможно извлечь из несущей. Ширина полосы пропускания, требуемая для сиrнала с АSКмодуляцией, co ставляет B ASK == (1 + r)R, 410, rде r  коэффициент спада А ЧХфильтра, а R ---------: скорость передачи инфор мации в битах. Поэтому, в зависимости от формы передаваемоrо импульса, ширина полосы канала должна быть rдето между R и 2R, но ближе к 2R, , иначе (скажем, при В == R) передача становится практически неосуществимой. В настоящее время АSКмодуляция используется довольно редко, поскольку преимущества простой модуляции/демодуляции не так велики, а производи тельность этоrо способа модуляции не очень высока. Все методы амплиl)'Д ной модуляции, включая ASK, имеют еще один недостаток  COOTBeTCT вующие сиrналы не столь просто поддаются реrенерации, по сравнению с фазо или частотномодулированными сиrналами. АSКсиrналы направляют ся в канал только с двумя амшшl)'ДНЫМИ уровнями, но методика формирова ния импульса такова, что любое искажение сиrнала при ero промежуточном усилении приводит к расширению ero спектра, а это означает, что в точках реrенерации требуются достаточно широкополосные линейные усwттели. Однако линейные усилители не очень эффективно используют силовое пита ние и, кроме TOro, вместе с сиrналом они усиливают и шумы. При использо- вании двухуровневых сиrналов более производительной оказывается фазовая модуляция. Однако АSКмодуляция все еще находит некоторое применение. Например, она иноrда используется для передач по оптоволоконным каналам и для низкоскоростных передач от несложных устройств (например, от пуль тов дистанционноrо управления). 
318 Временная область Сиrнал I данных . (основная полоса частот) ASK i Несущая!. FSK MSK BPSK I {"I[\ '\ ,. ;'1'; i:  .  '. j ;  .....* : i; ,  I ,  t  J \ i i \.! '\:: I '\.1 .:I;: ,} , ;}i Передача данных s сетях: инженерный ПОДХОв. Частотная область H(f)+ f!\ /T "...' ! 1v' ; i , Ширина спектра данных : (модулирующеrо сиrнала) i "", 1 J 'J т tW\ :\ 1 /: i : \,;: \ ,A';.! .}') 7 10 :]; т j I f  LI   .  '-../ r. v  .. J.: f Рис. 6.28. Временные и частотные характеристики различных схем модуляции Известен вариант АSКмодуляции ПОД названием "тарная ASK" (mary Amplitude Shift Keying). В ней для передачи символа используется т ампли 1)'дных уровней (т >2). Требования к ширин полосы канала с точки зрения передачи символов не изменяются, а с точки зрения передачи битов стано- вJlтся следующими: R Втах = (1 +r) 1 og2 т rде r  коэффициент спада А ЧХ, R  скорость передачи информации в би тах. Выражение (Og2 m включено в это выражение потому, что скорость в символах определяется как R/Iog 2 m. Хотя по этому выражению создается 
rлава 6. С точки зрения канала передачи 319 впечатление, что скорость передач повышается без какихлибо дополнитель ных затрат, однако, появляются затраты, связанные с ростом интенсивности ошибок, возникающих изза уменьшения расстояний между амплитудными уровнями (их становится труднее отличать друr от друrа). Это означает, что приемники должны быть более чувствительными, а допустимые электриче ские помехи в передающей среде должны быть оrpаничены. Частотная манипуляция (FSK) При частотной манипуляции (Frequency Shift Keying, FSK), информация по сылается путем изменения частоты несущеrо сиrнала (см. рис. 6.28). Для передачи двоичных сиrналов обычно используется двоичная частотная Ma нипуляцuя (Binary Frequency Shift Keying: BFSK), Korдa используются Bcero две частоты. Однако можно использовать и большее количество частот, что позволяет пересылать в каждом символе более одноrо бита информации. Ширину полосы, требуемую для передачи ЧМсиrналов, можно найти, если рассмотреть сиrнал, составленный из пары смежных АSКсиrналов (см. rpa фик FSK на рис. 6.28). Каждый FSКсиrнал имеет полосу шириной , B ASK == (1 + r)R, rдe r  коэффициент спада А ЧХ, а R  скорость передачи :' информации в битах. Если разность между FSКчастотами обозначить как д!, !. то окончательная ширина требуемой для передaJ,JИ таких сиrналов полосы " частот будет равна B ASK == Д! + (1 + r)R. . Полоса частот FSКсиrнала шире, чем у ASK, но первый несколько сложнее в ,реализации. Однако FSКмодуляция обеспечивает более высокое качество . передачи, в особенности коrда число модулирующих частот увеличивается . (такой вид модуляции называют тapHЫM FSK). Проблема состоит в том, что, . хотя этот вид модуляции улучшает качество передач за счет уменьшения KO ; личества ошибок (для друrих методов все как раз наоборот), но он также по вышает и требования к полосе пропускания канала, а это часто более серьез ное оrраничение, чем, скажем, оrpаничение, связанное с мощностью сиrнала (которое становится серьезным лишь для очень длинных каналов, например, при связи с космическими аппаратами). Более популярен друrой метод час тотной модуляции  С минимальной частотной манипуляцией (Minimum Shift Keying, MSK,  см. далее), в котором ширина частотноrо спектра сиr нала минимизируется. FSКмодуляция использовалась в старых модемах, pa ботавших со скоростями около 300 бод/с. Стандарт У21 определяет два FSK сиrнала (по одному для каждоrо направления) 1080 i: 100 rц и 1750 i: 100 rц с шириной спектра примерно 600 rц. 
#о Передача данных s сетях: инженерный подход rлаsа 6. С точки зрения канаЛа передачи 321 Минимальная частотная манипуляция (MSK) Поскольку ширина спектра FSКсиrнала зависит от разности несущих частот FSКсиrнала (4/), то возникает интересный вопрос: как определить допусти мый минимум этой разности? Минимально допустимой разностью частот считается такая разность, коrда в более высокочастотном элементе сиrнала имеется один дополнительный полупериод (см. rрафик MSK на рис. 6.28). Меньшие значения 6.! провели бы к нарушению непрерывности сиrнала. По этому 6.f== (fj  /О) == 1/(2Т) и, следовательно B pSK == R/2 + (1 +r)R. MSK используется в качестве базы для некоторых мобильных коммуникаци онных систем, таких как сотовая GSM 9 и TETRAPOL PMR, rде важно иметь УЗf<ополосные сиrналы. он часто вносит ошибки, поскольку фаза любоrо передаваемоrо сиrнала под вержена случайным изменениям. Jl.I!Я преодоления этих трудностей можно использовать дифференциШlьную J фазовую манипуляцию (Differential Phase Shift Keying, DPSK). В этом случае фаза изменяется в зависимости от преды дущеrо переданноrо бита. Как показано на рис. 6.29, передача единичноrо бита всеrда изменяет фазу передаваемоrо сиrнала (относительно предыдуще ro переданноrо сиrнала), тоrда как передача нулевоrо бита никакоrо измене ния фазы не вызывает. Очевидно, что для DРSКсиrналов требуется канал с такой же полосой, как дЛЯ PSK или АSКсиrналов. Поскольку приемник может использовать (в качестве ссьтки) сиrнал, полу ченный при передаче предыдущеrо символа модулирующеrо сиrнала, то в Ka честве детектора можно использовать дифференциWlьные (разностные) MOДY ляционные схемы, довольно удобные для некоrерентноrо детектирования. Проблема состоит в том, что отсyrствие абсолютной ссылки приводит к pac пространению ошибок. Если произойдет ошибка, то она затронет не только данный, только что переданный символ, но также и все последующие символы. Двоичная фазовая манипуляция (BPSK) При фазовой манипуляции (Phase Shift Keying, PSK) для передачи информа ции используются изменения фазы сиrнала. Самой простой формой этоrо вида модуляции является двоичная фазовая манипуляция (Binary Phase Shift Keying, BPSK). Для передачи нулевоrо сиrнала посылается просто несущая частота, а для передачи единичноrо сиrнала посьтается несущая, сдвинутая 1800 (см. rрафик BPSK на рис. 6.28). Поскольку смещение фазы на 180° тo же самое, что инверсия несущей, то BPSK эквивалентен ASK с амплитудами модулирующеrо сиrНЩIа +А и A. Эта эквивалентность ASK показывает, что требования к ширине полосы у PSK  те же, что и у ASK B pSK == (1 + r)R, rде, попрежнему, r  коэффициент спада А ЧХфильтра, R  скорость передачи информации в битах. Тот факт, что амплитуды несущей для двух символов модулирующеrо сиrнала являются инверсией друr друrа, означает, что компонент несущей частоты в формате РSКсиrнала, в среднем, oTcyrcTByeT. Хотя отсyrствие несущей достаточно эффективно в том смысле, что вся мощность используется для передачи информа ционноrо сиrнала, а не тратится впустую на передачу несущей, это He MHoro усложняет схемы приемника, потому что для детектирования сиrнала он должен восстанавливать несущую. По этой причине часто используются т. н. дифференциШlьные методы модуляции. о о о о о о PSK DPSK Рис. 6.29. Сравнение PSK с DPSK Дифференциальная фазовая манипуляция (DPSK) в системах фазовой модуляции для обнаружения абсолютных изменений фа зы требуется специальный детектор. Практически ero трудно построить, и Квадратурная фазовая манипуляция (QPSK) Вместо двух значений фазовоrо параметра (0° и 180°) для целей модуляции можно использовать большее число фазовых значений. Если вместо сдвиrа на 180° воспользоваться 4 сдвиrами на 90°, то мы получаем метод модуляции, который называют квадратурной фазовой манипуляцией (Quadrature Phase Shift Keying, QPSK). Для передачи символов модулирующеrо сиrнала она использует четыре возможных фазовых сдвиrа несущей. QРSКмодуляция использует ту же мощность сиrнала и имеет ту же произво дительность по ошибкам, что и у BPSK, но только в том случае, если декодер может полностью разделить фазовые и квадртурные составляющие сиrнала 9 GSM  Global System for Mobile communications, rлобальная система мобильной связи (CTaH дарт сотовой связи в Европе).  Пер. 10 В отечественноЙ литературе этот вид модуляции чаще называют относительной фазовой MO дуляцией.  Пер. 
322 Передача данных в сетях: инженерный подход (так как в результате будет ПОлучено два ВРSКсиrнала). Однако на практике полностью достичь этих целей невозможно, поэтому производительность по сравнению с BPSK несколько Снижается. Однако для заданной скорости пере дачи модулирующих сиrналов и, следовательно, ширины полосы пропускания канала битовая скорость передачи дЛЯ QPSK вдвое больше, чем у BPSK, т. к. один символ QPSK может коДИровать два бита модулирующеrо сиrнала. Вместо стандартноrо двоичноrо кодирования можно использовать двоичный циклический код fрея. ОН rарантирует изменение только одноrо бита при пе реходе между двумя любыми соседними кодами, что приводит к минимизации битовых ошибок, т. к. наиболее вероятно, что ошибка произойдет в соседнем символе, а не в том, который сдвинyr по фазе на 1800 по отношению к данному символу. Последовательность кода fрея выrлядит так: 00, 01, 11 и 10 с цикли ческим возвратом к 00 (рис. 6.30, а). Еще раз обратите внимание, что при лю бом переходе в этой последовательности меняется только один символ пары. Последовательность стандартноrо двоичноrо кода выrлядит несколько иначе: 00,01, 10 и 11 с циклическим ВОзвратом к 00. В нем имеется два двойных из менения в соседних символах  при переходах от 01 к 10 и от 11 к 00. По тем же причинам, что и в BPSK, в квадратурной фазовой модуляции можно использовать методику дuффереНЦUШlЬНО20 кодирования, коrда пере- даваемые двоичные сиrналы кодируются изменением фазы, а не абсолютноrо значения. Дифференциальным вариантом QPSK является разновидность фа- зовой модуляции с названием n/4-DQPSK, rде между каждым символом до- бавлен дополнительный фазовый сдвиr на п/4 (рис. 6.30, 6). Дополнительное смещение фазы означает, что переходы между символами не проходят через начальную фазу, и это уменьшает изменения амfU1ИТУДЫ сиrнала. Вследствие этоrо уменьшаются требования как к полосе канала, так и к формированию импульсов сиrнала. Квадратура (q) Квадратура (q) +1 01 : "" /'f .o - : , \ . i : , ' . ' . I I \ i i ',/ !, :+1 ..... !в фазе ( i\ ... '1 '1 ': . "-o ........ \ -::::oo \ ... ! .., . ..' \ \ ....1. / . \ ......' I ' -\-.......: \ , \ . ...... ,. \/ .....w...  1 \ : . , \  ! \ : .. ' ....------ 11 '-.. '-. l 1 а б Рис. 6.ЗО. СовокупнОсти QPSK и n/4-0QPSK символов 
rлава 6. С точки зрения канала передачи З2З m-арная фазовая манипуляция (m-ary PSK) Можно увеличить число передаваемых сиrналов, уменьшая изменение фазы между ними. Однако, в отличие от перехода от BPSK к QPSK, расстояния между передаваемыми символами с увеличением их количества будут уменьшаться, хотя для заданной скорости передачи сиrнала битовая скорость возрастет, а количество ошибок уменьшится. С точки зрения передачи модулированных сиrналов требование к полосе канала у mPSK не изменяется (по сравнению с друrими видами фазовой модуляции), а с точки зрения передачи битов модулирующеrо сиrнала эти требования выражаются следующим образом: В == (1 + r) R/log 2 m, rде В  необходимая ширина полосы пропускания канала, т  число значений модулированноrо сиrнала. Поэтому для QРSКсиrналов требуется полоса шириной B QPSK == (1 + r) R/2, а для сиrна.ilOВ 8значной PSK (то есть PSK с т == 8) требуется канал с полосой B8PSK == (1 + r) R/3 (рис. 6.3 1), rде r  коэффициент спада А ЧХфильтра, а R  скорость передачи в битах. С ростом т требования к полосе уменьшаются, однако одновременно снижа ется помехоустойчивость. Квадратура (q) + 1 011 ,................ 111,/. ,,/' ! 101 { I ........... 00 1 ".  \\ . \000 1\. .... 1 00 .... ................. {+1 ,/ в фазе (i) ,..JI' О 1 О ..................... 1 110 Рис. 6.31. rруппирование сиrналов в системе фазовой модуляции типа 8-PSK Квадратурная амплитудная модуляция (ОАМ) Можно увеличить объем передаваемой информации, если изменять как aM плитудные, так и фазовые компоненты несущей. Наиболее общей формой фазоамплитудной модуляции является квадратурная амплитудная модуляция (Quadrature Amplitude Modulation, QAM), сиrнал которой формируется путем сложения двух АSКсиrналов, смещенных по фазе на 900. В зависимости от числа различающихся амплитуд составляющих АSКсиrналов, полная COBO 
324 Передача данных в сетях: инженерный Подход купность сиrналов состоит из прямоуrольной сетки сиrнальных точек (рис. 6.32). Возможны также друrие комбинации амплитуд и фаз, которые формируют специальный класс модуляционных систем, называемый ампли myднофазовой манипуляцией (Amplitude and Phase Keying, АРК). QAM часто называется "квадратной QAM", чтобы отличить ее от друrих форм амплитуд но-частотных манипуляций. Квадратура ( q ) +1 а Квадратура ( q ) . . +3 . . . . +1 . . 3 1 +1 +3 Вфазе(i) . . 1 . . . . 3 . . 6 .,........,.. ....................... 01 .,/ ''', 00 ;--- - л -.' \ I  :.. I . . . . , " , , /. . 1 ".. / ! \ l\ . \ / \ / \------ 11...... ...................... 1 " i j+l '\. ' . ... i i Вфазе(i) '-, , ........................д,' / 10 .................... Рис. 6.32. Квадратная адм (а) и прямоуrольная сетка ее сиrнальных точек (6) в своей базовой форме квадратная QAM включает всеro четыре различных сиrнала, и поэтому может кодировать пары входных битов. Они rенерируют ся путем сложения двух АSКсиrналов с амплитудами + 1IJ2 и  1/.J2. дающих в результате QАМсиrнал с амплитудой 1 (табл. 6.2). Схема COOTBeT ствующеrо модулятора показана на рис. 6.33. Таблица 6.2. Сложение АSК-сиrналов Инфомационные Сдвиr по фазе Амплитуда Амплитуда биты в фазированном в квдратурном сиrнале О) сиrнапе (q) 00 п/4 +lIfi +lIfi 01 3п/4 1I,/2 +11,/2 11 3п!4 1I,/2 lIfi 10 п/4 +I/fi 1I,/2 
rлава 6. С точки зрения канала передачи 325 Входные биты I 0001101100011011 МJ\N\PWV \ "-  01010101 "-  Рис. 6.33. QДМмодулятор Чистый QАМсиrнал включает заостренные переходы на rраницах компо нентов сиrнала, как показано на рис. 6.33. Это означает, что практические модуляторы должны содержать специальные фильтры, формирующие COOT ветствующую форму импульса (на рис. 6.33 они 1l0казаны в точках Р, распо ложенных до умножителя с несущей). Схема демодулятора сиrналов QAM приведена на рис. 6.34. Несущая Сдвиr по фазе на 90. Выход информационных битов QЛМвход Рис. 6.34. QДМдемодулятор Амплитудные и фазовые компоненты сиrналов квадратной QАМмодуляции достаточно сложны для распознавания, и в некоторых передающих средах это может привести к существенным трудностям. Хорошим примером такой ситуации является радиоканал. Определенные преимущества MOryт обеспе чить друrие методы rpупповой модуляции. Два конкретных примера  звез 
32б Передача данных в сетях: инженерный пoдxo дообразная (star) QAM и круzовая (circular) QAM, которые показаны на рис. 6.35, хотя, cтporo rоворя, это скорее АРКсиrналы, чем сиrналы QAM. При звездообразной QАМмодуляции (рис 6.35, а) предъявляются не очень высокие требования к средней мощности сиrналов (для заданноrо миниМаль ното расстояния между сиrнальными точками). Поскольку от этоrо расстоя ния зависит интенсивность ошибок, то такой вариант амплитуднофазовой модуляции полезен для уменьшения интенсивности ошибок при передачах заданной мощности. Кроме Toro, сиrналы заданной амплитуды в этом вари анте амnлитудноФазовой модуляции имеют сдвиr по фазе 900, что облеrчает их распознавание в тех каналах, в которых фазовые искажения более вероят ны, чем амплитудные (например, в телефонных каналах). Звездообразная QAM используется в некоторых модемных стандартах, например  в У29. Круrовая QAM (рис. 6.35, б)  это PSK с двумя или большим количеством амплитудных уровней. Преимущество этоrо вида модуляции состоит в том, что использующееся в ней дифференциальное детектирование избавляет от необходимости восстановления несущей. Квадратура (q) +1 1011 :'"';..1 .. . / ,0001 \ ,. . ,,/" 0000 \ Квадратура (q) +1 1011 1000 _....--- 1111/1..... / -- .. 0111 ..... .. '/ , , . , Н01 f ! 0101 :."..., 001 "'''' \ ....000 1 \ \ \ \0000 \ 1000 I, //' .... 1+1 \ 1'/ ......... i в фазе (1) \0100/ ..010 / 1l0< 0110 >';IO ......... ./ 1 1110 I \ \. \'. 1100 "" ............... \ . i ;+1 . i i в фазе (/) ....0100 ..' I .......... __' 001 0/ 0110 ....;0\0 ./ -_........ 1 1110 а б Рис. 6.35. Варианты АРК: а  звездообразная ОАМ; б  круrовая ОАМ с точки зрения передачи модулированноrо сиrнала требование к ширине полосы канала у QАМмодуляции такое же, как у ASK, а с точки зрения передачи модулирующеrо сиrнала  требуется полоса шириной B ASK = (J + r)R/log 2 т, rде r  коэффициент спада А ЧХфИJ1ьтра, R  CKO рость передачи в битах. Модуляция типа 4QAM имеет те же показатели ин тенсивности битовых ошибок, как и у 11l ASK (то есть у BPSK), но тарнЫЙ QAM имеет худшие показатели интенсивности ошибок сиrнальных комп<r нентов, поскольку сиrнальные точки на ero диаrpамме расположены ближе 
rлава 6. С ТОЧКИ зрения канала передачи 327 друr к друrу. Однако он работает лучше, чем тарный PSK, хотя системы модуляции 4QAМ и QPSK эквивалентны, и поэтому имеют примерно одина ковые эксплуатационные характеристики. тapHыe АРКсистемы модуляции очень эффективны, особенно при больших значениях т. Например, в модемах кабельноrо телевидения широко исполь зуется системы 64QAM (т == 64) или 256QAM (т == 256). Однако в каналах с высоким уровнем амплитудных и фазовых искажений (например, в радио каналах) очень трудно отличить изменения, введенные в передаваемый сиr нал каналом, от изменений, введенных передатчиком. Для этоrо требуется довольно сложная методика и аппаратура оценки текущих характеристик Ka нала. По этой причине схемы QАМмодуляции лишь относительно недавно бьши внедрены в мобильные радиосистемы. 6.6. При мер применения: ADSL Завершает rлаву, посвященную обзору канала, рассмотрение асимметричной цифровой абонентской линии (Asymmetrical Digital Subscriber Line, ADSL II ). ADSL  это интересная технолоrия, которая показывает, как можно исполь зовать модуляцию для расширения возможностей уже существующих пере дающих сред, например, витых пар проводов. Она иллюстрирует постоянно меняющуюся тенденцию в экономике коммуникационных систем. Поскольку стоимость обрабатывающеrо оборудования ПОСI.,оянно падает, а стоимость монтажа новых линий передачи постоянно paCT, то становится все более эффективным расширение возможностей уже существующих линий передач с помощью более сложной приемнопередающей аппаратуры. ADSL  это существенный элемент rруппы модемных технолоrий, из вестных под общим названием xDSL. Друrими членами этоrо семейства являются HDSL I2 , SDSL IЗ И VDSL I4 . Все эти технолоrии пытаются обеспе чить относительно высокоскоростную связь между клиентом и коммуни кационной сетью с использованием уже существующих в местной линии связи соединений через витые пары медных проводов. При этом, В зави симости от конкретных условий, можно добиться скоростей передачи по 11 ADSLтехнолоrия используется для несимметричноro доступа по существующим телефонным линиям (на основе витых медных пар), позволяющая потребителю принимать сиrналы со CKO ростью ДО 8 Мбит/с, а передавать  со скоростью до 1 Мбит/с на расстояние до 7 км.  Пер. 12 HDSL. Highbitrate DSL  технолоrия высокоскоростной передачи по абонентским uифро вым линиям (кабелям на основе витых медных пар), обеспечивающая передачу двунаправ леннЫХ потоков информации на расстояние до 6 км со скоростью 2,048 Мбит/с; предложена компанией PairGain.  Пер. 13 SDSL, Symmetrical Digital Subscriber Une  симметричная цифровая абоненrcкая линия.  Пер. 14 VDSL  Very highbitrate DSL  технолоrия сверхскоростной передачи по цифровым абонентским линиям.  Пер. 
$28 Передача данных в сетях: инженерный подход рядка нескольких десятков Мбит/с. Чтобы обеспечить высокоскоростной доступ, можно также применять и альтернативные технолоrии, такие как беспроводной доступ, связь по оптоволоконным линиям И через кабельные модемы, но почти все они требуют установки между пользователем и ce тью новой передающей среды. Учитывая оrромный объем уже проложен IIЫХ проводных линий связи И высокую стоимость прокладки любых HO выx кабелей, можно извлечь существенные выrоды от использовании уже установленноrо оборудования. Для использования хDSLтехнолоrий дoc 'tаточно просто установить в помещении клиента и в местном коммутаторе подходящие модемы. Развертывание ADSL является теперь скорее поли fической и экономической, а не технической проблемой. Уже существен но проработаны стандарты xDSL, так что нет никаких препятствий на пу ти внедрения подобных систем. Определение максимальных пределов широкоrо развертывания АDSLсистем  это теперь дело рынка, теле коммуникационных компаний и соответствующих инспекций. Технолоrия ADSL была стандартизирована в 1995 rоду (стандарт ANSI Тl.415) и первоначально подцерживалась воспринимаемой (но не осознавае мой) потребностью в службах "визуализиции по требованию" (Video оп De mand, VoD). В таких службах возможности передачи по направлению "к кли eНIy" должны быть HaмHoro большими, чем возможности передачи "от клиента", следовательно возникает потребность в асимметричной передаче данных. Такая характеристика присуща и сеrодняшним Iпtеrпеtтехнолоrиям, коrда пользователи rенерируют HaMHoro менее интенсивный трафик, чем ис точнИlСИ их информации. Так, для передачи запроса на WеЬстраницу требу ется существенно меньшая полоса канала, чем для ее заrрузки. Хочется Be ритъ, что АDSLтехнолоrия еще cbIrpaeT заметную роль, которая позволит нам использовать всю мощь сети Internet и удалить из нее самое "узкое Me сто"  56килобитовый модем. Хотя в телефонной среде работа кабелей, состоящих из медных витых пар, оrpаничена полосой  кfц, по таким про водам можно передавать сиrналы и в полосе шириной свыше 1 Мfц. В ADSL это достиrается с помощью Meтcr дов частотноrо уплотнения (FDM), которые делят спектр на множество полос по 4 юц каждая и используют их для переноса потоков данных (в обоих Ha прaв.nениях) между пользователем и устройством обмена, а также для под держания выделенноrо канала в полосе  кfц для ведения речевоrо обме на. Первые 25 кfц спектра распределяются для речевых сиrналов (до 4 юц)  неиспользуемая часть этоrо диапазона расходуется на предотвра щение пере крестных помех между речевыми сиrналами и сиrналами данных. Использование первых 4 кfц для передачи речи позволяет осуществлять OT носительно простое взаимодействие с коммутационной сетью общеrо поль зования (PSТN) через применение расщепляющих устройств. Сиrналы в по лосе частот выше 2S кfц служат для передачи информации между 
rлава 6. С точки зреНиЯ канала передачи 329 пользователем и широковещательной сетью передачи данных, для чеrо и применяются модемные пары, подцерживающие ADSL. Для передачи данных в ADSL используются методы либо дискретной MHO 20тонШlЪНОй модуляции (Discrete Multitone modulation, ОМТ), либо ампли туднофазовой модуляции без несущей (Carrierless Amplitude and Phase, САР), либо квадратурной амплитудной модуляции (QAM). Первая из этих методик является стандартной и будет кратко описана далее. Основная концепция ОМТ, в сущности, весьма проста, но дает неправильное представление о сложности ее реализации. Спектр разделяется на множество индивидуальных каналов (256), каждый из которых связан со своим собственным несущим сиrналом. Затем каждая несущая модулируется по QАМметодике, обеспечи вающей потенциальную пропускную СПQCобность порядка 60 Кбит/с. Инди видуальные модулированные несущие затем просто складываются, обеспечи вая общую потенциальную пропускную способность 15,36 Мбит/с. ОТС КПС ксп 25 кrц  1,1 мrц 4,3 кrц Рис. 6.36. Спектр ADSL: атс  обычная телефонная сеть, кпс  канал от пользователя к сети, ксп  канал от сети к пользователю . Частотные характеристики каждоrо индивидуальноrо канала не одинаковы и возможности передачи информация каждоrо канала  разные (в зависимости от расстояния и состояния витой пары). Вообще, с увеличением несущей час тоты частотная характеристика деrpадирует, что означает, что в более BЫCO кой части спектра информационная пропускная способность уменьшается. Во время установки модем определяет качство каждой несущей и COOTBeТCT вующим образом настраивает скорость передачи данных. Для передачи дaH ных устанавливается два диапазона частот: большой (около 256 каналов)  для входящих потоков и малый (32 канала)  для выходящих потоков. Эти диапазоны являются или отдельными частотными диапазонами, как показано на рис. 6.36, или малый выходной диапазон разделяет более низкую часть входноrо диапазона, но сохраняется в виде отдельноrо канала, используя эхо подавление. Эхоподавление  это такая процедура, которая позволяет Tep 
330 Передача данных в сетях: инженерный пoдxo миналу извлечь сиrнал удаленноrо передатчика из смеси сиrналов, переда ваемых по одному каналу, поскольку каждый терминал знает, что он сам Пе редает. При таком ПОДХоде этап эхоподавления увеличивает сложность MO демныХ устройств, но обеспечивает серьезное усовершенствование и rибкость передач. Хотя, как можно видеть, ADSL предлаrает скорости передачи, превышающие 1 О Мбит/с, но некоторые технические факторы оrраничивают эти скорости до 1,59 Мбит/с для нисходящих потоков данных и доl6-------640 Кбит/с для ис ходящих. К таким факторам относят затухание в линии, баланс кабеля, ин терференцию радиочастот и перекрестные помехи на ближнем или на даль- нем конце канала. Для уменьшения влияния шумов применяется комбинация интерливинrа (чередования) и прямоrо исправления ошибок (РЕС), исполь- зующеrо коды РидаСоломона. Существенное влияние на частотную харак- теристику и способность передавать информацию по конкретной кабельной линии оказывают как ее длина, так и радиосиrналы, но АDSLтехнолоrия адаптивна и может изменять ширину полосы, чтобы удовлетворять требова- ния установленноrо соединения и максимизировать предлаrаемую ширину полосы. 6.7. Вопросы к rлаве 6.6.1. Вопросы по пропускной способности канала 1. Двоичный симметричный канал с вероятностью перехода 1/4 каскадно соединен со вторым каналом с такой же с вероятностью перехода (1/4), так что выходной сиrнал первоro канала направляется во второй. Обозна- чим вход в первый канал через.А: выходной сиrнал первоrо канала и вход во второй  через У, а выходной сиrнал BToporo канала  через Z. ис точник В Х reнерирует О с вероятностью 1/3, а 1  с вероятностью 2/3. а) вычислите H(XI у); б) вычислите взаимную информацию между Х и У; в) вычислите Н (Х I Z); r) вычислите взаимную информацию между Х и Z. 2. Двоичный канал со стиранием имеет следующую форму (рис. 6.3 7). 
rлава 6. С точки зрения канала передачи ЗЗ1 о о u 1 Рис. 6.37. Форма двоичноrо канала (к вопросу 2) Какова ero пропускная способность в терминах вероятности р? 3. Телефонный канал имеет полосу шириной 3,4 кfц: а) вычислите пропускную способность канала, если отношение сиr нал/шум составляет 30 дБ; б) вычислите минимальное отношение сиrнал/шум, требуемое (Teope тически), чтобы поддерживать передачу информации со скоростью 4800 бит/с. --
\ I / rлава 7 v . - .". / . '-. Соединим все вместе 7.1. Введение в этой rлаве на примере двух коммуни ционных систем рассматриваются принципы проектирования, описанные в предыдущих rлавах. 7.2. Мобильная телефонная система GSM в качестве nepBoro примера рассмотрим систему мобильной цифровой теле.- фонии, которую иноrда относят к системам Bтoporo поколения (она считается наследницей систем аналоrовой телефонии первоrо поколения). Существует несколько стандартов таких систем, включая cdmaOne™ в Соединенных Штатах и PDC в Японии. Каждый из них п разному решает проблемы связи, но здесь будет рассматриваться только 2Лобtиlьная система моБWlЬНОЙ связи GSM (Global System for МоЬi1е communications), широко используемая в Европе и во мноrих друrих частях мира. 7.2.1. Передающая среда Средой передачи для систем мобильной телефонии является атмосфера. В то время как инфракрасный канал может работать лишь на небольших расстоя ниях и в закрытом помещении, единственным практическим выбором для моБWlЬНОЙ системы является радиоканШl. Из за большоrо числа желающих воспользоваться этим довольно оrраниченным ресурсом, доступ к радиочас тотному спектру реryлируется и оrраничивается правительством. Для мо-- бильных цифровых радиосистем выделены два диапазона частот в районе 900 мrц (89()"""",,915 мrц и 9З5 960 мrц). 7.2.2. Кодирование и модуляция Кодированный сиrнал можно передавать либо в основной полосе частот, ли бо модулируя им некоторую несущую часто1)'. Модуляция необходима по тому, что среда может передавать сиrнал только в относительно узком диапа зоне частот BOKpyr несущей.
334 Передача данных в сетях: инженерный подход В принципе можно использовать МОДУЛЯЦИЮ любоro вида амплитудную, частотную или фазовую. Амплитудную модуляцию применять нет смысла из за сильных колебаний коэффициента затухания в радиоканалах, так что на приемном конце канала довольно трудно разобраться, произошли ли измене ния амплитуды сиrнала вследствие изменений свойств канала или она изменя ется уже на выходе передатчика. Достаточно эффективной является фазовая МQДУЛЯUИЯ, но при сопровождающих ее резких изменениях формы выходноrо сиrнала может потребоваться радиоканал с довольно широкой полосой про-- пускания (если не использовmъ специальных методов формирования фазы). Чтобы избежать искажений, вызванных применением специальных методов 1 формирования амплитуды выходноrо сиrнала, приходится использовать дoc таточно сложные и энерrоемкие линейные усилители. Если точная форма aM плитуды принимаемоrо сиrнала не имеет особоrо значения, то можно исполь зовать более простые в изrarовлении и менее энерrоемкие нелинейные усилители, IпО достаточно важно, например, для устройств с батарейным пи танием. В связи с усовершенствованием схем передатчиков в последние rоды стали доступны более дешевые и эффективные линейные усилители, так что некоторые системы радиосвязи теперЬ используют фазовую модуляцию, но коrда разрабатывалась система GSM, это был опасный выбор. Поэтому с caMO ro начала разрабarки в GSM используется частотная модуляция. Для частотной МОДУЛЯЦИИ можно было выбрать либо FSK обычную час тотную манипуляцию, либо MSK минимальную частarную манипуляцию. MSK использует каналы с меньшей (по сравнению с FSK) полосой пропуска ния, и поэтому является более предпочтительной для систем, в которых нуЖ но максимизировать число пользователей (а следовательно, и доходы) KOM пании, предлаrающей услуrи связи. На самом деле, перед передачей в канал GSM использует специальный метод формирования (фильтрации) импульсов модулирующеrо сИrнала. Вместо "приподнятой" косинусоиды (см. славу 6) они имеют форму rауссовой кривой. Соответствующую методику частотноЙ модуляции называют 2ауссовой минuмWlЬНОЙ частотной манипуляцией (Gaussian Minimum Shift Keying, GMSK), но цель ее та же, что и у MSK снижение требований к ширине полосы канала и уменьшение резких колеба ний частоты сиrнала. 7.2.3. Управление средой доступа Радио канал это разделяемая, общедоступная среда, поэтому для нее нужно обеспечить коллективный, множественный доступ. Система должна обеспе читъ поддержку и rибкое обслуживания большоrо количества пользователей. I Например, фильтров с АЧХ в форме "приподнятой косинусоиды" (см. zлаву 6). Пер.
rлава 7. Соединим все вместе ЗЗ5 При разработке в GSМсистему заложено два режима множественноrо дoc тупа FDMA (с разделением частот) и ТОМА (с разделением времени). При использовании FDMA каждой паре передатчик/приемник выделяется собственный диапазон частот. Система проста, но с точки зрения мобильной коммуникационной системы она имеет множество недостатков. Между частотными каналами должен существовать некоторый защитный ин тервал. Для передачи речи не нужно передавать больших объемов информа ции, так что можно использовать не очень широкие каналы. Но, вопервых. это означает, что защитные интервалы будут занимать существенную долю спектра, что уменьшает эффективность использования выделенной радиока налу общей полосы частот. BOBTOpЫX, поскольку в FDМАрежиме передача ведется непрерывно во времени, то для орrанизации дуплексной (то есть oд новременной двусторонней) связи, необходимой для передачи речи, каждый . терминал должен быть оборудован передатчиком и приемником, работаю щими одновременно. Проблема несколько сложнее изза Toro, что, если MO бильный телефон должен иметь возможность связываться и с друrими (не ,только со своим) передатчиками, то каждый раз, коrда потребуется связь с третьим лицом, он должен будет сообщать операторам GSM, что выходит из данной ячейки. Это неудобно и довольно дороrо. Так как GSM  цифровая система, то альтернатиljpЙ частотНО20 разделения каналов (FOMA) является их временное разделение (ТОМА). Однако, если бы использовалось одно временное разделение, то возникла бы проблема, co стоящая в том, что все пользователи работали бы на одной и той же несущей, и единственным способом оrраничить интерференцию сиrналов в смежных временных интервалах (слотах) был бы отказ от использования смежных ин тервалов, т. е. смежных ячеек системы. Это потребовало бы, чтобы базовые станции функционировали в четко выделенных и выровненных временных интервалах, а управление ресурсами работало бы со всей системой в целом. Поэтому в GSM используется комбинация FOМA и ТОМА. В этом случае возникает вопрос  как орrанизовать разделение и распреде ление общей полосы частот канала для временных слотов ТОМА? Для BЫCO кочастотных несущих накладные расходы на защитные интервалы уменьша ются. Однако это уменьшает rибкость процесса управления интерференцией и методов распределения несущих между ячейками системы. Сначала FOMA расщепляет весь выделенный GSМсистеме спектр частот на ряд несущих с интервалом в 200 кfц, а затем используется ТОМА, разделяющая временной интервал на кадры, каждому из которых выделяется своя несущая. Каждый кадр разделяется на восемь слотов, несущих закодированный речевой сиrнал (рис. 7.1). 
336 Передача данных в сетях: инженерный пOДXOJL Пакет GSM содержит два блока данных, разделенных настроечными после довательностями. Настроечная последовательность  это заранее извест ВЫЙ набор битов, который позволяет приемнику оценивать состояние канала. На рис. 7.1 показан НОрМWlЬНЫЙ пакет, предназначенный для передачи речи. Но существует несколько пакетов друrих, более специфических форматов  ДЛЯ передачи различных сиrналов, хотя все они размещаются в той же 156,25битовой структуре. Кадр GSM, 4,165 МС 4 . .о .о <:; <:; ф  CI) ]I Наcrроечная .... Информационные ,CIJ ,CIJ Информационные .... 7 .... 7 t s2 последователь s2 :r:1O биты LD!;2 LD!;2 биты  CI) ность CI) Q. Q. CI) CI) с с I I Защитный I интервал I I I J ': 3 57 26 57 8,25 битов ' f Длина пакета 148 битов 1 временной слот  156 % бит периодов = 15/26 (0,577) МС ц Рис. 7.1. Структура нормальноrо пакета, слота и кадра GSM Чтобы орrанизовать эффективную дуплексную работу с полудуплексным приемопередатчиком, GSM творчески подошла к использованию TDM системы, что в итоrе привело к уменьшению затрат. За исключением выделе ния слотов, ТDМАсистема не ведет передач. GSM использует эти незанятые интервалы двумя способами. Вопервых, в них можно вести передачу в пр<r ТИ80ПОЛОЖНОМ направлении. Слоты GSM нумеруются так, что передаваемый от телефона к центральной станции (uplink) слот, располаrается на три слота позже принимаемоrо им от станции (downlink) слота (рис. 7.2). Мобильный телефон принимает данные в выделенном ему слоте (например, в слоте 2) и затем (в слоте З) переключается в режим передачи, чтобы передать третий, следующий за ним слот (5) в обратном направлении (на центральную CTaH цию). Это можно сравнить с чистой FDМАсистемой, для дуплексной работы которой требуются одновременно работающие раздельные передатчик и при емник. Четыре остальных слота кадра (1, 6, 7 и 8) GSM использует для подrо товки данноrо (и всех друrих) абонентских каналов к приему новых сообще 
rлава 7. Соединим все вместе ЗЗ7 ний, переключения на друrой канал, контроля мощности сиrнала друrих цeH тральных узлов (для Toro чтобы решить, не выrоднее ли подключить абонен та к друrой ячейке сети). Передача на мобильный телефон (Downlink) Кадр 1 Кадр 2 Кадр 3 Состояние мобильноro телефона ..... ..... Передача ..... от мобильноrо телефона (Uplink) Рис. 7.2. GSM орrанизует дуплексную передачу, используя только одно направление в каждый момент времени Такая структура ТОМА при водит к более rибкой инициализации служб. Ha значая несколько слотов каждому кадру, GSM может поддерживать более высокоскоростные службы. Такой подход используется в технолоrии HSCSD 2 . Кроме Toro, с ero помощью можно также поддерживать речевую службу, использующую половину нормальной скости передачи. Ее называ ет службой "полускоростной" передачи речи (halfrate speech). Поскольку речь передается на мобильный телефон только в каждом втором кадре, тpe , буется более сложный речевой кодер, но число поддерживаемых пользовате .. лей при этом удваивается. 1 , 7.2.4. Кодирование Для кодирования речи требуется хорошая, четкая речь и низкая скорость пе , редачи (битрейт). Существуют следующие методы кодирования речи: (] обычная импульснокодовая модуляция (ИКМ); '(] адаптивная ИКМ; (] дифференциальная (или разностная) ИКМ; (] преобразующие кодирующие устройства; (] векторные кодирующие устройства. 2 HSCSD  High Speed Circuit Switched Оаtз, технолоrия высокоскоростной передачи данных по коммyrируемым каналам. Используется в сетях GSM и обеспечивает увеличение скорости передачи данных до 14,4 Кбит/с, а с мультиплексированием четырех каналов в одном Bpe менном слоте  до 57,6 Кбит/с (фирма Nokia).  Пер. 
ЭЭ8 Передача данных в сетях: инженерный Подход Поскольку внедрение комбинированных кодеков в практику GSM еще только намечается, то можно использовать и отдельные аудиоречевые или вектор.- ные кодирующие устройства. Для них нужна более мощная обработка, но они выrодны в долrосрочном плане  изза уменьшения требуемой скорости пе.- редачи. В GSM используется специальный (RРЕILРС З ) кодек, который коди руст речь со скоростью 13 Кбит/с. Полускоростной речевой канал использует VSЕLРкодирование4. Векторный кодек очень восприимчив к ошибкам изза высокой степени их сжатия. Вследствие крайне невысокой помехоустойчивости среды передачи (с вероятностью битовой ошибки до 1%, по сравнению с 10IO дЛЯ BЫCOKOKa чественноrо оптоволокна), требуется хорошая стратеrия защиты от ошибок. Известны следующие способы защиты: [] маскировка ошибок; [] прямое исправление ошибок; [] коррекция ошибок с обратной связью. Методику коррекции ошибок с обратной связью не следует использовать при передаче речи изза задержек, которые она вводит, работая с системой ТОМА. К тому моменту, Korдa блок Mor бы быть передан повторно, он уже не будет больше актуален. Однако в GSM имеется режим передачи данных, который использует АRQпротокол. На речевых каналах используется KOM бинаЦI:IЯ методик маскировки и прямоrо исправления ошибок. Для прямоrо исправления ошибок можно выбирать между блочными и CBep точными кодами в режиме чередования (интерливинrа). С учетом высокой интенсивности ошибок, предлаrающие подходящую защиту блочные коды MOryт оказаться довольно сложными. Поэтому в GSM используются cвep точные коды. Однако у них довольно низкие скоростные характеристики, и ПОЭ'tому, чтобы уменьшить число передаваемых битов, в речевых каналах защищаются только наиболее важные из них, Torдa как при передаче данных защищаются все биты. Все биты речевоrо сиrнала разделены на три класса: lа, lЬ и 2 (рис 7.3), причем биты наименее важноrо класса передаются без каКойлибо защиты. Биты двух друrих классов имеют некоторую защиту, но, хотя отдельные . ОШl1бки допустимы, В особенности в битах наименее важноrо класса, ошtfбки в бl1Тах caMoro важноrо класса будут ухудшать звучание даже по сравнению 3 RPE/LPC  Regular Pulse Excitation/Linear Predictive Coding, кодироваение с реI)'ЛЯРНЫМ возбуждением импульсов и линейныМ предсказанием.  Лер. 4 VSELP  Vector Sum Excited Linear Predictive coding, кодирование с возбуждением векторНЫХ сумм и линейным предсказанием.  Лер. 
fлава 7. Соединим все вместе ЗЗ9 с простой маскировкой ошибочных кадров. Поэтому наиболее важные биты защищаются методом циклической про верки избыточности (CRC) и затем  сверточным кодированием. Если CRCnpoBepKa принятоrо блока оказывается неудачной, то речевой блок маскируется путем замены ero на блок "полной тишины" . Речевой кадр (20 мс), упорядоченный по классам качества речи  . Биты класса 2 (наименее важные) Биты класса 1 Ь Биты класса 1 а (наиболее важные) Биты класса 2 Биты класса 1, CRC и хвостовика (без дополнительнorо (кодированные полускоростным сверточным кодом, 378 битов) кодирования, 78 битов) ... Кодированный речевой кадр 456 битов Рис. 7.3. Кодирование канала для речевоrо кодера GSM 456битовый кадр кодированной речи разделяется на восемь 57битовых бло ков, каждый из которых передается в половине нормальных пакетов. Это обеспечивает интерливинr более чем для восьми GSМкадров и помоrает за щите от ошибок, но приводит к задержке в 40 мс. Поэтому. каждый GSM пакет передает только части двух речевых кадров. Однако временной размер слота (4,615 мс) HeMHoro меньше 5 мс, которые необходимы для передачи этих речевых блоков. Это позволяет использовать каждые два кадра из 26 для передачи сиrнальной информации (без прерывания потока пользовательских данных). 7.3. Передача речи по IР-каналам (VoIP) Как только Intemet и IРпротокол получили достаточно широкое распростра нение, возникла проблема транспортировки для одной из их самых широко распространенных пользовательских служб  службы передачи речи. OДHa ко в использовании IРпротокола как средства передачи речи существует ряд 
340 Передача данных в сетях: инженерный пoдx0.l! проблем, поскольку это обычная пакетноориентированная система, только С лучшим качеством обслуживания. 7.3.1. Требования Речь можно кодировать с помощью различных кодеков, с разными скоростя ми передачи и качеством. Стандартное телефонное ИКМкодирование обес печивает скорость 64 Кбит/с, тоща как стандарт G. 723.3  только 5,3 Кбит/с. Возможны даже более низкие скорости  так кодек, используемый в частной системе мобильной радиосвязи ТЕТRЛ, использует векторный АСЕLРкодекS с битрейтом 4,567 Кбит/с, но на таких скоростях становится трудно pacпo знать rоворящеrо (хотя то, ЧТО он rоворит, понятно). Такие скорости неже лательно использовать в стандартной телефонии. При низких скоростях передачи требуется весьма сложная обработка, хотя цсе кодеки, перечисленные в табл. 7.1, имеют примерно одинаковые средние оценки мнении экспертов (Меап Opinion Score, MOS)  качес:rвенной меры качества речи. Таблица 7.1. Характеристики речевоrо VOIPKOAeKa Кодек Сжатие Частота Битрейт кван. (скорость передачи) тованин РСМ рсм 8кrц 64 Кбит/с G.727 АDРСМ 8 кrц 40, 32, 24 или 16 Кбит/с GSM Векторное (PRE/LPC) 8 кrц 13 Кбит/с ., G.729 Векторное 8 кrц 8 Кбит/с (G.729A) G.723.3 Векторное 8 кrц 6.4 или 5,3 Кбит/с МР3 Различное (в основном  90 кrц Переменная, включая преобразование) . 128 и 112 Кбит/с rораздо большее значение, чем требование определенной битовой скорости передачи (учитывая тот факт, что речь идет о транспортировке пакетов), имеют требования к задержкам. Передача речи очень чувствительна к таким задержкам. Задержки меньше чем примерно 150 мс  не заметны, задержки порядка 1500 мс  еще терпимы, а те, что выше этоrо предела  уже 5 ACELP  скорее Bcero, это Algebraic CodebookExcited Linear Predictive, алreбраичес"ое ли нейное проmозирование с ПОМОЩЬЮ кодовой книm (таблиuы). Peд, 
fлава 7. Соединим все вместе 341 нет. Это  очень жесткое требование, особенно, если речь идет об объеди ненных сетях. Поскольку речь более терпима к потерям кадров, то ЛУЧllIе сбрасывать сильно задержанные пакеты, чем сохранять их. По этой ПРИЧИl!е проектировщики сетей пытаются добиться задержек, не превосходящих при мерно 50 мс. Существенное влияние на качество речи оказывает дрожание (колебание) моментов прибытия отсчетов (выборок) данных или пакетов. Поскольку Пе редача речи терпимо относится к потере пакетов, то эффект дрожания МОЖI!О в определенной степени минимизировать при помощи последовательной Hy мерации и временных меток (time stumps) речевых пакетов, которые указыI вают, КО2да пакет был послан. Однако лучшие результаты может дать пpo пуск задержанных пакетов. Чтобы сбалансировать потери и задержки, МОЖI!О добавлять в приемнике специальные задержки воспроизведения (например, путем орrанизации кратковременных очередей пакетов, позволяющих BLI ровнять задержки), но при этом сами задержки MOryr недопустимо возрасти. Установка слишком жестких оrраничений на задержки может привести к сбросу любых задержанных пакетов, а это означает, что интенсивность По терь окажется слишком высока. При работе адаптивных схем оценивается величина и дисперсия (разброс) сквозных сетевых задержек и устанавливают ся соответствующие пороrи. Это можно сделать с помощью растяжения или сжатия интервалов "тишины", что позволяет изменять задержки. .. 7.3.2. Защита от ошибок Хотя IРпротокол считается наилучшим механизм транспортировки, во время . передачи пакеты MOryr быть потеряны (обычно изза переrрузки сети), крОме , Toro, они MOryr быть преднамеренно сброшены, потому что их время переда чи превысило приемлемые пределы. В применениях реальноrо масштаба времени, подобных передаче речи, восстановление потерянных пакетов при наличии повторных передач не имеет особоrо смысла изза Toro, что это тpe бует определенною времени. Поэтому приходится использовать либо режим маскировки ошибок, либо режим прямоrо их исправления. При маскировке ошибок прием никам приходится либо заменять потерянныe пакеты дубликатами уже полученных пакетов, либо пытаться интерполиро вать между отсчетами сиrнала. Последнее подразумевает небольшое увеЛIi чение времени ожидания, поскольку для хранения отсчетов требуется буфер. Методика прямоrо исправления ошибок (FEC) требует передачи ДОПОЛНIi тельных данных. В V oIP эти дополнительные данные MOryr быть в форме либо дополнительных (избыточных) отсчетов, либо передачи дополнительно ro потока данных более низкоrо качества. Коrда пакеты теряются, то, чтобы восстановить часть потерянноrо Потока, можно использовать дополнитель 
342 -+ . Передача данных в сетях: инженерный подход tЩе данные. Как обычно, при использовании FЕСметодики борьбы с ошиб аМИ существует цена,которую нужно будет за это заплатить  дополни тельная ширина полосы канала. Для минимизации потерь пакетов может использовmъся интерлuвиН2. Рече ВОЙ сиrнал буферизуется, а ero отсчеты перед передачей переупорядочивают ,СJl и пакетируются. Это увеличивает задержку, но приводит к минимальным издержкам при передаче. 7.3.3. Протокол передачи Для управления передачей пакетов с закодированными речевыми сиrналами ПО lPсети требуется протокол управления каналом. Для этоrо используются два протокола. Первый  UDP, протокол пользовательских данных, а над ним в стеке протоколов (рис. 7.4) находится второй  RTP, протокол реаль НО20 времени. .'1:1:1:1:'1[08 .   .::i,::;:' '.:.] RTP [1JbPl''''' _ '' "1ji:T i ..  вt ."".ш",,, .. _ , UDP IP .I.l данные IP Уровни звена данных и физический Рис. 7.4. Стек VоlР,протоколов Для передачи трафика мультимедийных потоков (стандартноrо или HeCTaH дартноrо) RТРпротокол использует пакеты обычноrо формата. Структура кадра RTP по казана на рис. 7.5. Он состоит, как минимум, из 12 байтов. В первых двух битах RТРзаrоловка (поле версии, v) указывается версия прото-- кола RTP (в настоящее время это версия 2). Следующее поле содержит два бита: Р, который указывает, были ли добавлены в конце поля с полезной Ha rpузкой символынаполнители (они обычно добавляются, если транспортный протокол или алrоритм кодирования требуют использования блоков фикси poBaHHoro размера), и х, который указывает, используется ли расширенный заrоловок. Следующие четыре бита (ее) определяют число СSRСполей в конце RТРзarоловка (то есть число используемых источников). Маркерный бит м позволяет отмечать то, что стандарт определяет как существенные co 
rлава 7. Соединим все вместе 343 бытия, например, rраницы кадра. За ним следует поле РТ (7 бит), rде указы вается код типа полезной наrрузки, определяющий содержимое поля полез ной нarрузки Данные приложения (Application Data). По такому коду прило жение может узнать, что нужно делать, чтобы декодировать эти данные (см. примеры на рис. 7.5). Остальная часть заrоловка фиксированной длины co стоит из поля Последовательный номер кадра (Sequence #), поля Метка времени (Time Stamp) и поля источника синхронизации (SSRC), которое иден тифицирует этот источник. В этом поле можно указывать единственное YCT ройство, имеющее только один сетевой адрес, множественные источники, которые MOryт представлять различные мультимедийные среды (аудио, видео и т. д.) или различные потоки одной и той же среды. Так как источники MOryт быть на различных устройствах, SSRС l1дентификатор выбирается случай ным образом, так чтобы шанс получать данные сразу от двух источников во время RTP ceaHca был минимальным. Однако определен также и механизм решения конфликтов, если они возникают. 3аrоловок IP 3вrоловок UDP ; 1'i !VIP!XICC!M! РТ ! / о = 64 Кбит/с РСМ 3 = 13 Кбит/с GSM 14 = MPEG Аудио 32 = MPEG1 Видео 161 32 Последова те НЫЙ N2 ....' .\,.-: ; "!'..;f'...л,, Меткв времени SSRC CSRC Рис. 7 .5. VоlР заrоловки За фиксированной частью RТР заrоловка MOryт следовать до 15 32 разрядных СSRС полей. Они идентифицируют источники данных. Пример их использо вания приведен на рис. 7.6, rде показан смеситель, который получает RTP пакеты из двух различных источников и комбинирует их. Поток на выходе смесителя включает SSRС сиrналы от caMoro смесителя и сиrналы от двух источников S A и S c. Поля CSRC смеситель использует для идентифика ции исходных компонентов. Блаrодаря смесителям устройства, обладающие различными возможностями, MOryт получать из потока то, что им требуется. RTP ПОД1],ерживается друrим протоколом протоколом управления реально zo времени (Real Time Control Protocol, RTCP), который обеспечивает допол нительные отчеты, содержащие информацию о сеансах связи RTP. Обратите внимание, что ни UDP , ни RТР протоколы не обеспечивают никаких служб повышения качества (QoS). Эrи задачи должны решать сами приложения.
344 Передача данных в сетях: инженерный подход Смеситель ssrc == S A ssrc == смеситель csrc == S A csrc = S S A S C ssrc == S C Рис. 7.6. Потоки после смесителя RТСР протокол обеспечивает обратную связь с отправителями, а получате лям потоков он предоставляет службы повышения качества, информацию о пакетах (потери, задержки, "дрожание") и сквозную информацию о пользо вателе (прuложении или потоке). Для управления потоком существуют oт четы двух типов rенерируемые отправителями и rенерируемые получа телями. Например, информация о доле потерянных пакетов и абсолютном количестве потерь позволяет отправителю (при получении отчета) обнару живать, что пере2рузка канала может заставить получателей не принимать потоки обслуживающих пакетов, которые они ожидали. В этом случае oт правитель имеет возможность понизить скорость кодирования, чтобы уменьшить переrрузку и улучшить прием. Отчет отправителя содержит информацию о том, коrда был сrенерирован последний RТР пакет (она включает как внyrреннюю метку времени, так и "реальное" время). Эта ин формация позволяет получателю координировать и синхронизировать MHO жественные потоки, например, видео и аудио. Если поток направляется He скольким получателям, то орrанизуются потоки RТСР пакетов от каждоrо из них. При этом будут предприняты шаrи для 02раничения ширины поло сы обратно пропорционально скорости, с которой rенерируются RTCP отчеты, и числу получателей. Хотя RTCP работает отдельно от RTP, но цепочка RTPIUDP/IP при водит к существенным накладным расходам (в виде их заrоловков). Кодек G.729 re нерирует пакеты размером в 10 байтов (89 битов каждые 10 мс). Один RTP зarоловок, размером в 12 байтов, больше, чем весь этот пакет. К нему, кроме Toro, должен быть добавлен 8 байтовый UDР заrоловок и 20 байтовый IP зarоловок (в версии IPv4), что создает заroловок, в четыре раза превосходя щий по размеру передаваемые данные. Только 20% фактически переданных битов данные пользователя. rрядущая версия IР протокола (IРvб) увели чит заrоловок еще на 12 байтов. Очевидный путь сокращения этих накладных расходов увеличить размеры передаваемых пакетов. Но чем больше пакеты, тем больше интервал дискре
rлава 7. Соединим все вместе 345 тизации и тем выше задержки. Однако, если rолосовые вызовы направляются от одноrо источника к одному и тому же адресату (что имеет место, напри мер, если V оIР протокол используется для транспортировки речевых вызовов между ISP (Iпtеmеt провайдером) и телефонной сетью), то разные речевые потоки можно мультиплексировать, используя слеrка расширенный RTP заrоловок. Можно предложить друrое решение, если обратить внимание, что мноrие поля заrоловка в передаваемых пакетах не изменяются от пакета к пакету. Такой заrоловок может быть сжат, чтобы удалить эту избыточную информацию, а статическую информацию можно сохранять в источнике и адресате. 7.3.4 Архитектура Все, о чем было сказано ранее, nOMoraeT поддерживать речевую связь между двумя терминалами по VоIР протоколу. Однако существует одна проблема, которая касается всей системной архитектуры и состоит, в частности, в необ ходимости предварительной установки сеансов связи. Одним из возможных решений является использование для этих целей пpo токола инициализации сеанса связи (Session Initiation Protocol, SIP), который определяет протоколы для идентификации терминалов и определения их cno собности работать либо на IР сетях, либо через прямую связь с терминалом, либо с помощью сервера реzистрации, опредdlllющеrо их положение в сети. SIР протокол обеспечивает средства только дЛя начала сеанса связи он не поддерживает проведенuя этих сеансов. Более общее решение, которое поддерживает не только установку сеанса связи, но также и соединение с телефонной сетью общеrо пользования (Public Switched Telephony network, PSТN) это стандарт Н.323 дЛЯ аудио и видео ' конференций в среде Internet (работающих в реальном масштабе времени). Ero архитектура показана на рис. 7.7. В стандарте Н.323 определены сле дующие элементы: а конечные пункты (терминалы) это автономные устройства, которые действуют как источники и адресаты сеанса связи. Ими MOryт быть персо нальные компьютеры и вычислительные устройства или телефонные YCT ройства PSТN; а интерфейс между сетями различных типов, который обеспечивается шлю зами. Обычно считают, что между PSТN и IР сетью должны быть располо жены специальные интерфейсные устройства. Как данные, так и остальные (например, служебные) передаваемые сиrналы обычно подверrаются пpe образованию, например, РСМ потоки скоростью 64 Кбит/с и все сиrналы, передаваемые между двумя сетевыми доменами, преобразуются в RТP naKeтbI (и наоборот). Под СUi?нализацией (signalling) понимают Mexa
346 Передача данных в сетях: инженерный по,цход низмы, С ПОМОЩЬЮ которых обеспечиваются сквозные (end to end) функ циональные возможности и службы пользователей; О дополнительные ФункциОНШlьные возможности их обеспечивает спе циальная система, которую называют привратником (gatekeeper). При вратники обеспечивают такие функции, как преобразование адресов, BЫ писку счетов, авторизацию (контроль доступа, определяющий права доступа абонентов) и управление шириной полосы про пускания канала. Кроме Toro, привратники Moryт связываться непосредственно со шлюза ми (от имени концевых пунктов), что обеспечивает более rибкие функ циональные ВОЗМОЖНОСти по сравнению с прямой связью. Лоrическая rруппа конечных пунктов, обслуживаемая одним привратником, называ ется доменом. .... 1' ......П....' .. ';t" ";, I< aH Рис. 7.7. Архитектура VоJР протокола Стандарт Н.323 это всеобъемлющая спецификация, которая для достиже ния своих целей использует несколько.друrих протоколов и стандартов. Стек протоколов разделен на две части протоколы приложений и протоколы управления (рис. 7.8). Аудиостандартом по умолчанию является G.711, который представляет речевой РСМ сиrнал со скоростями 64/56 Кбит/с. Поддерживаются также и друrие речевые стандарты G.7xx. Хотя поддержка видеостандартов He обязательна, но серия стандартов Н.26х все же поддерживается. Данные при ложений инкапсулированы (защищены) и пересылаются через протоколы RTP и RTCP.
rлава 7. Соединим все вместе 347 АудиolВидео приложения Управление системой p TCP H.22sl Н.245 0.931 RAS Вызов Вызов I Управление иrнализ I Канал К анал I G.711 Н.261 G.7xx Н.26х ' I ' "':" " TC : ':". '" , ...... ..... . ........ [; ... j Рис. 7.8. Стек протоколов для данных пользователя и управления стандарта Н.323 Управление системой обеспечивается на разных уровнях. RАS протокол6 управления каналом (Н.225) позволяет конечным пунктам связываться с при аратником, если он присутствует. Стандарт Q.931 отвечает за установление и ilaвершение сеансов связи и обеспечивает стандарт PSТN функциональными озможностями вызова конечных пунктов. Протокол Н.245 не связан полосой ропускания. Он используется для установки таких протоколов, которые ис iюльзуются каждым конечным пунктом ста.vдарта Н.323. , . уrой архитектурой, имеющей ряд преимуществ по сравнению с архитектурой Н.323 и поддерживающей более широкий, чем IP, диапазон ce й, является MEGACO (Media Gateway Control Protocol, протокол управле Нuя шлюзовой средой). В этой сети шлюзы поддерживаются меньшим оличеством шлюзовых контроллеров, что упрощает сами шлюзы и сокраща ". их стоимость. 6 RAS RegistrationjAdmissionjStatus, пporокол, обеспечивающий реrистрацию, администри рование и состояние канала. Пер.
, , . rлава 8 , .'. . . ji ':- '>- Ответы на упражнения 8.1. Ответы на вопросы к rлаве 2 8.1.1. Ответы на вопросы по теории информации 1. Каково количество информации (в битах) для следующих событий: а) бросание одной монеты: 1 == log2s, rде s число событий. Для бросания монеты существуют два события, поэтому 1 == log22 == 1 бит; б) бросание двух иrральных костей: при бросании двух костей учитывается 2 набора равновероятных pe зуль татов эксперимента (р; == 1/6, i ""...1, 2,.. ., 6), поэтому 1 == 2xlog26 == 5,170 бита. Тот же ответ можно получить, если pac сматривать 36 равновероятных результатов бросания двух костей, коrда р; == 1/36, i == 1, 2, ..., 36. В лом случае 1 == log236 == 5,170 бита; в) вытаскивание карты из перетасованной колоды: рассматривая каж дую карту индивидуально, рассматривая каждую масть отдельно, рассматривая каждую карту независимо от масти и рассматривая только цвет карты: в первом случае рассматривается 52 равновероятных события, так чrо 1== log252 == 5,70 бита. В втором 4 возможных результата (Tpe фы, пики, черви, бубны), так чrо 1 == log24 == 2 бита. В третьем случае будет 13 различных результатов, так что 1 == log213 == 3,70 бита. Ha конец, карты MOryт быть красными или черными, что дает 1 == log22 == 1 бит информации. 2. Пyreм разумных рассуждений в отношении разрешающей способности изображений, оцените количество информации телевизионноrо изображения формата Р ЛL: ответ весьма зависит от предположений. Будем рассмa:rpивать каждый элемент изображения на экране как один символ. Каждый из лих символов
350 Передача данных в сетях: инженерный подхов. имеет три цвета, скажем, с 1024 различимыми значениями каждый. поэто МУ количество информации каждоrо элемента изображения 1 == log210243 == 30 битов. В телевизионном кадре 625 строк, хотя ВИДИМ мы из них только 600. Предполаrая одинаковое разрешение по строкам, имеем по 800 элементов в каждой строке. Поэтому полное число элементов (или символов) кадра равно 480000. Следовательно количество информации каждоrо кадра составляет приблизительно 14 400 000 битов. Кадры меняются на экране с частотой 25 кадров/с. Однако фактическая информация в ТУ сиrнале, хотя и велика, но не настолько, потому что этот анализ предполаrает, что все элементы изображения MOryT прини мать любое значение. Однако, ширина полосы ТВ канала не столь велика, потому что соседние элементы изображения очень взаимосвязаны. 3. Вычислите энтропию следующих событий бросания пары иrральных костей: а) рассматривая индивидуальные очки на каждой кости (то есть считая выпадение очков (1,6) и (6,1) разными событиями): имеется 36 возможностей с вероятностью 1/6 каждая. Поэтому эн тропия равна 36 х (1/36) IOg2(1/36) == 5,170 бита; б) рассматривая очки безотносительно порядка их расположения на костях (то есть считая выпадения очков (1,6) и (6,1) как одно и то же событие): имеется 6 возможностей с выпадением одинаковых очков, 30 oc тальных возможностей это фактически 15 пар эквивалентных pe зультатов, каждый из которых имеет два шанса появления (2/36). Поэтому энтропия равна: ----6 х (1/36) х IOg2(1/36) 15 х (2/36) х IOg2(2/36) == == 0,862 + 3,475 == 4,337 бита; в) рассматривая только сумму очков: здесь существует 11 возможностей, показанных в табл. 8.1. Таблица 8.1. Суммы очков [/ри бросании 2 x иrральных костей Сумма Событие Число 2 (1, 1) 1 3 (1,2) (2,1) 2 4 (1.3) (2, 2) (3.1) 3 5 (1,4) (2, 3) (3, 2) (4,1) 4 6 (1,5) (2, 4) (3, 3) (4, 2) (5, 1) 5
rлава 8. Ответы на упражнения 351 Таблица 8.1 (окончание) Сумма Событие Число 7 (1,6) (2, 5) (3, 4) (4, 3) (5. 2) (6, 1) 6 8 (2. 6) (3, 5) (4, 4) (5, 3) (6, 2) 5 9 (3, 6) (4, 5) (5, 4) (6, 3) 4 10 (4, 6) (5, 5) (6, 4) 3 11 (5, 6) (6, 5) 2 12 (6,6) Вероятности] ] событий равны 1/36,2/36,3/36,4/36,5/36,6/36,5/36, 4/36,3/362/36, 1/36, поэтому энтропия равна: ----(1/36) х 10(l/36) (2/36) х ]0(2/36) (3/36) х ]0(3/36) (3 /36) х х 10(4/36)(5 /36)х 10(5/36)(6/36) х 10(6/36)(5/36) х IOg2(5 /36)  (4/36) х lo (4/36)  (3/36) х IOg2 (3/36)  (2/36) х IOg2 (2/36)  (] /36) х х log2(1/36) == 2,711 бита; r) сколько информации (в среднем) дает сумма очков об индивидуаль ных очках, выпавших на каждой кости: :.. пусть Х  очки, выпавшие на одной кости, а У  сумма очков, BЫ павших на обоих костях. Это означает, что Н(Х)  энтропия выпав ших очков индивидуальной кости, а Н(Х I у)  остаточная энтропия выпавших очков индивидуальной кости при заданной их сумме на обоих костях. Если сумма равна 2 или 12, то существует только один возможный результат, так что остаточная энтропия равна О. Для суммы выпав ших на двух костях очков, равной 3, имеется два одинаково вероят ных возможных результата бросания: (2, ]) и (1, 2), так что остаточ ная энтропия равна 1, и т. д. Результаты для каждой возможной суммы выпавших очков приведены в табл. 8.2. Таблица 8.2. Остаточная энтропия для разных сумм выпавших очков на двух костях Сумма 2 3 Число событий Остаточная энтропия 2 о 2 х (1/2)1092(1/2) = 1 
352 Передача данных в сетях: инженерный подход Таблица 8.2 (окончание) Сумма 4 5 6 7 8 9 10 11 12 Число событий Остаточная энтропия 3 4 5 6 5 4 3 2 3 х (1/3)1092(1/3) = 1,585 4 х (1/4)1092(1/4) = 2 5 х (115)1092(1/5) = 2,322 6 х (1/6)1092(1/6) = 2,585 5 х (1/5)1092(115) = 2,322 4 х (1/4)1092(1/4) = 2 3 х (1/3)1092(113) = 1,585 2 х (1/2)1092(1/2) = 1 О Информация, задаваемая знанием суммы, определяется как 1 == == (Х; У) == Н(Х) H (Х I У). Если сумма равна 2, то I(Х;У) == 5, 170   о == 5,170 бита  для одноrо возможноrо результата. Если сумма равна 7, то I(X;Y)==5,1702,585==2,585 бита для 6 возможных результатов. Вычисляя I(Х;У) дЛЯ каждоrо возможноrо результата и усреДНЯЯ по всем экспериментам, получаем среднюю информацию 3,274 бита. 4. В телевизионном иrровом шоу "Кто хочет быть миллионером?" иrрокИ должны выбрать один правильный ответ из четырех возможных, скажем  А, В, С и о. На одном из этапов иrры им позволяют сделать специальный выбор "50:50", коrда два неправильных ответа удаляются, а для выбора остается один правильный и один неправильный ответ: а) предполаrая, что у иrрока нет никаких идей относительно тoro, Ka кой из двух ответов является правильным, и, рассматривая каждый результат как равновероятный, сколько информации дает данный вариант иrры: Энтропия до начала иrpы "50:50" составляет Н(Х) =  L::=I t logt ::::: == 2 бнra, после иrpы остаются две возможности, каждая из которых имеет равный шанс (то есть вероятность каждой 1/2), так что Н(Х) = L::=I t logt == 1 бит. Полученная информация сокращает энrpoпию, так что эта информация равна 1 БИ1)'; 
rлава 8. Ответы на упражнения 353 б) Алиса начала иrру и застряла на не котором вопросе. Она уверена, что правильным ответом является А или В, и надеется, что, иrрая вариант "50:50", она правильно удалит один из них. Предположим, что она использует следующие оценки: с вероятностью 45% пра вильным ответом является А, с вероятностью 40%  ответ В, с Be роятностью 1 0%  ответ С и с вероятностью 5%  ответ о. OCHO вываясь на ее предположениях, вычислите энrропию до и после иrры "50:50", если при этом удаляются ответы В и о: до начала иrры энтропия равна: Н(Х) == ...0,45 log(0,45)  0,40 log(0,40)  0,10 10g(0, 1 О)  0,05 log(0,05) == 1,595. После иrры остаются OTBeТbI А и С. Вероятность А равна 0,45/(0,45 + 0,10), а вероятность С равна 0,10/(0,45 + 0,10), так что энтропия после иrры равна: Н(Х) == (0,45/(0,45 + 0,10»log(0,45/(0,45 + 0,10»  (0,10/(0,45 + 0,1 O»log(O, 1 0/(0,45 + 0,10» == 0,684; в) основьщаясь на предположениях Алисы, вычислите энтропию до и после иrры "50:50", если при этом удаляются ответы С и о: энтропия перед иrрой  та же, что  предыдущем случае, т. е. .. 1,595 бита. После иrры остаются два OТВeтa А и В. Вероятность ответа А теперь равна 0,45/(0,45 + 0,40), а вероятность В равна 0,45/(0,45 + 0,40), так что энтропия после иrpы вычисляется так: Н(Х) == (0,45/(0,45 + 0,40»log(0,45/(0,45 + 0,40»   (0,40/(0,45 + 0,40»log(0,40/(0,45 + 0,40» == 0,9975; r) какую информацию (в битах) дает иrра "50:50" в каждом ИЗ двух вышеупомянутых случаев: В каждом случае информация (как мера снятой неопределенности) свя3ана с уменьшением послеиrровой энrропии (по сравнению с д иrровой), так что информация в первом случае составит 1 == 1 ,595  0,684 == 0,911 бита, а во втором 1 == 1,595  0,9975 == 0,598 бита. Пер вый случай дает больше информации, потому что один из наиболее вероятных входов был удален, что оставляет для иrрока довольно ясный выбор. 5. Выражая Н(А, В) в терминах вероятностей и используя теорему Байеса, покажите, что Н(А,В) == (AIB) + Н(В): Н(А,В) == LLP(A == Oj,B == b k )1og 2 Р(А == oj,B == b k ). j k 
354 Передача данных в сетях: инженерный подход Раскладывая подлоrарифмическое выражение по теореме Байеса, полу чим Н(А,В) = LLP(A = a j ,b k )log2(P(A = a j I В = bk)P(B = b k » j k Н(А,В) = LLP(A = a j ,b k )log2(P(A = a j I В = b k » j k  LLP(A = aj,B = b k )log2 Р(В = b k ». j k Во втором члене этоrо равенства log2(P(B = b k » не зависит от j, так что ero можно переписать как  L(LP(A = aj,B = b k »log2 Р(В = b k ), k j Lj Р(А = а j) включает все возможности и поэтому LP(A = aj,B = b k ) = Р(В = b k ). j Orсюда второй член становится равным 'LP(B = b k )log2 Р(В = b k ) = Н(В) k Возвращаясь к первому члену  LLP(A=a j ? B=b k )log2(P(A=a j IB=b k » j k и применяя к ero вероятностям теорему Байеса, получаем  LLP(A = a j I В = bk)P(B = b k »log2(P(A = a j I В = b k » = j k =  LP(B = bk)L(P(A = a j I в = b k »log2(P(A = a j I в = b k ». k j Вторая часть последнеrо равенства есть Н(А I В == b k )  энтропия А при заданном конкретном значении В. Это дает следующую формулу  Lk Р(В = bk)H (А I В = b k ), которая теперь суммируется по всеМ возможным b k , давая требуемую энтропию Н(А I В). Следовательно Н(А. В) == Н(А I В) + Н(В). 
rлава 8. Ответы на упражнения 355 8.1.2. Ответы на вопросы по кодированию источника без памяти 1. Информационный источник без памяти rенерирует 8 различных символов с вероятностями 1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128 и 1/128. Эти символы кодируются как 000,001,010,011, 100,101, 110 и 111 соответственно: а) чему равна энтропия на символ данноrо источника: Энтропия на символ источника равна: Н(И) == L:=1 p(uJlogp(u;) ==1/2)log(l/2)  (1/4)log(l/4)  (1/8)log(l/8)  (l/16)log(1/16) (l/32)log(l/32)  (1/64)log(1/64)  (I/128)log(1/128)  (I/128)log(1/128) == 1,98 бита; б) какова эффективность этоrо кода: Эффективность == Lт;n/L, rде L  средняя длина кодовых слов. L тin == H/loY;1.r == 1,98/10Y;1.2 == 1,98, но L == 3, поэтому эффектив- ность == 0,66; в) постройте код, используя алrоритм ШеннонаФано, и вычислите ero эффективность; r) постройте код, используя алrоритм Хафмана, и вычислите ero эф фективность: . Оба метода дают один и тот код, показанный в табл. 8.3. Таблица 8.3. Коды, построенные с помощью алrоритмов ШеннонаФано и Хафмана СИМВОЛ Вероятность КОД L LхВероятность U1 1/2 О 1 64/128 U2 1/4 1 О 2 64/128 Uз 1/8 1 1 О 3 48/128 U4 1/16 1 1 1 О 4 32/128 Us 1/32 1 1 1 1 О 5 20/128 Us 1/64 1 1 1 1 1 О 6 12/128 U7 1/128 1 1 1 1 1 1 О 7 7/128 UB 1/128 1 1 1 1 1 1 1 7 7/128 Итorо: 254/128 
356 Передача данных в сетях: инженерный подход Эффективность равна минимальной длине, поделенной на среднюю длину== 1,98/1,98== 1 (или 100%); д) если интенсивность источника равна, в среднем, 1000 символов/сек, то какова скорость передачи информации (в битах/с): Средняя длина символа равна 1,98 бита на каждый код, поэтому бит рейт составит 1000 х 1,98 == 1980 бит/с. 2. Источник информации без памяти rенерирует символы с вероятностью 0,65; 0,2 и 0,15: а) вычислите энтропию на символ: энтропия на символ источника равна Н(И) =  L::=1 p(U j ) log p(U j ) ==  0,65Iog0,65  0,2Iog0,2  0,15Iog0,15 == 0,40397 + 0,46439 + 0,41055 == 1,2789 бита; б) вычислите вероятности всех возможных сообщений, состоящих из двух символов, и соответствующую энтропию. Сравните этот pe зультат с предыдущим: пусть имеется источник, rенерирующий три кодовых символа UI, и2 и uз. Рассмотрим все возможные комбинаций из двух символов (Bcero их  девять) и рассчитаем их вероятности: P(VI) == P(UI,UI) == р(иJ)р(и) == 0,65 х 0,65 == 0,4225 P(1.J.2) == р( и l,и2) == р(иJ)р(и2) == 0,65 х 0,2 == 0,13 Р(из) == Р(UI,UЗ) == Р(UI)Р(UЗ) == 0,65 х 0,15 == 0,0975 р(и4) == P(U2,UI) == 0,2 х 0,65 == 0,13 р( VS) == р(и2,и2) == 0,2 х 0,2 == 0,04 Р( V{;) == р( U2,UЗ) == 0,2 х 0,15 == 0,03 P(l>7) == Р(UЗ,UI) == 0,15 х 0,65 == 0,0975 P(Vs) == Р(UЗ,U2) == 0,15 х 0,2 == 0,03 Р( U) == Р(из,uз) == 0,1 S х 0,15 == 0,0225 Расчет энтропии приведен в табл. 8.4. 
rлава 8. Ответы на упражнения 357 Таблица 8.4. Расчет энтропии комбинаций из двух символов СИМВОЛ Вероятность p(uJ 1092P(uJ p(uJ 1092 (p(uJ) и1 0,4225 1,2430 .5282 lJ:2 0,13 2,9434 .3826 из 0,0975 3,3585 O,3275 и4 0,13 2,9434 0.З826 LS 0,04 4,6439 O,1858 ив 0,03 5,0589 0.1518 UJ 0,0975 3,'3585 ,3275 ив 0,03 5,0589 O,1518 ug 0,0225 5.4739 0,12З2 L:I р( и) 10g2 (р( и» 2,558 Следовательно, энтропия равна 2,558. Сравнение с предыдущим результатом  . мы можем или вычислять энтропию как сумму по всем девяти событиям, или можем обратить внимание, что, поскольку символы независимы, энтропия двух сим волов  это удвоенная энтропия одноrо символа (и вообще, сооб щения с / символами имеют энтропию /H(U». Н(И) == 1,2789 бита (см. ответ на вопрос 2, а). Для двух символов (/ == 2) удвоенная энтропия равна 2,5578 бита, а это то же самое, что в предыдущем примере. Обратите внимание, что результат получен с точностью до 4 значащих цифр, а внутренние вычисления использо вали 5 значащих цифр; в) вычислите избыточность источника информации: избыточность равна 1  H(U)/max H(U). Н(И) достиrает максимальноrо значения, коrда каждый символ одинаково вероятен (то есть имеет вероятность, равную 1/3). Это значение вычисляется как log 2 3. Поэтому избыточность равна 1  (1,2789/1og 2 3) == 0,1931, или 19,3%. 3. ПостроЙfe код для источника без памяти с шестью значениями (символами), используя трехзначный кодовый алфавит {0,1,2}. Пусть выборка вывода 
'358  Передача данных в сетях: инженерный подход тaкoro источника выrлядит так: ACAAAВEBCDAEAВDCAEFAAВDF. Какова эффективность этоrо кода? Сравните ее с эффективностью кода {А:ОО, В:Оl, С:02, О:I0, Е:ll, F:12}. Символ А встречается в строке АСАААВЕВСОАЕАВОСАЕР AABDF 9 раз, символ В  4 раза, С  3 раза, D  3 раза, Е  3 раза и F  дваж ды. Предположим, что эта строка является представительной, а вероятно сти символов равны А == 9/24 == 3/8, В == 4/24 == 1/6, С == 3/24 == 1/8, D == 3/24 == 1/8 Е == 3/24 == 1/8, В == 2/24 == 1/12. Torдa методика Шеннона Фано, применяемая для троичноrо кодирования, предлаrает вести вычис -пения пyrем непрерывноrо деления символов на три примерно paBHOBe роятные rруппы. Работая в этой манере, получим код, показанный в табл. 8.5. Таблица 8.5. Таблица построения кодов по методу ШеннонаФано СИМВОЛ Вероятность L LxBepoRTHoCTb А 3/8 = 9/24 О 1 9/24 В 1/6 = 4/24 1 О 2 8/24 С 1/8 = 3/24 1 1 2 6/24 D 1/8 = 3/24 2 О 2 6/24 Е 1/8 = 3/24 2 1 2 6/24 F 1/12 = 2/24 2 2 2 4/24 1,625 6 Н(И) =  L p(S;) log p(S;) == (9/24)log«9/24)  (6/24)log«6/24)  k=1 3x«3124)log«3/24»  (2/24)log«2/24) == 2,39 бита. L min == Hllog 2 r == 2,3911og 2 3 == 1,511. Средняя. длина кодовоrо слова (L) есть сумма индивидуальных кодовых слов, умноженных на их длину: L=1 х (9/24)+2 х (8/24)+2 х (6/24)+2 х (6/24)+2 х (6/24)+2 х (4/24)== == 1,625 бита Эффективность LmiolL == 0,930 или 93% Расчет для BToporo заданноrо кода, который имеет постоянную длину с двумя символами на сообщение, дает L == 2 и эффективность 75,5%. 
rлава 8. Ответы на упражнения 359 4. Удаленные датчики MOryт иметь два состояния SET ("Установлен") и CLEAR ("Сброшен"). В среднем, 99% датчиков находится в состоянии CLEAR: а) используется одноразрядный код: О  CLEAR, 1  SET. Какова ero эффективность: Энтропия Н == 0,01 х log20,01  0,99 х 10820,99 == 0,080793 бита. Средняя длина кодовоrо слова равна 1 (так как оба кодовых сло ва имеют длину 1). Поэтому эффективность двоичноrо кода (Lmi.J Lav == Н/ L аи) равна 0,080793, или 8,08%; б) для повышения эффективностu постоянно используются два смеж ных одноразрядных сообщения. Определите подходящий двоичный код для этой ситуации и вычислите ero эффективность: поскольку каждое событие установки/сброса независимо, полная энтропия есть сумма энтропий каждоro события, так что Н == 0,080793 + 0,080793 == 0,161538 бита. Построения и расчеты для соответствующеro кода, построенноrо по методу ШеннонаФано, приведены в табл. 8.6. -- Таблица 8.6. Построение и расчет средней длины кодовоrо слова Событие Веоятность L LxBepORTHOCTb СС (0,99)2 0,9801 О 1 0,9801 CS (0,99)'(0,01)' 0,0099 1 О 2 0,0198 SC (0,99)'(0,01 )' 0,0099 1 О 3 0,0297 СС (0,01 )2 0,0001 1 1 1 3 0,0003 Средняя длина (сумма L х Вероятность) 1,0299 Эффективность == H/L av == 0,161583/1,0299 == 0,156894, или 15,69%; в) повторите процедуру предыдущеro пункта для rрупп, состоящих из 3 символов: построения и расчеты для соответствующеrо кода, построенноrо по методу ШеннонаФано, приведены в табл. 8.7. 
Э6О Передача данных в сетях: инженерный подход Таблица 8.7. Построение и расчет средней длины кодовоrо слова Событие Вероятность L LхВероятность ссс (0,99)3 0,970299 О 1 0,970299 CCs (0,99)2(0,01 Р 0,009801 1 О О 3 0,029403 CSC (0,99)2(0,01) 1 0,009801 1 О 1 3 0,029403 Scc (0,99)2(0,01) 1 0,009801 1 1 О 3 0,029403 CSS (0,99) 1(0,01)2 0,000099 1 1 1 О О 5 0,000495 CSC (0,99) 1(0,01)2 0,000099 1 1 1 О 1 5 0,000495 CSC (0,99) 1(0,01)2 0,000099 1 О 5 0.000495 SCC (0,01 )3 0,000001 1 1 1 1 1 5 0,000005 Средняя длина (сумма Lх8ероятность) 1,059998 Эффективность == H1Lav == 0,242379/1,059998 == 0,2286598, или 22,87%; r) повторите процедуру предыдущеrо пункта для rрупп, состоящих из 4 символов: Энтропия (н). теперь равна 4 х (энтропия отдельноrо собы тия) == 0,32317254. Построения и расчеты для соответствующеrо кода, построенноrо по методу ШеннонаФано, приведены в табл. 8.8. Таблица 8.8. Построение и расчет средней длины кодовоrо слова собы- Вероятность L LхВероятность 1и8 СССС (0,99)4 0,96059601 О 1 0,960596 CCCS (0,99)3(0,01)1 0,00970299 1 О О 3 0,029109 CCSC (0,99)3(0,01 Р 0,00970299 1 О 1 3 0,029109 CSCC (0,99)3(0,01 Р 0,00970299 1 1 О 3 0,029109 SCCC (0,99)3(0,01 )1 0,00970299 1 1 1 О 4 0,038881 CCSS. (0,99)2(0,02)2 0,00009801 1 1 1 1 О О 6 0,000588 CSCS (0,99)2(0,02)2 0,00009801 1 1 1 О 1 О 7 0,000686 CSSC (0,99)2(0,02)2 0,00009801 1 1 1 1 О 1 1 7 0,000686 
rлава 8. Ответы на упражнения 361 Таблица 8.8 (окончание) Собы- Вероятность L LхВероятность тие SCCS (0,99)2(0,02)2 0,00009801 1 1 1 1 О О 7 0,000686 SCSC (0,99)2(0,02)2 0,00009801 1 1 1 1 О 1 7 0,000686 SSCC (0,99)2(0,02)2 0,00009801 1 1 1 1 1 1 О 7 0,000686 CSSS (0,99)1 (0,01)3 0,00000099 1 1 1 1 1 1 1 О О 9 0,000009 SCSS (0,99)1 (0,01)3 0,00000099 1 1 1 1 1 1 1 О 1 9 0,000009 SSCS (0,99)1 (0,01)3 0,00000099 1 1 1 1 1 1 О 9 0,000009 SSSC (0,99)1 (0,01)3 0,00000099 1 1 1 1 1 1 1 1 О 10 0,000010 SSSS (0,01 )3 0,00000001 1 1 1 1 1 1 1 1 10 0,0000001 Средняя длина (сумма L х Вероятность) 1,0908591 Эффективность == Н/ Lav == 0,32317254/1 ,090.8591 == 0,296255, или 29,6%; д) прокомментируйте любые тенденции, которые вы видите в выше упомянутых результатах: с ростом числа кодируемых событий эффективность увеличивается. rруппировка нескольких событий позволяет иметь более длинные кодовые слова для маловероятных событий. Объединение событий, кроме Bcero прочеrо, при водит к более сложным кодам. 8.1.3. Ответы на вопросы по кодированию источника с памятью 1. Закодируйте последовательность 1, 2, 4, 4, 4, 4, 5, 6, 6, 5, 5, 4, 3, 1, О, используя дельтамодуляцию. Предположите, что декодер выводит О перед приемом первоrо бита. Какова среднеквадратическая ошибка: Результаты кодировки показаны В табл. 8.9. В каждом столбце содержится очередной исходный символ (для первоrо столбца  это 1), ниже  cooт ветствующий ему выходной символ декодера (у нас ЭТО, по условию задачи, О), 
362 Передача данных в сетях: инженерный подход затем двоичный передаваемый (по каналу связи) символ (у нас это 1), ниже  выход декодера (у нас это 1) и, наконец, в нижнем элементе столб ца показана ошибка декодирования (ДЛЯ первоrо исходноrо символа это О). Второй исходный символ по значению больше первоrо, поэтому в канал снова передается 1, а на выходе декодера образуется правильное значение (2), т. е. второй символ декодируется правильно, без ошибок (О) и т. д. Таблица 8.9. Таблица кодировки Текущий ВХОД 1 2 4 4 4 4 5 6 6 5 5 4 3 1 О Текущий ВЫХОД О 1 2 3 4 5 4 5 6 7 6 5 4 3 2 &итовые по- 1 1 1 1 О 1 1 1 О О О О О О сыпки Новый ВЫХОД 1 2 3 4 5 4 5 6 7 6 5 4 3 2 Ошибка О О 1 О 1 О О О 1 2 О О О 1 1 - в канал, таким образом, передается кодовая последовательность 111110111000000 (см. третью строку табл. 8.9). Несколько иная последо вательность была бы передана при друrом предположении, коrда на BЫ ходе декодера при передаче кода первоrо символа исходной последова тельности вместо 1 был бы О. Это зависит от реализации, так что допустимо любое исходное предположение. Среднеквадратическая ошибка вычисляется как среднее значение квадрата ошибок, т. е. среднее значение ряда (О, О, 1, О, 1, О, О, О, 1,4, О, О, О, 1, 1), которое равно 0,6. 2. Источник rенерирует следующую последовательность отсчетов (выборок) сиrнала: 15, 14, [2, 9,8,8, 10, 11, 12, 14, 15, 15,14, 12, 10,9: а) закодируйте э1)' последовательность, используя импульсно-кодовую модуляцию (ИКМ): первое значение посьтается как опорное, а затем посьтaюrcя cooтвeтcт вующие разности, т. е. (15, 1, 2, 3, 1, 012, 1, 1,2, 1, О, 1, 2, 2, 1); б) если вам скажут, что значения, которые будут получены  это цe лые числа в диапазоне от О до 15, сколь'ко потребуется битов на сим вол для дuфференцuШlЬНОЙ ИКМ? Обоснуйте ваш ответ: имеется 16 значений, поэтому потребуется log216 == 4 бита на отсчет; в} является ли система, которую вы предлаrаете, системой с потерями или без потерь? Если  с потерями, то как можно сделать ее систе мой без потерь: 
rлава 8. Ответы на упражнения З6З в первом случае (при 3битовом кодировании)  это система с поте рями. Система без потерь потребовала бы для кодирования 5 битов на символ (отсчет). Такая система способна кодировать О после 15 или наоборот. 3. С помощью адаптивной ИКМ нужно передать "I)' же последовательность, что и в предыдущем пункте. Оценка, используемая для выборки, предпо лаrает, что разность между текущим и следующим значениями та же, что между текущим и последним значениями: а) какие значения нужно посылать? В табл. 8.1 О приводится оценочная последовательность, при по строении которой предполаrается, что разность между текущим и следующим значениями  та же, что между текущим и последним значениями. Ответ приведен в третьей строке табл. 8.10. Таблица 8.10. Таблица кодировки Значение 15 14 12 9 8 8 10 11 12 14 15 15 14 12 10 9 Оценка О 15 13 10 6 7 8 12 12 13 16 16 15 13 10 8 Разность 15 -1 -1 -1 2 2 -1 О -1 -1 -1 -1 О (посы- .. лаемое значение) б) оцените количество требуемых битов на символ: в этом примере посылаются только четыре значения: 1, 0,1 и 2 (не счи тая начальноrо). Поэтому достаточно двух битов на отсчет, хотя суще ствует риск, что потребуется передавать и 2, которое система не CMO жет обработать. В таких случаях проектировщик кода может считать, что в результате произойдет увеличение количества ошибок. В качестве альтернативы для сжатия значений можно было бы использовать код Хаффмана. Обратите внимание, что для адаптивной ИКМ характерно небольшое количество и большая частота передаваемых значений. для их сжатия лучше использовать код Хаффмана, а не дифференциальную ИКМ. 4. Используйте алrоритм ЛемпеляЗива'77, чтобы сжать последовательность ABCCDABDCCBCCBECDA. Сравните число битов до и после сжатия. Последовательность имеет длину (размер) в 18 символов, так что для ее aдpe сации (обращения к ней) необходимо использовать 5 битов. Прокоммен тируЙ"re, что случится, если придется обращаться к более длинным после 
364 Передача данных в сетях: инженерный подход довательностям. Если бы алrоритм Mor адресовать только предыдущие строки в конечной хронолоrии, используя так называемое скользящее окно, то каковы бы были преимущества и недостатки такой методики: первые пять символов исходной последовательности (ABCCD) посы лаются без кодирования, поскольку не являются ничьим повторением (кодирование BToporo С не имеет особоrо смысла). Два следующих символа (АВ) являются повторением подстроки, начинающейся с по зиции 1, и имеющей длину в два символа (так что в канал вместо них посылается числовой код (1,2». Последующий символ D посылается без кодирования, поскольку он не является повторением никакой час ти предшествующей строки. Следующие два символа (СС) являются . двузначным повтором позиции 3 строки, и поэтому передаются как (З, 2). Три следующих символа (ВСС) передаются как (2, 3). Сле дующие два символа (ВЕ) посылаются без кодирования, после чеrо посылается код заключительной тройки символов (CDA) в форме (4. З); в данном случае в исходной последовательности используется пять сим волов  А, В, С, D и Е. Если с помощью двоичноro кодирования посы лать каждый символ в отдельности, то потребуется Bcero 3 бита на сим вол (в предположении, что никакоrо сжатия не используется). Повторная передача подстрок требует 5 битов для передачи адреса исходной под строки и 2 бита  для указания ее длины, что в данном примере COCTaB ляет в сумме 7 битов. Нет смысла использовать Э'I)' методику, если пере давать подстроки, состоящие из двух (а не из трех) символов, так как кодовая форма оказывается на один бит длиннее, чем при передаче про- CToro текста. Методика трехсимвольных повторных передач обеспечивает определенную степень сжатия (2 бита на передачу каждой подстроки); если бы использовалась методика передач со скользящим окном, то это уменьшило бы требования к адресации в повторных передачах и оrрани чиnо бы число битов в кодовых формах. Однако система потеряла бы способность повторноrо кодирования и повторной трассировки по всей длине передачи. 8.2. Ответы на вопросы к rлаве 3 1. Используя перестановочный шифр с шубиной сетки 8, закодируйте сообщение: "Takeover announcement will Ье made at noon tomorrow" (Объявление о слиянии компаний будет сделано завтра утром). Сетка сообщения показана на рис. 8.1. 
rлава 8. Ответы на упраж!fения 365 т А К Е О V Е R А N N О U N С Е М Е N Т W I L L В Е М А D Е А Т N О О N Т О М О R R О W Рис. 8.1. Сетка сообщения Поэтому кодированное сообщение будет выrлядеть так: т AMBNRANEEORКNNMOOEOTANWOUWDT VNIEO EClAМRELTO. 2. Повторите кодирование, используя перестановочный шифр с ключевым словом "COLUМNAR" (которое используется для определения упорядочивания по столбцам). Алфавитное упорядочивание букв в "COLUМNAR" означает считывание столбцов сетки кодирования в следующем порядке: 26384517, что дает такой код: ECLAМ TAМВNRКNNМOOOUWDT VNIEO ANEEORRELTO EOTANW. 3. Используя шифр Цезаря со сдвиroм 4, закодируйте сообщение: "Now is the time for аН good тел to соте to the aid 01. the part" (Для всех хороших людей настало время прийти на помощь пар'!:ии). RSA MW XLI XMQI JSV ЕРР KSSH QIR XS GSQI XS XLI ЕМН SJ XLI ТЕУХС. 4. Дешифруйте сообщение: KWWS://ZZZ.DQWНQQDRGHOV.FRPNHFUHW/LQGHA.KWPO. Эrо сообщение выrлядит как Webaдpec. Если такое предположение верно, то KWWS  это "http". а zzz  "www". Orсюда следует, что К  это "h". W  "t", а z "w", и все они являются результатом подстановок Цезаря со смещением 3, откуда и следует прямое решение этой задачи. Предполаrая, однако, что было использовано произвольное упорядочива ние литер, с учетом сделанных ранее доrадок, получаем: http://www.DQtHQQDPRGHOV.FRPNHFUHtJLQGHA.htPO. Orкуда следует, что Рэто "т", Оэто "1". Первая часть слова после www  это доменное имя, содержащее три сим вола расширения, последний из которых, скорее Bcero "т", поэтому все расширение  это, возможно, "сот", так что теперь мы имеем: http://www.DQtHQQDmoGHIV.comNHcUHt/LQGНA.html 
366 Передача данных в сетях: инженерный подход у нас нет достаточноrо количества символов, чтобы yraдaTb доменное имя, поэтому сделаем дальнейшие предположения. Начальная страница WеЬсайта часто называется "main" или "welcome", но чаще Bcero  "in dex". Сделав соответствующие подстановки, получаем: http://www.OntennOmodeIV.comNecUetlindex.html Буква V похожа на "s", что дает secUet, что, свою очередь, похоже на "se cret" (для пароля это очень неудачное слово!). Остается расшифровать сло- во DntennD. Можно испытывать все оставшиеся буквы, но следует также заметить, что единственной буквой, наиболее подходящей для этоrо слова является "а". Доменное имя не должно быть осмысленным словом, но большинство из них именно таковыми и являются, поскольку такие имена леrче запоминаются. HeMHoro работы в WеЬбраузере, и можно получить подrверждение нашей дoraдKe, так что окончательно получаем: http://www.antennamodeIV.comNecUetlindex.html 5. Используя шифр Виженера и ключевое слово "hide", закодируйте "We must meet under the clock" (Мы должны встретиться под часами). DM PYZB PILB XRКMU ХОМ FPVKN. ). Используя поточный шифр и начальный ключ "О", закодируйте сообщение: "ТЬе documents wil1 Ье sent tomorrow" (Документы будут посланы завтра.). WDH КУ AUGKXQI EMXI JN FJWP IWIWNESO. 7. Какой битовый поток будет rенерировать LFSRреrистр, показанный на рис. 8.2? Рис. 8.2. LFSRреrистр к вопрОСУ 7 Стартуя из состояния 1000, этот сдвиroвый реrистр выдаст следующую последовательность: 1000, 1100, 111 О, 1111, 0111, 1011, 0101, 101 О, 11 01, 0110,0011, 1001,0100,0010,0001 и обратно до 1000. Поэтому на выходе будет последовательность 0001111 О 1 0110010. . Для RSАсистемы с простыми р == 7, q == 13 и ключом шифрования е == 5, найдите ответы на следующие вопросы: а) каково значение частноrо ключа d? ed == 1 (mod (р  1)(q  1». Последовательно испытывая числа, полу чаем d == 29, т. к. 5х29 == 145 mod 91 == 32; 
(лава 8. Ответы на упражнения 367 б) используя данную систему, зашифруйте число 2 и проверьте, что можно дешифровать получившееся в результате кодовое слово об ратно в сообщение: Сообщение 2 кодируется возведением ero в степень 5 и вычислени ем результата по модулю 91, т. е. 25 mod 91 == 32. Для дешифрации 32 необходимо возвести это число в степень 29 и вычислить по модулю 91. Большинство калькуляторов не может это ro сделать с необходимой точностью, поэтому поступим следующим образом: 3229 mod 91 == 325325325325325324 mod 91 == 2 х 2 х 2 х 2 х 74 mod 91 == 2. 8.3. Ответы на вопросы rлаве 4 8.3.1. Ответы на вопросы по сетевым конфиrурациям 1. Коммуникационная сеть состоит из N узлов. Определите число звеньев, требуемых для соединения этих узлов, предполаrая, что каждое звено является двунаправленным, для следующих случаев: а) кольцо из 5 узлов: .а, для кольца, состоящеrо из N узлов, требуется N двунаправленных звеньев, поэтому для 5узловоrо кольца требуется 5 звеньев; б) объединение 8 полностью связанных узлов: для Nузловой полносвязной сети требуется N х (N  1)/2 двунаправ ленных звеньев, так что для сети из 8 узлов требуются 28 звеньев; в) частично связанное объединение  1 О узлов, 5 соединений: в сети с 5ю связями каждый узел имеет степень 5 и соединен с 5ю друrими узлами. Общее количество требуемых звеньев равно 5 х 10 х (1/2) == 25. Сравните это с полносвязной 10узловой сетью, для которой требуется 45 звеньев; r) повторите три предыдущих случая для N == 96: для 96узловоrо кольца требуется 96 звеньев, для полносвязной ce ти  4560, а для сети с 5 соединениями  240. 2. Определить связность двух сетей, заданных диаrраммами на рис. 8.3 и 8.4. Сколько требуются итераций, чтобы определить связность каждой из этих сетей? 
368 Передача данных в сетях: инженерный подход Рис. 8.3. Сетевая диаrрамма первой сети D I EiFiGiHi II I J I I . . 1 1 i J . .___ ___.1.___ Рис. 8.4. Табличная диаrpамма второй сети Минимальная степень УЗЛОВ в этих сетях равна 3, так что связность не может превышать 3. Хотя в одной сети  8, а в друrой  10 узлов, НО связность в обоих случаях равна 3. Расчет связности выполняется в предположении, что в сети имеется N уз лов, а минимальная степень УЗЛОВ равна М. События Для первой сети требуется М!/2 плюс N  М операций (итераций) поиска решений, так что общее их количество равно «М!/2) + N  М), т. е. это 8 операций для первой и 1 О  для второй сети. Вычисления (вязно(ти по алrоритму Клейтмана Требуется N  1 + N  2 + '" + N  М операций поиска, т. е. 18 операций  ДЛЯ первой и 24  для второй сети. 8.3.2. Ответы на вопросы по технике коммутации 1. Путь с переключением каналов и скоростью передачи 64 Кбит/с МеЖДУ двумя пользователями, использующими 9 ступеней коммyrации требует 5 с на установку. Сколько Bcero потребуется времени, чтобы напрямую 
rлаsа 8. Ответы на упражнения 369 передать полное содержимое дискеты 1,4 Мбайт между двумя пользователями, использующими этот канал? Время передачи данных == (количество данных) / (скорость переда чи) == 1,4 Мбайт/64000 == 183,5 с. Полное время передачи == время передачи + время установки KaHa ла == 183,5 + 5 == 188,5 с. 2. Если вышеупомянутый путь с переключением каналов заменить 9узловой системой с пакетной коммутацией, использующей звенья со скоростью передачи 1 Мбит/с, то сколько потребуется времени, чтобы передать файл объемом 1,4 Мбайт, предполаrая, что нет задержки в узлах коммутации, полезная наrрузка пакета составляет 256 байтов, а накладные расходы пакета эквивалентны 18 байтам? . Время передачи пакета по одному звену сети составляет «256 + 18) х 8)/1 06 == 2,192 мс. Для Toro чтобы попасть к адресаry, пакет должен пройти 9 + 1 == 1 О звеньев, так что на передачу 1 пакета затрачива ется 21,92 мС. Файл, размером 1,4 Мбайта, эквивалентен по размеру 5735 пакетам. Torдa полное время передачи вcero файла равно времени передачи одноrо пакета через 1 О звеньев сети плюс время передачи остальных 5734 пакетов по по следнему звену, так что полное время передачи составит 12,591 с. "" З. Сравните задержки, коrда полезная наrрузка паета изменится до 128,512, 1024 и 4096 байтов соответственно. Коrда размер пакета уменьшается до 128 октетов, время передачи по звену становится равным 1,168 мс на пакет, но теперь требуется послать 11 469 пакетов. Полное время передачи становится равным 13,4 с. Коrда размер пакета увеличивается до 512 октетов, время передачи по звену становится равным 4,24 мс на пакет, но теперь требуется послать 2868 пакетов. Полное время передачи становится равным 12,198 с. Коrда размер пакета увеличивается до 1024 октетов, время передачи по зве ну становится равным 8,336 мс на пакет, но теперь требуется послать 1434 пакетов. Полное время передачи становится равным 12,028 с. Коrда размер пакета увеличивается до 4096 октетов, время передачи по зве ну становится равным 32,912 мс на пакет, но теперь требуется послать 359 пакетов. Полное время передачи становится равным 12,111 с. 8.3.3. Ответы на вопросы по расчетам в сетях 1. Простой телефонный коммутатор состоит из 4 каналов. Если в самое занятое время дня вызовы прибывают каждые 240 с, вычислите занятость коммутатора и определите вероятность Toro, что вызов будет OТBeprHYТ. 
370 Передача данных в сетях: инженерный подход в этом случае параметр А в формуле Эрланra можно подсчитать так: А == 120/240 == 0,5. Речь идет о четырехканальной схеме коммутатора. Pe тение может быть найдено прямым вводом значений в Вформулу Эрлан ra или решая ее итерационным способом. Е(А, п) == АЕ(А, п   1)/(АЕ(А, п  1) + п). Е(0,5, О) == 1, Е(0,5, 1) == 0,5/(0,5 + 1) == 1/3, Е(0,5, 2) == 0,5/3/(0,5/3 + 2) == == 0,0769. Наконец, Е(0,5, 4) == 1,579 х 10.3. Это означает, что выполняется 99,84% всех вызовов, а коэффициент занятости KOMMyraтopa составляет 0,9984 х 0,5 == 0,4992 на один канал KOMмyraTopa. 2. Если в системе, описанной в п. 1, пользователей удовлетворяют 2%e потери, определите число требуемых каналов мультиплексора. Е(0,5, 3) == 0,0127 == 1,27% потерь. Таким образом, в данной системе можно иметь Bcero 3 коммутационных канала, которые обеспечивают уровень по терь меньше 2%. 3. Если интенсивность вызовов в системе описанной в п. 1, увеличится впятеро, определите вероятность потерь вызовов и коэффициент использования каждоrо из 4x каналов KOMмyraтopa. Если бы скорость вызова для данноrо коммутатора увеличилась в пять раз, то новый трафик стал бы равным 2 эрланraм. По формуле Эрланrа  Е(2, 4), мы получили бы 15% потерь. Рабочий трафик стал бы равным 2,5 х 0,85 == 2,125, т. е. на 15% ниже. Коэффициент использования канала KOMМY татора стал бы равным 0,53125, т. е. У4 от полноrо рабочеrо трафика. 4. Терминальный концентратор состоит из шести входных линий со скоростями 56 Кбит/с и единственной выходной линии со скоростью 128 Кбит/с. Средний размер пакета  450 байт, и скорость поступления каждой входной линии равна 5 пакетам/с. Какова средняя задержка пакета и каково среднее число пакетов, хранящихся в концентраторе? J.I. == 128000/(450/8) == 35,56 пакетaJс л. == 6 х 5 == 30 пакетов/с р == ЛJJ.I. == 30/35,6 == 0,844 Средняя задержка Т== 1I(J.I.  л) == 1/(35,56  .30) == 179,8 мс. Коэффициент занятости == р/(1  р) == 0,844/(1  0,844) ==' 5,4. 5. Два компьютера связаны линией со скоростью передачи 64 Кбит/с и подцерживают 8 диалоrовых сеансов связи (соединений). Если средняЯ длина пакета 150 битов, а сеансовая скорость  4 пакета/с, то должна ли сеть обеспечить каждый сеанс своим собственным выделенным каналом со скоростью передачи 8 Кбит/с, или все сеансы должны состязаться за полную пропускную способность канала, коrда наиболее важным критерием является задержка пакета? 
r лава 8. Ответы на упражнения 371 Общая пропускная способность: J.I. == 64000/(150/8) = 53,3 пакета/с л = 8 х 4 = 32 пакета/с л == Л/J.I. == 32/53.3 == 0,6 Средняя задержка Т == 1/(J.I.  л) == 1/(53,33  32) == 46,88 мс. Отдельный канал (один канал со скоростью 8 Кбит/с, поддерживающий 4 пакета/с ): J.I. == 8000/( 150/8) == 6,67 пакета/с л == 4 пакета/с р == Л/J.I. == 4/6,67 == 0,6 Средняя задержка Т= 1/(J.I.  л) = 1/(6,67  4) = 375 мс. Лучше использовать общую пропускную способность, поскольку задерж ка составляет 1/8 от пропускной способности отдельноrо канала. Коэффи циент использования в обоих случаях одинаков. --, 8.3.4. Ответы на вопросы по маршрутизации 1. Маршрутизация сети из 6 узлов базируется на векторе расстояния; маршрутизатор А расположен рядом с маршрутизаторами В, D и Е. На рис. 8.5, а приведены таблицы с векторами расстояний, связанных с каждым из этих 3 маршрутизаторов. Используя указанные таблицы, выведите новую таблицу маршрутизации для узла А. Предположите, что текущее расстояние между узлом А и ero соседями точно отражено в этих таблицах. Узел 8 А 10 В  С 20 D 30 Е 10 F 10 УзелD А 20 В 15 С 40 D  Е 10 F 25 Узел А А  В 8(10) С 8(30) D О(20) Е Е(15) F Е(20) Узел Е А 15 В 10 С 25 D 10 Е  F 5 а б Рис. 8.5. Таблицы с векторами расстояний для узлов В, D, Е сети (а) и для узла А (6) 
372 Передача данных в сетях: инженерный подход для ответа на этот вопрос необходимо определиrь маршруrы от А до С и от А дО F, поскольку все остальные узлы являются смежными узлами для А. Orвeт приводится в таблице на рис. 8.5, б. 2. На рис. 8.6 приведены текущие состояния звеньев сети, состоящей из 6 узлов. Нарисуйте эту сеть и определите таблицу маршрутизации, связанную с узлом А. Узел А В(10) О(5) Е(20) В А(10) С(20) Е(10) F(10) С В(20) F(20) D А(5) Е(10) Е А(20) В(10) О(10) F(10) F В(10) С(20) Е(10) а б Рис. 8.6. Текущие состояния звеньев 6узловой сети Получите самый короткий путь от узла А до всех друrих узлов путем OCMOТ ра или использования формальноrо алrориrма. Результar показан на рис. 8.7. Узел А А  В 8(10) С 8(30) D О(5) Е D(15) F 8(30) а б Рис. 8.7. Таблица маршрутизации узла Д (а) и схема сети (6) 3. Чтобы передать пакет всем друrим маршрутизаторам сети, описанной в п. 2, используется маршрутизатор А. Если поле пакета содержит счетчик сеrментов (переходов), инициализированный диаметром сети, определите минимальное и максимальное число пакетов, которые MOryr потребоваться этой сети для передачи широковещательноrо пакета. Минимальное число пакетов  5 (число связей в дереве охвата). Максималь ное число пакетов  24 (пакеты со счетчиком cerMeНТOB 3). 
rлаsа 8. Ответы на упра.жнения З7З  8.3.5. Ответы на ВОПрОСbl по защите от ошибок 1. Протокол звена данных имеет характеристики, показанные в табл. 8.11. Пропускная способность канала Таблица 8.11. Характеристики протокола звена данных Значение 100 байт 8 байт 2 Мбит/с Характеристика Длина данных Длина заrоловка Длина кадра подтверждения Вероятность riотери кадра Вероятность потери подтверждения Задержка обслуживания и распространения 8 байт 2х10..з 5x104 0,15 мс а) оцените максимально возможную эффективность этой системы, ec ли протокол работает в простом режиме "останов с ожиданием", используя положительные подтверждения. Каково влияние YCTa новки таймаута с интервалом 1 мс: эффекrивность == -- ==(m/(m + h +а +2Bt»== 100/(100+ 8+ 8)+2 х 2000 х 0,15)==0,524. Интервал таймаута Т == == (т + h + а)/В + 2'[ == (100 + 8 + 8) х 8/2000 + 2 х 0,15 == 0,764 мс. Установка этоrо интервала на 1 мс привела бы к понижению эффек тивности, поскольку каждый потерянный кадр привнес бы задержку 1 мс, а не оптимальное значение 0,764 мс. Ps == (1  Рr)(l  Ра) == (1  2хl0З)(1  5хю--4) == 0,9975. Эrо означает, что лишь около 0,0025 всех пакетов требуют повторной передачи  такая незначительная величина существенно не затраrивает полную эффективность звена; 6) чтобы максимизировать эффективность канала, протокол с OCTaHO вом и ожиданием должен быть заменен на протокол со скользящим окном. Оцените подходящий размер окна, если в первом случае Ka нал предполаrается свободным от ошибок: решив неравенство WтlB > (т + h + а) В + 2'[ относительно w; по лучим пороrовое значения размера окна: W> (m+h+a+2B'[)/m=(100+8+8) х 8+2+2 х 2000 х 0,15)/800 == == 1,91. 
3"4 Передача данных в сетях: инженерный noдход Это означает, что W должно быть меньше 2. 2. -В табл. 8.12 заданы ключевые параметры канала связи и ero ARQ - протокола. Если используется 3битовое поле SEQ, какой механизм повторной передачи дает оптимальную производительность канала? Таблица 8.12. Ключевые параметры канала связи и ero АRQпРОТокола Па р аме тр Значение Информационное поле 150 байт Накладные расходы кадра 16 байт Длина подтверждения 16 байт Вероятность потери кадра 10 Вероятность потери подтверждения 2x10 Размер поля SEQ 3 бита Таймаут подтверждения 150 мс Битрейт канала 64 Кбит/с Задержка распространения канала 50мс Для схемы ARQ с возвратом Nкадров требуемый размер окна (число п<r вторно передаваемых кадров) равен W, а для схемы избирательноro ARQ  2W. Для поля SEQ заданноrо размера эта последовательность ле жит в интервале от О до 7. Эффективный размер окна для схемы ARQ с возвратом Nкадров равен 8, а для схемы избирательноrо ARQ  4. Для обеих ARQcxeM нужно определить, насколько велик для них размер этоrо окна. Время передачи и получения подтверждения приема 1 кадра == (т + h)IE + +alВ + 2т== «150 + 16 +20»/64 +2 х 50 == 123,25 мс. Время передачи W (== 4 кадров) == (W(m + h»/B == (4х(150 + 16)х8)/64 == == 83 мс, так что это  слишком маленькое окно. Время передачи W ( == 8 кадров) == (W(m + h»IE == (8 х (150 + 16) х 8)/64 == == 166 мс, так что это  слишком большое окно. 
rлава 8. Ответы на упражнения 375 Рассмотрим эффекты, связанные с ошибками: Р.. == (1  РJЮ  Р а ), [де PI вероятность Toro, что кадр потерян, а Ра  Be роятность TOro, что подтверждение потеряно. В рассматриваемом случае: Р. == 1  (1  1 оз) (1  2х 1 O) == 0,9988002. Эта величина достаточно близка к единице, так что ее можно иrнориро вать. Приведенное рассуждение относится к обоим уравнениям . эффективности: О для схемы ARQ с возвратом N кадров: Размер окна (w) == 8 (непрерывно). Эффективность находится из следующеrо уравнения: . Эффективность == (т/(т + h» х Р.. == 150166 х 0,9988002) == 0,903; О для избирательной схемы ARQ: Размер окна (w) == 4 (не непрерывно). Эффективность == mWP.J(m + h + а + 2ВТ) == == «150х8х4хО,9988)/«150 + 16 + 16) х 8» + 2х64х50 == 0,6795. 3. Двойное скоростное двухточечное коммуникационное звено использует канальный протокол двойноrо режима, который способен переключаться между протоколом упреждающей защиты от..- ошибок (FEC) и ARQ протоколом, базирующемся на схеме повторной передачи с возвратом N кадров. Этот канал работает на одной из двух скоростей  низкой и высокой  и имеет ключевые характеристики, приведенные в табл. 8.13. FЕСмеханизм коррекции ошибок канала характеризуется 50%й избыточностью и совершенным механизмом коррекции ошибок. Какой режим защиты от ошибок должен применяться для каждой скорости канала, если ключевая цель состоит в том, чтобы максимизировать ero эффективность? Таблица 8.13. Ключевые характеристики звена Характеристика Информационное поле Накладные расходы кадра Длина подтверждения Вероятность потери кадра Вероятность потери подтверждения Размер окна Значение 200 байт 16 байт 20 байт 10 2x10 8 
9"16 Передача данных в сетях: инженерный ПОДХод Таблица 8.13 (окончание) Характеристика Таймаут подтверждения Звено с низким битрейтом Звено с высоким битрейтом Задержка распространения в звене Значение 250 мс 32 Кбит/с 256 Кбит/с 100 мс Схема FEC {прямая коррекция ошuбок): 100% дополнительные издержки означают, что для передачи 1 бита информации требуется передавать 2 бита данных (избыточность  50%). ТaJ{ИМ образом эффективность звена составляет 50%, независимо от CKO рости передачи данных. Схема ARQ с возвратом N кадров: Рассмотрим влияние ошибок  это можно сделать в разных точках pe шення и интерпретировать поразному. Ps == (1  103) (1  2xl0) == 0,9988002. Величина Ps достаточно близка к единице, поэтому ее можно иrнориро вать. Влияние этоrо значения на окончательный результат не очень Be лико. Высокоскоростная схема ARQ с возвратом N кадров: Размер окна (W) == 8. Мы должны определить, достаточен ли такой размер для непрерывной передачи или нет. Время передачи WкaдpoB == (W(m + h»IE == (8 х (200 + 16) х 8)/256 == 54 мс. Время передачи и получения подтверждения приема 1 кадра == (т + h)IВ + + alB + 2т == «200 + 16 + 20) х8» /256 + 2х 100 == 207,37 мс. В этом случае передача не является непрерывной, и передатчик должен будет останавливаться и ждать подтверждений, прежде чем он вернется к передаче кадров. Поэтому размер окна относительно небольшой. Эффективность == mWPi(m + h + а + 2Вт) == == «200 х 8 х 8 х 0,9988002)/«200 + 16 + 20) х 8»/ + 2 х 256 х 100 == 0,24 Нuзкоскоростная схема ARQ с возвратом N кадров: Размер окна (W) == 8. Мы должны определить, достаточен ли такой размер для непрерывной передачи или нет. Время передачи W кадров == (W(m + h»)/B == (8 х (200 + 16)х8)/32 == 432 мс. 
r лава В. Ответы на упражнвния 377 Время передачи и получения подтверждения приема 1 кадра == == (т + h)/B + а/В + 2 т== «200 + 16 + 20)х8)/3)х2 + 2х 1 00 == 259 мс. В этом случае передача непрерывна, и передатчик не должен будет OCTa навливаться и ждать подrверждений, прежде чем он вернется к передаче кадров. Поэтому окно имеет достаточно большой размер. Эффективность == (mxPs)/(m + h» == 200хО,9988002216) == 0,926. Результаты вычислений эффективности приведены в табл. 8.14. Таблица 8.14. Результаты вычисления эффективности FEC ААа с возвратом N кадров Низкая скорость Высокая скорость 50% 50% 92,6% 24% Таким образом, FЕСкоррекцию нужно использовать в высокоскоростных звеньях, а ARQ  в низкоскоростных. 8.4. Ответы на вопросы к rлаве 5 . 8.4.1. OTBeTbI н а BonpOCbI по линеЙН-blМ кодам 1. Какова вероятность Toro, что в системе, использующей код Хемминrа (7, 4), будет правильно принято 4битовое сообщение, если вероятность однобитовой ошибки равна 2%? Код Хемминrа может исправлять одну ошибку. Сообщение будет получе но правильно, если происходит О или одна ошибка. Поэтому: Р(О ошибок) == (0,98)' == 0,8681 РО ошибка) == 7 (0,98)6(0,02)' == 0,1240 Следовательно, вероятность правильноrо приема равна: 0,8681 + 0,1240 == == 0,992 (или 99,2%). 2. Какая вероятность больше  более чем одной ошибки при передаче 16 битов через двоичный симметричный (BSC) канал с вероятностью перехода 0,1 или более чем двух ошибок при передаче 8 битов через канал с вероятностью перехода 0,2? Случай 1  более одной ошибки в 16 битах: Р(60лее 1 ошибки) == 1  Р(О)  P(l) == 1  (0,9)'6  16(0,9)15(0,1)1 == 1  (0,1853)  (0.3294) == 0.4853. 
378 Передача данных в сетях: инженерный подход Случай 2  более двух ошибок в 8 битах: Р(более 2 ошибок) == 1  Р(О)  Р(I)  Р(2) == == 1  (0,8)8  8(0,8)7(0,2)1  (8/2)(0,8)6(0,2)2 == ::= 1  (0.8)8  8 (0,8)7(0,2)1  28(0,8)6(0,2)2 ::= == 1  (0,1678 + 0,3355 + 0,2936) == 1  0,7969::= 0,203. Поэтому, случай 1 более вероятен. 3. Каково минимально возможное число разрядов проверки на четность, теоретически требуемых для 16разрядноrо кода с исправлением двух ошибок? Эrо число можно найти, вычисляя число возможных комбинаций ошибок: перВая "комбинация"  это коrда нет никаких ошибок, число возможных комбинаций одной ошибки равно 16 (так как ошибка может происходить в одной из 16 позиций кода); число возможных комбинаций кодов с двумя ошибками вычисляется как 16/2 == 16!/(14!2!) == (16хI5)/(2х1);;:< 120. Поэтому, Bcero имеется 137 комбинаций для кодов с числом ошибок до 2. Для работы кода с исправлением ошибок нужно, чтобы каждая комбина ция имела свой, отличный от друrих образец разрядов проверки на чет ность. Иначе rоворя, разряды проверки на четность должны быть спос06 ны "кодировать" информацию комбинаций ошибок. Используя теорему Хартли определим, что количество информации в 137 событиях равно log2137, т. е. HeMHoro больше, чем 7 битов. Поэтому для поля проверки четности требуются по крайней мере 8 двоичных символов. Минимальный номер (число) разрядов проверки на четность  8. 4. Придайте следующей матрице стандартную С1)'пенча1)'Ю форму: [ О О О 1 О 1 l ] 0010110 0101100 1 О 1 1 О О О Шаr 1: измените порядок строк на обратный. Строки 3 и 4 теперь на месте: [        ] 0010110 0001011 
rлава В. Ответы на упражнения 379 Ша.- 2: добавьте строки 3 и 4 к строке 1, чтобы удалить единицы в столб цах 3 и 4: [     :  1 ] 0010110 0001011 Ша.. 3: добавьте строку 4 к строке 2, чтобы удалить 1 в столбце 4: [     :  : ] 0010110 О О О 1'0 1 1 5. Сформируйте порождающую матрицу кода Хемминrа (15, 11) и ее матрицу проверок на четность. Порождающая матрица  это тоже код Хемминrа, сформированый из k х k единичной матрицы, к каждой строке которой добавлены все воз можные комбинации векторов размерности п  k с 2 или большим количе ством единиц. Изменение порядка присоединяемых векторов дают раз личные, но эквивалентные коды. Одна из возможных порождающих матриц имеет следующий вид: -- 1 О О О О О О О О О -о 1 1 О О О 1 О О О О О О О О О 1 О 1 О О О 1 О О О О О О О О 1 О О 1 О О О 1 О О О О О О О О 1 1 О О О О О 1 О О О О О О О 1 О 1 о== О О О О О 1 О О О О О О О 1 1 О О О О О О 1 О О О О 1 1 1 О О О О О О О О 1 О О О 1 1 О 1 О О О О О О О О 1 О О 1 011 О О О О О О О О О 1 О О 1 1 1 О О О О О О О О О О 1 1 111 6. Кодовое слово 011001 О было принято в системе, использующей код Хемминrа со следующей порождающей матрицей: [ : ] 0010011 о О о 1 111 
,эво Передача данных в сетях: инженерный подход Какое было передано сообщение? Рассматривая порождающую матрицу формата [/41 Р], мы можем запи сать: н Т == (:З), что дает 1 1 О 1 О 1 О 1 1 111 1 О О О 1 О О О 1 Orcюда можно вычислять синдром  он равен 100. Эrо соответствует синдрому для образца с ошибкой 0000100. Поэтому переданное кодовое слово было 0110110, а сообщение  0110. 7. Двоичная схема кодирования сообщений построена из двух информационных символов Ы и Ь2 и трех символов четности (рl, р2 и р3). По рождающая матрица следующая: G == ( 1 О 1 1 1 ) 01101 а) сколько существует кодовых слов? Каковы эти кодовые слова: из по рождающей матрицы следует, что, п == 5 (число столбцов), а k == 2 (число строк). Так как это  двоичный код и k == 2, то имеется 4 кодовых слова; б) каково минимальное кодовое расстояние: кодовые слова это 00000 (сообщение 00), 10111 (сообщение 10), О 11 О 1 (сообщение О 1) и 11 О 1 О (сообщение 11); в) каковы теоретические возможности коррекции ошибок этоrо кода: минимальное расстояние является минимальным весом ненулевоro кодовоrо слова. Кодовые слова имеют веса 4, 3 и 3, поэтому мини мальное расстояние равно 3. Теоретически код может исправлять одну ошибку или обнаруживать до двух ошибок; 
rлава В. Ответы на упражнения ЗВ1 r) определите матрицу проверок на четность Н: матрица проверки на четность выrлядит в этом случае так: ( 1 1 1 О О ) 10010; 1 1 О О ] д) каков синдром для следующих образцов с ошибками: (О 1 000), (00101), (10010) и (J 1111): Синдром у всех этих образцов один и тот же  1 01; е) сrенерировано следующее кодовое слово: (11 О 1 О), которое искажено следующим образом: (10010). Если код используется для коррекции ошибок, то каково будет декодированное кодовое слово? Объясните ваш выбор: кодовое слово (11010) искажено (двойной) ошибкой (10010), так что принятое кодовое слово будет выrлядеть как (О 1 000). Синдром в этом случае  1 О 1. Если бы код использовался для коррекции ошибки, то этот синдром соответствовал бы одиночной ошибке во втором бите, поэтому кодовое слово интерпретировал ось бы как 00000, искаженное ошибкой 01000, а сообщение интерпретировал ось бы как 00. Заметим, что это ошибка, так как кодовому слову 11010 в действи тельности соответствует сообщение 11. Это происходит потому, что осуществляется исправление только одиночной ошибки, и если есть две ошибки, то кодовое слово искажается так сильно, что перемеща ется за пределы корректирующеrо расстояния и попадает в точку друrоrо кодовоrо слова. Если бы код использовался только для KO}r рекции ошибки, то можно было бы иметь дело с двумя ошибками. Действительно, синдром  не нулевой, так что мы обнаружили бы тот факт, что ошибка произошла. В случае простоrо обнаружения ошибки, мы не делали бы попытки ее коррекции. 8. Двоичный код стропrся добавлением к трем информационным символам (Ы, Ь2 и Ь3) трех символов проверки на четность. для следующих кодовых символов: С, == Ь, С2 == Ь 2 СЗ == Ь з 
382 Передача данных в сетях: инженерный Подход С4==Ь 2 +Ь З Cs == Ь\ + Ь з С6 == Ь\ + Ь 2 необходимо определить: а) кодовые слова: кодовые слова можно рассчитать или напрямую  из указанных в вопросе уравнений, или создавая порождающую матрицу. Все Воз можные значения Ь\, Ь 2 , Ь З приведены в табл. 8.15. Таблица 8.15. Исходный и вычисленный двоичный код   ьэ Х1 Х2 Хэ х.. Xs х& О О О О О О О О О О О 1 О О 1 1 1 О О 1 О О 1 О 1 О 1 О 1 1 О 1 1 О 1 1 1 О О 1 О О О 1 1 1 О 1 1 О 1 1 О 1 1 1 О 1 1 О 1 1 О 1 1 1 1 1 1 О О О Отсюда же можно получить кодовые слова (с): 000000, 001110, 010101, 011011,100011,101101, 110110 и 111000; б) порождающую матрицу G и матрицу проверок четности Н: .матрицу G можно построить, решая уравнение: ( К" g.2 gB gl4 g\S К" J G == (т 1 т 2 т з ) g 21 g22 g2З К24 g2S К26 == (С\С2 С З С 4 С S С 6 ), gз\ gЗ2 gзз gЗ4 gзs gЗ6 и отыскивая различные коэффициенты gij. Например, с\ == т.g\1 + т2g21 + тзgз\, и т. д. Подставляя биты информационных символов Ь вместо битов сообщений т и биты х вместо битов кодом вых слов С получаем: G == (     о о 1 1 1 1 ) О 1 . 1 О 
rлава 8. Ответы на упражнения 383 Матрица про верок на четность будет иметь вид: ( О 1 1 1 О О ] Н= 1 О 1 О 1 О, 1 1 О О О 1 в) минимальное расстояние Хемминrа этоrо кода. Ero возможности по обнаружению и исправлению ошибок: расстояние Хемминrа, представляющее также и минимальный вес ненулевых кодовых слов, равно 3. Такой код может исправлять одну ошибку или обнаруживать до двух ошибок. 9. Двоичный линейный блочный код построен из кода с одним разрядом проверки на четность (Single Parity Check, SPC), в котором для каждых трех информационных символов добавляется один символ проверки на четность, так что в каждом кодовом слове имеется четное число единиц: а) определите G и Нматрицы этоrо кода: в коде имеется три информационных символа. Обозначим их как т\ т2 и тз. Разряд проверки на четность (р) добавляется так, что р == 1, если тl + т2 + тз == 1 или р == О, если т\ + :'2 + тЗ == О. Обратите вни мание, что мы работаем с отдельными двоичными цифрами, так что О + О == О, О + 1 == 1, 1 + О == 1, 1 + 1 == О, поэтому мы имеем р == тl + т2 + тз. Кодовое слово  это СI С2 Сз С4, rде СI == ml, С2 == т2, Сз == тз, С4 == Р == тl + т2 + тз. Отсюда: G( О О :} 1 О О 1 Н == (1 1 ), б) каково ero минимальное расстояние? Минимальное расстояние равно 2, поскольку кодовые слова  это 0000,0011,0101,0110, 1001, 1010,1100,1111. Существует два возможных синдрома: О  для случая, коrда нет ошибки, или 1  в случае однобитовой ошибки. Заметим, что две или даже несколько ошибок также дают синдром О и, таким образом, остаются необнаруженными. 
384 Передача данных в сетях: инженерный подход 10. Двоичный линейный код имеет следующую мmpицу проверок на четность: [ 1 1 1 О 1 О О ] Н== о о 1 1 1 1 О 1 О О 011 1 а) каковы параметры п и k для этоrо кода? Сколько кодовых слов имеет этот код? Матрица Н  это матрица размерности 3 х 7, так что матрица G бу дет иметь размерность 4 х 7, причем п == 7, k == 4 и имеется 16 KOДO вых слов; б) представляя Нматрицу в виде [pTl], rде 1  единичная матрица, оп ределите систематическую порождающую матрицу (то есть матрицу в форме [IP], чтобы первые k разрядов кодовоrо слова были те же, что и у сообщения): перестраивая строки Н (строка 2 == строка 1 + строка 2, строка 3 == строка 1 + строка 2 + строка 3) получим Н == (        ] ; 1011001 Эrо означает, что [ 1 О О G= О 1 О О О 1 О О О  1  t} в) перечислите все кодовые слова: кодовые слова перечислены в табл. 8.16. Та6лица.8.16. Сообщения и кодовые слова Coo Кодовое Coo Кодовое Coo Кодовое Coo Кодовое Щенме слово Щенме слово щенме слово щенме слово 0000 0000000 0100 0100110 1000 1000111 1100 1100001 0001 0001011 0101 0101101 1001 1001100 1101 1101010 0010 0010101 0110 0110011 1010 1010010 1110 1110100 0011 0011110 0111 0111000 1011 1011001 1111 1111111 
rлава 8. Ответы на упражнения 385 r) каково минимальное расстояние этоrо кода? Сколько ошибок он может исправлять: минимальное расстояние равно 3. Код может исправлять 1 ошибку; д) после передачи двух кодовых слов через двоичный симметричный (BSC) канал, использующий систематическую форму кода, принимаются кодо- вые слова (1000001) и (1001100). Вычислиre синдром для каждоro из по- лученных кодовых слов. В обоих случаях определиre наиболее вероятное переданное кодовое слово и наиболее вероятное сообщение: в первом случае синдром имеет вид (011), что предполaraет ошибку во втором биre и кодовое слово (1100001), которому cooтвercтвyeт сообще- ние 1100. Во втором случае синдр.ом представлен кодом (000), так что кодовое слово представляется правильным, а сообщение имеет вид 1001; е) предположим в этом примере, что ВSСканал имеет вероятность пере хода менее 0,5. Что это roворит об относительных вероятностях оши бочных и безошибочных разрядов? Если бы бьто известно, что Bepo ятность перехода больше 0,5, нашелся ли простой способ исполь зования кодов, подобных этим, и если да, то какой? Если вероятность перехода меньше 0,5, то ошибочные биты менее вероятны, чем безошибочные, и поэтому самое близкое кодовое слово является наиболее вероятным. Если верояfность перехода больше 0,5, то все полученные биты MOryr быть инвертированы, что приведет к тому, что вероятность перехода станет меньше 0,5, так что можно снова использовать предположение, что самое близкое кодовое слово является правильным. Если вероятность перехода равна 0,5, то нет тaKoro кода, который можно было бы использовать для пересылки информации, а пропускная способность канала равна нулю. 8.4.2. Ответы на вопросы по сверточным кодам 1. Сверточное кодирующее устройство имеет схему, показанную на рис. 8.8. Нечетные выходные биты (1, З. 5 и т.д.) Входные биты Четные выходные биты (2, 4, 6 и т.д.) Рис. 8.8. Схема кодера к вопросу 1 
!f!8 Передача данных в сетях: инженерный подход а) нарисуйте кодовую решетку для соответствующеrо кода: ответ показан на рис. 8.9. 0/00  ><  1/10 Рис. 8.9. Решетка сверточноrо кода б) что оrраничивает длину кода? Минимальный ненулевой пyrь этоrо кода rенерируется из входа 100... Найдите минимальное расстояние этоrо кода и опишите ero возможности по коррекции ошибок: длина оrраничения  2. Входной код 1000... rенерирует выход 110100000..., который имеет вес 3. Поэтому код может исправлять 1 ошибку, происходящую в пределах окна размером 4 бита; в) повторяя решетчаryю диаrрамму каждоrо входноrо бита и четко BЫ деляя каждое изменение в состоянии, закодируйте последователь ность 10110100 (ответ показан на рис. 8.10): 1 2 3 4 5 6 7 8 ВХОДНОЙ бит 1 О 1 1 О 1 О О Текущее О 1 О 1 1 О 1 О состояние Следующее 1 О 1 О 1 О О состояние ВЫХОДНОЙ 11 01 11 10 01 11 01 00 бит 1 1 1 1 01 01 01 01 01 Рис. 8.10. Пример кодирования последовательности r) рисуя решетчаryю диаrpамму и показывая веса пyrей на каждом шаrе, используйте алrоритм Виreр6и для декодирования последовательно- сти 00 11 ) 1 11 1 О 1 О 00 00 по методу максимальноrо правдоподобия и, следовательно, получите наиболее вероятную переданную последо- вательность (ответ показан на рис. 8.11): 
rлава 8. Ответы на упражнения 387 2 3 4 567 8 Входной бит 00 11 11 10 10 00 00 О о о О 2 О 4 2 3 3 3 · 3 1 2 1 12 . 11110101010101 Выходной бит о о о о Рис. 8.11. При мер декодирования последовательности 2. Сверточное кодирующее устройство имеет схему, показанную на рис 8.12. Входные биты Нечетные выходные биты (1, З, 5 и т.д.) Четные выходные биты (2, 4, 6 и т.д.) Рис. 8.12. Схема кодера к вопросу 2 ... а) нарисуйте кодовую решетку для соответcrвующеrо кода (ответ по казан на рис 8.13): 0100 00 00 01 01 10 10 11 11 Рис. 8.1 З. Решетка сверточноrо кода б) что оrpаничивает длину кода? Минимальный ненулевой пyrь этоrо кода rенерируется из входа 100... Найдите минимальное расстояние этоrо кода и опишите ero возможности по коррекции ошибок: длина оrpаничения  2. Входной код 1000... rенерирует выход 110111000..., который имеет вес S. Поэтому код может исправлять 2 ошибки, происходящих в пределах окна размером 6 бит; 
3в8 Передача данных в сетях: инженерный подход в) повторяя решетчатую диаrpамму каждоrо входноrо бита и четко BЫ деляя каждое изменение в состоянии, закодируйте последователь ность 10110100 (ответ приведен на рис. 8.14): 1 2 3 4 5 6 7 8 ВХОДНОЙ бит 1 О 1 О О 1 О 1 Текущее 00 10 01 10 11 01 10 01 состояние Следующее 10 01 10 11 01 10 01 00 состояние ВЫХОДНОЙ 11 01 00 01 11 11 01 00 бит 11 11 11 11 11 11 11 11 11 Рис. В.14. Пример кодирования последовательности r) рисуя решетча1УЮ диаrpамму и показывая веса путей на каждом ша re, используйте алrоритм Витерби для декодирования последова тельности 00 01 1 О 01 11 по методу максимальноrо правдоподобия и, следовательно, получите наиболее вероятную переданную последо вательность (ответ приведен на рис. 8.15): 2 3 4 5 ВХОД 00 01 10 01 11 з 4 4 00 11 11 11 11 ВЫХОД 1 о о о Рис. В.15. Пример декодирования последовательности
rлава 8. Ответы на Уf1(1ВЖН8НИЯ 389 8.4.3. Вопросы по локальным и реrиональным сетям 1. Для передачи данных между двумя компьютерами, располarающимися на расстоянии 15 м дpyr от друrа, используется LAN ceTb, построенная по стандар1)' IБЕЕ 802.3 CSMA/CD 10Base2: а) если LLC использует прос1)'Ю службу без соединений, сколько по требуется времени, чтобы передать файл объемом 1 Мбайт между этими устройствами при условии, что никакие друrие устройства в сети не используются? Предполаrается межкадровый промежyrок 9,6 мкс и максимальный размер кадра: полезная наrpузка пакета == 1500. байтов, а размер файла == 1 Мбайт (220 байтов), поэтому потребуется передать 700 кадров. Передача каждоrо кадра занимает 1518 х 8 х 0,1 мкс == 1,2144 мс плюс межкадровый промежyrок 9,6 мкс и задержка преамбулы кадра 5,6 мкс. Полная задержк (время передачи кадра) составляет 1,2296 мс. Можно бьто бы Ta e включить сюда задержку распростране ния, которую допускается устанавливать по разному как полови ну (BpeMeHHoro) размера окна столкновений (25,6 мкс), задержку распространения в максимальном cerMeHTe (12,5 мкс) или задержку распространения между устройствами, разнесенными на 15 метров друr от друrа (0,075 мкс). Но все эти добавки малы по сравнению с задержкой передачи, так что мы пренебрежем ими. Время передачи файла == 700 х 1,2296 мс == 860,72 мс; б) сколько времени будет длиться передача файла, если LLC использу ет дейтarраммную службу с подтверждениями: кадр подтвержения (ask кaдp) посьтается в ответ на успешно пере- данный информационный кадр. При этом служба подтверждений предполаraeт, что передатчик останавливает передачу и ждет под тверждения, а при передаче кадра подтверждения не происходит и никаких ошибок. Так что задержка передачи каждоrо следующеrо кадра складывается из времени передачи caMoro информационноrо кадра и времени передачи кадра подтверждения. Ask Kaдp имеет ми нимальный размер и вносит дополнительную задержку передачи на 51,2 мкс. С учетом преамбулы и межкадровоrо промежутка, дополни тельная задержка составляет 47,04 мс для всех 700 кадров, общая за держка оказывается равной 860,72 + 47,04 == 907,76 мс.
Э9О Передача данных в сетях: инженерный подход 2.. Оцените время, необходимое для передачи 1 Мбайта данных по высокоскоростной и rиraбитной полнодуплексным Еthеrпеt сетям (для кадров с размерами полей полезной наrрузки 248 и 1500 октетов): . для сетей класса 100Base полезная нarpузка 248 октетов (полный , Размер 266 октетов); время передачи составит 8 х 266 х 0,01 == 21,28 мкс; . для сетей класса 100Base полезная наrрузка 1500 октетов (полный размер 1518 октетов); время передачи составит 8 х 1518 х 0,01 == = 121,4 мкс; . для сетей класса 1000Base полезная наrрузка 248 октетов (полный размер 266 октетов); время передачи составит 8 х 266 х 0,001 == = 2,128 мкс, но необходим специальный конфликтный слот; . для сетей класса 1 OOOBase полезная наrрузка 1500 октетов (полный размер 1518 октетов); время передачи составит 8 х 1518 х 0,001== = 12,14 мкс. '. Определите эффективность процесса передачи, связанноrо с ПОЛУДУIUJексной rиraбитной Еthеmеt--сетью, при передаче кадров минимальноro размера с пакетированием кадров и без нето. В системе без пакетирования кадров эффективность составит 64/512 = 12,5% или от 46/512 == 8,98%. В системе с пакетированием можно передавать 1 кадр в конфликтном сло те и (максимум) 107 кадров в остальных 8192 512 == 7680 байтах пакета кадров. Первый кадр эффективен только на 8,98%, в то время как осталь ные примерно 100 кадров эффективны на 46172 == 0,634 == 63%. Следова тельно, общая эффективность оказывается ниже 63%. Для СSМА/СD--сетей типа 100Base и 1000Base оцените, сколько потребуется времени для передачи 1 Мбайта данных через ПОЛУДУIUJексную конфиry рацию без состязаний, котда полезная наrрузка кадра составляет 248 и 1500 октетов. Для передачи 1 Мбайт данных требуется примерно 700 кадров с полезной наrpузкой 1500 октетов. Полное время передачи для сетей типов 100Base и 1000Base можно подсчитать так: 700 х время передачи одноzо кадра (СМ. вопрос 2 разд. 8.4.3), т. е. оно равно 85 мс (для сетей типа 100Base) или 8,5 мс (для сетей типа 1 OOBase). Для передачи 1 Мбайта данных требуется примерно 4229 кадров с полезной наrpузкой 248 октетов. Для сетей типа 100Base время передачи этих кадров составит 4229 х 21,28 == 90 мс. Для сетей типа 1000Base мы должны учесть пакетирование кадров один пакет содержит 8192 октетов, что эквива.
rлава 8. Ответы на упражнения 391 лентно 29 кадрам. Таким образом, для передачи требуются 145,9 пакета, а полное время передачи составит 65,536 мкс х 145,9 == 9,56 мс. 5. Реrиональная сеть, построенная по FDDI стандарту, состоит из 50 узлов, отстоящих друr от друrа на расстояние 4 км и соединенных кольцом, работающим со скоростью 100 Мбит/с. Каждый узел rенерирует трафик данных со средней скоростью 100 Кбит/с, при этом половина узлов rенерирует речевой трафик со скоростью 256 Кбит/с, а друrая половина видеотрафик со скоростью 2,5 Мбит/с, который имеет оrраничение по задержке в реальном масшraбе времени, так что последовательные кадры не должны тратить более 12 мс на прохрждение сети: а) если для циркуляции по сети MAC MapKep затрачивает 600 мкс, то оцените фактический и максимально возможный коэффициенr ис пользования сети в этих условиях: фактический коэффициент использования == фактическая Harpy зочная/общая пропускная способность == [(50хО,I) + (25хО,256) + + (25х2,5)]/100 == 73,9%, rдe все числа имеют размерность Мбит/с. В стандарте FDDI максимальная сквозная задержка определяется как 2 х TTRT (время обращения маркера), чtо дает в результате 12 мс, так что время обращения маркера (TTRT)" == 6 мс. Кольцевая задержка (RL) == 0,6 мс от запроса. Число станций (N) == 50. Максимальный коэффициенr использования == == (N(TTRT RL»/«N х ТТRТ) + RL) == 89,9% или для больших N: Максимальный коэффициенr использования == (ПRТ RL)!ПRТ == 90%. б) какие существуют возможности для улучшения максимальной эф фективности, и как это будет сказываться на общей производитель ности? Чтобы увеличить эффективность, можно попробовать уменьшить кольцевую задержку (RL) или увеличить время обращения маркера (TTRT). Увеличение TTRT приведет к увеличению сквозной задержки, что повлияет на способность поддерживать службы реальноrо времени. rибкость по отношению к изменению этоrо параметра зависит от поддерживаемых служб. RL это физический параметр, он может
- Передача данных в сетях: инженерный подход ......... . ,;, " быть уменьшен путем сокращения размера сети. Однако домини рующим параметром является TTRT. 8.5. Ответы на вопросы к rлаве 6 8.5.1. Ответы на вопро сы по пропускной способности канала 1. Двоичный симметричный канал с вероятностью перехода 1/4 каскадно соединен со вторым каналом с такой же с вероятностью перехода (1/4), так что выходной сиrнал первото канала направляется во второй. Обозначим вход в первый канал через Х, выходной сиrнал первото канала и вход во второй через а выходной сиrнал вtoрото канала через Z. Источник вХrенерирует О с вероятностью 1/3, а 1 с вероятностью 2/3: а) вычислите Н(ХI У): Н(Х I У) == Lk(H I У == Yk»P(Yk)' Чтобы упростить расчеты, мы сначала вычисляем все относящиеся к делу вероятности. Матрица канала имеет ид [; ;]. Результаты аычиопений принедены . табл.8.17. Таблица 8.17. Вероятности для вычисления энтропии Н(Х/У) р(Х== О) == 1/3 р(Х == 1) == 21.3 р(У== О\Х== О) == 3/4 p(Y==IIX==O)== 1/4 р( У == OIX == 1) == 1/4 р(У== llX= 1) == 3/4 р(У== о,х== О) == 1/4 р(У== 1, Х== О) == 1/12 р(У о,х== 1) == 1/6 р(У== l,х= 1) == 'h р(У== О) == 5/12 р(У== 1) == 7/12 р(Х== 0IY== О) == 3/5 р(Х == IIУ == О) == 215 р(Х== 01 У== 1) == 1п р(Х== llY== 1) == 6П Обратите внимание, что можно вычислять условные вероятности независимо от порядка следования событий во времени. Хотя собы тие Х происходит перед событием мы, все же, можем определять
rлава 8. Ответы на упражнения З9З р(Х== 0IY= О), например, как вероятность события Х== О при задан ном событии У == о. H(XjY== О) == p(X== 0IY== О) IOg2(P(X== 0IY== O» p(X==IIY== О) IOg2(P(X==IIY== О» == == 3/51og 2 3/5 2/51og 2 2/5 == 0,97095 бита Н (XjY == 1) == р(Х == 0IY == 1) IOg2(P(X == 0IY == 1» Р(Х == llУ == 1) IOg2(P(X == llУ == 1» == == 1/7log 2 1/7 6/71og 2 6/7 == 0,59167 бита H(X]J? == Н(Х]У == О) р(У == О) + Н(Х1У == 1) р(У == 1) == 0,97095 х (5/12) + + 0,59167 х (7/12) == 0,40456 + 0,34514 == 0,74970 бита; б) вычислите взаимную информацию между Х и У: взаимная информация между Х и У вычисляется так: I(.X';Y) == Н(Х) H(X]Y)== (l/3)logi1/3) (2/3)lo (2/3) 0,74970==0,9183 0,7497== == 0,169 бпra; в) вычислите Н (Х' Z): здесь можно применять те же методы, что и в предыдущих вопросах; r) вычислите взаимную информацию между и z: здесь можно применять те же методы, что и в предыдущих вопросах. 6. Двоичный канал со стиранием имеет следующую форму (рис. 8.16). о о u 1 1 Рис. 8.16. Форма двоичноrо канала (к вопросу 2) Какова ero пропускная способность в терминах вероятности р? Матрица переходов имеет следующий вид: [ Р l p О ] . О l р р
'14 Передача данных в сетях: инженерный подход Обозначим ВХОД через Х, ВЫХОД через У, а р(Х =: О) = а. Пропускная способность вычисляется как максимальное значение взаим . ной информации I(X; У) = Н(У) Н(У I Х). Соответствующие вероятности при водятся в табл. 8.18. Таблица 8.18. Вероятности для вычисления энтропии Н(Х/У) р(Х== О) == а р(У== О 1 х== О) == р р(У== О, х== О) == ра р(У==О)==ра р(У== VJX== О) == р(У== и, х== О) == =I p == (1 р)а р(У== 11 х== О) == О р(У== 1, х== О) == О р(У== u) == == (1 р) р(Х== 1) == 1 a p(Y==OIX== 1)==0 р(У==О,Х== 1)==0 р(У== VJX== 1) == р(У== цх== 1)== р(У== 1) == ==I p == (1 p)(l a) ==p(1 a) р(У== IIX== I)==p р(У== 1, х== 1) == ==p(1 a) Н(У) = р(У == О) logip(Y == О» р(У == u) logiP(Y == u) р(У == 1» IOg2(P(Y== 1) == == palog1.Pa (1 p) IOg2(1 p) p(1 a) log1.P(1 a)== == plog1.P (1 p) IOg2(1 p) palog2a p(1 a) IOg2(1 a); Н(f\X)=р(Х= О)Н(J'1X== 0)+ р(Х== I)Н(J'1X== l)==a( plo (l p)lo (I p» + + (1 a)( (1 p)log 2 (1 р) plog1.P) == plog1.P (1 p)log 2 (1 р); Н(Y) H(f\X) = plo (1 p)lo (1 р) palo a р(1 a)log;{1 a) + plo + +(1 p) log2 (l p)= palog2 p(1 a)log;{1 a) == p(alog211 (1 a)log;{1 a»; Далее, (alog2a (1 a)log 2 (1 а» это энтропия двоичноrо источниках. Ее максимальное значение равно 1 и, следовательно, максимальная про пускная способность канала равна р. Телефонный канал имеет полосу шириной 3,4 кrц: а) вычислите пропускную способность канала, если отношение сиr нал/шум составляет 30 дБ: используя закон Шеннона, получаем С == Blog 2 «S + N)/N) или С = Blog 2 (1 + S/N). Orношение сиrнaлlшум задано, равным 30 дБ.
rлава 8. Ответы на упражнения 395 в абсолютных единицах это 103 == 1000. Поэтому S/N== 1000, В == 3400, так что С == 34001og 2 (1 + 1000) == 3400 х 9,96722 == 33 888 бит/с; б) вычислите минимальное отношение сиrнал/шум, требуемое (Teope тически), чтобы поддерживать передачу информации со скоростью 4800 бит/с: для обеспечения передач со скоростью 4800 бит/с, необходимо, чт(}- бы выполнялось неравенство Blog 2 (l + S/N) 4800. В == 3400, поэтому log2 (l + S/N) 4800/3400, 1 + S/N 21,412, S/N 2,66 или 4,25 дБ.
Предметный указатель 4 4В5Т, схема кодирования 227 8 8В6Т, схема кодирования 227 А AAL 5 протокол уровня адаптации А ТМ 254 ADSL 327 AES расширенный стандарт шифрования 58, 60 ARP 15,222 ARP дЛЯ IР!АТМ255 ARPANET сеть министерства обороны США 7 ARQ: о rибридная схема 218 о с возвратом N кадров 137 о с избирательным повторением 137 о с остановом и ожиданием 137 о со скользящим окном 138 АТМ: о режим асинхронной передачи 242 о котракт трафика 246 о стек протоколов 243 А ТМ ячейка: о поле CLP приоритет потери ячейки 250 о поле НЕС коmpоль ошибок заrоловка 250 о поле PТI идентификатор типа полезной наrpузки 250 в ВЕВ 190 САР 329 CIDR 161 CPCS общая часть подуровня сходимости AAL5, 254, 205 CSMA 234 CSMAlCA 234 CSМAlCD, МAC CTaндapт IЕЕЕ 802.3, 224 Сетевой адаптер (NIC), 119 D DES 58 DiffServ 173 DIPS распределенное межкадровое пространство 234 DMT 329 DNS 149, 163 DQDB 263 DSCP 175
398 Е EGP 167 Ethemet 189 о LАN стандарт Xerox 224 о быстрая, высокоскоростная LAN 227 о rиrабитная, высокоскоростная LAN 228 о изохронная, высокоскоростная LAN IsoENET 226 F FCS 136 FDDI 192, 257 FDMA 309 FEC 197,341 G G.711 аудио стандарт из Н.323, 346 G.7xx аудио стандарты из Н.323, 346 GSM 333 н Н.26х видео стандарты из Н.323 346 Н.323 стандарт аудио и видео конференций Interhet 345 HDLC 253 HSCSD 337 I ICP 146 IEEE 802.1 стандарт 220 IБЕЕ 802.11 беспроводная LAN 233 IEEE 802.2 стандарт LLС уровня 220 IEEE 802'зJ.1 дополнение к стандаpry IEEE 802.3 (быстрая Ethemet) 227 IБЕЕ 802.3 MAC CTaндapT CSMAlCD 224, 235 IEЕЕ 802.4 МАС-стандарт Маркерная шина 233 Предметный указатель IБЕЕ 802.5 MAC CTaндapт Маркерное кольцо 192, 232 IEEE 802.9: о сеть IsoENET 226 Intemet: о стек протоколов 7 о эталонная модель 7 IP протокол Internet 155 IP (Intemet Protocol) межсетевой протокол 15 IP и А ТМ 254 IP и SDH/SONET 254 IPv4 IР протокол версии 4, 155 IPv6 IР протокол версии 6, 168 ISO 8 IsoENET LAN.стандарт IEEE 802.9 226 L LAN локальная сеть 218 LCP 253 LED 285 LFSR 305 LLC 220 LSP маркированный переключаемый путь 176 LSR 176 м МAN 256 МEGACO 347 MOS Меan Opinion Score 340 MPLS переключение мноrопротокольных MeTOJ( 176 о OSI (Ореп Systems Interconnection): о уровни: а канальный 1 О, 17 а представительский 9 априкладной 9 а сеансовый 9 а сетевой 10
Предметный указатель 399 5 а транспортный 9, 15 а физический 1 О о взимодействие открытых систем 7 о стандарт ISO 220 OSPF 129, 168 р PDU (Protocol Data Units): о протокольные блоки данных 5 о протокольные единицы обмена 149 РНВ  nocerMeHTHoe поведение 175 РРР 252 PSТN 328, 345 РУС 249 Q QoS 103, 171 опараметры: а не связанные с производительностью 103 а npиоритет 103 а связанные с npоизводительностью 103 D стоимость 103 R RARP 223 RFC 1034/1 035  документы lETF 164 RFC 1519  документ lETF 161 RFC 1700  документ IETF 157 RFC 950  документ lETF 160 RIP 128, 168 RPE/LPC  кодек 338 RPF  передача по обратному маршрyry 131 RS232  стандарт последовательных линий СВЯЗИ 306 RSVP 172, 176 RTCP 343 RТP 342 SAP (Service Access Point): о точка доступа к службам 4 SDH 240 SDНlSONET 254 SDL 253 SIFS 234 SIP 345 SLA 174 SLIP 252 SONET 240 SPC  код с одиночным разрядом npоверки на четность 214 SТМ  синхронные транспортные модули 240 т ТСР 15, 150 ТНТ  время удержания маркера 262 TRT  таймер обращения маркера 262 TSAP 152 .JTRT261 U UDP 15, 149, 342 v VoD 328 VolP 339, 343, 344 УРl 249 VSELP 338 w WLAN 233, 288 WLL 287 х хDSLтехнолоrии 327 о HDSL 327 о SDSL 327 о VDSL 327 
400 А Аrpеrauия маршрутов 161 Адреса: о доменные Имена 162 о числовые 162 Адресация 145 о МACaдpec 222 о NРАадрес 222 о иерархическая 146 о сплошная 146 Акустический алфавит 197 Алrоритм о Витерби212 о Дейкстры 124 о дерева охвата 238 о Ивена 94 О Клейтмана 92 о маршрутизации 121 D адаптивный 122 Асимметричная цифровая абонентская линия, ADSL 327 Б Байтстаффинr 184, 252 Бит (bit), 20 Битстаффинr 184,240 Брандмауэр (firewall), 51 в Вероятность О ошибки 200 оперехода 200 Виртуальные (УС) контейнеры 241 Виртуальный канал (УС) в А ТМ 245 Виртуальный путь (УР) в А ТМ 245 Время выдержки 189 r rраф реryлярный 90 Предметный указатель д Дейтаrpамма 97 Дерево охвата 238 Диод: о инжекционный лазерный 285 о светоизлучающий 285 Домен BepxHero уровня 162 Доступ к среде передачи 183 Дрожание Gitter), 105 з Задержка 104 Задержка распространения 139 Закон Липла 113 Запись ресурса  Resource Record RR 164 ' Защита от ошибок 134, 183 Зив и Лемпель (Ziv, Lempel), 39 и Идентификация 70, 73 Иерархия мноrоуровневая 4 Измерения в сетях: О с коммутацией каналов 105 о с коммутацией пакетов 109 Изображения: о сжатие фрактальное 40 ИКМ  импульснокодовая модуляция 34 о адаптивная 337 о дифференциальная 337 о обычная 337 Интерливинr 212,339 Интерференция: о межсимвольная (lSI), 315 Информация 19 о взаимная 22 о количество по Хартли 19 Искажение (данных) 104 Источник информации: О алфавит 23 о без памяти 23 о избыточность 24 о с памятью 23 
Предметный укаэатвnь к Канал 273 о бесшумный 273 о ДВОичный симметричный 274 о дискретный без памяти 273 о шумящий 273 Квантование 27 о ошибка 28 о ТОЧНОСТЬ 28 о шаr 28 Классы адресов 158 Код: о алфавит 24 D двоичный 24 о дерево решений 25 о избыточность 26 о кодовое дерево 25 о моментальный 24 о неравенство Крафта 25 о неравенство КрафтаМакмиллана 25 о неравенство Макмиллана 25 о однозначно дешифруемый 24 о npефиксносвободный 24 о разборчивый 24 о эффективность 26 Код [рея 303, 322 Кодирование: о источника 26 о источников с памятью 37 о канала 27 о криmоrафическое 27, 47 о сообщений 24 о теорема помехоустойчивоrо кодирования 26 о Хаффмана 35, 40 о ШеннонаФано 35 Кодовое слово 197 Коды: о блочные 338 о [ильберта 214 о исправляющие ошибки 201 о каскадные 214 о композиционные 213 о линейные 203 D по рождающая матрица 203 D синдром 203 о РидаСоломона 200, 215 о с одним разрядом контроля четности 201 о с повторениями 200 о сверточные200,208,338 О схема кодирования 4В3Т 303 о 1)'I'бо 216 о турбокомпозиционные 216 О Хеммиша 200, 202 D матричная форма 204 D расширенные 207 о циклические 200, 205 Коммутация 97 Конкатенация кодов 214 о параллельная 215 о последовательная 215 Концентратор (hub), 119 Концентраторы о маrистральные 237 Коэффициент спада А ЧХ 315 Криmоrpафия: о катеrории 47 .... К риmocистема: О RSA (Rivest, Shamir, Adleman) 68 о ДиффиХеллмана 67 о с общим ключом 64 о с частными ключами (симметричные) 52 л Линейное кодирование 294 Линейный код 294 о биполярный: D с расщеплением по фазе 299 о двоичный 295 D биполярный: АМl с замещением N нулей AМI с чередующейся инверсией маркера 296 бифазный 299 высокоплотный биполярны код 3, НОВ3 300 (окончание рубрики см. на с. 402) 
402 Предметный указатель D биполярный (окончание): код МЮlЛера (модуляция с задержкой), 297 манчестерский 297 мноrоуровневый с 3 переходами,МLТ3,301 с BRZ и BNRZ 296 с инверсией кодовых посылок. CMI298 D униполярный NRZ 295 D униполярный NRZl (с инверсией 1) 295 D униполярный RZ 295 о с переходами 295 о с уровнями 295 м Манипуляция о mарная частотная mFSK 319 о амrтИ1Удная, ASK 317 о амrтИ1)'дная, mASK 318 о амrтИ1)'днофазовая, АРК 324 о rayccoBa минимальная частотная, GMFSK 334 о двоичная частотная BFSK 319 о двухпозиционное, ООК 3 17 о дифферециальная фазовая DPSK 321 о квадра1)'рная фазовая, QPSK 321 о минимальная частотная, MSK 334 о фазовая 320 о частотная, FSK 319,334 Маршрутизатор 120 Маршрутизация: о в IРсетях 167 о децентрализованная: D изолированная 123 D распределенная 123, 128 о лавинная 127 о мноrоnyтевая 123 О пакетов 121 о распределенная: D по вектору расстояния 128 D по состоянию связей 129 о централизованная 122 о широковещательная 1 3 1 Межкодовое расстояние 197 Межсетевые взаимодействия 118 Методы защиты от ошибок: о коррекция ошибок с обратной СВЯЗЬЮ 338 о маскировка ошибок 338 о прямое исправление ошибок 338 Метрика вemлений 211 Множественный дос1)'П: О с временным разделением, ШМА 312,335 о с частотным разделением, FDMA 309,335 Модуляция 307 о амrти1)'ДНая, АМ 317 о амrти1)'ДНОфазовая без несущей, САР 329 о дискретная мноrотональная, DMT 329 о звездообразная QAM 326 о импульснокодовая 34 О квадратная QAM 324 о квдратурная амrти1)'ДНая (QAM), 323 о круrовая QAM 326 о цифровая 314 Мост II 9 о мноrопортовый 120 Мосты 237 Мультиrтексирование: о с разделением времени, асинхронное (ATD) 110, 111 о с разделением времени (TDM) 11 О о с разделением времени, синхронное (STD) 110 о статистическое 11 О н Нападение: о канал прослушивания 51 о с подстановкой 51 Настроечная последовательность 336 Нат {паО, 20 
Предметный указатель о 403 Обнаружение ошибок 135 Обнаружение столкновений 188 Объекты 4 Отношение сиrналшум (SNR), 28 n Пакет протокола IPv4, формат 155 Пакетирование кадров 231 Передающая среда: О UТРкабели 280 о Передающая среда: О беспроволочный локальный канал 287 о двухточечная радиолиния 287 о индуктивные контуры 293 о инфракрасная 292 о коаксиальный кабель 281 о ленточный кабель 279 о линия электропередачи 293 о оптоволокно 282 D мноrомодовое 285 D одномодовое 284 D с мноrоуровневым показателем преломления 284 о проводная 278 О радиовещание 285 о радиосреда 285 D Вluetooth, "rолубой Зуб", 288 D мобильные системы 288 о спyrники 290 Перемешивание 304 Плезиохронные (почти синхронные) системы 240 Повторители 236 Повторитель 119 Подпись цифровая 75 Подсети 159 Пороr пакета 231 Последовательное декодироваиие 211 Почтовый сервер 164 Предлаrаемая наrpузка 107 Проблема скрытых терминалов 187 Прокалывание кода 212 Пропускная способность 104 Пропускная способность канала 278 Протоколы 4 Протокольные блоки данных 5 Пульсация 105 Путь 90 о rеодезический 90 о наикратчайший 123 о с разделенными связями 90 о с разделенными узлами 90 р Разrpаничение кадров 184 Рассеивание (стеrаноrpафия), 48 Расстояние Хемминrа 198 Расширение несущей  способ передачи кадров 229 .С Связность 90 Сервер: о имен 162 о процессов 146 Сеть 83 о без соединения 97 о rлобальная (W AN) 96, 240 о звено: D дуплексное 117 D полудуплексное 117 D рабочие параметры 118 о как rpаф 90 D степень узла 90 о компонеlПЫ D звено 83 D узел 84 коммутационный 84 промежyroчный 84 терминальный 84 хост 84 
404  1 L   т о конфиrypации: а базовая 86 а двухточечная 84 D доступа 86 а коммутируемая 85 а широковещательная 85 о локальная (LAN), 96, 218 о реrиональная (MAN), 96, 256 о с виртуальными каналами 1 О 1 о с коммутацией дейтаrpамм 1 О] о с коммутацией каналов 98 о с.коммутацией сообщений 100 о с коммутацией ячеек 100 о с соединением 97 о тополоrия 87 а древовидная 89 а звездообразная 87 а кольцевая 88 а сеточная 87 а шинная 89 Сжатие 37 о адаптивное дифференциальное 39 о векторное квантование 39 D СЕLр"кодер 39  о rpупповое 38 () дифференциальное 39 а дельта",модулятор 39 о изображений: а форматов GIF 40 D форматов JPEG 40 D форматов MPEG 41 о мета"символ 3 8 о основные типы (таблица), 37 о подстановка образцов 38 Опримеры 40 о с подавленим нулей 38 о с преобразованием 39 Синхронизация 184, 304 Синхронизация кадров 183 Система мобильной цифровой телефонии 333 Скорость выборки 34 Служба полускоростной передачи речи 337  Предметный указатель т .. . Службы А ТМ 242 о ABR р" с доступным битрейтом 242 о CBR ' с постоянным битрейтом 242 о UBR 11.. с неопредел6нным битрейтом 243 о VBR т Т, С переменным битрейтом 242 Снелл: о закон преломления света 283 Сообщения 19 о источники 19 о СИМВОЛЫ 19 Спектр частотный 32 о линейчатый 33 о осиовная частота 33 Стеrаноrpафия (рассеивание), 48 Стек протоколов 4 Столкновение кадров 186 Стратеrии защиты от ошибок 134 о автоматический запрос повторения передачи, ARQ 135 о СКрЫТИе ошибок 134 о упреждающая (прямая) коррекция ошибок, FEC 135 Суперrpамма (jumbogram), укрупненный пакет 169 Схемы ДОС1Упа: о rибридные 191 о с маркерами 191 о с резервированием 190 а с циклическим опросом 190 о с состязаниями CSMAlCD 187 о с состязаниями ALOHA 186 D квантованная ALOHA 187 о сравнение 196 . т Теорема кодирования канала 276 Транспортные службы о классы 147 Туннелирование170 
Предметный указатель "' J 1  L IIТ 405 у ц У правление доступом к среде передачи 185 Управление потоками данных 134 Уровень звена данных 183 ЦиклическИЙ избыточный код, CRC 136 ч ф Частота дискретизации 29 Частотный спектр 30 Фильтр: о приподнятая косинусоида 315 Формирование импульсов 3 15 Формула потерь Эрланrа 107  о В-формула 107 о С-формула 107 Фраrментация сообщений 157 Фрактал 40 Функция о односторонняя 65 Фурье о преобразование 33 о ряды 30 ш х Шеинои 20, 276 о теорема о пропускной способности канала 278 Шифр 50 о блочный 50 ополиалфавитный 55 о поточный 50 о ключ 50 о моноалфавитный трансформационный 54 о на основе линейноrо сдвиroвоrо реrистр с обратной связью 56 Оперестановочный 52 о 6I(Jодстановка Цезаря 53 о поточнъlЙ 61 D с авТОI01Ючом 61 о продукционный 57 о В lowfish 58 о IОЕА (International Data Encryption AIgorithm), 58 D ТС4, 58 о с одноразовым заполнением 56 о трансформационный моноалфавитный 53 Шифрование 48 Шлюз 118 о высокоrо уровня 120 Характеристики А ТМ "'трафика: О САС--контроль за установкой соединений 246 о CDV -разброс задержки ячеек 246 о CLR.... скорость потери ячеек 246 о РСR--пиковаи скорость ячеек 246 о SСR--нормальная скорость ячеек 246 о UРС"контроль параметра использования 247 о rрупповой допуск 246 о скорость ошибочных ячеек 246 Хартли 19 о закон о пропускной способности канала 277 э Энтропия 21 о дифференциальная 277 Эфект rиббса 31 Эхоподавление 329