Звоните: (067) 644-70-74
Напишите нам burtrest@gmail.com

Книга Компьютерные сети. 5-е изд. Таненбаум

482.30 грн.

Артикул: 5452da1db782 Категория:

Описание

год-2012

960 страниц

Перед вами — очередное, 5-е издание самой авторитетной монографии по современным сетевым технологиям, написанной признанным экспертом в данной обл. Эндрю Таненбаумом в соавторстве с профессором Вашингтонского унив. Дэвидом Уэзероллом. I-я версия данного классического усилий родилась в далеком 1980 г., и с того момента любое издание монографии неизменно становилось хитом продаж и использовалось в качестве базового учебника в ведущих технических вузах. В книжке Компьютерные сети. 5-е изд. Таненбаум последовательно изложены главные концепции, определяющие современное состояние и тенденции развития компьютерных сетей. Авторы подробнейшим образом объясняют устройство и принципы деятельности аппаратного и ПО, рассматривают все аспекты и уровни организации сетей — от физического до уровня прикладных программ. Изложение теоретических принципов дополняется яркими, показательными примерами функционирования Интернета и компьютерных сетей различного вроде. V-е издание целиком переработано с учетом изменений, происшедших в сфере сетевых технологий за последние несколько лет и, в том числе, освещает подобные аспекты, как беспроводные сети стандарта 802.12 и 802.16, сети 3g, технология RFID, инфраструктура доставки контента CDN, пиринговые сети, потоковое вещание, интернет-телефония и многое иное.
Оглавление книги
Компьютерные сети. 5-е изд. Таненбаум
Предисловие   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
Глава 1.Введение   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  16
1.1. Применение компьютерных сетей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17
1.1.1. Сети в организациях . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18
1.1.2. Использование сетей частными лицами . . . . . . . . . . . . . . . . . . . . . . . . . . .  21
1.1.3. Использование беспроводных сетей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  26
1.1.4. Социальный аспект . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  29
1.2. Сетевое оборудование   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  32
1.2.1. Персональные сети . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  34
1.2.2. Локальные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  35
1.2.3. Муниципальные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  38
1.2.4. Глобальные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40
1.2.5. Объединения сетей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  43
1.3. Сетевое программное обеспечение   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  44
1.3.1. Иерархия протоколов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  45
1.3.2. Разработка уровней   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  49
1.3.3. Службы на основе соединений и службы без установления
соединений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  51
1.3.4. Примитивы служб   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53
1.3.5. Службы и протоколы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  56
1.4. Эталонные модели   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57
1.4.1. Эталонная модель OSI   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57
1.4.2. Эталонная модель TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61
1.4.3. Модель, используемая в книге   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64
1.4.4. Сравнение эталонных моделей OSI и TCP . . . . . . . . . . . . . . . . . . . . . . . . . .  65
1.4.5. Критика модели и протоколов OSI   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  66
1.4.6. Критика эталонной модели TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  69
1.5. Примеры сетей   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  70
1.5.1. Интернет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  70
1.5.2. Мобильная телефонная сеть третьего поколения   . . . . . . . . . . . . . . . . . . .  81
1.5.3. Беспроводные ЛВС: 802.11  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  86
1.5.4. RFID и сенсорные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  90
1.6. Стандартизация сетей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  92
1.6.1. Кто есть кто в мире телекоммуникаций . . . . . . . . . . . . . . . . . . . . . . . . . . . .  93
1.6.2. Кто есть кто в мире международных стандартов   . . . . . . . . . . . . . . . . . . . .  95
1.6.3. Кто есть кто в мире стандартов Интернета . . . . . . . . . . . . . . . . . . . . . . . . .  97
1.7. Единицы измерения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  99
1.8. Краткое содержание следующих глав . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  100
Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  101
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  103
Глава 2. Физический уровень . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  106
2.1. Теоретические основы передачи данных   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  106
2.1.1. Ряды Фурье . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  107
2.1.2. Сигналы с ограниченным спектром   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  107
2.1.3. Максимальная скорость передачи данных через канал   . . . . . . . . . . . . .  110
2.2. Проводниковые среды передачи информации   . . . . . . . . . . . . . . . . . . . . . . . . . .  112
2.2.1. Магнитные носители . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  112
2.2.2. Витая пара   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  113
2.2.3. Коаксиальный кабель   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  114
2.2.4. Линии электропитания   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  115
2.2.5. Волоконная оптика   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  116
2.3. Беспроводная связь . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  122
2.3.1. Электромагнитный спектр . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  123
2.3.2. Радиосвязь . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  127
2.3.3. Связь в микроволновом диапазоне   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  128
2.3.4. Передача в инфракрасном диапазоне . . . . . . . . . . . . . . . . . . . . . . . . . . . .  132
2.3.5. Связь в видимом диапазоне   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  133
2.4. Спутники связи   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  135
2.4.1. Геостационарные спутники   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  136
2.4.2. Средневысотные спутники . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  140
2.4.3. Низкоорбитальные спутники . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  140
2.4.4. Спутники против оптоволокна . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  143
2.5. Цифровая модуляция и мультиплексирование   . . . . . . . . . . . . . . . . . . . . . . . . . .  145
2.5.1. Низкочастотная передача   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  145
2.5.2. Передача в полосе пропускания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  150
2.5.3. Частотное уплотнение   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  153
2.5.4. Мультиплексирование с разделением времени . . . . . . . . . . . . . . . . . . . .  155
2.5.5. CDM — кодовое разделение каналов . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  156
2.6. Коммутируемая телефонная сеть общего пользования . . . . . . . . . . . . . . . . . . .  159
2.6.1. Структура телефонной системы   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  160
2.6.2. Политика телефонии . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  163
2.6.3. Местные линии связи: модемы, ADSL, беспроводная связь   . . . . . . . . .  165
2.6.4. Магистрали и мультиплексирование   . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  173
2.6.5. Коммутация   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  182
2.7. Мобильная телефонная система   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  186
2.7.1. Мобильные телефоны первого поколения: аналоговая передача
речи   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  188
2.7.2. Второе поколение мобильных телефонов: цифровая передача
голоса (G2)   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  192
2.7.3. Мобильные телефоны третьего поколения: цифровая речь
и данные   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  197
2.8. Кабельное телевидение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  202
2.8.1. Абонентское телевидение   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  202
2.8.2. Кабельный Интернет . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  203
2.8.3. Распределение частот   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  205
2.8.4. Кабельные модемы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  206
2.8.5. ADSL или кабель? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  208
Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  210
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  211
Глава 3. Канальный уровень . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  216
3.1. Ключевые аспекты организации канального уровня . . . . . . . . . . . . . . . . . . . . . .  216
3.1.1. Сервисы, предоставляемые сетевому уровню . . . . . . . . . . . . . . . . . . . . .  217
3.1.2. Формирование кадра   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  219
3.1.3. Обработка ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  223
3.1.4. Управление потоком . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  224
3.2. Обнаружение и исправление ошибок   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  225
3.2.1. Коды с исправлением ошибок . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  227
3.2.2. Коды с обнаружением ошибок   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  233
3.3. Элементарные протоколы передачи данных на канальном уровне   . . . . . . . . .  239
3.3.1. Симплексный протокол «Утопия»   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  244
3.3.2. Симплексный протокол с ожиданием для канала без ошибок . . . . . . . .  245
3.3.3. Симплексный протокол с ожиданием для зашумленных каналов . . . . .  247
3.4. Протоколы скользящего окна . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  251
3.4.1. Протокол однобитового скользящего окна . . . . . . . . . . . . . . . . . . . . . . . .  253
3.4.2. Протокол с возвратом на n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  256
3.4.3. Протокол с выборочным повтором . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  263
3.5. Примеры протоколов передачи данных   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  269
3.5.1. Передача пакетов по протоколу SONET . . . . . . . . . . . . . . . . . . . . . . . . . . .  269
3.5.2. ADSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  273
3.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  276
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  277
Глава 4. Подуровень управления доступом к среде . . . . . . . . . . . . . . . . . . . . . .  281
4.1. Проблема распределения канала   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  282
4.1.1. Статическое распределение канала   . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  282
4.1.2. Допущения, связанные с динамическим распределением каналов . . .  284
4.2. Протоколы коллективного доступа   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  286
4.2.1. Система ALOHA   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  286
4.2.2. Протоколы множественного доступа с контролем несущей   . . . . . . . . .  291
4.2.3. Протоколы без столкновений   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  294
4.2.4. Протоколы с ограниченной конкуренцией   . . . . . . . . . . . . . . . . . . . . . . . .  298
4.2.5. Протоколы беспроводных локальных сетей   . . . . . . . . . . . . . . . . . . . . . . .  302
4.3. Сеть Ethernet   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  305
4.3.1. Физический уровень классической сети Ethernet   . . . . . . . . . . . . . . . . . .  306
4.3.2. Протокол подуровня управления доступом к среде в классическом
Ethernet   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  307
4.3.3. Производительность сети Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  311
4.3.4. Коммутируемые сети Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  313
4.3.5. Fast Ethernet   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  316
4.3.6. Gigabit Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  319
4.3.7. 10-гигабитный Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  322
4.3.8. Ретроспектива Ethernet   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  324
4.4. Беспроводные локальные сети . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  325
4.4.1. Стандарт 802.11: архитектура и стек протоколов   . . . . . . . . . . . . . . . . . .  326
4.4.2. Стандарт 802.11: физический уровень   . . . . . . . . . . . . . . . . . . . . . . . . . . .  327
4.4.3. Стандарт 802.11: протокол подуровня управления доступом к среде      329
4.4.4. Стандарт 802.11: структура кадра   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  336
4.4.5. Сервисы   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  338
4.5. Широкополосные беспроводные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  340
4.5.1. Сравнение стандарта 802.16 с 802.11 и 3G . . . . . . . . . . . . . . . . . . . . . . . .  341
4.5.2. Стандарт 802.16: архитектура и стек протоколов   . . . . . . . . . . . . . . . . . .  342
4.5.3. Стандарт 802.16: физический уровень   . . . . . . . . . . . . . . . . . . . . . . . . . . .  343
4.5.4. Стандарт 802.16: протокол подуровня MAC   . . . . . . . . . . . . . . . . . . . . . . .  345
4.5.5. Стандарт 802.16: структура кадра   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  347
4.6. Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  348
4.6.1. Архитектура Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  349
4.6.2. Приложения Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  350
4.6.3. Bluetooth: набор протоколов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  351
4.6.4. Bluetooth: уровень радиосвязи   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  352
4.6.5. Bluetooth: уровень немодулированной передачи . . . . . . . . . . . . . . . . . . .  353
4.6.6. Bluetooth: структура кадра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  354
4.7. RFID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  356
4.7.1. Архитектура EPC Gen 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  357
4.7.2. Физический уровень EPC Gen 2   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  357
4.7.3. Уровень идентификации метки EPC Gen 2   . . . . . . . . . . . . . . . . . . . . . . . .  359
4.7.4. Форматы сообщения идентификации метки   . . . . . . . . . . . . . . . . . . . . . .  360
4.8. Коммутация на канальном уровне   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  361
4.8.1. Применение мостов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  361
4.8.2. Обучаемые мосты   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  363
4.8.3. Мосты связующего дерева   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  366
4.8.4. Повторители, концентраторы, мосты, коммутаторы,
маршрутизаторы и шлюзы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  368
4.8.5. Виртуальные локальные сети   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  371
4.9. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  378
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  380
Глава 5. Сетевой уровень   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  384
5.1. Вопросы проектирования сетевого уровня   . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  384
5.1.1. Метод коммутации пакетов с ожиданием   . . . . . . . . . . . . . . . . . . . . . . . . .  384
5.1.2. Сервисы, предоставляемые транспортному уровню   . . . . . . . . . . . . . . .  385
5.1.3. Реализация сервиса без установления соединения   . . . . . . . . . . . . . . . .  387
5.1.4. Реализация сервиса с установлением соединения . . . . . . . . . . . . . . . . .  389
5.1.5. Сравнение сетей виртуальных каналов и дейтаграммных сетей . . . . . .  390
5.2. Алгоритмы маршрутизации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  392
5.2.1. Принцип оптимальности маршрута   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  394
5.2.2. Алгоритм нахождения кратчайшего пути . . . . . . . . . . . . . . . . . . . . . . . . . .  395
5.2.3. Заливка   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  398
5.2.4. Маршрутизация по вектору расстояний   . . . . . . . . . . . . . . . . . . . . . . . . . .  399
5.2.5. Маршрутизация с учетом состояния линий   . . . . . . . . . . . . . . . . . . . . . . .  403
5.2.6. Иерархическая маршрутизация   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  409
5.2.7. Широковещательная маршрутизация   . . . . . . . . . . . . . . . . . . . . . . . . . . . .  411
5.2.8. Многоадресная рассылка   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  413
5.2.9. Произвольная маршрутизация   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  416
5.2.10. Алгоритмы маршрутизации для мобильных хостов . . . . . . . . . . . . . . . .  417
5.2.11. Маршрутизация в произвольных сетях   . . . . . . . . . . . . . . . . . . . . . . . . . .  420
5.3. Алгоритмы борьбы с перегрузкой   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  424
5.3.1. Подходы к борьбе с перегрузкой   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  426
5.3.2. Маршрутизация с учетом состояния трафика   . . . . . . . . . . . . . . . . . . . . .  427
5.3.3. Управление доступом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  428
5.3.4. Регулирование трафика  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  430
5.3.5. Сброс нагрузки   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  434
5.4. Качество обслуживания . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  436
5.4.1. Требования приложений   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  437
5.4.2. Формирование трафика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  439
5.4.3. Диспетчеризация пакетов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  443
5.4.4. Управление доступом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  447
5.4.5. Интегральное обслуживание . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  451
5.4.6. Дифференцированное обслуживание . . . . . . . . . . . . . . . . . . . . . . . . . . . .  454
5.5. Объединение сетей   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  457
5.5.1. Различия сетей   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  458
5.5.2. Способы объединения сетей . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  459
5.5.3. Туннелирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  462
5.5.4. Маршрутизация в объединенных сетях . . . . . . . . . . . . . . . . . . . . . . . . . . .  464
5.5.5. Фрагментация пакетов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  465
5.6. Сетевой уровень в Интернете . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  469
5.6.1. Протокол IP версии 4   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  471
5.6.2. IP-адреса . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  475
5.6.3. Протокол IP версии 6   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  488
5.6.4. Управляющие протоколы Интернета   . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  498
5.6.5. Коммутация меток и MPLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  504
5.6.6. Протокол внутреннего шлюза OSPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  507
5.6.7. Протокол внешнего шлюза BGP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  512
5.6.8. Многоадресная рассылка в Интернете   . . . . . . . . . . . . . . . . . . . . . . . . . . .  518
5.6.9. Мобильный IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  519
5.7. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  521
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  522
Глава 6. Транспортный уровень   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  527
6.1. Транспортный сервис . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  527
6.1.1. Услуги, предоставляемые верхним уровням   . . . . . . . . . . . . . . . . . . . . . .  527
6.1.2. Базовые операции транспортного сервиса   . . . . . . . . . . . . . . . . . . . . . . .  529
6.1.3. Сокеты Беркли . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  533
6.1.4. Пример программирования сокета: файл-сервер для Интернета   . . . .  535
6.2. Элементы транспортных протоколов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  540
6.2.1. Адресация . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  541
6.2.2. Установка соединения   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  544
6.2.3. Разрыв соединения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  550
6.2.4. Контроль ошибок и управление потоком данных . . . . . . . . . . . . . . . . . . .  554
6.2.5. Мультиплексирование   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  559
6.2.6. Восстановление после сбоев   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  560
6.3. Контроль перегрузки   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  563
6.3.1. Выделение требуемой пропускной способности . . . . . . . . . . . . . . . . . . .  563
6.3.2. Регулирование скорости отправки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  568
6.3.3. Проблемы беспроводного соединения  . . . . . . . . . . . . . . . . . . . . . . . . . . .  572
6.4. Транспортные протоколы Интернета: UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  574
6.4.1. Основы UDP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  575
6.4.2. Вызов удаленной процедуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  577
6.4.3. Транспортные протоколы реального масштаба времени . . . . . . . . . . . .  580
6.5. Транспортные протоколы Интернета: TCP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  586
6.5.1. Основы TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  586
6.5.2. Модель сервиса TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  587
6.5.3. Протокол TCP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  590
6.5.4. Заголовок TCP-сегмента   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  591
6.5.5. Установка TCP-соединения   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  595
6.5.6. Разрыв соединения TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  596
6.5.7. Модель управления TCP-соединением   . . . . . . . . . . . . . . . . . . . . . . . . . . .  597
6.5.8. Скользящее окно TCP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  599
6.5.9. Управление таймерами в TCP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  603
6.5.10. Контроль перегрузки в TCP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  606
6.5.11. Будущее TCP   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  617
6.6. Вопросы производительности   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  618
6.6.1. Причины снижения производительности компьютерных сетей   . . . . . .  618
6.6.2. Измерение производительности сети . . . . . . . . . . . . . . . . . . . . . . . . . . . .  619
6.6.3. Проектирование хостов для быстрых сетей   . . . . . . . . . . . . . . . . . . . . . . .  623
6.6.4. Быстрая обработка сегментов   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  626
6.6.5. Сжатие заголовков   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  629
6.6.6. Протоколы для протяженных сетей с высокой пропускной
способностью . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  631
6.7. Сети, устойчивые к задержкам . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  636
6.7.1. Архитектура DTN   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  637
6.7.2. Протокол Bundle   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  639
6.8. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  642
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  643
Глава 7. Прикладной уровень . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  648
7.1. Служба имен доменов DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  648
7.1.1. Пространство имен DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  649
7.1.2. Записи ресурсов доменов  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  653
7.1.3. Серверы имен   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  656
7.2. Электронная почта   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  660
7.2.1. Архитектура и службы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  661
7.2.2. Пользовательский агент . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  664
7.2.3. Форматы сообщений   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  668
7.2.4. Пересылка сообщений  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  677
7.2.5. Окончательная доставка сообщений   . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  682
7.3. Всемирная паутина (WWW)   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  685
7.3.1. Представление об архитектуре . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  687
7.3.2. Статичные веб-страницы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  702
7.3.3. Динамические веб-страницы и веб-приложения . . . . . . . . . . . . . . . . . . .  712
7.3.4. HTTP — протокол передачи гипертекста . . . . . . . . . . . . . . . . . . . . . . . . . .  724
7.3.5. Мобильный веб   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  734
7.3.6. Веб-поиск . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  736
7.4. Потоковая передача аудио и видео   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  739
7.4.1. Цифровой звук . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  741
7.4.2. Цифровое видео   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  747
7.4.3. Потоковая передача сохраненных медиафайлов . . . . . . . . . . . . . . . . . . .  755
7.4.4. Передача медиа в реальном времени   . . . . . . . . . . . . . . . . . . . . . . . . . . . .  763
7.4.5. Конференции в реальном времени   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  767
7.5. Доставка контента   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  778
7.5.1. Контент и интернет-трафик . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  779
7.5.2. Серверные фермы и веб-прокси   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  782
7.5.3. Сети доставки контента   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  787
7.5.4. Сети одноранговых узлов (пиринговые сети) . . . . . . . . . . . . . . . . . . . . . .  792
7.6. Резюме . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  801
Вопросы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  803
Глава 8. Безопасность в сетях   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  807
8.1. Криптография   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  810
8.1.1. Основы криптографии   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  811
8.1.2. Метод подстановки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  814
8.1.3. Метод перестановки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  815
8.1.4. Одноразовые блокноты   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  817
8.1.5. Два фундаментальных принципа криптографии   . . . . . . . . . . . . . . . . . . .  822
8.2. Алгоритмы с симметричным криптографическим ключом   . . . . . . . . . . . . . . . .  824
8.2.1. Стандарт шифрования данных DES   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  826
8.2.2. Улучшенный стандарт шифрования AES   . . . . . . . . . . . . . . . . . . . . . . . . . .  829
8.2.3. Режимы шифрования   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  833
8.2.4. Другие шифры   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  838
8.2.5. Криптоанализ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  839
8.3. Алгоритмы с открытым ключом   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  840
8.3.1. Алгоритм RSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  841
8.3.2. Другие алгоритмы с открытым ключом   . . . . . . . . . . . . . . . . . . . . . . . . . . .  843
8.4. Цифровые подписи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  844
8.4.1. Подписи с симметричным ключом  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  845
8.4.2. Подписи с открытым ключом . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  846
8.4.3. Профили сообщений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  847
8.4.4. Задача о днях рождения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  852
8.5. Управление открытыми ключами   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  854
8.5.1. Сертификаты   . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  855
8.5.2. X.509   . . . . . . . . . . . . . . . . . . .