Text
                    Компьютерные
сети
Первый шаг
Уэнделл Одом
Москва • Санкт-Петербург • Киев
2006


ББК 32.973.26-018.2.75 0-44 УДК 681.3.07 Издательский дом "Вильяме" Зав. редакцией С.Н. Тригуб Перевод с английского и редакция B.C. Гусева По общим вопросам обращайтесь в Издательский дом "Вильяме" по адресу: info@williamspublishing.com, http.y/www.williamspublishing.com 115419, Москва, а/я 783, 03150, Киев, а/я 152. Одом, Уэнделл. 0-44 Компьютерные сети. Первый шаг. : Пер. с англ. — М. : Издательский дом "Вильяме", 2006. — 432 с.: ил. — Парал. тит. англ. ISBN 5-8459-0881-7 (рус.) В книге приведены основные сведения о компьютерных сетях, их компонентах и технологиях. Рассмотрены все разновидности локальных и глобальных компьютерных сетей, рассказано об особенностях их структур, компонентов и методах применения. Особое внимание уделено вопросам безопасности компьютерных сетей. Книга предназначена для всех, кто хочет легко войти в мир сетей. Это не означает, что в книге не говорится о некоторых важных технических деталях — говорится, и весьма подробно. Однако прежде всего эта книга рассчитана на людей, которые хотят разобраться в основах компьютерных сетей и получить знание терминологии, используемой специалистами по сетям в повседневной работе. От читателей не требуется какой-либо технической подготовки. Руководители компаний, менеджеры и бизнесмены, инженеры и техники, рядовые пользователи, желающие разобраться в том, как устроены компьютерные сети — все получат пользу от прочтения этой книги. ББК 32.973.26-018.2.75 Все названия программных продуктов являются зарегистрированными торговыми марками соответствующих фирм. Никакая часть настоящего издания ни в каких целях не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами, будь то электронные или механические, включая фотокопирование и запись на магнитный носитель, если на это нет письменного разрешения издательства Cisco Press. Authorized translation from the English language edition published by Cisco Press, Copyright © 2005 Cisco Systems, Inc. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher. Russian language edition published by Williams Publishing House according to the Agreement with R&I Enterprises International, Copyright © 2006 Книга подготовлена при участии Региональной сетевой академии Cisco, http://www.academy.ciscopress.ru. ISBN 5-8459-0881-7 (рус.) ISBN 1-58720-101-1 (англ.) © Издательский дом "Вильяме", 2006 © Cisco Systems, Inc., 2005
Оглавление Введение 15 Часть I. Основы организации сетей 2£ Глава 1. Что такое сеть 27 Глава 2. Для чего создаются сети 37 Глава 3. Создание сети: все начинается с плана 53 Часть П. Работа местного департамента (сетевого) транспорта 1Ъ_ Глава 4. Как построить дорогу (сеть) местного значения 75 Глава 5. Правила движения: как использовать местную (сетевую) дорогу 93 Глава 6. Снижение перегрузки и повышение скорости на местной (сетевой) дороге 107 Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 127 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе 143 Глава 8. Доставка товаров по (сетевому) шоссе 145 Глава 9. Выбор вариантов доставки при перевозке товаров по (сетевому) шоссе 167 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом 185 Глава 10. Доставка товаров по нужному (IP) адресу 187 Глава 11. Знать, куда поворачивать на каждом перекрестке (маршрутизатор) 207 Глава 12. Установка дорожных указателей на автомагистрали между штатами (объединенная сеть) 229 Глава 13. Люди предпочитают имена, а компьютеры — числа 243 Часть V. Прокладка автомагистрали между штатами (между локальными сетями) 253 Глава 14. Аренда (сетевого) шоссе между двумя пунктами 255 Глава 15. Аренда (сетевого) шоссе между многими местами 271 Глава 16. Выезд на международную (Internet) трассу 287 Часть VI. Обеспечение безопасности сетей 303 Глава 17. Прием "правильных" людей и ограничения для "неправильных" 305 Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим (сетевым) соседям 319
6 Оглавление Часть VII, Приложения 335 Приложение А. Ответы на контрольные вопросы 337 Приложение Б. Преобразование IP-адресов из десятичной системы в двоичную и обратно 369 Глоссарий 385 Предметный указатель 410
Содержание Введение 15 Об авторе 15 О технических рецензентах 15 Посвящение 16 Благодарности 16 Введение 17 Здесь много всего, но, с другой стороны, совсем немного 18 Для кого предназначена эта книга 21 Нуждаетесь в дополнительной информации? Пробуйте сделать еще один первый шаг 22 Материал, который вы найдете в этой книге 22 Ждем ваших отзывов! 23 Часть I, Основы организации сетей 25^ Глава 1. Что такое сеть 27 Что же такое сеть? 27 Что не годится для слона, но хорошо для сети 28 Трое слепых: специалисты по серверу, по кабельной системе и по сети 29 Различные типы традиционных компьютерных сетей 32 Большая компания, много мест: глобальная корпоративная сеть 32 Только вы и я, и еще целый мир — Internet 33 Резюме 34 Контрольные вопросы 34 Глава 2. Для чего создаются сети 37 Использование сети по случаю 37 Целенаправленное использование сети 41 Просмотр Web-страниц 43 Электронная почта (E-Mail) 44 Загрузка и передача файлов 47 Резюме 49 Контрольные вопросы 50 Глава 3. Создание сети: все начинается с плана 53 Следуя правилам 53 Правила для сети 54 Примеры правил для сетей 55 Книга(и) правил 59 Патентованные сетевые модели препятствуют распространению сетевых устройств 60 Общедоступные сетевые модели содействуют распространению сетевых устройств 62
8 Содержание Как развиваются стандарты TCP/IP 62 Популярные протоколы TCP/IP 63 Стандарты TCP/IP, не являющиеся стандартами TCP/IP 65 Как съесть слона, или стиль TCP/IP 67 Как съесть тираннозавра, или стиль OSI 68 Тираннозавр против слона 69 Резюме 70 Контрольные вопросы 70 Часть II. Работа местного департамента (сетевого) транспорта Т3_ Глава 4. Как построить дорогу (сеть) местного значения 75 Перевозка битов по дороге сети 75 Что такое локальная сеть 75 Передача битов по "дороге" локальной сети 76 Совместное использование дороги местного сообщения: концентраторы Ethernet 85 Грунтовые дороги против департамента транспорта 86 Резюме 88 Контрольные вопросы 89 Глава 5. Правила движения: как использовать местную (сетевую) дорогу 93 Подготовка к поездке: как добиться для вашего автомобиля (данных) разрешения на езду в городе 93 Данные в законной локальной сети: фрейм Ethernet 94 Ездить там, где хочется и когда хочется, — это круто! 95 Почему в Ethernet происходят аварии (коллизии) 95 Как избежать частых аварий 96 Что делать, если происходит коллизия 96 Остановка в месте назначения: что происходит, когда вас приезжают навестить 98 Приехали к нам или к соседям? 98 Кто это, дорогой? 100 Я не понимаю, о чем вы говорите 100 Два стандарта Ethernet 102 Резюме 103 Контрольные вопросы 104 Глава 6. Снижение перегрузки и повышение скорости на местной (сетевой) дороге 107 Уменьшение перегрузки за счет открытия большего количества маршрутов в каждой локальной сети 107 Концентраторы: однополосная дорога 108 Коммутаторы: каким образом можно создать несколько полос движения в локальной сети 109 Совершенное шоссе: аварии не разрешены! 111 Использование полного дуплекса: создание двухполосной трассы 113 Коммутаторы: остальная часть истории 114 Установка дорожных указателей: изучение МАС-адресов 114
Решение о пересылке и решение о фильтрации 116 Что делать, если на дорожном указателе (в таблице адресов) не указан пункт назначения 116 Как можно одновременно быть повсюду 117 Логика работы коммутатора 117 Я чувствую потребность, потребность в скорости 118 Новая, улучшенная и более быстрая сеть Ethernet — давайте назовем ее Fast Ethernet 119 Если стандарт Fast Ethernet хорош, более быстрый еще лучше: Gigabit Ethernet 120 Ультрасуперскоростной Fast Ethernet: 10 Gigabit Ethernet 120 Скорости Ethernet 121 Коммутатор для всех скоростей передачи 121 Резюме 123 Контрольные вопросы 124 Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 127 Физическая реальность предшествует виртуальной 127 Физические локальные сети: и это все о широковещании 127 Создайте собственный (широковещательный) домен 128 Для нескольких физических локальных сетей требуется несколько коммутаторов 129 Виртуальная (LAN) реальность: один коммутатор, но много локальных сетей 131 Как создается виртуальная локальная сеть 132 Почему может понадобиться несколько локальных сетей 134 Упаковка фреймов вашей VLAN, покидающих коммутатор, в транк 136 Как упаковать ваш транк для поездки в другой коммутатор 137 История о двух протоколах транкинга 139 Резюме 139 Контрольные вопросы 140 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе 143 Глава 8. Доставка товаров по (сетевому) шоссе 145 Не помешают ни дождь, ни снег, ни темная ночь: электронная почта 145 Отправка и получение (электронной) корреспонденции 146 Почтовый и электронный адреса 147 Еще больше правил? 149 Протоколы для правильной адресации конвертов: формат сообщений Internet 150 Принцип KISS и SMTP 151 Что делать, когда вы нуждаетесь в небольшом POP для сети 152 Сотрудничество SMTP и РОРЗ 153 Строительство централизованного склада: передача файлов 154 Складские процедуры и жаргон 156 Правила для FTP 158
10 Содержание Прогулка по торговому пассажу Internet: World Wide Web 158 Правила продажи в розницу через Web 160 Покупайте один, получайте связку бесплатно 161 Резюме 162 Контрольные вопросы 163 Глава 9. Выбор вариантов доставки при перевозке товаров по (сетевому) шоссе 167 "Привет, я к вашим услугам" 167 Доставка с предоставлением полного комплекса услуг 169 Основы транспортировки: управление отгрузкой с помощью бирок доставки 169 Покупка страховки для сетевого " груза" 171 Подтверждение доставки 172 Теряйте все, что угодно, — мы все вернем 174 Большой ящик, маленький грузовик — что делать? 174 Почему три маленьких сегмента лучше, чем один большой 176 Небольшая безобидная ложь о подтверждениях 176 Доставка пакета нужному человеку, а не только по правильному адресу 178 Курица, яйцо и порт адресата первого сегмента 179 Стартуйте с правой ноги при использовании соединения TCP 180 Резюме 182 Контрольные вопросы 182 Часть ГУ. Навигация на дорогах в поисках улицы с нужным адресом 185 Глава 10. Доставка товаров по нужному (IP) адресу 187 Основы навигации: езда в нужном направлении 187 Протокол IP как министр почтовой сети 189 Перед тем как ехать, обычно узнают адрес 191 Указание названия в бирке доставки 193 Как обеспечить работу (сетевой) почтовой службы 193 Один адрес, один zip-код, один номер сети 194 Три размера, на все случаи жизни 197 Фактические номера сетей классов А, В и С 200 Подразделение сети на подсети 201 Проблема: утрата IP-адресов хостов 201 Решение: разбиение на подсети сохраняет IP-адреса хостов 202 Резюме 204 Контрольные вопросы 204 Глава 11. Знать, куда поворачивать на каждом перекрестке (маршрутизатор) 207 Короткая поездка от дома (ПК) к ближайшему магазину (серверу) 207 Краткий обзор процесса сквозной маршрутизации 208 Шаг 1: выезд на улицу каждый раз по одной и той же дороге 209 Когда на ланч едут в автомобиле 210 Как пройти к почтовому отделению (маршрутизатору) по умолчанию 213 Шаг 2: выбор, куда повернуть на первом перекрестке 216 Шаг 3: выбор дороги на последнем перекрестке 220
Содержание 11 Другие правила движения 222 Маршрутизация при наличии подсетей 222 Как управлять автомобилем поблизости от дома (в подсети) 223 Резюме 224 Контрольные вопросы 225 Глава 12. Установка дорожных указателей на автомагистрали между штатами (объединенная сеть) 229 Маршрутизация к соседним местам 229 Установка дорожных знаков и других долговременных указателей 232 Динамическое изучение и изменение таблиц маршрутизации 233 Выбор наилучшей дороги (маршрута) 235 Введение в длинный список протоколов маршрутизации 237 Резюме 238 Контрольные вопросы 239 Глава 13. Люди предпочитают имена, а компьютеры — числа 243 Поиск имени и номера в телефонной книге (хост-файле) 243 Попросите кого-то найти для вас номер телефона (IP-адрес) 244 Запрос помощи относительно преобразования имен в IP-адреса внутри компании . 245 Запрос помощи относительно преобразования имен в IP-адреса вне компании 247 Как должны быть отформатированы имена 249 Резюме 250 Контрольные вопросы 250 Часть V. Прокладка автомагистрали между штатами (между локальными сетями) 253 Глава 14. Аренда (сетевого) шоссе между двумя пунктами 255 Арендуйте кабель, если вы не можете его проложить 255 Если вы не можете арендовать кабель с перекрестными соединениями контактов, то арендуйте нечто похожее 256 Различия между кабелем с перекрестными соединениями контактов и выделенной линией 260 План установки кабеля глобальной сети 263 Маршрутизаторы и WAN: соответствие, сделанное на небесах 263 Нельзя отправить только данные; вы должны послать фрейм 264 Адресация в последовательных каналах глобальной сети 266 Выбор одного из двух протоколов канала связи 266 Резюме 267 Контрольные вопросы 267 Глава 15. Аренда (сетевого) шоссе между многими местами 271 Как превратить телефонную компанию в огромный коммутатор 271 Подключение маршрутизатора к большому коммутатору Frame Relay 272
12 Содержание Базовая логика, используемая огромным коммутатором Frame Relay 273 Если две площадки — это хорошо, то три (или более) — еще лучше 274 Это походит на выделенную линию, поэтому давайте назовем это виртуальным каналом 275 Быстрее, дешевле, лучше — ошибочно отправить данные при использовании Frame Relay невозможно 276 Можно использовать последовательные каналы, но это будет стоить дороже 277 Получите бесплатную пропускную способность 278 Маршрутизаторы и глобальные сети: все еще соответствие, сделанное на небесах 280 Нельзя послать только данные — вы должны послать фрейм Frame Relay 281 Адресация Frame Relay интереснее, чем таковая для последовательных каналов 282 Резюме 283 Контрольные вопросы 283 Глава 16. Выезд на международную (Internet) трассу 287 Выехав на автомагистраль между штатами (Internet), можно добраться куда угодно 287 Использование телефонной линии для передачи данных 289 Как сделать данные похожими на речь 290 Что телефоны делают для речи, модемы делают для данных 291 Как быстро вы можете говорить? 293 Вызываю Internet! Вызываю Internet! 294 Теперь я знаю, как говорить, но кому позвонить? 294 Теперь, когда я знаю, кому звонить, что я должен сказать? 295 Использование телефонной линии для передачи данных — путь DSL 296 Д-р Аналог Голос и м-р Скрытый Цифровой 296 Быстрее — значит, лучше 298 Отправка данных без использования телефонной линии 299 Резюме 300 Контрольные вопросы 300 Часть VI. Обеспечение безопасности сетей 303 Глава 17. Прием "правильных" людей и ограничения для "неправильных" 305 Безопасная езда при использовании AAA 305 Проверка лицензий на предмет выявления незаконных водителей (пользователей) 306 Как вы сюда попали? 308 Проверка прав: а может ли он управлять таким транспортным средством? 308 Отслеживание нарушений водителей (пользователей) 309 Проверка того, что все (Internet-) водители имеют должные права 310 Используйте РАР и CHAP 310 Как помешать постороннему использовать ваши права (пароль) 312 Вы носите номер своей кредитной карточки на футболке 314
Резюме 316 Контрольные вопросы 317 Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим (сетевым) соседям 319 Определение основных правил 319 Навязывание основных правил 323 Способы наблюдения за (сетевыми) соседями 324 Принятие решения об остановке трафика 325 Безопасные места вне вашего соседства (сети) 327 Использование полиции для присмотра за плохими парнями 328 Присмотр за волками овечьей шкуре 329 Как уберечь компьютер от простуды 330 Профилирование действий плохих парней 330 Резюме 331 Контрольные вопросы 331 Часть VII. Приложения 335 Приложение А. Ответы на контрольные вопросы 337 Глава 1 337 Глава 2 338 Глава 3 339 Глава 4 340 Глава 5 342 Глава 6 344 Глава 7 346 Глава 8 349 Глава 9 351 Глава 10 352 Глава 11 354 Глава 12 357 Глава 13 359 Глава 14 360 Глава 15 362 Глава 16 363 Глава 17 364 Глава 18 366 Приложение Б. Преобразование IP-адресов из десятичной системы в двоичную и обратно 369 Десятичные и двоичные системы счисления 369 Десятичная система счисления 369 Двоичная система счисления 371 Преобразование двоичных чисел в десятичные и обратно 372 Преобразование двоичного числа в десятичное ^ 372 Преобразование десятичного числа в двоичное 373 Преобразование IP-адресов 377
14 Содержание Преобразование десятичных IP-адресов в двоичные 377 Преобразование двоичных IP-адресов в десятичные 378 Использование переводной таблицы 379 Резюме 384 Глоссарий 385 Предметный указатель 410
Введение Об авторе Уэнделл Одом (Wendell Odom), сертифицированный специалист по межсетевому оборудованию Cisco (CCIE № 1624), является старшим преподавателем компании Skyline Advanced Technology Services (www.skylinecomputer.com), где читает множество разных курсов, вводных и более сложных, по организации сетей компании Cisco Systems. Он работает в области компьютерных сетей уже более 20 лет, занимаясь и предпродажной подготовкой, и послепродажным обслуживанием, а также преподает основы сетей новичкам и тем, кто готовится к сдаче экзамена CCIE. Уэнделл — автор пользующихся спросом методических руководств по подготовке к экзаменам, изданных Cisco Press; некоторые из них предназначены для тех, кто готовится к сертификации начального уровня (CCNA). Его новые работы таковы: CCNA INTRO Exam Certification Guide, CCNA ICND Exam Certification Guide и Cisco DQOS Exam Certification Guide. О технических рецензентах Блэр Бачанан (Blair Buchanan) работает в сфере телекоммуникаций почти 30 лет. Он писал программное обеспечение для коммуникационных систем, разрабатывал стандарты в Международной организации по стандартизации (ISO) и консультировал специалистов. Сотрудничество Блэра с компанией Cisco началось в 1991 году, когда он проектировал свою первую объединенную сеть на основе маршрутизатора для канадского Министерства обороны. Вскоре после этого, при содействии подразделения Cisco Canada, он стал первым в мире партнером- преподавателем компании Cisco (Learning Partner-based Cisco instructor). Эта компания, Protocoles Standards de Communications (PSC), позже слилась с американской фирмой Protocol Interface (PI), чтобы сформировать GeoTrain, которая была приобретена Global Knowledge в 1999 году. В апреле 1996 года Блэр с первой попытки получил сертификат CCIE и стал 403-м CCIE (№ 1427). С тех пор он проектировал и проверял объединенные сети для разнообразных клиентов — как предприятий, так и поставщиков сетевых услуг. Среди его клиентов такие организации, как Nortel Networks, Government of Canada, Bell Canada, Government of British Columbia, Bank of Canada, PSINet и Mouvement Desjardins. Доктор Рон Ковак (Dr. Ron Kovac) в настоящее время читает лекции в Центре информатики и связи (Center for Information and Communication Sciences) при университете штата Индиана в г. Манси, профессор. Центр готовит аспирантов в области передачи данных. До этого доктор Ковак был менеджером телекоммуникаций университета штата Нью-Йорк и руководителем большого вычислительного центра на восточном побережье. Предыдущие исследования доктора Ковака касались электротехники и образования. Доктор Ковак имеет многочисленные публикации, он
16 Введение оказывал консультационные услуги и в области образования, и в области передачи данных. Он — участник многих международных совещаний и форумов, посвященных проблемам, связанным с передачей данных, и является обладателем многочисленных сертификатов, включая CCNA, CCAI и CCNP. Пол Негрон (Paul Negron) — старший преподаватель компании Skyline Advanced Technology Services, где читает авторизованные компанией Cisco курсы многочисленным слушателям. Пол преподает курс "Применение системы QoS компании Cisco" и курсы для квалифицированных специалистов по темам BGP, MPLS, высокоэффективная маршрутизация, а также другие курсы для желающих получить сертификат сетевого специалиста по продуктам Cisco Systems (CCNP). Скотт Ван де Утан (Scott Van de Houten), CCIE № 1640, является главным системным инженером подразделения Technical Operations Group компании Cisco Systems. В настоящее время он — технический руководитель программы Enterprise Routing and Switching Technology Leadership Program. В его обязанности входит согласование требований клиента с командой-разработчиком продукта и консультирование клиентов. Скотт работает в компании Cisco в течение 11 лет, а сетевым инженером работал 17 лет. Посвящение Фей и Рэймонду, моим любимым родителям Благодарности Процесс создания технической книги требует огромных усилий множества людей. Я всегда поражаюсь тому, насколько в процессе редактирования улучшается то, что я поначалу считаю текстом книги. Хотел бы воспользоваться возможностью, чтобы благодарить некоторых людей, которые много и упорно работали вместе со мною. Мне повезло: этой книгой занималась большая группа редакторов. Несколько технических специалистов получили возможность прочитать текст, посмотреть рисунки и дать комментарии. Их главной задачей было убедиться в том, что книга технически точна, а темы изложены последовательно и понятны читателю. Все они хорошо выполнили основное задание. В частности, мой приятель Пол Негрон, также из компании Skyline Advanced Technology Services, отредактировал книгу и дал особенно ценные советы относительно последовательности изложения тем. Скотт Ван де Утан, пожалуй, был лучшим техническим редактором, особенно по части обнаружения моих технических ошибок, и предложил много хороших аналогий, которые я добавил к тексту. Блэр Бачанан сохранил текст пригодным для читателей, живущих вне Соединенных Штатов. А доктор Рон Ковак был превосходен в отслеживании манеры изложения, ни на минуту не забывая о будущем читателе книги, и оказал серьезную помощь в организации представленного в ней материала. Эта книга резко отличается от предыдущих, потому что предназначена для людей, которые не имеют никакого опыта работы с сетями. Дайана Айсли (Dayna Isley), редактор-консультант по аудитории, не только превосходно выполнила свое задание, осуществив руководство процессом написания книги, но также провела большую работу по определению нужной глубины изложения затронутых ней в тем. Дайана сделала множество полезных предложений, касающихся подхода и манеры изложения материала книги.
Введение 17 Бретт Бартоу работал вместе со мной над этой книгой, начиная с разработки ее концепции, включая формулировку целей серии "Первый шаг", равно как и целей этой книги. Как всегда, Бретт выполнил большую работу, сопровождая книгу на протяжении полного цикла ее создания и сделав все для того, чтобы книга получилась хорошей. Как правило, я непосредственно связан с редактором-консультантом по аудитории, ответственным редактором и техническими редакторами. Однако многие работали "за кулисами" — по крайней мере по отношению ко мне — чтобы сделать книгу лучше. Ка- рен Джилл (Karen Gill) выполнила техническое редактирование. Она отточила некоторые формулировки и помогла мне посмотреть на книгу свежим взглядом. Производственная бригада Патрика Канауса (Patrick Kanouse) разбиралась в деталях того, как книга будет выглядеть на бумаге, управляя процессом подготовки макета книги и подготовки ее к печати. В частности, Сан Ди Филипс (San Dee Phillips) обеспечил редактирование проекта, управляя продвижением книги от завершения плана до подготовки к печати. Большое спасибо всем, кто способствовал выходу этой книги. Хотел бы также сказать о вкладе моей прекрасной жены в создание этой книги. Она всегда была для меня стабилизирующим фактором, как только я начинал работу над новой книгой. Еще раз спасибо, Долли! Кроме того, моя признательность не была бы полной, если бы я не поблагодарил Иисуса Христа, — спасителя и друга. Введение Часто изучение чего-то нового может быть трудной работой, особенно когда это касается компьютерных технологий. Прежде чем открыть эту книгу, вы, очевидно, просмотрели много других книг. Найти книгу по сетям нетрудно — их написано множество, — но почти все они предназначены для тех, кто давно занимается ими, поэтому книги часто перегружены техническими подробностями. Здесь уместно вспомнить старую шутку, когда один парень проходит через дверь с высоким порогом, а его приятель кричит: "Будь осторожен, делая первый шаг. Он — сногосшибательный!" Эта книга поможет вам сделать первый шаг к знакомству с сетями, вы не споткнетесь о высокий порог компьютерных премудростей. Вам не придется испытывать огорчения, обычно сопровождающие изучение чего-то совершенно нового. Эта книга задумана и написана для тех, кто начинает изучение, вообще не имея никаких знаний по затрагиваемым здесь темам, но серьезно интересуется ими. Эта книга предназначена для тех, кому нужно разобраться в работе сетей, и для ее чтения не требуется почти никакой предварительной подготовки. Вы многое узнаете о сетях, но не все, а ровно столько, сколько необходимо для выполнения вашей работы. Например, если вы работаете в отделе продаж, то должны уметь общаться с энтузиастами компьютерных сетей. Или, возможно, вы занимаетесь информационными технологиями (ИТ), но вам иногда приходится решать вопросы с людьми, занимающимися сетями, и вы должны понимать, чего они хотят от вас, и объяснить, чего от них хотите вы. Или, допустим, вы хотите научиться серьезно работать с сетями, но не знаете, с чего начать. Проще говоря, если вы начинаете работать с сетями, эта книга — для вас. Если у вас уже есть опыт использования компьютеров, этого вполне достаточно для понимания всего того, о чем рассказано в этой книге. По окончании чтения этой книги вы будете обладать достаточными знаниями для того, чтобы говорить с персоналом о том, как работают сети. Вы не станете экспертом, разбирающимся во всех нюансах работы сетей, но зато поймете основные
18 Введение концепции, на которых базируются многочисленные и разнообразные технологии, используемые сегодня в типичных сетях. Если ваша цель состоит в том, чтобы иметь начальный уровень знаний, эта книга — для вас. Если ваша цель в том, чтобы стать специалистом по сетям, но у вас нет знаний или опыта работы в этой сфере, книга поможет вам начать этот путь. Заинтересовались? На следующих страницах более подробно рассказано о том, какие именно вопросы рассмотрены в этой книге. Затем вы можете приступить к чтению первой главы и начать планомерное изучение компьютерных сетей! Здесь много всего, но, с другой стороны, совсем немного В этой книге рассмотрено много тем, соответственно в ней много глав, но объем каждой из них составляет в среднем 20 страниц. И, учитывая диалоговый стиль изложения, вам понадобится не более 15 минут, чтобы прочитать очередную главу. Если вы используете эту книгу как стартовую и хотите освоить работу с сетями на более глубоком уровне, то можете потратить еще несколько минут, чтобы ответить на контрольные вопросы и ознакомиться с определениями основных терминов. Короче говоря, вы найдете здесь много тем, но материал может быть быстро и легко усвоен. Заголовки частей и глав, а также названия разделов не содержат технических терминов. Нет смысла использовать в заголовках термины, с которыми вы не знакомы. Но вы, возможно, уже знакомы с некоторыми терминами, относящимися к сетям, поэтому, если хотите иметь представление относительно того, какие основные темы рассмотрены в каждой части этой книги и каждой ее главе, ознакомьтесь, пожалуйста, со следующими комментариями. Часть I. Основы сетей В первой части рассмотрены основы работы сетей, с примерами, относящимися к программным средствам, с которыми многие пользователи компьютеров имеют дело каждый день. ■ Глава 1, "Что такое сеть", содержит определения основных терминов, включая варианты того, что подразумевают различные специалисты, когда говорят "сеть". ■ Глава 2, "Для чего создаются сети", описывает сети и их работу с точки зрения пользователя. ■ Глава 3, "Создание сети: все начинается с плана", содержит объяснения концепций, на которых основана модель сети, используемая производителями при разработке новых сетевых продуктов и инженерами, развертывающими сети. Часть II. Работа местного департамента (сетевого) транспорта После обсуждения вопросов построения сетей в широком плане, проведенного в части I, во второй части более подробно рассмотрены основы работы небольших сетей, названных локальными (LAN), при этом использована аналогия с тем, как Министерство транспорта США (DOT) строит дороги. ■ Глава 4, "Как построить дорогу (сеть) местного значения", используя аналогию с тем, как Министерство транспорта США строит дороги, показывает, как можно физически создать локальную сеть, используя кабельную систему, ПК и другое сетевое оборудование.
Введение 19 ■ Глава 5, "Правила движения: как использовать местную (сетевую) дорогу". Так же как вы должны выполнять правила дорожного движения, данные должны подчиняться законам трафика локальной сети. Эта глава поможет вам сдать экзамен по вождению для локальной сети. ■ Глава 6, "Снижение перегрузки и повышение скорости на местной (сетевой) дороге". Быстрым автомобилем управлять приятнее. В этой главе рассказывается о том, как повысить скорость передачи данных в локальных сетях. ■ Глава 7, "Прокладка местных (сетевых) дорог без дополнительных затрат". "Бесплатно" во многих случаях означает "лучше". Виртуальные локальные сети (VLANs) позволяют создавать много локальных сетей без приобретения дополнительных аппаратных средств. Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе В этой части акцент делается на том, с чем имеет дело конечный пользователь сети — на приложениях. Используется аналогия с торговлей — перевозкой товаров по шоссе. ■ Глава 8, "Доставка товаров по (сетевому) шоссе". Эта глава посвящена рассмотрению приложений, с которыми имеет дело конечный пользователь сети. Вы, вероятно, тоже работали с ними — например, если использовали Web- браузер, чтобы просмотреть содержимое Web-сайта. ■ Главе 9, "Выбор вариантов доставки при перевозке товаров по (сетевому) шоссе". Для обеспечения работы приложений необходимо, чтобы их потребности удовлетворяли другие компоненты сети. Точно так же большинство компаний пользуется услугами транспортных фирм для доставки товаров. В этой главе рассмотрены основные службы такого типа. Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Водитель грузовика должен найти улицу с нужным ему адресом. В части IV рассматривается эквивалентная ситуация, возникающая при работе с сетями. Здесь рассказывается о том, как данные доставляют через сети, включая Internet. ■ Глава 10. "Доставка товаров по нужному (IP-) адресу. Протокол Internet (IP) определяет логический адрес — эквивалент почтового адреса. В этой главе рассказывается о том, как сетевые устройства совместно доставляют данные от одного компьютера к другому, используя IP-адрес. ■ Глава 11. "Куда поворачивать на каждом перекрестке (маршрутизатор)". Одно из наиболее важных сетевых устройств называется "маршрутизатор". В данной главе показано, как работают маршрутизаторы. Используется аналогия с водителем, принимающим решение о том, куда он должен повернуть на перекрестке. ■ Глава 12, "Установка дорожных указателей на автомагистрали между штатами (объединенная сеть)". Отправляясь в путешествие, вы могли бы руководствоваться дорожными указателями, которые подскажут вам, где нужно повернуть. Маршрутизаторы, описанные в этой главе, представляют собой сетевой эквивалент дорожных указателей.
20 Введение ■ Главе 13, "Людям привычны имена, но компьютерам нравятся числа". Давайте признаем это: компьютеры сильнее в математике, чем мы. Эта глава объясняет, как сети позволяют использовать имена (типа www.ciscopress.com) и как компьютер преобразует эти имена в числа, которые более удобны для него. Часть V. Прокладка автомагистрали между штатами (между локальными сетями) Когда компьютеры сети находятся далеко друг от друга, физические соединения между ними называют глобальными сетями (WAN). В этой части рассматриваются три основные разновидности глобальных сетей, все они требуют, чтобы вы арендовали какую-то физическую сеть из-за невозможности каждый раз прокладывать кабели в сотни километров длиной. ■ Глава 14. "Аренда (сетевого) шоссе между двумя пунктами". Эта глава показывает, как два маршрутизатора, расположенные на двух различных физических площадках, могут отправлять друг другу данные, используя эквивалент непрерывной телефонной связи между этими двумя маршрутизаторами. ■ Глава 15. "Аренда (сетевого) шоссе между многими пунктами". Если вы имеете более двух маршрутизаторов на различных площадках, экономически выгоднее использовать глобальную сеть другого типа, описанную в этой главе и получившую название Frame Relay. ■ Глава 16. "Выезд из дому на международную (Internet) трассу". Больше, чем о других сетях, каждый из нас знает об Internet. Но что в действительности происходит, когда вы подключаетесь к Internet из дома? В этой главе рассмотрены основные моменты. Часть VI. Обеспечение безопасности сетей Эта часть рассказывает, как защитить вашу сеть от любопытных и от злонамеренных людей из Internet. ■ Глава 17. "Прием "правильных" людей и ограничения для "неправильных". Вы не можете позволить пользоваться вашей сетью кому угодно. В данной главе рассмотрены основные методы ограничения доступа к сети посторонним людям. ■ Глава 18: Тщательное наблюдение за теми, кто приезжает к вашим (сетевым) соседям. В этой главе рассказано о том, как установить основные правила для тех, кому будет позволено входить в вашу сеть из Internet, и как установить наблюдение за взломщиками, которые могли бы причинить вред вашей сети. Часть VII. Приложения ■ Приложение А, "Ответы на контрольные вопросы". Каждая глава заканчивается разделом "Контрольные вопросы". В данном приложении повторяются вопросы и приводятся ответы на них. ■ Приложение В, "Преобразование IP-адресов из десятичной системы в двоичную и обратно". Для чтения главы 10 не требовалось, чтобы вы умели работать с IP-адресами, представленными в двоичной форме. Однако для любого из вас, кто после чтения этой книги захочет изучить работу с сетями более глубоко, это приложение поможет разобраться с основами математики, касающейся IP-адресации.
Введение 21 Глоссарий Профессор колледжа, который преподавал мне работу с сетями, доктор Фил Энс- лоу (Phil Enslow), имел обыкновение говорить, что 80 процентов усилий при работе с сетями приходится тратить на изучение малопонятного жаргона, чтобы затем понимать, как другие люди используют тот же самый малопонятный жаргон. Глоссарий будет ценным инструментом, поскольку поможет обогатить ваш лексикон, чтобы вы могли участвовать в разговорах о сетях. Для кого предназначена эта книга Эта книга предназначается для всех, кто хочет легко войти в мир сетей. Это не означает, что в книге не говорится о некоторых важных технических деталях — говорится, и весьма подробно. Прежде всего эта книга рассчитана на людей, которые хотят разобраться в основах компьютерных сетей и получить знание терминологии, используемой специалистами по сетям в повседневной работе. Можно назвать несколько категорий людей, которым особенно полезна будет эта книга. ■ Люди, которые начинают поиск книги, чтобы стать сетевыми техниками. Любой, кто хочет работать в области компьютерных сетей, должен начать учиться, и эта книга — превосходная отправная точка. Находитесь ли вы в учебном заведении и используете эту книгу как часть курса или учитесь самостоятельно, — в любом случае она поможет вам начать работу с сетями. ■ Профессионалы в области ИТ, которые надеются больше узнать о сетях. Если вы уже работаете в сфере ИТ, но недостаточно много знаете о компьютерных сетях, эта книга поможет вам. Вы, вероятно, уже слышали множество словечек из малопонятного жаргона, используемого людьми, занимающимися сетями, и теперь хотите знать, что за ними скрывается . Эта книга — для вас! В ней объяснено значение сотен терминов, употребляемых специалистами, развертывающими сети. ■ Люди, которые должны общаться с теми, кто создает сети, но не имеющие потребности знать, как непосредственно развертываются сети. Многие выполняют работу, которая требует наличия общих знаний о том, как работают сети, но не требует непосредственного участия в построении сетей. Например, в фирмах, которые продают сетевые аппаратные средства и программное обеспечение, работают продавцы, бухгалтеры, консультанты, представители службы работы с покупателям, администраторы, которые могут извлечь выгоду из знания о том, как работают сети. Кроме того, некоторые компании продают не аппаратные средства и программное обеспечение, а услуги, которые предоставляются с активным использованием сетей. Страховые компании, банки, транспортные компании и многие другие используют сети при выполнении своих основных функций. Если вы хотите понимать, о чем говорят сетевые инженеры, эта книга поможет вам! ■ Люди, которые хотят сдать экзамены для получения сертификата, позволяющего работать с сетями, но нуждающиеся в предварительной подготовке. Если вам нужны дополнительные пункты для резюме, чтобы в дальнейшем получить работу, связанную с сетями, то необходимо получить соответствующие серти-
22 Введение фикаты. Многие нуждаются в предварительной подготовке перед погружением в книги и курсы, которые необходимо освоить для получения сертификата начального уровня, и эта книга поможет им. Нуждаетесь в дополнительной информации? Пробуйте сделать еще один первый шаг Некоторые из вас думают примерно так: "Я уже знаю кое-что о работе с сетями, и, возможно, эта книга заполнит некоторые пробелы в моих знаниях. Мне нравится подход, использованный в этой книге, но то, о чем я действительно хочу побольше узнать, — это безопасность сетей, а здесь только две главы, посвященные этой теме. Мне же нужно сделать первый шаг именно в области безопасности сетей!" Что ж, если вы действительно так думаете, то вам нужно приобрести книгу Network Security First-Step, выпущенную издательством Cisco Press в серии First-Step весной 2004 года. Вы можете посетить сайт http://ciscopress.com/firststep для получения дополнительной информации о новых изданиях1. Цель книг серии "Первый шаг" состоит в том, чтобы помочь читателю быстро освоить любую сетевую технологию, описанную в соответствующей книге. Каждая книга серии "Первый шаг" рассчитана на новичков в сфере описанных технологий. Например, в книге Network Security First-Step приведены основные сведения о протоколе TCP/IP, но основная ее тема — безопасность сетей. Материал, который вы найдете в этой книге Эта книга имеет несколько особенностей, цель которых — помочь вам переварить ее материал и не получить при этом изжогу. Благодаря твердым знаниям, полученным с помощью данной книги, вы сможете быстрее изучить новые технологии, обсуждать проблемы, касающиеся сетей, с другими специалистами или лучше подготовиться к началу карьеры в области компьютерных сетей. ■ Цели главы. Каждая глава начинается со списка целей, к которым вы должны стремиться при чтении главы. Цели повторно освещены в резюме главы. ■ Выделенные особым шрифтом ключевые слова и глоссарий. Повсюду в этой книге вы будете видеть термины, выделенные полужирным курсивным шрифтом. Эти термины особенно важны при работе с сетями. Поэтому, если вдруг выяснится, что вы не знакомы с термином или хотите вспомнить, что он означает, просто поищите его в глоссарии, расположенном в конце книги, и прочитайте полное определение. ■ Резюме. Каждая глава заканчивается резюме, в котором делается обзор целей главы, подтверждается их достижение и обсуждается связь материала данной главы с последующими главами. 1 И сайт http://www.williamspublishing.com для получения информации о новых переводах книг. — Прим. ред.
Введение 23 ■ Контрольные вопросы. Каждая глава заканчивается контрольными вопросами. Эти вопросы позволят проверить, насколько хорошо вы усвоили основные идеи и понятия, изложенные в каждой главе. Вы можете найти ответы на вопросы в приложении А. ■ Нетехнические заголовки. Заголовки, используемые в этой книге, не содержат технических терминов (когда это возможно), вместо них используются слова, которые могут что-то сообщить об основных темах данной главы. В рисунках этой книги используются следующие обозначения сетевых устройств: ПК Коммутатор Web- Файловый сервер сервер Маршрутизатор Принтер Концентратор Телефон Ждем ваших отзывов! Вы, читатель этой книги, и есть главный ее критик и комментатор. Мы ценим ваше мнение и хотим знать, что было сделано нами правильно, что можно было сделать лучше и что еще вы хотели бы увидеть изданным нами. Нам интересно услышать и любые другие замечания, которые вам хотелось бы высказать в наш адрес. Мы ждем ваших комментариев и надеемся на них. Вы можете прислать нам бумажное или электронное письмо либо просто посетить наш Web-сервер и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится вам эта книга или нет, а также выскажите свое мнение о том, как сделать наши книги более интересными для вас. Посылая письмо или сообщение, не забудьте указать название книги и ее авторов, а также ваш обратный адрес. Мы внимательно ознакомимся с вашим мнением и обязательно учтем его при отборе и подготовке к изданию последующих книг. Наши координаты: E-mail: inf o@williamspublishing. com WWW: http: //www.williamspublishing.com Адреса для писем: из России: 115419, Москва, а/я 783 из Украины: 03150, Киев, а/я 152
.$•'■ %-:. 4* к ; "ч V/-
ЧАСТЬ I Основы организации сетей В части I рассматриваются основные концепции организации сетей. В главе 1 описываются основные термины, относящиеся к сетям, в главе 2 рассказывается о типичных вариантах применения сетей, а в главе 3 рассматриваются "строительные блоки", из которых создаются сети, соответственно тому как они определены в моделях, описывающих сети. Глава 1. Что такое сеть Глава 2. Для чего создаются сети Глава 3. Создание сети: все начинается с плана
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S дать общее определение сети S объяснить, какие функции в сети выполняют серверы, кабельная система и сетевые устройства s изложить общую концепцию корпоративной сети s изложить общую концепцию Internet
Глава 1 Что такое сеть Существует старая история о том, как три слепых человека пришли в зоопарк, желая узнать, что собой представляет животное, называемое слон. Они вошли в вольер, и каждый коснулся одной из частей тела слона. Один коснулся хобота и решил, что слон похож на змею. Другой пощупал ногу и подумал, что слон напоминает дерево. Третий потрогал хвост и пришел к выводу, что слон сродни канату. (Существует множество вариантов этой истории, их можно найти в Internet.) Подобно слону и трем слепым многие имеют собственное, необъективное мнение по поводу того, что представляет собой сеть. Вы и другие читатели этой книги открыли ее, имея собственное представление об организации сетей. Основываясь на своем опыте, вы можете представлять себе сеть одним образом, в то время как другие могут оценивать ее совсем иначе. Эта глава поможет вам разобраться в вопросах организации компьютерных сетей и встать на более согласованную с другими позицию. Здесь будут рассмотрены разные точки зрения относительно того, что является компьютерной сетью, а что не соответствует этому термину. Что же такое сеть? Мы начнем с точного, намеренно широкого определения термина сеть, а затем приведем несколько примеров. — Сеть (Network)— комбинация аппаратных средств, программного обеспечения и кабельной системы, которые объединяют несколько компьютерных устройств таким образом, чтобы они могли связываться друг с другом. Короче говоря, сеть наделяет компьютеры возможностью связываться между собой. Однако это определение может быть применено по отношению ко многим сетям различных типов. Понять это вам помогут примеры. На рис. 1.1 представлена основная конфигурация типичной небольшой сети, используемой компанией, компактно расположенной в одном месте. ^ Я использую файлы ^> на этом файловом сервере и печатаю файлы на этом "ъ сетевом принтере ^ Пользователь 1 JLJfc ^"—*шяАм Пользователь 2 С Сеть Л Сервер IHs^^^v шВИет^ Рис. 7.1. Простая сеть для одной площадки
28 Часть I. Основы организации сетей Вспомним определение: сеть состоит из аппаратных средств, кабельной системы и программного обеспечения. На рис. 1.1 не показаны аппаратные средства, не показаны и кабели; эти части сети представлены в виде облака. Облако (cloud) на схеме сети обозначает компоненты сети — аппаратные средства, программное обеспечение и кабельную систему, но детали остаются скрытыми, поскольку они не важны для обсуждаемой в данный момент темы. На рис. 1.1 показаны важные компоненты сети, в частности сервер и пользовательские компьютеры клиентской стороны; обычно это персональные компьютеры, ПК (personal computers, PCs). Сервер предоставляет для пользователей сети в той или иной форме какой-то сервис (службу). В данном случае два пользователя хранят на сервере свои файлы и печатают документы на принтере, включенном в сеть. Многие из вас, возможно, делают аналогичные вещи ежедневно в офисе или школе. Эта простая сеть соответствует данному нами определению сети. Несмотря на то что мы не показали на рисунке некоторые ее детали, такая сеть позволяет компьютерам связываться между собой. Но, аналогично тому как это произошло в истории стремя слепыми и слоном, у вас (и это определяется в основном работой, которой вы занимаетесь) может быть совершенно иное представление о том, на что похожа сеть в реальной жизни. Что не годится для слона, но хорошо для сети Теперь пришло время поближе ознакомиться с тем, что скрывается за облаком (рис. 1.2). Отсек/Офис Отсек/Офис Условные обозначения: Щ Блок настенных розеток liHI^ Коммутатор Рис. 1.2. Более пристальный взгляд на простую сеть Как показано на рис. 1.2, на пользовательских ПК установлено сетевое программное обеспечение. Кабели соединяют эти ПК с розетками, закрепленными на
Глава 1. Что такое сеть 29 стенах. К контактам этих розеток с другой (скрытой) стороны присоединены кабели. Кабели прокладываются под покрытием пола, в потолке и в других скрытых местах, их противоположные концы скрываются в распределительном шкафу {wiring closet). Распределительный шкаф обычно устанавливается в небольшом помещении, где сходятся кабели от всех компьютеров. Внутри распределительного шкафа все кабели подключаются к коммутатору {switch). Задача аппаратного и программного обеспечения коммутатора — перенаправлять сетевой трафик между различными устройствами сети. Трое слепых: специалисты по серверу, по кабельной системе и по сети В зависимости от того, где вы работаете, вы можете наблюдать разное количество людей, обеспечивающих работу сети. В некоторых компаниях за все компоненты сети отвечает только один человек. В других — ответственность разделена среди многих служащих. Иногда вам просто необходимы различные навыки для выполнения разных задач. В других случаях для выполнения одной работы могут по организационным причинам потребоваться усилия нескольких подразделений. Кабели прокладывает обычно целая команда техников. Поскольку различными аспектами сети часто занимаются разные люди, у них формируются разные представления о том, чем на самом деле является сеть, и что ею не является. Поэтому, подобно слепым из истории про слона, служащие разных профессий могут игнорировать или недооценивать важность некоторых составляющих сети. Хотя большинство работников нельзя назвать столь ограниченными людьми, которых мы только что описали, все равно, всем нам свойственно формировать свою точку зрения на основании собственного опыта, и это особенно справедливо для тех, кто работает с компьютерными сетями. Представим, например, человека, отвечающего за сервер. Он должен иметь навыки работы с аппаратными средствами компьютеров, но, что еще важнее, он должен уметь обращаться с программным обеспечением. Значительная часть его работы — и наиболее интересная часть — связана с установкой программного обеспечения, его тестированием, управлением им и улаживанием конфликтов. Однако специалист, обслуживающий сервер, может не иметь отчетливого представления о том, что происходит на другом конце кабеля. Он может воспринимать мир так, как показано на рис. 1.3. И хотя размеры сервера на рис. 1.3 кажутся до смешного маленькими, он, конечно, находится в центре внимания специалиста по серверам. Он также беспокоится о клиентских ПК. Но вся остальная часть сети ему кажется просто сетевой службой. Термин "сетевая служба" позволяет специалисту в какой-то определенной области относиться к остальным частям сети как к вспомогательным службам, подобно тому, как мы относимся к телефону, электросети, водопроводу и т.д. Мы ожидаем, что эти службы будут работать (так обычно и бывает), но обычно не задумываемся о них, пока они вдруг не выходят из строя. Сетевую службу (в восприятии специалиста по серверам) создают специалист по кабелям и специалист по сетям. Специалист по кабелям, обычно называемый электриком, тоже может иметь узкий взгляд на мир. Его обязанности заключаются в прокладке кабелей от каждого помещения до распределительного шкафа. Эта работа
30 Часть I. Основы организации сетей требует сноровки, знания стандартов, регламентирующих прокладку электрических кабелей в зданиях, и умения не разводить грязь при прокладке кабелей под полом, под потолком или во время протягивания их через отверстия в стенах. С точки зрения электрика, сеть — это кабельная система. Сервер Клиенты Рис. 1.3. Представление специалиста по серверам о "слоне" сети Специалист по кабелям обеспечивает прокладку кабеля от распределительного шкафа до каждого рабочего места, где необходимо подключить к сети компьютер. На рис. 1.4 представлена сеть, какой ее видит специалист по кабелям. Стена отсека/офиса Распределительный шкаф Сетевой кабель, ■fL прокладывается ГИД спецом по кабельным Сетевой кабель, прокладывается спецом по кабельным системам или сетевым инженером Пол Рис. 1.4. Представление специалиста по кабельным системам о "слоне" сети Электрик (специалист по кабелям) обычно занимается прокладкой кабелей от каждого настенного блока розеток до распределительного шкафа; кабели обычно прячутся под напольным покрытием или под плитами навесного потолка. Настенная розетка (wall plate) просто обеспечивает возможность физического соединения с сетью короткого сетевого кабеля компьютера. Распределительная панель (wiring panel) дает возможность электрику физически соединить концы кабелей так, чтобы сетевой инженер (или специалист по кабелям) мог легко подключить концы кабелей к коммутатору. Специалист по кабельным системам занимается установкой, тестированием и устранением повреждений кабелей, соединяющих каждую настенную розетку с распределительным шкафом.
Глава 1. Что такое сеть 31 Наконец, специалист по сетям — чаще его называют сетевым инженером — отвечает за коммутатор, а также за все остальные программные и аппаратные средства, используемое для создания сетевой службы. Сетевой инженер устанавливает, поддерживает и устраняет неисправности в аппаратном и программном обеспечении коммутатора. Чтобы справиться с этой работой, он должен знать, куда ведет каждый кабель и к какому порту коммутатора подключен. Однако сетевой инженер не всегда знает, где именно проложен кабель, ведущий к конкретной настенной розетке. В его представлении сеть выглядит так, как показано на рис. 1.5. Сервер Рис. 1.5. Представления сетевого инженера о "слоне" сети С точки зрения сетевого инженера, это просто кабели, соединяющие коммутатор с каждым устройством, иными словами, ему нет дела до всех тех трудностей, с которыми столкнулся электрик при прокладке кабелей. Однако он знает, кабель какого компьютера к какому из многочисленных портов коммутатора подключен. (Коммутатор обычно имеет много гнезд, в которые можно вставить один из сетевых кабелей; они называются порты коммутатора {switchports).) Спецу по сетям желательно знать, где стоит сервер, что бы он мог убедиться в том, что сервер действительно получает и отправляет трафик через сеть. Специалист по сетям может даже поинтересоваться тем, какие услуги предоставляет сервер. Но спецу по сетям обычно не нужно разбираться в серверах так же хорошо, как спецу по серверам. ^£ВЬ Сеть, показанная на последних рисунках, называется локальной {local area шШ^шЛ network, LAN). Локальная сеть характеризуется тем, что подключенные к •Щррг ней компьютеры находятся недалеко один от другого. Во второй части книги рассказано более подробно о том, как работают локальные сети. Интересная вещь: все "сетевые" служащие одинаково правы. Без кабельной системы сеть работать не может. Без других сетевых устройств большинство сетей также работать не сможет. Если вы все устройства и кабели установили и проложили правильно, значит, вы создали сетевую службу, но при отсутствии работающих серверов конечные пользователи вряд ли извлекут какую-то пользу из факта существования такой сети. Поэтому, хотя служащие трех перечисленных нами категорий могут иметь различные точки зрения относительно того, чем является сеть, все они должны хорошо выполнять свою работу, чтобы сеть принесла пользу.
32 Часть I. Основы организации сетей Различные типы традиционных компьютерных сетей До сих пор мы рассматривали только простую сеть, включающую несколько компьютеров. Но сети могут иметь различные конфигурации и размеры. Поэтому неплохо рассмотреть парочку примеров других сетей, прежде чем переходить к материалу следующих глав. Большая компания, много мест: глобальная корпоративная сеть Предположим, вы работаете в компании, имеющей несколько рабочих площадок в разных штатах. Вам как пользователю сети нужно, чтобы она обеспечивала соединения между всеми площадками. Например, вы должны иметь возможность получить информацию о своей зарплате, заполнить формы, чтобы изменить что-нибудь в своем индивидуальном пенсионном плане1, и т.д. Вы знаете, что отдел кадров находится в головном офисе компании, а вы — в небольшом филиале. Поэтому вы резонно можете предположить, что вашей компании необходима сеть — в данном случае глобальная (wide-area network, WAN). Типичный пример такой сети представлен на рис. 1.6. Рис. 1.6. Пример большой сети: глобальная сеть предприятия На рис. 1.6 можно видеть три периферийных филиала, в каждом из которых имеется по паре компьютеров и принтеру. На площадке, где размещается головной офис, пользователей (а значит, и компьютеров) больше, а серверов несколько. 1 Plan investments — схема инвестирования средств из заработной платы работника, переводимых на его личный счет, которым он сможет воспользоваться после выхода на пенсию. — Прим. ред.
Глава 1. Что такое сеть 33 На каждой удаленной площадке развернута локальная сеть, похожая на описанную ранее в этой главе. Однако теперь в состав сети входит облако, обозначенное буквами WAN. WAN — это просто часть сети, через которую компьютеры, расположенные на каждой площадке, могут отправлять и принимать данные от компьютеров, включенных в локальные сети на удаленных площадках. Большинство людей называют сеть такого типа, как показанная на рис. 1.6, корпоративной, или сетью предприятия {enterprise network), поскольку такая сеть создается и поддерживается одной компанией, а компанию можно рассматривать как предприятие. Но сеть такого типа иногда называют глобальной корпоративной сетью (enterprise WAN), потому что сети предприятий обычно используют для организации своей работы глобальные сети. Только вы и я, и еще целый мир — Internet Сеть Internet—именно так, с большой буквы принято писать это слово — изменила жизнь людей. Она сделала землю плоской и позволила миллионам людей из сотен стан мира свободно обмениваться идеями. Internet — еще одна компьютерная сеть, но она уникальна. Ее уникальность приводит к тому, что сети почти всех предприятий подключены к Internet. Чтобы все это работало, компании, называемые Internet-провайдерами (Internet service providers, ISPs), предоставляют услуги компаниям и отдельным людям по подключению к Internet. Что получается в результате? Почти все компьютеры планеты могут связываться между собой. Влияние Internet на культуру намного превосходит совершенство ее технологии, но и технология ее великолепна! На рис. 1.7 представлена основная идея, лежащая в основе Internet. Домашний компьютер Фреда Домашний компьютер Барни Рис. 1.7. Internet у а также компании и отдельные личности, пользующиеся Сетью Здесь облака снова указывают на существование частей сети, детали которых скрыты. Идея проста: если мы создаем главную сеть, называемую Internet, и все компании и отдельные личности подключаются к ней, значит, каждый пользователь может связаться с любым другим.
34 Часть I. Основы организации сетей Резюме Ознакомившись с материалом этой главы, вы сделали первый шаг к ясному пониманию того, как организованы сети. Компьютерная сеть может состоять из пары компьютеров, нескольких кабелей и аппаратного и программного обеспечения небольшого объема; такую сеть называют локальной. Но возможен и другой вариант. Сеть может включать сотни и тысячи компьютеров, принадлежащих крупной компании, а также множество различных кабелей и сетевых устройств, размещенных на многих площадках; такую сеть обычно называют сетью масштаба предприятия, или корпоративной сетью. Сетью может быть Internet, которая в буквальном смысле включает сотни миллионов компьютеров, миллиарды людей, большую часть всех компьютеров мира и огромное количество сетевых устройств и кабелей. Сеть представляет собой комбинацию аппаратных средств, программного обеспечения и кабельной системы, которые все вместе позволяют компьютерным устройствам связываться друг с другом. Все сети, независимо от их размеров, создаются на основе указанных трех компонентов. Как мы и обещали во введении к этой книге, к тому времени, когда вы дочитаете ее до конца, вы будете обладать обширными знаниями о сетевых технологиях, концепциях и владеть терминологией. Вы будете также иметь прочный и правильно заложенный фундамент для того чтобы определить, в каком направлении следует продолжить изучение данной темы. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А. 1. Основываясь на определении сети, данном в этой главе, скажите, какие три основных компонента используются при ее создании? 2. Какова ключевая функция сети? 3. Основываясь на трех основных компонентах сети, скажите, с каким компонентом работает в основном служащий, поддерживающий сервер? 4. С каким компонентом сети по преимуществу имеет дело сетевой инженер? 5. Что собой представляет корпоративная сеть? 6. Дайте определение термину "Internet". 7. Сравните и противопоставьте термины "корпоративная сеть" и "Internet", пользуясь общеупотребительными словами. 8. Опишите концепцию службы сети.
Что вам предлагается освоить После прочтения этой главы вы должны: S уметь перечислить несколько основных категорий сетевых приложений S уметь сравнивать приложения, основываясь на том, как много знаний о сети требуется от конечного пользователя S уметь объяснить основы работы сетевых приложений, упомянутых в этой главе S знать основную структуру Internet и возможность подключения корпоративных сетей к Internet
Глава 2 Для чего создаются сети В наше время почти все, что пользователь хочет получить от компьютера, — это чтобы с его помощью можно было пользоваться сетью. Конечно, некоторые компьютеры сейчас применяются не для того, чтобы связываться с другими компьютерами. Однако большинство компьютеров используются именно с этой целью. И действительно, многие люди сейчас имеют по нескольку компьютеров в доме, и даже эти компьютеры нуждаются в связи друг с другом. Пользователю компьютера, однако, в общем случае не нужно знать, как работает сеть. На самом деле многие конечные пользователи не знают, когда их компьютерам нужна сеть, а когда не нужна. Большинство пользователей, применяющих компьютеры на работе, знают, что компьютер должен как-то общаться с другими компьютерами через сеть, и знают, что многие приложения перестают работать, когда сеть выходит из строя. Один из лучших способов разобраться в том, как работают сети, — это понять, что делает конечный пользователь сети. Многие из вас уже используют сети на работе и в школе. В данной главе рассматриваются основные возможности сети, которые могут заинтересовать конечного пользователя. Далее в книге будет рассказано о том, как сеть обеспечивает выполнение этих, необходимых конечному пользователю, функций. Использование сети по случаю Большинство распространенных сетевых сервисов скрывают сеть от пользователя. Можно рассматривать эти сервисы как используемые конечным пользователем по случаю, ведь он иногда даже не осознает, что сеть участвует в решении стоящих перед ним задач. Чтобы пояснить эту "случайность" сетевых сервисов, мы будем описывать воображаемого служащего с удаленной площадки. Мы назовем его Фред. Фред — мастер своего дела; у него есть компьютер, принтер, и он может выполнять всю свою работу без особых помех со стороны головного офиса. Чтобы выполнить свое обычное дневное задание, Фред открывает документ, используя текстовый процессор, изменяет часть текста и печатает копию. Затем он посылает письмо клиенту и сохраняет изменения, сделанные в письме. Основная идея проиллюстрирована на рис. 2.1. Этапы деятельности, показанные на этом рисунке, таковы. 1. Текстовый процессор считывает письмо с диска. 2. Когда Фред щелкает на кнопке Печать, ПК посылает копию письма на принтер. 3. Когда Фред сохраняет файл, текстовый процессор вновь записывает его на жесткий диск.
38 Часть I. Основы организации сетей Окно текстового процессора ПК Фреда Рис. 2.1. Ежедневные задачи, обычно выполняемые Фредом на его ПК Первый этап часто называют считыванием файла (file read). При его выполнении компьютер копирует файл с жесткого диска в память компьютера, чтобы последний мог обрабатывать его. Позже, выполняя запись файла (file write), компьютер заменит старый файл, хранившийся на жестком диске, новым, измененным вариантом. Фреда вполне устраивала его жизнь, но, как это обычно и бывает, изменения в ней произошли неожиданно. Компания развивалась, и это не могло не отразиться на Фреде. Головной офис прислал в удаленный офис Фреда энергичную Вильму, чтобы она помогала ему выполнять работу. Вильма привезла в новый для нее офис свой супер-пупер, быстродействующий, дорогой ПК и развернула сеть. Она забрала старый принтер Фреда и подключила его к своему ПК. Вильма также скопировала все письма клиентов с компьютера Фреда на свой ПК. На рис. 2.2 представлена общая концепция устроенных ею перемен, она соответствует концепции простой локальной сети, описанной в главе 1. Старый компьютер Супер-пупер Фреда компьютер Вильмы Старый лшж £тщ принтер Фреда I I [ | ifiSML:? ( ОбТЬ Л Старые д^ ^^файлы Фреда Рис. 2.2. Сеть Фреда и Вильмы Вильма все настроила, в том числе и сеть, поскольку знает, как все это работает. Однако Фред не имел представления, для чего новая девушка все испортила в его офисе. Поэтому на следующее после больших перемен утро, выпив чашечку кофе, Фред запустил свой текстовый процессор, взял дискету, пошел к новому супер- пупер компьютеру Вильмы и скопировал письмо клиента на дискету. Затем вернулся к своему столу, обновил письмо на своем старом компьютере и вновь с дискетой пошел к компьютеру Вильмы. Здесь он скопировал обновленный файл на компьютер Вильмы, заменив им старый, и запустил текстовый процессор, чтобы напечатать письмо, которое нужно послать клиенту. Все это показано на рис. 2.3. В рассматриваемом примере Фред не использует сеть. Вместо этого он пользуется тем, что можно назвать кроссонет. Кроссонет (sneakernet) — это шутливый термин, обозначающий процесс, при котором вместо использования уже имеющейся сети
Глава 2. Для чего создаются сети 39 кто-то бегает от компьютера к компьютеру с дискетами и компакт-дисками; такому человеку нужны очень хорошие кроссовки! Старый компьютер Фреда Супер-пупер компьютер Вильмы Старый принтер Фреда Отредактировать файл и сохранить его на дискете 4* Вернуться с дискетой к компьютеру Вильмы Открыть файл и напечатать его Кроссонет Рис. 2.3. Кроссонет Фреда Метод кроссонета, примененный Фредом, работает, но он занимает гораздо больше времени, чем требовалось до того, как главная контора прислала Фреду помощь в виде Вильмы. Наконец, девушка приходит в офис и обнаруживает в нем Фреда, надевающего свои фирменные кроссовки и готовящегося весь день бегать по офису от одного компьютера к другому. Вот как отреагировала на это Вильма: "Фред, я, кажется, забыла рассказать тебе, как нужно пользоваться сетью! Но тебе даже не нужно знать о том, что она существует! Если ты найдешь на диске С своего компьютера папку Клиенты и откроешь ее, то обнаружишь в ней все файлы, нужные тебе для работы. Эти файлы находятся на моем компьютере — файловом сервере (file server), но это скрыто от тебя. Кроме того, если ты щелкнешь на кнопке Печать своего текстового процессора, то увидишь принтер, называемый всетотжестарыйп- ринтер — правда, клевое имечко? Если ты дашь команду печатать на этом принтере, письмо будет отпечатано на все том же старом принтере, подключенном к моему компьютеру. Мой ПК выполняет функции сервера печати (print server), потому ты сможешь печатать на все том же принтере. Ты можешь выполнять свои обязанности точно так же, как и раньше, со своего старого забавного компьютера и надевать кроссовки только тогда, когда этого тебе захочется! Для того чтобы эта сеть работала, компьютер Вильмы должен выполнять файловые службы. Файловые службы (file services) обеспечивают выполнение процессов, благодаря которым один компьютер, обычно называемый файловым сервером, хранит файлы на своем жестком диске и позволяет другим компьютерам считывать и записывать файлы с помощью сети. Термин "файловый сервер" относится к компьютеру, обеспечивающему хранение файлов на жестком диске и делающему их доступными для чтения и записи другим компьютерам — в данном случае эти функции выполняет ПК Вильмы. Жесткий диск (hard disk) — это компонент компьютера, на котором длительное время можно хранить файлы.
40 Часть 1. Основы организации сетей Аналогичным образом компьютер Вильмы предлагает и службы печати (print services). Это процесс, благодаря которому компьютер позволяет другим компьютерам печатать файлы на принтере, физически подключенном к нему. Сервер печати (print server) — это компьютер, обеспечивающий выполнение услуг по печати. Вспомните: сеть состоит из программного обеспечения, аппаратных средств и кабельной системы, эти компоненты позволяют компьютерам успешно обмениваться информацией. На рис. 2.4 показаны компьютеры и сетевое облако (network cloud), здесь облако скрывает не важные в данный момент детали сети. В рассматриваемом случае мы, подобно пользователям, не хотим вникать в детали работы сети, поэтому она и представлена в виде облака. Окно текстового процессора ПК Вильмы Рис. 2.4. Компьютер Фреда использует новую сеть Службы печати и работы с файлами являются наиболее типичными службами для корпоративных сетей. (Корпоративная сеть (enterprise network) — это сеть, созданная для использования ее одной компанией или организацией). Пользователям не нужны принтеры на каждом столе, они даже не хотят этого. Вполне достаточно одного принтера, размещенного где-то посередине. Служащим часто приходится использовать файлы, с которыми работают другие сотрудники. Прозрачные службы печати и работы с файлами позволяют служащим совместно использовать одни и те же принтеры и файлы. Пользователи могут открывать файлы, модифицировать, со-
Глава 2. Для чего создаются сети 41 хранять и печатать их, делая все точно так же, как они делали до появления служб печати и работы с файлами. В следующем разделе рассматривается несколько приложений, выполняемых конечными пользователями, для работы с которыми необходима сеть. Целенаправленное использование сети Для того чтобы Фред мог выполнять свою работу, ему не нужно знать ничего о сети. Конечно, он может видеть новые кабели, проложенные Вильмой, принтер, который теперь подключен к ее компьютеру, и осознавать, что кое-что должно произойти, дабы его компьютер мог печатать на принтере, подключенном к ПК Виль- мы. Но Фреду не нужно использовать сеть в других целях — он, как и раньше, открывает файлы, сохраняет и печатает их. Хотя некоторые из решаемых Фредом задач не требуют, чтобы он знал, что подключен к сети, когда он приходит домой и соединяется с Internet, он должен знать, что пользуется сетью. Internet — это глобальная сеть, в которую включена почти каждая компания и организация. Если вы не проспали последние 10 лет, то, возможно, слышали об Internet. В упрощенной форме Internet можно считать огромным числом сетей, соединенных вместе, что позволяет компьютерам каждой сети связываться с остальными. Internet также включает множество отдельных пользователей, подключающихся к Сети из своих домов. Вы можете позвонить по телефону в любой уголок планеты, потому что телефонные сети всех компаний связаны между собой; аналогичным образом большинство компьютеров могут связываться друг с другом через Internet, поскольку большинство компьютерных сетей связаны между собой через Internet. Вы, наверное, знаете, что слово Internet означает "связанные сети" (interconnected networks). Многие из сетей, образующих Internet, являются корпоративными (сетями предприятий). Чтобы обеспечить возможность соединения между корпоративными сетями и домашними пользователями Internet, провайдеры Internet {Internet service pro- viders, ISPs) выполняют сетевые соединения между предприятиями, индивидуальными домашними пользователями и другими Internet-провайдерами. Чтобы подключиться к Internet, сеть организации нужно просто соединить с какой-нибудь другой сетью. Например, многие корпоративные сети подключены хотя бы к одному Internet-провайдеру. Каждый провайдер соединен по крайней мере с еще одним (обычно с несколькими) Internet-провайдером. Поэтому существует по крайней мере один "сетевой" путь от одной компании к любой другой компании. В результате могут связываться между собой все, кто подключен к Internet. Отдельные личности могут пользоваться услугами того Internet-провайдера, который им больше нравится. Подключившись к его сети, человек может связываться с компьютерами большинства компаний мира, так же как и с компьютерами простого люда (рис. 2.5). На рис. 2.5 показано, что компания А соединена линией с Internet-провайдером ISP1. Эта линия изображает кабель, который позволяет сети предприятия и провайдеру ISP1 связываться между собой. Провайдер ISP1 имеет свою сеть, детали ее конструкции скрыты сетевым облаком. Сеть провайдера ISP1 позволяет отдельным компьютерам, таким как компьютер Фреда, соединяться с нею. Она позволяет также соединяться с нею и корпоративным сетям, таким как сеть компании А. Поэтому Фред
42 Часть I. Основы организации сетей может связываться с компьютерами, входящими в сеть компании А, при условии, что это позволяет политика безопасности, принятая в компании. Но это уже совсем другая история, вопросы безопасности мы будем рассматривать в главах 17 и 18. Домашний Домашний компьютер Фреда компьютер Барни Рис. 2.5. Концептуальный взгляд на Internet Компания А создает корпоративную сеть, используя аппаратное и программное обеспечение, а также кабели, приобретенные ею за собственные средства. Провайдер ISP1 также создает свою сеть за свои средства. Провайдер ISP1 соглашается предоставить компании А трафик, проходящий через сеть ISP1 и через сети других провайдеров, чтобы она могла связываться со всем миром. За то, что ISP1 позволяет компании А связываться с остальной частью Internet через свою сеть, провайдер ISP1 взимает с нее плату. На рис. 2.5 показан также Барни, компьютер которого подключен к сети провайдера ISP2. Предположим, что Барни для подключения к сети провайдера ISP2 использует телефонную линию, домашний компьютер и модем. Модем (modem) — это устройство, которое позволяет компьютеру связываться с другим компьютером, используя старую добрую телефонную линию. Подавляющее большинство индивидуальных пользователей Internet используют для соединения с Сетью (так иногда называют Internet) модем и телефонную линию. После того как Барни подключит свой компьютер к сети провайдера ISP2, он сможет связываться с компьютерами компании А, компании Б и со своим приятелем Фредом. Как и компания А, Барни платит своему провайдеру (ISP2) за предоставление ему доступа к Internet. Internet-революция оказала на мир влияние столь огромное, как мало какое другое событие истории. Возможность устанавливать соединения через различные культуры, через национальные границы, относительно быстро и с (относительной) свободой общения изменила образ жизни людей. Всевозможные новости появляются в Internet быстрее, чем их могут отыскать и обнародовать наиболее мощные новостные агентства мира. Возможность связи между компьютерами, принадлежащими разным компаниям, а также между отдельными пользователями появилась благодаря разработке нескольких приложений. В данном разделе мы рассмотрим наиболее
Глава 2. Для чего создаются сети 43 популярные из них, включая Web-браузеры, электронную почту (e-mail), приложения для загрузки файлов и передачи файлов. Просмотр Web-страниц Наверное, каждому из тех, кто читает эту книгу, приходилось пользоваться Web- браузером. Web-браузер (web browser) позволяет, сидя за компьютером, получать информацию, размещенную на каком-нибудь Web-сервере Internet. Эта информация может быть представлена в разных формах, включая просто текст, графические изображения, анимацию, потоковое видео и аудиоклипы. Даже если вам незнаком термин "Web-браузер", возможно, вы слышали об Internet Explorer или Netscape. Это — названия двух наиболее популярных Web-браузеров, присутствующих сейчас на рынке. Браузер — это программное обеспечение, установленное на компьютере конечного пользователя. Браузер запрашивает Web-страницы у Web-сервера и, после того как последний ответит, отображает информацию, полученную им у Web-сервера. Web-сервер представляет собой программное обеспечение, установленное на компьютере, к которому может получить доступ через Internet конечный пользователь. После того как браузер запросит у Web-сервера какую-то Web-страницу, тот отвечает на запрос, посылая браузеру содержимое Web-страницы. Многие пользователи называют текущее содержимое — материалы, которые отображаются на экране компьютера, когда они пользуются браузером, — Web- страницей (webpage). Так, если вы введете адрес http: //www. cisco. com, то увидите Web-страницу компании Cisco Systems, крупнейшего поставщика сетевого оборудования. Если вы начнете щелкать на ссылках, размещенных на этой странице, то будете переходить на другие Web-страницы. Делая это, вы ознакомитесь с содержимым Web-сайта. Термин Web-сайт, или Web-узел (website), обозначает все содержимое различных Web-страниц, размещенных на сервере компании. Основная модель отношений, связанных с Web-службами, аналогична тому как новое предприятие розничной торговли действует в реальной жизни. У кого-то появляется идея открыть магазин по продаже чего-нибудь. Предположим некто желает торговать детской одеждой. Много чего нужно сделать, прежде чем магазин откроется: арендовать и приготовить магазин, нанять служащих, привезти товары, дать рекламу и т.д. Наконец, приходит день, когда владелец впервые открывает магазин и надеется, что кто-то заглянет в него и что-нибудь купит. Web-ресурсы проходят тот же путь. У кого-то появляется идея открыть Web-сайт. Может быть, это будет сайт магазина, продающего детскую одежду, или Web-узел другой уже известной фирмы, а может быть, его будущий владелец просто хочет сообщить людям что-то важное. Затем этот человек создает Web-сайт, состоящий из нескольких Web-страниц. Web-сайт размещают на сервере, подключенном к Internet. И настает день, схожий с днем открытия магазина, — владелец ожидает, что кто-то посетит его Web-сайт! Web — комбинация Web-серверов, Web-браузеров и Web-сайтов — стала одной из наиболее популярных служб в Internet, а также в корпоративных сетях. Собственные Web-сайты в Internet могут создавать компании, организации и отдельные личности. Любой может затем затребовать содержимое Web-страниц и увидеть результат. На рис. 2.6 представлены примеры двух Web-серверов Internet, Фред и Барни просматривают Web-сайты.
44 Часть I. Основы организации сетей Фред просматривает сайт Барни просматривает сайт www.fredsco.com www.cisco.com Рис. 2.6. Web-браузеры и Web-страницы Web-сервер каждой компании, как следует из рис. 2.6, находится в соответствующей корпоративной сети. Поскольку сеть каждой компании соединена с сетью Internet-провайдера, Фред и Барни могут подключиться к Web-страницам и ознакомиться с их содержимым. Чтобы просмотреть эти страницы, Фред должен запустить на своем компьютере Web-браузер и ввести унифицированный указатель информационного ресурса (Universal Resource Locator, URL), с которым он хочет ознакомиться. То же самое должен сделать и Барни. URL представляет собой строку символов, уникальным образом идентифицирующих конкретную Web-страницу. Иногда URL называют Web- адресом страницы. Например, когда Барни вводит символы http: //www. cisco. com в соответствующем поле своего браузера, последний запрашивает Web-страницу компании Cisco Systems. Эта страница представлена на рис. 2.7. Web-браузер, взаимодействующий с Web-сайтами, является на сегодняшний день одним из самых популярных сетевых приложений. А поскольку основная задача Web-сайта — сделать доступной имеющуюся на нем информацию другим пользователям сети, он оправдывает существование сети. Электронная почта (E-Mail) Другой популярной сетевой службой Internet является электронная почта, или e-mail. Электронная почта позволяет создавать, отсылать и получать сообщения в электронном виде. По сути, это то же самое, что отправлять письма через обычную почтовую службу. Разница состоит в том, что сообщение передается & электронном виде по сети, а не физически с помощью самолетов, поездов и грузовиков. Обычную "бумажную" почту после появления электронной начали насмешливо называть "улиточная почта" (snail mail), потому что ей для доставки письма требуется несколько дней, в то время как электронной почте — несколько секунд. Конечно, почтовой службе приходится справляться с намного большим числом трудностей, чем электронной. Например, ей приходится физически перемещать тонны писем и посылок, неудивительно, что доставка письма занимает несколько дней.
Глава 2. Для чего создаются сети 45 Рис. 2.7. Пример Web-страницы (http://www. cisco. com) Электронная почта основана на совершенно иной концептуальной модели, нежели служба Web. Если, применяя Web-технологии, кто-то хочет что-то сказать, он размещает свое сообщение на Web-странице, и через некоторое время любой может ознакомиться с содержимым этой Web-страницы. Сообщения электронной почты посылаются одним пользователем другому пользователю или нескольким пользователям. Поэтому человек, отправляющий письмо, должен знать электронный (e-mail) адрес человека, для которого предназначено его письмо. Электронный адрес (e-mail address) представляет собой текстовую строку, обозначающую адрес персоны, желающей получать и отправлять электронную почту, это очень похоже на обычный почтовый адрес, в котором указываются город, улица и дом. В случае Web нужно обеспечить подключение Web-сервера к Internet, чтобы любой мог ознакомиться с содержимым сайта, используя для этого свой Web-браузер. В случае электронной почты не требуется, чтобы отправитель и получатель письма были подключены к сети в одно и то же время. Например, Фред может подключиться к Internet со своего домашнего компьютера и отправить письмо Барни, хотя компьютер того в данный момент не подключен к Internet. Позже, когда Барни подключится к Internet, он проверит свою почту и получит письмо, посланное Фредом. Чтобы отправитель мог посылать электронную почту, даже когда получатель не подключен к Internet, электронная почта использует ту же самую модель, что и почтовая служба. Человек, желающий послать письмо "улиточной почтой", бросает его в ближайший почтовый ящик. Почтовые служащие доставляют письмо по адресу и бросают его в почтовый ящик получателя. Получатель не обязан быть дома, когда почтальон развозит почту — он просто заглянет в свой почтовый ящик, возвращаясь домой.
46 Часть I. Основы организации сетей На рис. 2.8 показано, как электронная почта использует модель, подобную таковой традиционной почтовой службы. Барни посылает электронное Компьютер Фреда письмо по адресу saIes@fredsco.com Отдел продаж в компании Фреда Рис. 2.8. Электронная почта использует почтовые серверы Прежде чем сообщение будет получено человеком, которому оно направлено, оно проходит через три этапа. Они перечислены в нижеследующем списке; нумерация совпадает с цифрами на рис. 2.8. Позже мы дадим подробное описание каждого этапа. 1. Барни посылает сообщение серверу электронной почты провайдера ISP2. 2. Сервер электронной почты провайдера ISP2 посылает сообщение почтовому серверу f reds со. com. 3. Получатель проверяет свою электронную почту на почтовом сервере f redso. com и получает сообщение. На первом этапе Барни посетил Web-сайт fredsco.com, где нашел информацию — сообщение о том, что в продажу поступили шары для боулинга. Барни хочет победить Фреда, когда они в следующий раз будут играть в кегли, используя новые шары, предлагаемые компанией Фреда. Поэтому Барни посылает электронное письмо в коммерческий отдел компании Фреда. Он отправляет его по адресу sales@fredsco.com. На самом деле Барни не посылает электронное письмо непосредственно на компьютер в компании Фреда. Барни посылает сообщение своему почтовому серверу, который для индивидуальных пользователей Internet (к их числу относится и Барни) обычно содержит в сети Internet-провайдер; к этому почтовому серверу и подключаются пользователи. Почтовый сервер (e-mail server) — сервер, который получает, пересылает или хранит электронную почту. Это очень похоже на услуги, оказываемые почтовым отделением. Почтовый сервер Барни пересылает электронное письмо почтовому серверу компании Фреда. При осуществлении названных двух этапов
Глава 2. Для чего создаются сети 47 Барни может послать свое электронное сообщение, даже если почтовый сервер компании Фреда в это время и не подключен к Internet. Провайдер ISP2 обеспечивает работоспособность и доступность своего почтового сервера круглосуточно, точно так же, как в любой момент должен быть доступен и Web-сервер. Почтовый сервер, размещенный в сети провайдера ISP2, просто ждет, пока ему представится возможность успешно отправить электронное сообщение почтовому серверу компании Фреда. Наконец, после того как сообщение попадет на почтовый сервер f reds со. com, конечный пользователь (в данном случае это приветливый продавец из компании Фреда) может в удобное для себя время получить сообщения электронной почты (этап 3 на рис. 2.8). Так, после утреннего гольфа продавец может проверить свою электронную почту и найти среди прочих сообщение Барни. Термины клиент электронной почты (e-mail client) и клиент (client) применительно к сетям имеют специфическое значение. Вообще говоря, любую прикладную программу, которую конечный пользователь использует, чтобы получить доступ к серверу сети, называют клиентом. Web-браузер, например, является клиентской программой. Клиент электронной почты — это клиентское программное обеспечение, используемое для работы с электронной почтой. Microsoft Outlook — одна из наиболее популярных клиентских программ электронной почты. Электронная почта стала одним из наиболее употребительных сетевых приложений, поскольку позволяет всем, и стару и младу, посылать сообщения друг другу при минимальных затратах не только времени, но и денег. Даже родители автора, которые выросли в мире, где множество людей не имели даже телефонов, сейчас пользуются электронной почтой. Точно так же, как и Web-приложения, электронная почта прекрасно работает в сети одного отдельно взятого предприятия. Однако Internet позволяет общаться посредством электронной почты миллиардам людей, благодаря ей вы можете общаться с друзьями и знакомыми во всем мире. Загрузка и передача файлов Последнее приложение конечного пользователя, о котором мы расскажем в этом разделе, — весьма обширная тема, но мы рассмотрим только ее центральный вопрос: проблему перемещения файлов на ваш включенный в сеть компьютер и с него. В большинстве случаев применения этой службы конечный пользователь не имеет какого-то файла и хочет получить его. Однако иногда пользователь желает сделать противоположное, т.е. переместить файл со своего компьютер на другой. Независимо от того, хочет ли пользователь получить файл или передать файл кому-то еще, это действие подпадает под категорию передана файла (file transfer). Передачу файла осуществляет сетевое приложение, которое позволяет пользователю копировать файлы с одного компьютера на другой. Термин загрузка (download) обычно относится к процессу получения файла, который есть у кого-то другого, разрешающего вам скопировать его на свой компьютер. Поэтому загрузка технически осуществляется точно так же, как и передача файла. (И наоборот, термин выгрузка (upload) относится к передаче файла с вашего компьютера на другой, другими словами, предоставлении копии файла другому компьютеру.) Один довольно модный тип загрузки файла — это когда вы решаете обновить программное обеспечение на своем сетевом устройстве. Продавец, который продает
48 Часть I. Основы организации сетей вам это устройство, позволяет загружать новое программное обеспечение через Internet. Продавцы рады тому, что вы можете загрузить файлы; это обходится им намного дешевле, чем отправка программного обеспечения по традиционной почте. Более интересный — и намного более спорный пример — загрузка музыкальных файлов. Я полагаю, что многие из тех, кто уже имеет опыт работы в Internet, знают о чем я говорю. Все началось с сумасшествия по имени Napster, сайта, который возродился после нескольких судебных процессов, затеянных против него фирмами звукозаписи. В Internet появилось несколько других программных средств, позволяющих делать все то же: загружать копии музыкальных файлов, зачастую бесплатно. Если оставить в стороне юридические и моральные проблемы, следует заметить, что подобные службы позволяют перемещать файлы, таким образом они падают в категорию служб, обеспечивающих передачу файлов. Как и в случаях просмотра Web-страниц и использования электронной почты, передача файла может осуществляться в сети предприятия и через Internet. Допустим, например, что Фред и Барни должны работать над одним проектом, и каждый должен обновить файл myproject.doc. Фред не работает в компании, где трудится Барни, поэтому файловый сервер Барни недоступен для Фреда, подобные ограничения вводятся из соображений безопасности. На рис. 2.9 представлен основной процесс, позволяющий осуществлять совместную работу над файлом. Сервер передачи файлов Фреда Фред копирует файл на сервер передачи файлов Позднее Барни получает файл с сервера передачи файлов Рис. 2.9. Копирование файла myproject.doc с компьютера Фреда на компьютер Барни Фред и Барни танцуют вместе, выполняя па "двухступенчатая передача файла". Этапы соответствуют пронумерованным на рис. 2.9: 1. Фред помещает копию файла на сервер передачи файла, используя клиентское программное обеспечение передачи файлов.
Глава 2. Для чего создаются сети 49 2. Барни получает копию файла с сервера передачи файла, также используя клиентское программное обеспечение передачи файлов. После того как этот процесс будет завершен, у Барни и Фреда окажется по одной копии файла. Однако, если оба будут работать над своими копиями файла, при их объединении может возникнуть проблема. Поэтому, хотя вы и можете совместно использовать файлы, применяя механизм передачи файлов, вы должны тщательно следить за тем, у кого именно находится "контрольный" образец файла в каждый момент времени. Резюме Сети существуют для того, чтобы предоставлять услуги пользователям. Хотя в данной главе, конечно, не описаны все приложения, доступные в типичной сети, в ней были представлены наиболее популярные типы приложений. Эти сетевые приложения перечислены в табл. 2.1. Таблица 2.1. Сетевые приложения, рассмотренные в данной главе Услуга Описание Работа с файлами Печать Web Электронная почта Передача файлов Файлы хранятся на компьютере, называемом файловым сервером. Другие компьютеры, называемые клиентами, могут читать эти файлы и записывать в них информацию, при этом они могут не создавать локальную копию файла на жестком диске клиента. Обычно эта служба прозрачна для конечного пользователя Принтеры соединены с компьютером, который называется сервер печати. Клиентские компьютеры могут послать предназначенные для печати файлы серверу печати, который и напечатает содержащиеся в них документы на принтере. Обычно эта служба прозрачна для конечного пользователя Сервер хранит разнообразную информацию, такую как текст, графику, мультипликацию, изображения, видео и аудио. Конечный пользователь использует Web-браузер, чтобы запросить необходимую информацию с сервера. Сервер в ответ на запрос отсылает информацию, которая отображается Web-браузером Конечный пользователь создает сообщение, используя клиентскую программу электронной почты, и посылает его определенному человеку. Процесс доставки электронной почты осуществляется почтовыми серверами Файлы хранятся на сервере. Это позволяет другим (клиентским) компьютерам копировать файлы с сервера на локальные жесткие диски и заменять файлы, хранящиеся на сервере, файлами, хранящимися на локальных жестких дисках клиентов Службы печати и работы с файлами могут скрывать существование сети от конечных пользователей, обычно они так и делают. Прозрачная природа этих приложений означает, что конечный пользователь может выполнить необходимые задачи, не обязательно зная при этом, использует ли он сеть. Наоборот, Web, электронная
50 Часть I. Основы организации сетей почта и службы передачи файлов, по определению, ожидают, что конечный пользователь знает, что сеть существует. Контрольные вопросы Вы можете найти ответы на нижеследующие вопросы в приложении А. 1. Перечислите пять типов сетевых приложений, упомянутых в этой главе. 2. Какие приложения эффективно скрывают существование сети от конечного пользователя? 3. Какие приложения используют серверы, чтобы хранить на них данные, в ожидании, пока другой пользователь не появится в сети? 4. Какая служба позволяет серверу предоставлять клиенту текст, графику, изображения, аудио и видео? 5. Сравните и противопоставьте, в общих чертах, сеть предприятия и Internet. 6. Включает ли Internet корпоративные сети, домашних пользователей, которые соединяются с Internet, тех и других или никого из названных? Объясните ваш ответ. 7. Объясните основное различие между Web-страницей и Web-сайтом. 8. Что такое — сетевое облако? 9. Сравните и противопоставьте сети предприятий и сети Internet-провайдера; ограничьтесь несколькими предложениями. 10. Какой термин, состоящий из трех слов, относится к тексту, который вы должны ввести в Web-браузере, чтобы открыть страницу конкретного Web-сайта? Какой популярный жаргонный термин мог бы использоваться вместо этого термина? 11. Вообразите, что Фред подключается к Internet, пользуясь услугами провайдера ISP1, а Барни пользуется услугами ISP2. Когда Фред посылает Барни сообщение, на какой компьютер Фред посылает его? Если сообщение не посылают непосредственно на компьютер Барни, объясните, почему.
Что вы хотите освоить После прочтения этой главы вы должны: S уметь объяснить, в чем преимущества следования стандартам S перечислить цели, преследуемые создателями сетевой модели s назвать две широко известные сетевые модели S перечислить уровни сетевых моделей TCP/IP и OSI и указать их взаимосвязь S описать типы стандартов, созданных для модели TCP/IP S объяснить основы работы сетевых приложений, упомянутых в этой главе s перечислить основные стандарты, которые лежат в основе TCP/IP
Глава 3 Создание сети: все начинается с плана Давайте осознаем: без хорошего плана большинство проектов, в которых занято более двух человек, обречено на провал. Есть много популярных высказываний на тему о том, как нужно относиться к планированию, типа "Те, кто не в состоянии планировать, планируют неудачу." Сети не работали бы сегодня, если бы все поставщики сетей не следовали одному и тому же набору планов, или стандартов. Стандарты на построение сети, или сетевые стандарты (networking standards), определяют набор правил, которым должен следовать любой производитель сетевых продуктов, таких как аппаратные средства, программное обеспечение и кабели. Если производитель следует этим стандартам, его продукты смогут взаимодействовать с компонентами сетей, поставляемыми другими производителями. В данной главе описывается несколько самых популярных стандартов и рассказывается о выгодах строгого соблюдения стандартов при организации сети. Следуя правилам Любой, кто был подростком, знает, что в этом возрасте внутри каждого прячется мятежник. Вместо следования общепринятым правилам поведения подростки иногда думают, что назначение любых правил — быть нарушенными! В некоторых случаях нарушение правил может пойти на пользу. Но чаще всего (и родители знают об этом) целесообразность наличия правил и следования им становится очевидной, после недолгого размышления, даже подростку. Стандарты — это правила, которые значительно облегчают жизнь. Например, взгляните на ближайшую к вам электророзетку. Если вы живете в США, то, вероятно, видите гнездо с тремя отверстиями. Два из них предназначены для плоских металлических штырей, третий готов принять круглый металлический штырек. Плоские металлические штырьки параллельны друг другу. Если вы идете в магазин и покупаете настольную лампу, то ожидаете, что она будет с электрическим шнуром, и его вилка подойдет к стенной розетке. Если этого вдруг не произойдет, вы будете вне себя от негодования. Это пример общепринятого стандарта. Если вы приходите в магазин, чтобы купить тостер, консервооткрыватель или стереоприемник, то ожидаете, что производитель выдерживает стандарты на электрические розетки, принятые в вашей стране. Теперь вообразите, что вы купили новую настольную лампу. Вы включаете ее, и лампочка, ярко вспыхнув, сразу же гаснет. Вы вставляете новую лампочку, но и она не горит. Вы решаете, что настольная лампа, должно быть, бракованная, поэтому возвращаете ее в магазин и меняете на такую же. Когда вы приносите ее домой,
54 Часть I. Основы организации сетей все повторяется. Наконец, вы вызываете службу работы с покупателями и объясняете им, в чем проблема. Теперь вообразите, что вам отвечают следующее: "О, вы купили нашу особую модель лампы, она называется "Мы освещаем вашу жизнь". В ней используется обычный шнур питания, но для нее требуется меньшее напряжение электросети. Благодаря этому мы экономим ваши деньги. Если бы вы прочитали инструкцию к лампе, то увидели бы в ней указание вызвать на дом электрика, чтобы он заменил проводку и изменил напряжение в розетках, в которые вы собираетесь включать лампу. Кроме того, обратите внимание на следующую оговорку в инструкции: "Если вы включите эту лампу в обычную розетку, то из-за повышенного напряжения она сгорит и больше не будет освещать вашу жизнь." Поэтому купите в магазине новую лампу и поменяйте напряжение в розетках!" Я бы на вашем месте потребовал в магазине вернуть мои деньги и купил бы настольную лампу, выпущенную другой компанией. Но какое отношение этот сценарий имеет к организации сети? Стандарт обычно определяет одну специфическую группу параметров, например форму розеток и вилок, используемых, соответственно, для размещения на стене и закрепления на конце электрического кабеля. Другой стандарт мог бы указывать, какое напряжение должно быть в настенных розетках, должен ток быть постоянным или переменным, какой может быть его максимальная величина и т.п. Оба стандарта важны и должны соблюдаться, чтобы лампы не взрывались. То, что вы можете включить лампу в розетку, не означает, что все необходимые стандарты соблюдены. Точно так же при организации сети используются стандарты на размеры отдельных узлов, чтобы можно было правильно подключить кабели. Однако, чтобы сетевые устройств могли успешно работать в сети, они должны соответствовать и другим стандартам. Правила для сети Даже для простой сети, устроенной Вильмой для связи с Фредом и описанной в главе 2, требуется соблюдение нескольких стандартов. Чтобы создать эту сеть, ПК Фреда (клиент) и ПК Вильмы (файловый сервер) должны быть настроены так, чтобы они могли использовать встроенные сетевые возможности операционных систем их компьютеров. На рис. 3.1 показаны некоторые подробности. Старый компьютер Фреда NIC Сетевое программное обеспечение Платы интерфейса сети находящиеся внутри ПК Кабель Супер-пупер компьютер Вильмы NIC Соединители Рис. 3.1. Компоненты простой сети Прежде всего ПК, объединяемые в сеть, должны быть как-то соединены друг с другом на физическом уровне. Физическая линия связи, обеспечивающая соедине-
Глава 3. Создание сети: все начинается с плана 55 ние, представляет собой комбинацию кабелей, сетевых устройств и плат интерфейса сеты {network interface cards, NICs), установленных в компьютерах. Все вместе они обеспечивают физическую способность передавать и получать данные через сеть. Физическая возможность соединения (physical connectivity) означает, что компьютеры имеют физический тракт, по которому они могут посылать друг другу данные — точно также, как подобные тракты необходимы для осуществления автомобильного сообщения между городами. В каждом из ПК должна быть установлена плата интерфейса сети, и каждая NIC должна иметь разъем, к которому может быть подключен кабель. (На рис. 3.1 платы интерфейса сети изображены вне ПК, чтобы подчеркнуть их наличие.) NIC — это компьютерная плата, которая делает компьютер способным посылать и получать данные через физическую сеть. Слова, скрывающиеся за аббревиатурой NIC (плата интерфейса сети), имеют вполне определенный смысл, потому что NIC — это компьютерная плата, которая обеспечивает интерфейс между компьютером и сетью. Сетевые стандарты определяют несколько типов соединителей. Соединитель (connector) — физически конечная точка кабеля, имеющая определенные размеры и форму. Например, штепсельная вилка на конце кабеля электропитания может иметь два плоских штырька и один круглый. Что касается кабелей, используемых в компьютерной сети, то конец кабеля не называют штепселем; его называют соединителем. К соединителю подключены провода, находящиеся внутри кабеля. Кроме того, стандарты на соединители гарантируют, что соединитель можно будет подключить к плате интерфейса сети. Сетевое программное обеспечение на ПК Фреда и Вильмы должно "понимать" сообщения, посланные компьютерами друг другу. Эти сообщения могут, например, означать следующее: "Я хочу открыть файл customerl.doc," или "Пожалуйста, напечатайте материал, который я вам посылаю, на принтере sameoldprinter" Значит, эти два компьютера должны придерживаться одних и тех же стандартов, регламентирующих, как сетевое программное обеспечение на каждом ПК должно сообщать другому компьютеру, что нужно сделать. Это аналогично следующему: Фред и Вильма должны разговаривать на одном языке, чтобы понимать друг друга. Их компьютеры должны говорить на одном сетевом языке, чтобы иметь возможность понимать друг друга. Примеры правил для сетей Сети полагаются на стандарты — много стандартов — чтобы быть в состоянии сделать что-нибудь полезное. Перед тем как более подробно говорить о стандартах, полезно рассмотреть пару типовых сетевых стандартов. В следующих нескольких разделах рассматриваются основы того, как данные пересылаются между компьютерами, как и почему связку битов посылают в одно и то же самое время, и что нужно делать, если биты передаются с ошибками. Но прежде всего вы должны разобраться в некоторых терминах, в частности в битах и байтах. Путешествие по шоссе битов в Байт Два человека общаются так: когда один человек что-то говорит, другой его слушает. Следует добавить, что эти два человека должны понимать один и тот же язык. Чтобы сообщить что-то, человек должен сказать несколько (связку) слов. Сами слова представляют собой объединения звуков. С одной стороны, два человека общают-
56 Часть I. Основы организации сетей ся, говоря на том же самом языке, но если посмотреть с другой стороны, можно сказать, что эти же два человека общаются, издавая связки звуков. Точно так же компьютеры могут общаться друг с другом, используя сеть, но этот процесс можно рассматривать с разных точек зрения. Например, при работе над этой книгой я использую Microsoft Word. Когда я посылаю файл моему редактору в издательстве Cisco Press, она использует ту же самую программу, чтобы открыть файл и отредактировать главу. Можно сказать, что наши с нею компьютеры говорят на одном языке. В данном случае оба они "понимают" файлы, отформатированные с помощью программы обработки текстов Microsoft Word. Относительно просто рассматривать файл, который содержит текст этой главы, в целом. Однако файл представляет собой связку байтов, каждый из которых содержит 8 бит. Это немного похоже на то, что происходит, когда вы помещаете папку в шкаф. Можно полагать, что вы делаете именно это — помещаете на хранение в шкаф одну папку. С другой стороны, если папка содержит несколько (связку) листов бумаги, вы также помещаете на хранение эти листы бумаги. Точно так же, когда компьютер сохраняет файл на жестком диске, он действительно сохраняет один файл. Однако, с другой точки зрения, компьютер также хранит биты, которые составляют файл. Компьютерные файлы состоят из связок двоичных знаков {binary digits). Люди обычно используют десятичную систему счисления с 10-ю уникальными цифрами — 0, 1, 2, 3 ... 9. В двоичной системе счисления используются только две цифры: 0 и 1. Это обусловлено тем, что аппаратные средства компьютера на самом низком, базовом, уровне могут запоминать один из двух уровней электрического сигнала (т.е. находиться в одном из двух состояний), эти уровни и представляют двоичные 0 или 1. А поскольку фраза "двоичные знаки" состоит из шести целых слогов (на английском языке — из пяти), и используется очень часто, кто-то придумал использовать вместо нее сокращенный термин — биты (bits, сокращение от англ. binary digits). Чтобы говорить с другим человеком, вы используете язык, но ваша речь фактически состоит из множества коротких отдельных звуков. Именно объединения звуков образуют слова и предложения на языке, выбранном вами для беседы. Точно так же компьютер мог бы иметь документ Word или любой другой файл, который ему нужен, но содержимое этих файлов — только связка маленьких отдельных фрагментов информации, названных битами. Существуют комбинации битов, которые, в свою очередь, образуют части файла; его компьютер хранит в памяти. (Вообще говоря, термин байт (byte) для большинства компьютеров означает набор из 8 бит.) Когда компьютеры связываются между собой, приложению необходимо послать какие-то данные приложению, выполняемому на другом компьютере. Например, когда вы просматриваете Web-страницу, ее содержимое состоит из одного или более файлов. Приложение должно передать содержимое файла на другой компьютер. Чтобы сделать это, компьютер посылает связку битов на другой компьютер, потому что файл —это только связка битов. В следующем разделе приведены примеры того, как стандарты определяют, каким образом должны посылаться биты. Пример правила для отправки битов Когда компьютер Фреда использовал компьютер Вильмы (файловый сервер), сеть должна была получить файл с жесткого диска сервера, передать его через сеть и выдать текстовому процессору, запущенному на компьютере Фреда. Прежде чем
Глава 3. Создание сети: все начинается с плана 57 файловый сервер мог передать содержимое файла через сеть, он должен был считать файл с диска. Затем он должен передать биты по сети. Каждый раз, когда электрический ток протекает по проводам, вы можете поместить на их концах устройство, которое способно определять различные параметры. Один из них — напряжение {voltage). Напряжение характеризует величину электрической мощности, передаваемой по проводам. Применительно к сетям отправитель, чтобы передать биты, может изменять напряжение до одного уровня, и это будет обозначать двоичный 0, напряжение другого уровня будет соответствовать двоичной 1. Например, чтобы передать биты, плата интерфейса сети, установленная в компьютере Вильмы, посылает по кабелю электрический сигнал. Устройство на другом конце кабеля — в данном случае плата интерфейса сети, установленная в ПК Фреда — интерпретирует полученный электрический сигнал. Для того чтобы платы интерфейса сети могли работать подобным образом, обе они должны удовлетворять требованиям определенного стандарта. Представим, например, что плата интерфейса сети Вильмы посылает электрический сигнал напряжением +5 вольт (В), чтобы передать двоичный 0, и сигнал напряжением +10 В, чтобы послать двоичную 1. Если NIC, установленная на компьютере Фреда, будет ожидать получения сигнала напряжением +2 В для двоичного 0 и сигнала напряжением +4 В для двоичной 1, то сеть не будет работать, потому что компьютер Фреда не будет понимать то, что посылает ему ПК Вильмы. Физический механизм передачи битов может быть намного более сложным, чем в этом примере, но основная идея остается той же самой. Передающее устройство передает через кабель электрический сигнал, который устройством в другом конце кабеля интерпретируется как двоичные числа. Термин кодирование {encoding) относится к общему процессу получения двоичного значения и генерирования соответствующего электрического сигнала, который может передать это двоичное значение через сеть. Правила кодирования, используемые при передаче данных, определяются сетевыми стандартами. Отправка битов пакетом Вы только что познакомились с примером сетевого стандарта, регламентирующего механизм физической передачи битов. Но чтобы компьютеры смогли успешно общаться друг с другом, пришлось разработать много других стандартов. Например, представим, что Вильма успешно передала содержимое файла, но некоторые данные были потеряны (рис. 3.2) Три пакета, посланные Вильмой Фреду Супер-пупер компьютер Вильмы часть customer! .doc часть customed .doc 4acTbcustomer1.doc — Рис. 3.2. Передача данных с использованием пакетов Старый компьютер Фреда ПерЕ Втор Трет
58 Часть I. Основы организации сетей Обычно устройства в сети посылают биты группами, в общем случае называемыми пакетами. Например, Вильма посылает первую часть файла в первом пакете, вторую часть файла — во втором пакете, и т.д. Пакет (packet) — это просто группа битов, которые объединены с целью передачи их через сеть. Вы можете рассматривать пакет как посылку — она содержит предназначенные для вас биты, передаваемые через сеть. Почему сети используют пакеты? Это подобно тому как если бы вы работали в компании, которая торгует штучками, и должны были бы отгрузить 1 000 000 штучек одному клиенту. Вы поместили бы их все в одну коробку? Вероятно, нет. Вы поместили бы часть в одну коробку, часть в другую, и так до тех пор, пока все штучки не разместились бы в нескольких коробках. Вы могли бы отправить все коробки в один пункт назначения, причем за один день, но легче распределить отправку на несколько дней, поскольку благодаря использованию коробок вы получаете определенную свободу действий. Точно так же вместо того, чтобы посылать все содержимое файла — возможно, объемом миллиарды битов — за один раз, компьютеры посылают данные в пакетах, делая доставку данных более управляемой. Фактически, одной из причин того, что сетевые стандарты требуют использования пакетов, является необходимость исправления возникших при передаче ошибок, о чем мы будем говорить в следующем разделе. Что делать, когда биты ведут себя неправильно Представим теперь, что второй пакет, показанный на рис. 3.2, имеет ошибку. Если обе платы интерфейса сети считают, что +5 В — это двоичный 0, а +10 В — двоичная 1, то что произойдет, если напряжение достигнет 15 В? Или составит 7,5 В? Конечно, сигналы с таким напряжением приведут платы интерфейса сети в замешательство. Как происходят ошибки? Предположим, что кто-то включил пылесос рядом с сетевым кабелем. Напряжение сигнала в нем может измениться, это явление называется электрическая помеха (electrical interference). Формально, электрическая помеха — эффект изменения одного электрического сигнала вследствие распространения поблизости другого электрического сигнала. Вы все видели или слышали электрические помехи, типа того, когда изображение на экране телевизора теряет четкость или когда вы не можете слышать передачу вашей любимой радиостанции, если в это время проезжаете под высоковольтной линией, или когда вы слышите жужжание из стереоприемника, если включаете миксер на кухне. Электрические помехи неизбежны. Люди, которые создают сетевые стандарты, могут принять меры, способствующие минимизации вероятности того, что помеха вызывает ошибки передачи, но в конечном счете электрическая помеха все равно приведет к появлению по крайней мере небольшого числа ошибок. Так, Фред мог бы получить все три пакета (см. рис. 3.2), но один пакет мог бы иметь несколько битов, которые не могли быть поняты. Представим, что первый пакет содержал первый абзац письма клиента, второй пакет — второй абзац, и т.д. Фред хотел бы получить письмо, второй абзац которого пропал без вести? Конечно, нет. Поэтому должен быть стандарт, который помог бы Фреду понять, что второй пакет был принят с ошибками, и потребовать у Вильмы послать этот пакет повторно. Решение проблемы возникновения ошибок при передаче обычно обеспечивается программным обеспечением обоих компьютеров, если только они придерживаются современных сетевых стандартов. Для восстановления пакетов, переданных с ошибками, программное обеспечение на компьютерах Вильмы и Фреда должно использовать один и тот же сетевой протокол — протокол, который обеспечивает метод выяв-
Глава 3. Создание сети: все начинается с плана 59 ления ошибок и их исправления. Протокол (protocol) похож на стандарт (во многих случаях протоколы и стандарты — это одно и то же), но термин "протокол" обычно относится к процессу. На рис. 3.3 показан алгоритм работы простого протокола, который можно было бы использовать для восстановления утраченных данных. Чтобы показать работу протокола, на этом рисунке, по сравнению с предыдущим, было сделано несколько изменений. (Изменения, сделанные чтобы показать работу протокола, выделены полужирным шрифтом.) Прежде всего протокол требует, чтобы отправитель пакета пронумеровал пакеты. В этом случае, если получатель (Фред) замечает ошибку, он может послать сообщение отправителю (Вильме) с просьбой повторно прислать проблемный пакет — в данном случае пакет 2. Вильма, конечно, отвечает на запрос Фреда, повторно посылая пакет 2. Под устранением ошибок (error recovery) понимается общий процесс не только выявления ошибок, которые происходят при передаче пакета, но также и требования повторной передачи пакета, пока он не будет успешно получен. При использовании пакетов вместо передачи всех битов файла за один раз, Фред и Вильма могут устранить ошибки, посылая повторно только часть файла. Книга(и) правил Чтобы хорошо сделать какую-то нужную всему миру работу, требуется много стандартов. Чтобы обеспечить работу сетей, нужно много сетевых стандартов и сетевых протоколов. Большинство отдельных стандартов и протоколов нельзя назвать очень уж сложными, а многие вообще представляются вполне очевидными, стоит только немного заняться ими. Как я люблю говорить студентам, читая лекции, ни одна часть сети не является сложной; их разрабатывают люди, такие же как вы и я, и люди, которые разрабатывают сетевые стандарты, стараются следовать принципу KISS (keep it simple, stupid — делай это просто, болван!). Сложности возникают, когда вы создаете современную сеть, которая соответствует сотням и тысячам стандартов и протоколов. Те, Кто Пришли Раньше Нас, создали много стандартов. Если вам придется изучить каждый сетевой продукт, чтобы выяснить, какому из большого количества различных стандартов он соответствует, вы всерьез задумаетесь о другой карьере! (Между прочим, Те, Кто Пришел Раньше Нас, — только мой способ сослаться на всех тех людей, которые создали несметное число сетевых стандартов.) Чтобы держать все под контролем, Те Же Самые Люди, Которые Пришли Раньше Нас, объединили сетевые стандарты в большие группы и издали эдикты типа "Эй, если вы будете использовать продукты, которые соответствуют этому большему набору стандартов, то все они будут взаимодействовать между собой." Вы можете рассматривать эти большие группы правил как инструкции по применению; пока каждый компонент выполняет правила, изложенные в инструкции, все работает хорошо. Например, инструкция по применению могла бы включить следующее: ■ стандарт на кабели и соединители ■ стандарт, регламентирующий использование определенных напряжений для обозначения 0 и 1 ■ протокол, позволяющий исправлять ошибки ■ протокол для формирования запросов и получения файлов с файлового сервера.
60 Часть I. Основы организации сетей Как вы уже могли догадаться, никто на самом деле не использует термин "инструкция по применению". Но тогда как на самом деле называются эти наборы или группы стандартов и протоколов? Вот некоторые из терминов: ■ проект сети ■ сетевая модель ■ структурная модель ■ модель архитектуры сети ■ сетевая архитектура Независимо от того, какой термин используется, все они подразумевают одно и то же: инструкцию по организации сети. Стандарты и протоколы регламентируют правила работы отдельных частей или выполнения отдельных функций сети, а сетевая модель (далее в книге мы будем использовать именно этот термин) перечисляет ряд стандартов и протоколов, которые, при совместном использовании, позволяют компьютерам связываться между собой. Далее мы расскажем подробнее о сетевых моделях двух типов: патентованной и открытой. Патентованные сетевые модели препятствуют распространению сетевых устройств Были времена, когда в мире не было ни сетей, ни компьютеров. Потом был создан первый компьютер, но, поскольку он был один и ему не с кем было общаться, не было и потребности в сети. Наконец, был создан второй компьютер, и одновременно появилась потребность в сети. Сети начали развиваться и предлагаться поставщиками компьютеров в конце 1960-х годов, а в конце 1970-х они стали весьма популярными. Каждый производитель компьютеров создавал собственную сетевую модель, которая позволяла компьютерам одного поставщика легко общаться между собой. Ко времени появления сетей двумя крупнейшими производителями компьютеров в мире были корпорации International Business Machines (IBM) и Digital Equipment Corporation (DEC). IBM создала свою сетевую модель, именуемую "архитектура сетевых систем" (systems network architecture, SNA), a DEC создала свою, остроумно назвав ее DECnet. Эти составляющие собственность производителя сетевые модели и другие, похожие на них, как бы они ни были хороши — ведь они позволили создавать сети, и эти сети работали! — нельзя было назвать прекрасными. Проблема с этими патентованными сетевыми моделями состояла в том, что они были... патентованными. Поэтому IBM-компьютеры не могли общаться с компьютерами DEC. Вообразите, что то же самое произошло бы с телефонами; вы бы не могли позвонить вашему приятелю, если бы у него был телефон другого производителя! Данная проблема представлена на рис. 3.4, далее следует описание ее решения. Как видите, если бы компания захотела приобрести несколько компьютеров IBM и несколько — компании DEC, ей пришлось бы использовать для них две отдельные сети. Хотя это может показаться просто смешным, представьте, однако, что вы могли бы приобретать только ПК компании Dell, потому что ПК фирмы Gateway не
Глава 3. Создание сети: все начинается с плана 61 могут связываться компьютерами Dell. Но именно так и обстояли дела с патентованными сетевыми моделями. Рис. 3.4. Неспособные совместно работать сети IBM и DEC в одной компании Было предложено два решения этой проблемы: одно краткосрочное, другое долговременное. Появление краткосрочного решения, проще говоря, было обусловлено законами старого доброго капитализма: компания DEC заставила свои компьютеры соответствовать модели SNA корпорации IBM. Почему? Потому что валовый доход IBM был в то время примерно в 10 раз больше. Поэтому DEC и создала программное обеспечение, которое осуществляло преобразование стандартов DECnet в стандарты SNA. Это было не очень изящное решение, но оно работало. Это решение показано на рис. 3.5; в следующем разделе мы рассмотрим долговременное решение. Рис. 3.5. DECnet эмулирует SNA, используя шлюз Компания DEC создала шлюз DEC-to-SNA, который позволил связываться между собой компьютерам DEC и IBM SNA. Термин шлюз (gateway) относится к широкому классу сетевых устройств, которые осуществляют преобразование от одного стандарта к другому. Как видите, компьютер DEC действовал как IBM-компьютер, используя сетевую модель SNA. Компания DEC просто разработала программное обеспечение, выполняющееся на устройстве, названном шлюзом, оно-то и преобразовывало DECnet в SNA, и наоборот.
62 Часть I. Основы организации сетей Общедоступные сетевые модели содействуют распространению сетевых устройств Второе, лучшее и долговременное решение должно было заставить IBM и DEC (и Apple, и Novell, и Microsoft, и Banyan, и Xerox, и т.д.) отказаться от использования своих патентованных сетевых моделей и применять общедоступную, открытую сетевую модель. Сегодня мы наслаждаемся результатами того преобразования. Мы живем в мире, в котором фактически каждый компьютер использует одну и ту же общедоступную сетевую модель, названную протокол управления переданей/ межсетевой протокол (transmission control protocol/internet protocol), или протокол TCP/IP. Если все компьютеры используют одну и ту же сетевую модель, все они могут общаться между собой. TCP/IP — всего лишь еще одна сетевая модель, но она победила другие модели. И когда мы говорим, что модель TCP/IP выиграла, то подразумеваем, что это была большая победа! Используя Интернет, вы используете TCP/IP. Посылая электронную почту или текстовые сообщения с мобильного телефона, вы используете TCP/IP. Если вы сидите за рабочим столом и используете файловый сервер, большую часть рабочего времени вы используете TCP/IP. Патентованные модели, такие как DECnet и SNA, все еще применяются, но намного реже, чем прежде. TCP/IP следует рассматривать как общедоступную сетевую модель {public networking model), потому что ни один производитель не устанавливает ее стандарты и протоколы единолично, в процессе определения стандартов участвуют представители многих компаний и организаций. Процессом создания стандартов TCP/IP управляет целевая группа инженерной поддержки Internet (Internet engineering task force, IETF). Целевая группа IETF, согласно определению Web-сайта IETF, является "открытым международным сообществом проектировщиков сетей, операторов, поставщиков и исследователей, заинтересованных в развитии архитектуры Internet и ее бесперебойной работе. Она открыта для любого заинтересованного человека" (http: //www. ietf .org). Любой человек, в том числе вы и я, может участвовать в создании стандартов и протоколов TCP/IP. Как развиваются стандарты TCP/IP Как говорилось в предыдущем разделе, группа IETF управляет созданием и одобрением стандартов и протоколов TCP/IP. Основные определения протокола TCP/IP содержатся в документах, называемых "запросы на комментарии" (requests for comments; RFCs). Каждый документ RFC определяет некоторый протокол или стандарт, который является важным для модели TCP/IP. Название "запросы на комментарии" объясняется тем фактом, что, прежде чем проект протокола станет стандартным, его может "прокомментировать" любой человек. Это становится возможным благодаря тому что рабочие предложения RFC размещаются в Internet, поэтому любой человек может ознакомиться с ними и дать свои предложения, прежде чем документ станет официальным документом RFC. Если вы хотите познакомиться с документами RFC, относящимися к сетевой модели TCP/IP, все, что вы должны сделать, — это воспользоваться... TCP/IP. Это правда: если вы воспользуетесь Web-браузером и введете адрес http://www.rfc-editor.org, то попадете на Web-сайт, который позволяет просмотреть документы RFC. Однако большинство людей изучают TCP/IP, черпая информацию из других источников (например,
Глава 3. Создание сети: все начинается с плана 63 из нашей книги), а потом уже приступают к чтению рабочих предложений, поскольку это — сугубо технические документы, в которых трудно разобраться без подготовки. Но главное то, что любой может читать эти стандарты, разбираться в них и применять. Популярные протоколы TCP/IP Когда изучаешь что-что новое, всегда полезно рассматривать примеры. Комплект (специалисты говорят — стек) TCP/IP состоит из большого количества отдельных протоколов. Его название — TCP/IP — фактически образовано из аббревиатур двух самых популярных протоколов модели TCP/IP. В следующих двух разделах рассказано о происхождении этих двух протоколов. Протокол управления передачей (TCP) Протокол TCP имеет несколько особенностей, которые рассматриваются в главе 9. Но знание некоторых его деталей поможет вам уже сейчас разобраться в концепции TCP/IP. Самая главная особенность TCP — его способность исправлять ошибки, она реализуется примерно так, как показано на рис. 3.3. Здесь представлен воображаемый протокол, используемый для исправления ошибок. На рис. 3.6 показан тот же пример, но с подробностями, касающимися работы протокола TCP. Старый компьютер Фреда Супер-пупер компьютер Вильмы «— -<— ««— _zzz *- Заголовок TCP Порядк. № = 1 Заголовок TCP Порядк. № = 2 Заголовок TCP Порядк. № = 3 Заголовок TCP Подтв. = 2 Заголовок TCP Порядк. № = 2 Польз, данные Первая часть... Польз, данные \>J- Вторая часть... Польз, данные Третья часть... Польз, данные Может быть пустым Польз, данные Вторая часть... Рис. 3.6. Исправление ошибок протоколом TCP Чтобы исправить ошибки, TCP использует заголовок, вставляемый перед пользовательскими данными. Обратите внимание: на рис. 3.6 показаны два прямоугольника, над первым вы видите слова "заголовок TCP," над примыкающим к нему — "пользовательские данные" Заголовок {header) — это связка служебных двоичных разрядов, добавленных к пользовательским данным для того, чтобы протокол мог выполнить свою работу. Например, чтобы выполнить исправление ошибок, TCP должен пронумеровать пакеты. Чтобы пронумеровать пакеты, TCP нужно место, где он может поместить соответствующее число. Таким образом, TCP помещает число, порядковый номер (sequence number), в заголовке TCP. Заголовок TCP — это часть пакета, который посылают через сеть.
64 Часть I. Основы организации сетей TCP также определяет часть заголовка, содержащую номер подтверждения. TCP использует поле порядкового номера подтверждения {acknowledgment number) в заголовке, чтобы сообщить отправителю, какие пакеты были переданы с ошибками. Заметьте, что Фред устанавливает порядковый номер подтверждения в пакетах, которые он посылает назад Вильме. Номер подтверждения указывает на следующий пакет, который Фред ожидает получить. Например, когда Фред указывает значение подтверждения 2, это означает, что он получил пакет номер 1 и ожидает теперь пакет номер 2. Благодаря этому Вильма знает, что должна послать пакет номер 2 еще раз. Этот процесс указания номера следующего ожидаемого пакета, вместо того чтобы указывать последний полученный пакет, называют прогнозное подтверждение (forward acknowledgment). Благодаря этому примеру мы лишь прикоснулись к тому, что называется TCP. В дополнение к материалу, который вы найдете в главе 9 этой книги, вы можете бесплатно получить запрос на комментарии TCP с сайта, адрес которого http:// www.ietf.org. Достаточно щелкнуть на ссылке, ведущей на страницы с RFC, и поискать на них RFC 793. Межсетевой протокол (IP) Межсетевой протокол (IP)—другой протокол стандарта TCP/IP. Протокол IP определяет правила логической адресации и маршрутизации для модели TCP/IP. Лучшая аналогия тому, как IP определяет правила адресации и маршрутизации, — сравнение с почтовой связью. Прежде чем вы бросаете письмо в почтовый ящик, вы пишете на конверте адрес. Аналогично, прежде чем компьютер сможет послать пакет по физической сети, он должен перед пакетом поместить адрес. Структура адреса определена протоколом IP, она описана в RFC 791. Потребность в протоколе IP и в IP-адресах не вполне очевидна в случае сети, в которую включены только компьютеры Фреда и Вильмы. Однако рис. 3.7 делает потребность в системе адресации более очевидной. 1Р-адрес Фреда 1.1.1.1 Фред просматривает сайт www.fredsco.com Web-сервер IP-заголовок 1 Компания [ Фреда 1.1.1.1 Данные IP-заголовок 2.2.2.2 Данные ->■ IP-адрес Барни 2.2.2.2 Барни просматривает сайт www.fredsco.com Таблица маршрутизации Адресат Следующий переход 1.1.1.1 ISP1 2.2.2.2 ISP2 Рис. 3.7. Маршрутизация, основанная на использовании IP-адресов
Глава 3. Создание сети: все начинается с плана 65 Как видно из рис. 3.7, Барни и Фред с волнением наблюдают за соревнованиями по боулигу, проводимыми в компании Фреда, о ходе которых сообщается на Web- сайте (www. f redsco. com). На их домашних компьютерах открыто окно браузера, в котором отображается страница www. f redsco. com. Для того чтобы Фред и Барни могли одновременно видеть эту Web-страницу, Web-сервер посылает пакеты им обоим. Пакеты, посланные Фреду, имеют в IP- заголовке {IP header) IP-адрес Фреда, а пакеты, посланные Барни, имеют в заголовке его IP-адрес (см. рис. 3.7). (Заголовки представляют собой дополнительные байты, которые посылаются вместе с пакетом.) Протокол использует эти дополнительные байты, чтобы получить информацию (такую как IP-адреса), которая нужна протоколу, чтобы он мог выполнить свою работу. Сеть Internet-провайдера ISP3 включает много устройств и кабелей, а также маршрутизаторы. (Значок маршрутизатора похож на хоккейную шайбу со стрелками на ее верхней части.) Когда пакеты, посланные Web-сервером сети, достигают маршрутизатора провайдера ISP3, маршрутизатор "смотрит" на IP-адрес и решает, куда отправить пакет. Пакеты, посланные Фреду, отправляются провайдеру ISP1, а пакеты, посланные Барни, отправляются провайдеру ISP2. Чтобы знать, куда отправлять пакеты, маршрутизатор использует таблицу маршрутизации {routing table). Она работает как дорожный указатель, установленный на автомагистрали. Она указывает пакетам, куда нужно повернуть, чтобы достигнуть места назначения. Стандарты TCP/IP, не являющиеся стандартами TCP/IP Номера новым RFC присваиваются IETF последовательно. Многие из более ранних RFC уже не используются, но вы можете рассчитывать на то, что в настоящее время активны несколько тысяч RFC в модели сети TCP/IP. Участники группы IETF стараются быть прагматичными. Хотя много протоколов и стандартов необходимы, чтобы сети TCP/IP могли успешно работать, другие органы по стандартизации уже разработали стандарты, которые TCP/IP может использовать. Благодаря этому IETF может увильнуть от выполнения больших объемов работы, просто ссылаясь на уже известные стандарты, созданные другими организациями. В этом разделе мы расскажем о нескольких наиболее важных органах стандартизации. Стандарты для передачи данных на небольшие расстояния Термин локальная сеть {local-area network, LAN) определяет тип сети или части большей сети, в которой сетевые устройства располагаются относительно близко друг к другу. Каждый может иметь собственное мнение о том, что подразумевается под словами "близко друг к другу", но мы будем считать, что "близко" означает "в том же самом здании" рши "в зданиях одного небольшого университетского городка (кампуса)". Как и любая другая сеть, LAN включает компьютеры, аппаратные средства, программное обеспечение и кабельную систему, которые обеспечивают связь. Сетевая модель TCP/IP не определяет детали стандартов и протоколов конкретно для LAN. Стандарты для LAN разрабатывает Институт инженеров по электротехнике и радиоэлектронике, ИИЭР {Institute of electrical and electronics engineers, IEEE). Поэтому, если речь идет о стандартах для LAN, просто говорят "стандарты IEEE LAN" (стандарты IEEE для локальной сети).
66 Часть I. Основы организации сетей В простой локальной сети, типа той, которую установила Вильма, используются протоколы и стандарты TCP/IP, а также стандарты IEEE. Стандарты IEEE для локальной сети определяют, как биты данных физически передаются через LAN. Модель TCP/IP определяет стандарты и протоколы, используемые двумя компьютерами, которые подключены к LAN. IEEE фактически разрабатывает много стандартов для различных технологий, не только для организации сетей. IEEE старается определить самые современные стандарты на локальные сети. Группа IETF, с другой стороны, готова рассмотреть любой протокол или стандарт, который может помочь всему набору сетевых устройств работать совместно. Можно считать, что IEEE занимается отдельными технологиями, a IETF рассматривает более широкий набор требований и использует много стандартов, определенных другими организациями стандартов, такими как IEEE. Стандарты для передачи данных на большие расстояния Термин глобальная сеть (wide-area network, WAN) относится к сети или части сети, в которой устройства размещены относительно далеко друг от друга. Всякое расстояние относительно, но мы далее будем полагать, что под термином "глобальная сеть" (WAN) подразумевается сеть или часть сети, кабельная система которой простирается за пределы территории одной компании. Расстояние может измеряться несколькими милями, но это могут быть и тысячи миль! Например, вообразите, что компания Фреда хочет иметь соединение между своим офисом в Снеллвилле, штат Джорджия, и головным офисом в Мейсоне, штат Огайо (расстояние между ними составляет приблизительно 800 км). Проблема состоит в том, что Фред не может проложить кабель между этими двумя офисами. Поэтому он находит телефонную компанию, которая сдает ему в аренду канал связи. Этот выделенный канал (leased line) позволяет Фреду создать WAN, соединяющую две площадки (рис. 3.8). Кабели, проложенные под землей Здание телефонной Здание телефонной компании вблизи компании вблизи офиса в шт. Джорджия офиса в шт. Огайо Рис. 3.8. Альтернатива прокладке кабеля на расстояние 800 км: WAN, использующая выделенный канал Облако на рис. 3.8 представляет телефонную сеть компании. Это означает, что сеть телефонной компании намного сложнее, чем показано на рисунке, но в данный момент детали нам не важны. Выделенный канал дает Фреду физическую возможность послать пакеты из его офиса в головной, и наоборот. Выделенный канал и связанное с ним оборудование — один из способов, которым можно реализовать WAN. Как и в случае LAN, сетевая модель TCP/IP не определяет все детали логики работы и прокладки кабелей для WAN. Стандарты для WAN определяет Международ-
Глава 3. Создание сети: все начинается с плана 67 ный телекоммуникационный союз (International telecommunications union, ITU), поэтому стандарты TCP/IP просто говорят: "Используйте стандарты ITU на WAN, если вы хотите использовать WAN." ITU сосредотачивается на стандартах, которые регламентируют работу телекоммуникационных компаний — телефонных компаний — мира. Как и IEEE, ITU занимается в основном многими конкретными технологиями. Группа IETF, которая определяет протоколы, включенные в TCP/IP, находит хорошее применение стандартам, созданным ITU. Как съесть слона, или стиль TCP/IP Старый вопрос, который многие из вас, вероятно, слышали, таков: "Как вы едите слона?" Это — трудный вопрос, если только вы не знаете простой ответ на него: "Каждый раз я делаю только один маленький укус." Если вы прочитали книгу до этого раздела, то сделали только первые укусы, пытаясь съесть сетевого слона — фигурально, конечно. Чтобы помочь вам в изучении, сетевая модель TCP/IP помогает есть — или по крайней мере осваивать — сетевую модель TCP/IP, сегментируя типы протоколов и стандартов на уровни (layers). Каждый уровень сетевой модели представляет одну категорию протоколов. Так, вы можете рассматривать каждый протокол как принадлежащий определенному уровню, это поможет вам быстрее разобраться в том, как работает та или иная сетевая модель. На рис. 3.9 показаны уровни сетевой модели TCP/IP. Сетевая модель TCP/IP Сетевая модель TCP/IP (альтернативная) Приложений Транспортный Межсетевой Сетевой интерфейс HTTP (Web) TCP IP LAN, WAN Приложений Транспортный Межсетевой Канальный Физический Рис. 3.9. Четыре уровня сетевой модели TCP/IP На этом рисунке вы видите четыре уровня модели сети TCP/IP (слева). Справа вы видите модель с пятью уровнями. Левая часть рисунка правильна, но многие предпочитают использовать набор из пяти уровней, представленный в правой части рисунка. С точки зрения практики не имеет значения, состоит TCP/IP из четырех или пяти уровней; вы должны только знать об этих уровнях, чтобы мы могли далее говорить о TCP/IP. Каждый уровень характеризует одну общую функцию, которая должна быть им выполнена. В последующих главах вы узнаете больше о каждом уровне модели TCP/IP и протоколах, которые являются частью этих уровней. Вы можете видеть протоколы, упомянутые в этой главе, на рис. 3.9, рядом со связанными с ними уровнями. На рисунке также упомянут другой протокол — протокол передачи ги-
68 Часть I. Основы организации сетей пертекста (hypertext transfer protocol, HTTP) — который используют Web-браузеры и Web-серверы. Все сетевые модели представляются в виде уровней по одним и тем же причинам. Например, ни одна из логических операций, используемых TCP для устранения ошибок, ничего не "знает" о механизме физической передачи битов. Поэтому человек, пишущий программное обеспечение для TCP/IP на компьютере, может не думать о том, как оно будет реализовано физически. Точно так же маршрутизатор, такой как расположенный в сети провайдера ISP3 (см. рис. 3.7), направляет пакеты IP, основываясь на их IP-адресах, но он не должен беспокоиться о том, как будут исправлены ошибки. Таким образом, разделение на уровни помогает в разработке изделий и сохраняет простоту каждого протокола. Чем меньше сложность протоколов, тем лучше для сетевых продуктов и устойчивости сетей. Что ж, теперь вы знаете, чем TCP/IP является в действительности — набором протоколов и стандартов, некоторые из которых не определены непосредственно моделью TCP/IP, но тем не менее позволяют создавать сети. Вы можете найти огромное количество книг по TCP/IP. Однако, прежде чем перейти к чтению следующей главы, вы должны познакомиться с моделью взаимодействия открытых систем (open systems interconnection model, OSI). Как съесть тираннозавра, или стиль OSI Тираннозавр был одним из самых крупных динозавров. На одном Web-сайте (http://www.dinosaurvalley.com/drcdt/wld/) сообщается, что его длина составляла 26 метров! Да, но какое отношение динозавры имеют к организации сетей? Дело вот в чем: когда сетевая модель TCP/IP завоевывала авторитет в деловом мире, Международной организацией по стандартизации (International organization for standardization, ISO) развивалась конкурирующая общедоступная сетевая модель, названная OSI. Если TCP/IP походит на слона, то сетевая модель OSI больше походит на тираннозавра. Если охарактеризовать ее одним словом, то она огромна! Она также сложна. Защищая ее, ISO утверждает, что хотела создать исчерпывающую сетевую модель — модель, которая, после реализации ее всеми компьютерами на планете, позволит обеспечить взаимодействие всех компьютеров всех поставщиков изо всех стран! Краткая версия этой истории такова. Большинство компьютеров в мире использует сетевую модель TCP/IP, и почти ни один не использует модель OSI. Хотя модель OSI, возможно, могла стать самой большой сетевой моделью и, наверное, предоставляла бы больше возможностей, она развивалась намного медленнее, чем модель TCP/IP. Поэтому модель TCP/IP завоевала рынок еще до того, как была закончена разработка OSI. (Знатокам динозавров мы должны сказать следующее: мы знаем, что тираннозавр был проворнее, чем слоны, поэтому наша аналогия здесь не работает.) Кроме того, вы должны знать, что ISO все еще играет активную роль в развитии стандартов, сотрудничая с IETF, ITU и другими органами стандартизации. Поэтому, хотя модель OSI проиграла соревнование с моделью TCP/IP, организация, которая ее предложила, процветает.
Глава 3. Создание сети: все начинается с плана 69 Тираннозавр против слона Почему мы вообще упомянули о модели OSI? Как это иногда бывает, часть терминологии, предложенной сошедшей с арены моделью OSI, активно используется и сегодня. В частности, используются названия уровней модели OSI при описании уровней других сетевых моделей, включая TCP/IP. Чтобы разбираться в организации сетей, вы должны знать названия семи уровней модели OSI. OSI использует модель с семью уровнями вместо четырех (или пяти) уровней модели TCP/IP. На рис. 3.10 показано, как соответствуют друг другу уровни обеих моделей. Например, OSI определяет, что исправление ошибок, возникающих при передаче данных между компьютерами конечных пользователей, должно выполняться протоколами транспортного уровня {transport layer). Поэтому транспортный уровень TCP/IP, который также определяет, каким образом компьютеры конечных пользователей должны исправлять ошибки при использовании TCP, соответствует уровню 4 модели OSI. 7 6 5 4 3 2 1 OSI Model Приложений Представления Сеансовый Транспортный Сетевой Канальный Физический TCP/IP Model Приложений Транспортный Межсетевой Сетевой интерфейс TCP/IP Protocols HTTP, SMTP, РОРЗ TCP, UDP IP Ethernet, Frame Relay, \ PPP Рис. 3.10. Модель OSI против модели TCP/IP (или тираннозавр против слона) Знание модели OSI и названий ее уровней полезно, потому что большинство сетевых терминов, относящихся к протоколам и стандартам, относится к модели OSI. Например, IP работает на межсетевом уровне {internetwork layer) модели TCP/IP. Этот уровень наиболее близок к сетевому уровню {network layer) модели OSI, или уровню 3 OSI. Следовательно, используя популярную на сегодняшний день терминологию, относящуюся к организации сетей, IP можно было бы назвать протоколом сетевого уровня {network layer protocol). Обратите внимание: этот термин использует название модели OSI для эквивалентного уровня и не использует термин "межсетевой" эквивалентного уровня модели TCP/IP. Вот еще некоторые примеры фраз, которые часто используются сегодня и относятся к терминологии OSI: TCP — протокол уровня 4. IP — протокол уровня 3 Работу LAN регламентируют протоколы уровней 1 и 2. Работу WAN определяют протоколы уровней 1 и 2. TCP — протокол транспортного уровня. Если вы новичок в вопросах организации сетей, то, наверное, никогда не будете использовать сеть, реализующую модель OSI. Автору этой книги пришлось заниматься сетями более 20 лет — он даже работал в корпорации IBM, когда ее предста-
70 Часть I. Основы организации сетей вители считали, что модели OSI вскоре будут соответствовать сети всего мира — но ему ни разу не пришлось использовать компьютер, в котором была бы полностью реализована модель OSI. Но некоторыми относящимися к ней терминами все время приходилось пользоваться. Так что, если вы их еще не освоили, рекомендуем запомнить уровни модели OSI и то, как они соотносятся с уровнями модели TCP/IP. Если вы хотите запомнить первые буквы от названий этих семи уровней, можно использовать для этого следующие мнемонические фразы. Первые буквы в каждом слове этих фраз соответствуют первым буквам названий уровней. — All People Seem To Need Data Processing (уровни от 7 к 1) — Please Do Not Throw Sausage Pizzas Away (уровни от 1 к 7) — Футбольный Клуб Спартак? Только Слабых Привыкли Побеждать! (уровни от 1 к 7) — Физический Канал Сети Транспортирует Сеансы, Представления и Приложения (уровни от 1 к 7) Резюме Для того чтобы сети работали, кто-то должен заниматься их планированием. Эти планы принимают форму стандартов и протоколов, без которых применять сети было бы невозможно. Сетевые модели объединяют множество стандартов и протоколов, преследуя следующую цель: сетевые аппаратные средства и программное обеспечение, соответствующие объединенному набору стандартов, должны хорошо работать в сети. Первоначально поставщики создавали собственные патентованные сетевые модели, самыми популярными из них были SNA корпорации IBM и модель DECnet компании DEC. Патентованные сетевые модели в конечном счете были вытеснены открытой сетевой моделью — TCP/IP, — ставшей самой популярной сетевой моделью во всем мире. Модель TCP/IP определяет свои стандарты и протоколы, используя документы, получившие название "запросы на комментарии" (RFC). Фактически ее название образовано аббревиатурами, соответствующими двум наиболее популярным протоколам этой модели, IP и TCP. Модель TCP/IP также ссылается на стандарты других органов по стандартизации, особенно IEEE, ITU и ISO для стандартов LAN и WAN. Другая общедоступная сетевая модель, OSI, не имела успеха на рынке, она интересна главным образом как исторический факт. Однако названия уровней сетевой модели OSI все еще в ходу, потому что в документации и терминологии, касающейся сетевых моделей, часто используют термины из модели OSI. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А. 1. Опишите общими словами преимущества использования стандартов. 2. Как назывались две первые популярные патентованные сетевые модели? 3. Определите термин "сетевая модель" и сравните его с термином "сетевой стандарт". 4. Перечислите две общедоступные сетевые модели, описанные в этой главе, и расшифруйте соответствующие аббревиатуры.
Глава 3. Создание сети: все начинается с плана 71 5. Перечислите названия четырех уровней сетевой модели TCP/IP, начиная с самого верхнего. 6. Перечислите названия семи уровней сетевой модели OSI, начиная с самого верхнего. 7. Перечислите две организации по стандартам, разрабатывающие стандарты на LAN и WAN, на которые ссылается TCP/IP. Какая из них определяет стандарты LAN? 8. Где маршрутизатор хранит информацию, которая подсказывает ему, куда отправлять пакеты? 9. Сетевики используют терминологию OSI, чтобы в общих чертах описывать сетевые протоколы. Перечислите два термина OSI, которые могли бы описать протокол IP. 10. Определите термин "пакет." 11. В данной главе используются термины "стандарт" и "протокол," между которыми есть одно существенное различие. В чем оно состоит? 12. Какой термин относится к битам, которые добавляются к данным конечного пользователя, чтобы протокол имел место для хранения информации, важной для выполнения протоколом своей функции?
ЧАСТЬ II Работа местного департамента (сетевого) транспорта В части 2 рассматриваются дороги — в смысле сети —«местного сообщения. То есть она посвящена локальным сетям (LAN). Начинается вторая часть с главы 4, в которой рассматриваются основы создания локальных сетей Ethernet на физическом уровне. В главе 5 описываются правила и протоколы, которым должны следовать компьютеры, образующие локальную сеть Ethernet. Глава 6 посвящена вопросам совершенствования локальных сетей Ethernet, в частности повышению их быстродействия. В заключительной, 7-й главе части, говорится о том, как комплект аппаратных средств локальной сети можно использовать для создания нескольких виртуальных LAN. Глава 4. Как построить дорогу (сеть) местного значения Глава 5. Правила движения: как использовать местную (сетевую) дорогу Глава 6. Снижение перегрузки и повышение скорости на местной (сетевой) дороге Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат
Что вам предлагается освоить После прочтения этой главы вы должны: S объяснить, как компьютеры могут связываться между собой, используя электрические сигналы в виде двоичных единиц и нулей S перечислить компоненты кабелей и соединителей популярных локальных сетей s объяснить разницу между кабелями Ethernet с прямыми и перекрестными соединениями контактов s знать, как работает концентратор Ethernet S перечислить преимущества использования структурированной кабельной системы.
Глава 4 Как построить дорогу (сеть) местного значения До сих пор мы говорили о том, как сети позволяют компьютерам связываться между собой. Работа сетей обеспечивается программным обеспечением, часть которого устанавливается на компьютерах, а часть на маршрутизаторах. В состав сети входят также платы интерфейса сети (NIC), устанавливаемые в ПК, о них мы уже упоминали в главе 3. Наконец, для создания сети необходимы кабели, представляющие собой физическое средство передачи битов информации через сеть. Эта глава открывает вторую часть книги, названную нами "Работа местного департамента (сетевого) транспорта". Дело в том, что в США многие города, все штаты и федеральное правительство имеют свои департаменты транспорта (department of transportation, DOT), на уровне правительства это — Министерство транспорта. Каждый DOT планирует, строит шоссе и решает проблемы, связанные с перевозками. Вы можете многое узнать о сетях, сравнивая их с дорогами. Перевозка битов по дороге сети Я только что вернулся с ланча. Одно из самых моих любимых мест для ланча — La Frontera Мех-Мех Grill. Когда наступило время обеда, я сел в свой автомобиль, доехал до ресторана, заказал все, как обычно, и поехал домой. Когда я вернулся домой, жена спросила: — Ты что, ездил по этой улице с сумасшедшим движением, чтобы пообедать? — Какая разница, по какой улице я ехал? Важно, куда я ехал. Для того чтобы хорошо разбираться в сетях, вам нужно знать основные сведения о сетевых эквивалентах дорог. Если вас заинтересует то, о чем говорится на нескольких следующих страницах, вы, возможно, — один из тех, кому понравится техническая сторона работы с сетями. Если не заинтересует, вы, по крайней мере, разберетесь в основных концепциях, сможете общаться с фанатами сетей всего мира и будете твердо знать, как организованы сети. Что такое локальная сеть В главе 3 локальная сеть (local-area network, LAN) определялась как сеть, устройства которой расположены относительно близко друг к другу. Конечно, сеть, в соответствии с основным определением, используемым в нашей книге, включает компьютеры, программное обеспечение, аппаратные средства и кабельную систему, все вместе это позволяет компьютерам связываться между собой. Хотя это определение достаточно точное, оно не дает детальной картины, что же такое локальная сеть. На рис. 4.1 показана локальная сеть, которую вы уже видели ранее, в главе 3.
76 Часть II. Работа местного департамента (сетевого) транспорта Старый компьютер Фреда Супер-пупер компьютер Вильмы NIC Сетевое программное обеспечение Платы интерфейса сети, находящиеся внутри ПК Кабель L t 1 Соединители ' Рис. 4.1. Компоненты простой локальной сети В данном случае сеть состоит из нескольких элементов, назначение которых вполне очевидно. На компьютерах должно быть установлено сетевое программное обеспечение, в противном случае они никогда не сделают даже попытки связаться. Должна быть также физически реализована возможность передавать биты от одного компьютера к другому — следовательно, необходим кабель (cable), а в каждом компьютере должна быть установлена плата интерфейса сети. (На рис. 4.1 платы интерфейса сети показаны вне компьютеров, чтобы их лучше было видно, но обычно они устанавливаются внутри компьютеров.) Более простых локальных сетей, чем показанная на рисунке, не бывает. Большие локальные сети могут быть намного сложнее, включать многие компоненты, такие как концентраторы и коммутаторы, о которых мы будем рассказывать в последующих главах. В этой главе мы разберемся, как компьютеры могут передавать биты через дорогу-сеть. Тема, рассматриваемая здесь, эквивалентна примерно такому разговору инженера департамента транспорта с прохожим: "Скажите пожалуйста, как можно быстро добраться до автострады Parker-Puckett Parkway?" Ответ может быть таким: "Это случаем не возле мексиканского квартала, La Frontera?" А ответ инженера департамента транспорта будет таким: "Я не знаю, мне все равно. Это не на дороге. А меня сейчас волнует только дорога." Подобным образом некоторые сетевые инженеры полагают, что сеть — это только кабели, ну, возможно, еще платы интерфейса сети, но им нет дела до компьютеров, которые должны подключаться к кабельной системе. В этой главе мы тоже будем говорить лишь о том, как компьютеры посылают друг другу биты, а не о приложениях, которые на них выполняются. Передача битов по "дороге" локальной сети Если вы вернетесь к главе 2, то найдете в ней пример, в котором Фред открывал файл, находящийся на жестком диске компьютера Вильмы. Затем Фред печатал файл на принтере, подключенном к компьютеру Вильмы, и, наконец, сохранял его на жестком диске компьютера Вильмы. На рис. 4.2 представлен весь этот процесс. Чтобы этот процесс мог осуществиться, Фред и Вильма должны обеспечить передачу связки битов, находящихся в памяти одного компьютера, на другой компьютер. Итак, предположим, что, используя программу обработки текстов на одном компьютере, вы можете открыть файл, прочитать его содержимое, отредактировать и из-
Глава 4. Как построить дорогу (сеть) местного значения 77 менить файл. Аналогично, если вы можете послать биты, содержащиеся в этом файле, через сеть на другой компьютер, то можно отредактировать этот файл, используя ту же самую программу обработки текстов, уже на другом компьютере. Таким образом, чтобы сеть работала, она должна быть способна передавать связку битов с одного компьютера на другой. Окно текстового процессора ПК Вильмы Рис. 4.2. Основной процесс при использовании Фредом файлового сервера и сервера печати Езда битов по проводам Чтобы передать двоичный код с одного устройства на другое, отправляющее устройство посылает электрический сигнал по проводам. Электрические сигналы имеют много параметров, которые плата интерфейса сети может контролировать и изменять. За счет того что один из параметров будет принимать два разных значения, одно из которых будет трактоваться как двоичная 1, второе — как двоичный 0, можно по проводам передавать данные. Предположим, что оба компьютера, ПК1 и ПК2, имеют платы интерфейса сети, и эти платы соединены одним проводом. Провод — это всего лишь длинный тонкий кусок меди, которая очень хорошо проводит электрический ток. Теперь предположим, что стандарт кодирования {encoding standard), применяемый в компании, по-
78 Часть II. Работа местного департамента (сетевого) транспорта ставляющей платы интерфейса сети, таков: двоичный 0 представляется напряжением ± 5 В, а двоичная 1 — напряжением ± 10 В. Под термином "кодирование" понимается набор правил, определяющих, какой электрический сигнал должен использовать отправитель, чтобы представить в виде него двоичную 1 или двоичный 0. Основная идея представлена на рис. 4.3. ПК1 Чтобы послать 0101, я посылаю 5 В, затем 10, снова 5 и вновь 10 В! NIC Один провод +10В +5В -5В I Ь NIC 0 Вольт -10В Н 1 .1s .1s .1s .1s 0 10 1 Рис. 4.3. Основы передачи данных через сеть На этом рисунке ПК2 передает по проводу электрический сигнал. В данном случае он пытается передать двоичное число 0101. Поэтому он передает вначале сигнал напряжением 5 В, затем 10 В, снова 5 В и снова 10 В, поскольку воображаемая схема кодирования в данном примере устанавливает, что 5 В означают 0, а 10 В означают 1. ПК1, на другом конце провода, получает переданный электрический сигнал и интерпретирует его, используя тот же самый набор правил кодирования. Получается число 0101 — в точности то, которое хотел передать ПК2. Отметим, что граф, представленный на рис. 4.3, показывает дискретное, или постоянное, напряжение. Поскольку ось X (горизонтальная) представляет время, то, когда напряжение меняется, оно немедленно принимает следующее значение. Использование дискретных, постоянных значений, которые затем мгновенно изменяются на другие возможные дискретные значения (как на рис. 4.3), называется цифровой передачей {digital transmission). Чтобы передать двоичные числа, или двоичные знаки {binary digits), целесообразно использовать цифровую передачу. Для того чтобы цифровая передача данных осуществлялась правильно, отправитель и получатель должны договориться не только о том, какие параметры электрического сигнала должны представлять 0 и 1. Они должны также согласовать скорость, с какой биты будут передаваться по проводу. Так, представленный на рис. 4.3 приемник сигнала (ПК1) должен знать, каково значение электрического сигнала в
Глава 4. Как построить дорогу (сеть) местного значения 79 определенные моменты времени, отстоящие один от другого на одинаковые промежутки. Также отправитель (ПК2) должен использовать тот же самый регулярный временной интервал, чтобы знать, когда следует изменять напряжение. Например, если ПК2 изменяет напряжение, чтобы передать 0 или 1, каждую 0,1 секунды, и ПК1 осуществляет выборку полученного электрического сигнала каждую 0,1 секунды, они могут передавать 10 бит за секунду. Скорость в таком сетевом соединении составляет 10 бит/с. Если два ПК не согласовали скорость передачи, они не смогут передавать информацию в двоичном виде. Например, предположим следующее: ПК2 полагал, что скорость передачи составляет 10 бит/с, это означает, что он должен кодировать новый бит каждую 1/10 секунды. Если ПК1 полагает, что он должен получать бит 20 раз в секунду, он должен осуществлять выборку электрического сигнала каждую 1/20 секунды. ПК1 полагал бы, что он передает 10 бит каждую секунду, а ПК2 считал бы, что он получил 20 бит. Термин бит/с (bps), являющийся сокращением от "битов в секунду", часто называют скоростью сетевых соединений. Обратите внимание, скорость передачи измеряется в битах, а не в байтах. В реальной жизни локальные сети работают с намного большей скоростью, самые медленные передают 10 миллионов битов за секунду — мегабитов в секунду, Мбит/с. Отметим, что на рис. 4.3 представлен электрический сигнал прямоугольной формы (waveform), с положительным и отрицательным напряжением. На самом деле вам не нужно вникать в подробности относительно электрических сигналов, но по мере изучения сетей вы будете видеть другие рисунки, подобные вышеприведенному. Сетевые платы используют переменный ток. Положительное напряжение означает, что ток течет в одном направлении, отрицательное, — что ток течет в противоположном. Необходимость в двустороннем (сетевом) движении На рис. 4.3 ПК2 посылает электрический сигнал компьютеру ПК1. Если, наоборот, ПК1 попытается передать сигнал компьютеру ПК2 в то же самое время и по одному и тому же проводу, сигналы наложатся один на другой, и ни ПК1, ни ПК2 не поймут, что им передали. Чтобы решить эту проблему, ПК1 и ПК2 должны использовать два провода — один для того, чтобы ПК2 мог передавать сигналы компьютеру ПК1, второй — чтобы ПК1 мог передавать сигналы компьютеру ПК2. На рис. 4.4 показана эта ситуация: ПК1 и ПК2 могут одновременно передавать и получать информацию по двум проводам. Эквивалент асфальта: кабели Вы можете сесть в автомобиль и объехать лужайку перед своим домом, или проехаться по тротуару, или покататься по аллеям парка. Но, конечно, удобнее ехать по дороге! В предыдущих примерах этой главы были показаны платы интерфейса сети, использующие один медный провод для передачи данных в каждом направлении. Но в реальной жизни к плате подключается всегда пара проводов, для их прокладки используются кабели и соединители, благодаря чему работа выполняется быстрее и с более высоким качеством. Медные провода, соединяющие платы, заключены обычно в оболочку. Кабель представляет собой пластиковую трубку, внутри которой размещаются медные про-
80 Часть II. Работа местного департамента (сетевого) транспорта вода. На рис. 4.5 показан кабель, который чаще всего используют в современных локальная сетях. Я передам 1010 по верхнему проводу Я передам 0101 по нижнему проводу NIC Провод, по которому передает ПК2 1 1 0 *~ NIC Рис. 4.4. Одновременная передача данных по двум разным проводам Кабель UTP 1 Внешняя часть кабеля 1 Показан кабель, содержащий 4 провода/2 пары Витая пара Каждый провод — это медная проволока, покрытая цветной пластиковой изоляцией Кабель UTP, вид с торца • Сами медные проводники • Пластиковая изоляция для упрочнения • То, что вы видите в соединителе RJ-45 — цветная пластиковая изоляция Рис. 4.5. Типичный кабель, используемый в LAN Если вы внимательно рассмотрите этот рисунок, то увидите медные провода, каждый из которых покрыт пластиковой оболочкой. Медный провод тонкий и поэтому хрупкий. Он может легко порваться в руках техника. Именно для того, чтобы уве-
Глава 4. Как построить дорогу (сеть) местного значения 81 личить прочность провода, его и покрывают пластиковой оболочкой. Оболочка каждого провода имеет свой цвет, поэтому, взглянув на торцы кабеля, вы можете легко определить, где какой провод. Как вы уже догадываетесь (и об этом будет более подробно рассказано далее), очень важно, чтобы вы могли идентифицировать каждый провод на обоих концах кабеля. Вы также могли заметить, что провода на рис. 4.5 свиты парами. Каждая пара таких проводов так и называется — витая пара {twistedpair). Этот термин относится к паре свитых между собою проводов, свивают их, чтобы уменьшить электрические помехи. Если не переходить на специальный язык, то можно сказать, что электромагнитные помехи {electromagnetic interference, EMI) возникают, когда электрические сигналы, вызванные наличием других проводов или мощными электроприборами, работающими поблизости, изменяют электрический ток в проводе. Если внешние электромагнитные помехи изменяют сигнал, передаваемый по проводу, принимающий их компьютер может ошибочно интерпретировать 0 как 1, а 1 как 0, или может вообще не понять, что передал ему отправитель. За счет того что сигналы передаются по витым парам, а не по отдельным проводам, снижается влияние электромагнитных помех. (Кроме того, провода тонкие, а медь дешевая, почему бы не использовать два провода вместо одного?) Второй метод снижения электромагнитных помех — экранирование проводов. Благодаря экранированию, как следует из самого термина, провода кабеля экранируются от воздействия электромагнитных помех. Однако кабели с экранированными проводами менее гибкие и стоят дороже. Экранированные кабели называют "кабели с экранированными витыми парами" {shielded twisted pair, STP). Как вы уже, наверное, догадались, неэкранированные кабели называют "кабели с неэкранирован- ными витыми парами" {unshielded twisted pair, UTP). Технология локальных сетей находится сейчас на таком уровне, что в большинстве случаев можно применять более дешевые кабели с неэкранированными витыми парами (UTP). Экранированные кабели STP применяют в случаях, когда возникают проблемы из-за высокого уровня электромагнитных помех. На рис. 4.5 был показан кабель с неэкранированными витыми парами, на рис. 4.6 представлен экранированный кабель. Кабель STP • Внешняя • Экрани- • Экрани- оболочка рование рование кабеля всех пар каждой пары Рис. 4.6. Кабель с экранированными витыми парами (STP) Разделительные линии на дороге: соединители Представьте, что вы видите новую дорогу, которую только что заасфальтировали. Она такая новая, что департамент транспорта еще даже не разметил ее разделительными линиями. Итак, вы поворачиваете на эту дорогу и проезжаете по ней пару ки-
82 Часть Я. Работа местного департамента (сетевого) транспорта лометров. Вдруг вы видите грузовик, огромный, идущий на большой скорости, водитель которого полагает, что его половина дороги пролегает по ее середине. Свернув с дороги, вы мокете сказать сами себе: "Парень, ты напомнил мне, почему на концах кабеля бывают соединители!" Этот пример довольно надуманный, но зато он сразу выводит нас на ключевые причины использования соединителей. Если на дороге нет разметочных линий и не действуют правила движения, она становится опасной, поэтому департамент транспорта наносит на дорожное полотно разделительные линии, организуя таким образом полосы движения. Аналогичным образом соединители выстраивают провода на конце кабеля в строго определенном порядке. Естественно, каждый провод кабеля идентифицируется своим цветом, и для провода каждого цвета предусмотрено свое место в соединителе, который электрик закрепляет на конце кабеля. Соединители позволяют разместить провода на предназначенных для них местах аналогично тому, как разделительные линии направляют автомобили на отдельные полосы движения. Электрик может взять кабель и закрепить на его конце соединитель. Когда он делает это, каждый провод прикрепляется к контакту соединителя, так что когда он подключается к какому-либо устройству, электрический ток может протекать в соединитель этого устройства. Тип наружного провода в соединителе называется штыревой контакт, или просто штырек. Штырек (pin) — это не что иное, как физический контакт на конце соединителя, к которому присоединяется медная часть провода. Вы можете рассматривать штырек как полосу движения на дороге. На рис. 4.7 представлена фотография типичного соединителя, называемого соединитель типа RJ-45 (RJ-45 connector), а рядом — схема расположения контактов этого же соединителя. Ассоциация телекоммуникационной промышленности США (Telecommunications Industry Association, TIA) и Альянс отраслей электронной промышленности (Electrical Industries Alliance, EIA) разработали стандарты на кабели и соединители. Например, они определили, как нужно применять соединитель RJ-45 в локальных сетях, и варианты неэкранированных кабелей (UTP). Вы можете больше узнать о TIA и EIA, обратившись на их Web-сайты, имеющие, соответственно, адреса http:// www. tiaonline . org и http: //www. eia. org. Если вы никогда не видели соединитель типа RJ-45, но пользуетесь локальной сетью Ethernet на работе или дома, вы можете отсоединить кабель от платы интерфейса сети своего компьютера и посмотреть на соединитель. В большинстве случаев кабель будет завершаться соединителем RJ-45. (Ethernet пока что самая популярная на сегодняшний день локальная сеть. Мы подробнее расскажем о ней в следующих главах.) Организации EIA/TIA определяют стандарты, регламентирующие, какие провода к каким контактам должны быть подсоединены, если кабель будет использоваться в сети Ethernet. Два из этих стандартов представлены на рис. 4.8. Каждый из рисунков представляет схему разводки соединителя типа RJ-45. Этот соединитель позволяет вставить в него восемь проводов. Стандарты EIA/TIA предлагают схему нумерации каждого из восьми штырьков и схему разводки проводов витых пар, поскольку предполагается именно их использование для передачи данных. Стандарт также регламентирует, какого цвета провод должен подключаться к штырьку 1, 2 и т.д.
Глава 4. Как построить дорогу (сеть) местного значения 83 ч ПараЗ д Пара 2 Пара 1| Пара 4 Л1Л ;* 12 3 4 5 6 7 8 Пара 2 Л ПараЗ А Пара % Пара 4 Л (Л 12 3 4 5 6 7 8 Рис. 4.8. Варианты разводки выводов для соединителей типа RJ-45 Соединители типа RJ-45 снабжены зажимами, которые позволяют быстро вставить соединитель в ответную часть на сетевой плате компьютера. Благодаря этому соединитель надежно удерживается на своем месте. Если вы прижмете зажим к остальной части соединителя, он освободит соединитель от платы. Поэтому зажим позволяет, с одной стороны, надежно соединять обе части соединителя, с другой — легко отключать кабель от сетевой платы, когда в этом возникает необходимость. Почему мы обо всем этом рассказываем? Потому что на следующих нескольких страницах мы опишем, как платы интерфейса сети используют кабели и провода для передачи данных. Езда по правой полосе (паре) дороги Вернемся к простой сети, показанной на рис. 4.1. Эта сеть состоит из двух ПК, каждый с платой интерфейса сети и кабелем между ними. До сих пор мы излагали лишь основные сведения о проводах, кабелях и соединителях. Но есть еще одна важная вещь, относящаяся к основам передачи в локальных сетях, которую вы должны знать, и состоит она вот в чем: какие провода используются для реальной передачи данных в локальных сетях типа Ethernet. Платы интерфейса сети компьютеров пытаются передавать данные через витую пару, для этого используются контакты 1 и 2 соединителя типа RJ-45. Эти же платы интерфейса сети ожидают приема данных через витую пару, подключенную к контактам 3 и 6. Но если кабель выбран неправильно, эти две платы интерфейса сети не смогут связываться между собой. На рис. 4.9 представлен эффект, возникающий при попытке передачи данных обеими платами интерфейса сети с использованием контактов 1 и 2. (Чтобы не загромождать рисунок лишними кабелями, мы изобразили только две пары проводов, обе они принадлежат одному кабелю, с соединителями RJ-45 на каждом конце.) Провод кабеля на рис. 4.9 подключен к контакту 1 соединителя на одной стороне и к контакту 1 соединителя на другой стороне. Штырек 2 с одного конца кабеля соединяется проводом со штырьком 2 на его другой стороне, и т.д., для всех восьми проводов. Кабель с проводами, разведенными подобным образом, называется кабелем с прямыми соединениями контактов {straight-through cable).
84 Часть II. Работа местного департамента (сетевого) транспорта NIC Я буду передавать через контакты 1,2 Я буду передавать через контакты 1,2 Пара, подключенная к контактам 1,2 слева соединяется с контактами 1,2 справа. Ну и ну! ПК1 передает по паре A,2) \Л ПК2 передает по паре A,2) ПК1 принимает по паре C,6) ПК2 принимает по паре C,6) Кабель с прямыми соединениями контактов Рис. 4.9. Обе платы интерфейса сети используют одну и ту же пару (полосу движения) для передачи данных А теперь возвратимся к проблеме, проиллюстрированной на рис. 4.9. Как следует из надписей на рисунке, обе платы интерфейса сети осуществляют передачу по витой паре, подключенной к контактам 1 и 2. Электрический сигнал проходит по проводам и достигает контактов 1 и 2 второй платы интерфейса сети. Но эта плата интерфейса сети не принимает сигналы через контакты 1 и 2! Это происходит потому что все платы интерфейса сети Ethernet осуществляют передачу через контакты 1 и 2, а принимают данные через контакты 3 и 6. В данном случае оба ПК передают данные, но ни один не принимает их. Решение состоит в использовании кабеля с перекрестными соединениями контактов. Кабель с перекрестными соединениями контактов (cross-over cable) соединяет контакт 1 на одном конце с контактом 3 на другой стороне, контакт 2 с контактом 6 на другом конце, контакт 3 с контактом 1 на другом конце и контакт 6 с контактом 2 на другой стороне. Результат: ПК может получать данные, посланные другим устройством! Основная идея этого решения представлена на рис. 4.10. Я буду передавать через контакты 1,2. Точно так же я делал и раньше Я буду передавать через контакты 1,2. Точно так же я делал и раньше Пара, подключенная к контактам 1,2 слева, соединяется с контактами 3,6 справа. Ура! NIC nUi3 = c"~" "ПК1 принимает по паре C,6) ПК2 принимает по паре C,6)u < ► Кабель с перекрестными соединениями контактов Рис. 4.10. Компьютеры, использующие различные пары (полосы движения) для передачи данных Теперь вы знаете, как соединять компьютеры кабелем и осуществлять между ними передачу данных. В этой главе мы сосредоточили внимание на том, как постро-
Глава 4. Как построить дорогу (сеть) местного значения 85 ить дорогу локальной сети — в сущности, мы рассматривали компоненты, позволяющие осуществлять передачу битов. Далее вы прочтете о том, как соединить несколько устройств локальной сети Ethernet, используя устройство, именуемое концентратор. Совместное использование дороги местного сообщения: концентраторы Ethernet Мой друг родился в Сан-Франциско и до сих пор там живет. Трафик там ужасный, отчасти из-за того что многим людям нужно пересечь залив Сан-Франциско. В городе просто не хватает мостов для того чтобы все автомобили могли пересечь залив. Друг предложил такое решение: засыпать залив мусором и залить все асфальтом. Тогда будет много хороших дорог, по которым люди смогут свободно пересекать залив. Если вы попытаетесь объединить в сеть 10 ПК, используя для соединения плат интерфейса сети кабели с перекрестными соединениями контактов (как показано на рис. 4.10), то начнете создавать некий эквивалент покрытию асфальтом залива Сан- Франциско. Вы знаете, как два компьютера могут использовать платы интерфейса сети Ethernet и кабели с перекрестными соединениями контактов для того, чтобы связываться друг с другом. Однако чтобы подключиться к другим ПК, понадобятся дополнительные платы интерфейса сети Ethernet, и в вашем ПК может просто не хватить места для размещения всех этих плат. Кроме того, вам пришлось бы проложить кабели, соединяющие все компьютеры между собой, или вызвать электрика, который сделает эту работу вместо вас. Если вы попытаетесь сделать то же самое для 100 компьютеров, размещенных на одном этаже здания, и каждый компьютер будет соединен со всеми остальными, вам понадобится 99 кабелей, соединенных с 99 платами интерфейса сети для каждого ПК! Альтернатива прокладке кабеля к каждому из ПК — проложить кабель от каждого ПК до распределительного шкафа и подключить кабели к сетевому устройству, называемому концентратором Ethernet. Концентратор Ethernet (Ethernet hub) (профессионалы называют его хаб) обеспечивает выполнение нескольких функций, но главным образом он позволяет электрику подключать каждое устройство к концентратору, используя только одну плату интерфейса сети и лишь один кабель, устраняя тем самым проблему прокладки множества кабелей. Концентратор просто "прослушивает" поступающие электрические сигналы и, когда сигнал получен, пересылает тот же самый электрический сигнал на другие устройства, подключенные к концентратору. Принципы такого функционирования представлены на рис. 4.11. Как отмечено на рисунке, Лэрри отправляет данные на концентратор, а тот пересылает то, что отправил Лэрри, по кабелям Арчи и Бобу. Это очень просто! На рис. 4.11 показаны кабели, но не указано, какие пары проводов используются. Концентратор ожидает, что между ним и ПК будут проложены кабели с прямыми соединениями контактов. Почему именно такие? Дело в том, что люди, которые разрабатывают концентраторы, знают, что платы интерфейса сети Ethernet передают сигналы по витой паре, которая использует штырьки 1 и 2, а получают их по витой паре, которая использует штырьки 3 и 6, и соответственно делают разводку на соединителях концентратора. Поэтому между концентратором и платами интерфейса
86 Часть II. Работа местного департамента (сетевого) транспорта сети компьютеров прокладывают кабели с прямыми соединениями контактов. Эта концепция представлена на рис. 4.12. Я получаю сигнал от Ларри, поэтому я перешлю его на другие порты, Ларри и Бобу Концентратор Арчи Боб Рис. 4.11. Концентратор Ethernet повторяет все, что слышит Я буду передавать через контакты 1,2 и принимать через 3,6 Пара, подключенная к контактам 1,2 слева соединяется с контактами 1,2 справа. И все работает! Я буду принимать через контакты 1,2 и передавать через 3,6 ПК1 принимает через пару C,6) Концентратор передает Концентратор через пару C,6) < < Кабель с прямыми соединениями контактов Рис. 4.12. Для подключения ПК к концентратору используются кабели с прямыми соединениями контактов Логика работы концентратора проста. 1. Получить трафик через контакты 1 и 2 каждого физического интерфейса. 2. После получения отправить тот же самый электрический сигнал на все другие порты, кроме того, через который были получены данные. 3. Отправляя сигнал на другие порты, направлять трафик через контакты 3 и 6 так, чтобы ПК могли его получить. Грунтовые дороги против департамента транспорта Вы можете провести долгое время, занимаясь компьютерными сетями, и у вас ни разу не возникнут вопросы, связанные со структурированием работ по прокладке кабелей. В этом разделе вы найдете краткий обзор названной темы, благо-
Глава 4. Как построить дорогу (сеть) местного значения 87 даря чему будете знать, о чем говорят во время работы люди, занимающиеся прокладкой кабелей. Вы можете пойти в магазин и купить готовые кабели Ethernet UTP, с соединителями RJ-45 на концах. Вы можете даже купить концентратор — и недорого, обычно он стоит менее 20$. После этого вы могли бы подключить несколько компьютеров к концентратору, используя кабели Ethernet с прямыми соединениями контактов, и — ура! — вот у вас уже есть сеть или по крайней мере та ее часть, которая позволяет компьютерам посылать и получать данные. Предполагается, что прокладку кабелей вы осуществили быстро и просто. В реальной сети, в реальном здании, вы не будете прокладывать кабели поверх покрытия пола, над перегородками, отделяющими рабочие места, и т.д. Вам придется вызвать электриков и позволить им квалифицированно выполнить свою работу — проложить кабели или под полом, или в потолке. Кроме того, вместо единого куска кабеля, тянущегося от ПК до концентратора, будет использован его эквивалент. Сначала вы монтируете короткий кабель от ПК до настенной розетки. Затем электрик потягивает другой кабель от задней части настенной розетки к распределительному шкафу, до коммутационной панели. Наконец, электрик или сетевой инженер подключают кабель от коммутационной панели распределительного шкафа к концентратору. Все вместе эти кабели образуют две непрерывные витые пары между платой интерфейса сети компьютера и концентратором. Основные компоненты такого соединения показаны на рис. 4.13. Стена офиса/отсека Распределительный шкаф Сетевой кабель, подключаемый установщиком ПК I Блок настенных| розеток Сетевой кабель, прокладываемый электриком Коммутацией- Сетевой кабель, ная панель прокладывается электриком или сетевым инженером QDQOD DE3DDD сзстппсг DDDDD DDDDD Г3 Пол Рис. 4.13. Основные компоненты структурированной кабельной сети Структурированная электропроводка {structured wiring) позволяет электрику заниматься наиболее трудоемкой частью прокладки кабельной системы, с минимумом затрат, усилий и помех, при том, что работа будет выполнена правильно. Даже если прокладывается много кабелей, получающаяся в результате сеть нуждается в проверке того, что витые пары заканчиваются в нужных местах в соединителях и в оконечных точках. А единственные кабели, которые люди могут видеть в бфисах, — то короткие участки между ПК и блоком настенных розеток; остальная часть кабелей скрыта. Представьте, что вместо структурированной электропроводки электрик просто проложил цельный кусок кабеля от компьютера, под полом, до концентратора в распределительном шкафу. Позже сотрудник, работающий в этом отсеке офиса, решает, что он хочет переставить ПК на левую сторону стола, но обнаруживает, что кабель слишком короток. Что он в этом случае делает? Вызывает электрика и просит его проложить другой кабель.
88 Часть И. Работа местного департамента (сетевого) транспорта Конечно, электрик, вероятно, не захочет прокладывать новый кабель от отсека до распределительного шкафа. Если бы он использовал структурированную электропроводку, то должен бы был проложить кабель от настенной розетки до коммутационной панели в распределительном шкафу. Коммутационная панель (patch panel), иногда называемая монтажной панелью (wiringpanel), позволяет электрику удобным образом подключить реально используемые провода кабеля на одной стороне панели. С другой ее стороны розетки, очень похожие на те, что используются в настенном блоке розеток рабочего отсека, позволяют электрику или сетевому инженеру использовать короткие кабели, чтобы подключить эти пары проводов к каким-то другим устройствам, типа концентратора, показанного на рис. 4.13. Поскольку коммутационная панель расположена в хорошо известном месте, а настенный блок розеток в отсеках не перемещается, электрик может выполнить трудоемкую часть работы (прокладку кабелей под полом) только один раз. Если ПК в отсеке понадобится переместить подальше от стены, пользователь ПК может просто получить немного более длинный коммутационный кабель. Коммутационный кабель (patch cable) — это просто короткий кабель локальной сети. Аналогично, в распределительном шкафу короткие коммутационные кабели могут использоваться для подключения к коммутационной панели сетевого устройства, например концентратора, как показано на рис. 4.13. Вы можете рассматривать структурированную электропроводку как эквивалент того, что дороги строит департамент транспорта, в противном случае вам пришлось бы пользоваться фунтовыми дорогами. Автотрассы требуют времени, планирования, усилий, вложения средств, но в конечном счете получается намного более удобная дорожная система. Благодаря структурированной электропроводке вы получаете намного более удобную кабельную систему и гораздо меньшие помехи. Кроме того, в нее можно вносить изменения без особых усилий. Итак, структурированная электропроводка: ■ помогает минимизировать потребность в прокладке новых кабелей, потому что расстояние от каждой настенной розетки до монтажной панели легко определить; ■ позволяет персоналу, устанавливающему ПК, использовать короткие коммутационные кабели для подключения ПК к настенной розетке, не привлекая для этого электриков; ■ позволяет сетевым инженерам прокладывать короткие коммутационные кабели от монтажной панели до сетевых устройств, например концентраторов; ■ позволяют лучше организовывать монтаж в распределительном шкафу. Резюме Компьютеры связываются между собой, передавая электрический сигнал по проводам, его параметры принимают различные значения. Одно из них означает двоичный 0, второе — двоичную 1. Для эффективной связи необходимы два электрических тракта — один для передачи, другой для приема сигналов. Если бы оба компьютера передавали сигналы по одному проводу, они наложились бы друг на друга, и значения электрических сигналов перепутались бы. Кроме того, для передачи сиг-
Глава 4. Как построить дорогу (сеть) местного значения 89 налов в каждом направлении используется витая пара проводов, потому что витая пара уменьшает воздействие электромагнитных помех, благодаря чему, в свою очередь, уменьшается количество ошибок при передаче. Кабели типа UTP локальной сети содержат четыре неэкранированных витых пары проводов и обычно заканчиваются соединителями типа RJ-45. Хотя в кабеле содержатся четыре пары, только две из них необходимы для организации связи в локальной сети Ethernet: по одной паре для каждого направления передачи. В зависимости от того, какие устройства соединяются, могут понадобиться кабели с прямыми или перекрестными соединениями контактов, дабы гарантировать, что пара, используемая для передачи одним устройством, соединяется с парой, используемой для получения данных другого устройства. Концентраторы Ethernet позволяют соединяться с ними многим устройствам, так что в итоге все устройства получают копию сигнала, посылаемого каждым устройством концентратору. Благодаря этому для каждого устройства нужна только одна плата интерфейса сети, соединенная единственным кабелем с концентратором локальной сети, при этом каждое устройство может связываться с другими устройствами. Наконец, план структурированной электропроводки помогает предотвращать ненужные повторные прокладки кабеля в труднодоступных местах (под полом или в потолке). Это также позволяет персоналу вносить изменения в кабельную систему, не привлекая для этого электриков. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А. 1. Приведите пример того, как компьютер мог бы передавать двоичные нули и единицы, используя изменения напряжения. 2. Представьте, что два компьютера посылают и получают данные по проводу. Как часто приемное устройство должно было бы осуществлять выборку значений сигнала, если бы стандарт регламентировал скорость передачи 20 бит/с? 3. Компьютеры передают данные по тем же самым проводам, которые они используют для приема данных? Почему да или почему нет? 4. Компьютеры обычно передают данные по одному проводу или они используют два провода? 5. Сколько проводов можно подключить к соединителю RJ-45? 6. Сколько проводов нужно ПК, чтобы успешно послать данные на другой ПК и получить их от него, используя кабель локальной сети Ethernet с соединителями RJ-45? 7. Объясните, почему кабель с прямыми соединениями контактов локальной сети не работает при непосредственном соединении с его помощью двух ПК. 8. Объясните, почему кабель с перекрестными соединениями контактов локальной сети работает при непосредственном соединении с его помощью двух ПК. 9. Объясните, почему кабель с прямыми соединениями контактов локальной сети работает при подключении ПК к концентратору. 10. В чем разница между кабелями типов UTP и STP?
90 Часть II. Работа местного департамента (сетевого) транспорта 11. Перечислите основные преимущества использования структурированной кабельной системы. 12. Допустим, имеются физические порты и кабели, соединяющие каждый порт с тремя различными ПК. Концентратор принимает электрический сигнал от ПК на порт 1. Куда концентратор передаст электрический сигнал? 13. Что означает термин "штырек" по отношению к соединителю RJ-45?
Что вам предлагается освоить После прочтения этой главы вы должны: s понимать основные правила, которыми компьютер должен руководствоваться при включении его в локальную сеть Ethernet s знать формат адресов локальной сети Ethernet S объяснить, как компьютеры используют адреса Ethernet, когда они посылают и принимают данные через локальную сеть Ethernet s назвать две основные ветви стандартов Ethernet. у '''Vf-w, "% 7% ''*V, ?%$'&*4Ч"'<:;.:. 'th *$% Ш ^Ф^ %«/'. v**4 *?* ж%
Глава 5 Правила движения: как использовать местную (сетевую) дорогу Когда американский департамент транспорта (DOT) строит дорогу, он интересуется физической конструкцией — перемещением грунта, мощением, нанесением линий на асфальте и т.д. Однако без соблюдения правил движения могло бы произойти слишком много несчастных случаев, и пропускная способность дороги оказалась бы намного меньше. Каждый должен знать правила пересечения перекрестка: когда уступить другим автомобилям, а когда можно проехать. Точно так же с локальными сетями: правила говорят, когда вы можете использовать локальную сеть, когда вы должны подождать, прежде чем отправить данные по локальной сети, и как быстро вы можете передать данные. В этой главе мы объясним правила движения для локальных сетей Ethernet. Подготовка к поездке: как добиться для вашего автомобиля (данных) разрешения на езду в городе Прежде чем направить автомобиль на построенную департаментом транспорта и находящуюся в собственности правительства дорогу, вы должны иметь разрешение на езду в городе. Разрешение на езду в городе {street legal) просто означает, что автомобиль соответствует государственным стандартам на автомобили, которым разрешается ездить по улицам города. Например, вы не можете использовать гоночный автомобиль, который развивает скорость свыше 350 км/час B30 миль в час), на общественных дорогах. Аналогично, вы не можете разъезжать в городе на грузовике с прицепом высотой 13 метров D0-футов), потому что почти наверняка снесете дорожные знаки, зацепите линии электропередачи и застрянете под мостами, если попробуете проехать под ними. Точно так же локальные сети требуют, чтобы данные, посланные по их проводам, соответствовали некоторым правилам, которые также можно трактовать как "разрешение на езду" — разрешение на передачу данных, или законность локальной сети {LANlegal). Как большинство правил в сетевом мире, их и в данном случае определяет один или несколько стандартов. В нашей книге рассматривается самый популярный стандарт локальной сети — Ethernet. Стандарт Ethernet состоит из ряда стандартов и протоколов, регламентирующих передачу данных в локальной сети, их определяет ШЕЕ. Например, стандарты
94 Часть II. Работа местного департамента (сетевого) транспорта Ethernet указывают, как плата интерфейса сети (NIC) должна кодировать (encode) двоичные нули и единицы за счет изменения напряжения, об этом мы уже говорили в главе 4. Стандарты Ethernet определяют также много других деталей, некоторые из которых мы рассмотрим в этой главе. Данные в законной локальной сети: фрейм Ethernet Прежде чем плата интерфейса сети сможет отправить данные по локальной сети, должны быть выполнены все условия, описанные в главе 4. Должны быть проложены кабели локальной сети. Платы интерфейса сети должны знать схему кодирования, т.е. они должны знать, какие электрические сигналы соответствуют двоичным нулям, а какие двоичным единицам. Если все это выполнено, компьютер мог бы попросить, чтобы плата интерфейса сети отправила данные, и соответствующие битам данных электрические сигналы можно было бы послать по локальной сети. Однако компьютеры не могут просто взять да и послать данные конечного пользователя по локальной сети. Прежде чем ПК сможет это сделать, он должен инкапсулировать данные конечного пользователя во фрейм Ethernet. Инкапсуляцией (encapsulation) называется процесс помещения данных между заголовком и концеви- ком фрейма Ethernet. Инкапсулирование подобно помещению письма в конверт перед отправкой его обычной почтой. Отделение почтовой связи требует, чтобы письма отвечали определенным требованиям, на конверте должен быть соответствующим образом отформатированный адрес. Точно так же стандарты Ethernet определяют заголовки и конце- вики так, чтобы плата интерфейса сети могла правильно инкапсулировать данные. Получающуюся связку битов, созданную в процессе инкапсуляции, содержащую заголовок и концевик Ethernet, называют фреймом Ethernet (Ethernetframe). На рис. 5.1 представлен фрейм Ethernet, созданный в результате инкапсуляции данных между заголовком и концевиком, для фреймов, посланных Лэрри от Боба. Ларри Концентратор 1 Заголовок Данные Концевик Фрейм Ethernet Рис. 5.1. Фрейм Ethernet, посланный Лэрри от Боба Законы, изданные правительством, обычно не позволяют ездить на велосипеде по автомагистрали. Аналогично, Ethernet не позволяет посылать данные конечного пользователя по локальной сети. Вы должны поместить данные в надлежащее транспортное средство, во фрейм Ethernet. После того как данные помещены во фрейм, их можно послать через локальную сеть. Заголовок (header) и концевик (trailer) Ethernet — это просто дополнительные байты данных, которые используются компьютерами, платами интерфейса сети и сетевыми устройствами, чтобы облегчить работу Ethernet. Например, первые 8 байт в заголовке Ethernet называют преамбулой (preamble). Преамбула содержит чередую- рН| Арчи
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 95 щиеся единицы и нули, она предназначена для того, чтобы платы интерфейса сети, получающие данные знали, что через локальную сеть посылают новый фрейм. Слово "фрейм" (frame) — особенно важный термин. Вы уже читали в нашей книге о сетевых стандартах и о том, что термины модели OSI до сих пор используются в сетевых стандартах и протоколах. Термин "фрейм" относится к заголовкам и концевикам, определенным любым уровнем 2 стандарта, а также к данным, содержащимся во фрейме. Термин "фрейм Ethernet" относится к фрейму, созданному для использования в Ethernet, он должен соответствовать спецификациям протокола Ethernet. Как вы узнаете в следующих главах, протоколы, которые соответствуют другим уровням модели OSI, также имеют заголовки, и в сетевом мире используются не только термин "фрейм" для обозначения этих заголовков и данных. Далее в этой главе мы расскажем более подробно о том, что находится в заголовке и концевике фрейма Ethernet. Чтобы продвинуться вперед, давайте представлять фрейм Ethernet в виде автомобиля, который можно послать по локальной сети, тогда данные конечного пользователя — это то, что является эквивалентом грузов и людей, которые находятся в автомобиле. Ездить там, где хочется и когда хочется, — это круто! В реальной жизни, очевидно, вы не сможете ездить где угодно и когда угодно, — неизбежно произойдет авария. Или, что еще хуже, из-за того что кто-то нарушит правила движения, авария произойдет с вами! Интересно то, что, когда вы используете концентраторы Ethernet, соблюдая при этом правила, аварии (на жаргоне Ethernet их называют коллизиями) все равно случаются. Коллизия (collision) происходит, когда по одной витой паре в один момент времени посылаются два или больше фреймов. В результате невозможно распознать ни один из фреймов. Следовательно, лучше избегать коллизий, если это возможно. Поэтому Ethernet определяет правила "дорожного" движения, которые подсказывают, когда вы можете использовать локальную сеть и когда не можете, и что нужно делать, если происходит коллизия. Почему в Ethernet происходят аварии (коллизии) Даже если вы повинуетесь всем законам страны, то все равно можете попасть в аварию. Аналогично, даже когда все устройства выполняют правила Ethernet, аварии, или коллизии все равно могут произойти. Чтобы понять, почему это происходит, сосредоточьтесь на следующих двух ключевых фактах. ■ Когда два (или больше) электрических сигнала передаются по одной и той же паре проводов, оба электрических сигнала искажаются и сливаются в один сигнал. Приемное устройство не может интерпретировать сигналы как нули и единицы. ■ Концентратор передает полученные электрические сигналы на все физические порты концентратора, кроме того, через который был получен сигнал, даже если уже передаются другие электрические сигналы. Зная эти два факта, рассмотрите рис. 5.2: Боб и Арчи одновременно посылают Лэрри фреймы Ethernet.
96 Часть II. Работа местного департамента (сетевого) транспорта Концентратор просто передает каждый из фреймов, посланных Бобом и Арчи, на все порты, включая и тот, к которому подключен компьютер Лэрри. Хотя и Боб, и Арчи очень хотят отправить данные Лэрри, он не может принять ни один фрейм, потому что концентратор пробует послать Лэрри по кабелю оба электрических сигнала одновременно. Как избежать частых аварий Стандарты Ethernet определяют основной алгоритм, который помогает уменьшить число коллизий, а также указывают, что нужно делать, когда коллизия все же происходит. Этот алгоритм называют множественный доступ с контролем несущей и обнаружением коллизий (carrier sense multiple access collision detect, CSMA/CD). Забавный вопрос можно задать друзьям на следующей вечеринке, не так ли? Название CSMA/CD не столь важно, как стоящие за ним идеи. Действие этого алгоритма начинается со следующей простой концепции: — слушайте перед тем как послать фрейм, и ждите, пока не получите фрейм полностью, прежде чем пытаться послать свой. Эта концепция довольно проста. Представьте, что вы связаны с концентратором и в данный момент получаете фрейм. Что случилось бы, если бы вы в это время тоже послали фрейм? Конечно, произошла бы коллизия. Да, но почему бы не подождать некоторое время? Все правильно, именно этого и требует алгоритм. На рис. 5.3 представлена логика его работы. Боб ждет, пока Лэрри закончит пересылку своего фрейма, а потом уже отправляет собственной фрейм. Я посылаю фрейм... Я посылаю этот фрейм на все другие порты Мне нужно отправить данные, но я слышу фрейм, придется подождать! | Рис. 5.3. Коллизий можно избежать, если перед передачей прослушивать сеть Что делать, если происходит коллизия Даже когда вы используете технологию CSMA/CD, коллизии все равно могут происходить. Почему? Давайте рассмотрим тот же пример, но предположим, что Арчи также ждет, пока Лэрри закончит отправку фрейма, чтобы тотчас послать свой; Боб, естественно, знать об этом не может. Итак, Лэрри закончил передачу фрейма, и в локальной сети настала тишина. На рис. 5.4 представлена логика, которой руководствуются Боб и Арчи.
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 97 Я закончил передачу... Я только что перешел в режим ожидания... Я не слышу сигнала, поэтому сейчас начну передачу! Ларри Я не слышу сигнала, поэтому сейчас начну передачу! Рис. 5.4. Возможные и неизбежные коллизии Стандарты Ethernet говорят о том, что, когда никто не посылает фреймы, локальная сеть находится в режиме молчания — другими словами, по ее проводам не протекает электрический ток. И Боб, и Арчи определяют, что Лэрри закончил передачу по тому факту, что они прекращают получать электрический сигнал. Естественно, оба они пробуют послать свои фреймы одновременно, потому что выясняют примерно в одно и то же время, что локальная сеть свободна. И, как показано на рис. 5.2, когда Боб и Арчи одновременно посылают свои фреймы, происходит коллизия. Концентратор передаст оба фрейма Лэрри, поэтому Лэрри будет знать о коллизии. Однако концентратор не будет отправлять фрейм Боба обратно ему же или возвращать Арчи его же фрейм, поэтому Боб и Арчи получат только по одному фрейму. Если следовать рассматриваемой здесь логике, Боб и Арчи не будут знать, что произошла коллизия! Чтобы Боб и Арчи знали, о том, что произошла коллизия, делают вот что: когда плата интерфейса сети передает фрейм, она подает посылаемый сигнал на собственную принимающую пару проводов, прямо на плате. Эта часть аппаратных средств называется цепь кольцевой проверки {loopback circuit), т.е. плата интерфейса сети также получает собственный фрейм. Когда Боб посылает фрейм, он, в случае использования механизма кольцевой проверки, получает посланный электрический сигнал. Если в то же самое время фрейм посылает Арчи, концентратор направляет фрейм Арчи Бобу — теперь Боб знает, что произошла коллизия. Итак, что нужно делать, если происходит коллизия? Технология CSMA/CD предлагает следующее. ■ Отправители фреймов, вступивших в коллизию, посылают сигнал затора, чтобы все узнали о том, что произошла коллизия. ■ Отправители фреймов, вступивших в коллизию, независимо выбирают случайное значение таймера. ■ Каждый отправитель ждет, пока его случайный таймер не обнулится, и затем пробует послать свои фреймы еще раз. Сигнал затора (jamming signal) — электрический сигнал, определенный стандартами Ethernet, его назначение — сообщить каждому примерно следующее: "Эй, произошла коллизия, давайте очистим сеть!" Затем Боб и Арчи переходят в режим ожидания, прежде чем попытаться отправить фрейм еще раз. Но, поскольку каждый
98 Часть II. Работа местного департамента (сетевого) транспорта из них выбрал свое собственное случайное значение для таймера, Боб и Арчи не станут повторно посылать свои фреймы одновременно. В этой главе вы узнали о том, что компьютеры посылают фреймы Ethernet, которые включают заголовок и концевик Ethernet, а также данные конечного пользователя, по локальной сети Ethernet. Вы также узнали, как технология CSMA/CD регулирует очередность использования локальной сети; это очень похоже на то, как правила движения регламентируют использование дорог. Всего этого достаточно для обсуждения того, как можно получить данные через локальную сеть. Теперь давайте поговорим о том, что происходит, когда фрейм добирается до адресата. Остановка в месте назначения: что происходит, когда вас приезжают навестить В случае использования сети Ethernet с концентратором каждый получает копию всех фреймов. Это побочный эффект того факта, что концентратор направляет поступающие фреймы на все свои порты. Нам самим пришлось потребовать этого от концентратора, чтобы позволить плате интерфейса сети каждого компьютера иметь единственный кабель, соединяющий ее с концентратором, но все же иметь возможность связываться с другими устройствами локальной сети. Во второй половине этой главы мы рассмотрим Ethernet с точки зрения компьютера, получающего фрейм, и заодно немного больше расскажем о том, что находится в заголовке и концевике фрейма Ethernet. Приехали к нам или к соседям? В локальной сети Ethernet с концентратором каждый компьютер получает много фреймов Ethernet, но только некоторые из них содержат данные, которые предназначаются именно для этого компьютера. Например, Лэрри должен отправить данные Бобу, но из-за логики работы концентратора копию его фрейма получат и Арчи, и Боб. Теперь рассмотрим случай, когда Лэрри хочет отправить данные Бобу. И Боб, и Арчи получают его фреймы, но Арчи должен просто проигнорировать фрейм, а вот Боб должен рассмотреть полученные данные и обработать их. Но как Арчи и Боб определяют, что они должны делать с полученным фреймом? Дело в том, что, прежде чем послать фрейм, Лэрри помещает Ethernet-адрес (Ethernet address) Боба в поле заголовка Ethernet, которое называется поле адреса получателя (destination address field). Помещая Ethernet-адрес Боба в поле адреса получателя, Боб может использовать логику, которая представлена на рис. 5.5. Эта логика проста. Каждая плата интерфейса сети имеет уникальный адрес Ethernet, который помещен на ней изготовителем платы интерфейса сети. Отправителю остается лишь поместить нужный Ethernet-адрес в заголовок. Когда плата интерфейса сети другого компьютера получает фрейм, она может решить, следует фрейм обрабатывать или его нужно проигнорировать. Заголовок Ethernet имеет как поле адреса отправителя (source address field), так и поле адреса получателя. Например, Лэрри включил свой Ethernet-адрес в поле адреса отправителя фрейма (см. рис. 5.5). Конечно, в поле адреса получателя Лэрри поместил Ethernet-адрес Боба.
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 99 Я посылаю фрейм адресату 0200.2222.2222 Я пересылаю фрейм на все порты.. Это все, что я могу сделать! Я получил фрейм, адресованный порту 0200.2222.2222. Это не мне. Я отбрасываю фрейм. Концентратор 1 Ethernet-адрес 0200.3333.3333 Б * Ethernet-адрес 0200.2222.2222 Я получил фрейм, адресованный порту 0200.2222.2222. Это мне! Я обработаю этот фрейм. Рис. 5.5. Как Боб определяет, что фрейм послан именно ему Стандарты Ethernet определяют, что адреса должны представлять собой 48-разрядные двоичные числа (иначе говоря, иметь длину 48 бит, что эквивалентно 6 байт). Конечно, можно указывать Ethernet-адреса, записывая 48 нолей и единиц, но это, согласитесь, неудобно. Создатели Ethernet, возможно, решили бы записывать Ethernet-адреса десятичными числами, но осуществлять преобразование между десятичными и двоичными числами — тоже занятие не из приятных. Однако есть лучший способ представить двоичные числа при использовании меньшего количества цифр — воспользоваться шестнадцатеричной {hexadecimal, сокращенно hex) системой счисления. Шестнадцатеричная система счисления — альтернативная система счисления, похожая и на десятичную, и на двоичную. Имея дело с десятичной системой, вы оперируете 10-ю цифрами @, 1, 2, и т.д., до 9). В случае шестнадцатеричной системы используется 16 цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, А, В, С, D, E, F. По существу, "цифра" А представляет десятичное число 10, "цифра" В — десятичное число 11, и так далее; символ F представляет десятичное число 15. Шестнадцатеричные числа очень удобно использовать для представления двоичных чисел. Фактически, одна шестнадцатеричная цифра может представить сразу четыре двоичных знака. Например, в табл. 5.1 показаны все комбинации двоичных чисел, состоящих из 4-х цифр, и их шестнадцатеричные эквиваленты. Хотя можно намного больше рассказать о шестнадцатеричной системе счисления, на самом деле вам не обязательно знать, как она работает, чтобы оценить, почему ее удобно использовать для указания адресов Ethernet. Вместо того чтобы записывать Ethernet-адрес в виде 48-разрядного двоичного числа, вы можете написать его как 12-разрядное шестнадцатеричное число, потому что каждая шестнадцатеричная цифра представляет сразу 4 двоичных знака. Например, если первые 4 двоичных знака адреса Ethernet были 0010, то первая шестнадцатеричная цифра будет 2. Если бы следующие 4 двоичных знака были 1010, то следующая шестнадцатеричная цифра была бы А, и т.д. Если вам встретится шестнадцатеричное число, вспомните, что каждая шестнадцатеричная цифра представляет четыре двоичных знака. Например, когда вы используете устройство компании Cisco Systems, адреса Ethernet этого устройства будут представлены в следующих форматах: 15CD.3412.5BDA 0200.2222.2222
100 Часть II. Работа местного департамента (сетевого) транспорта Таблица 5.1. Двоичные числа и их шестнадцатеричные эквиваленты Четырехразрядные двоичные числа Шестнадцатеричные числа 0000 0001 0010 ООП 0100 0101 оно 0111 1000 1001 1010 1011 1100 1101 1110 1111 0 1 2 3 4 5 6 7 8 9 А В С D Е F Как видите, эти числа состоят из 12-и шестнадцатеричных цифр, таким образом, каждое из них представляет 48-разрядное двоичное число. Кто это, дорогой? Если кто-то проезжает по вашей улице и останавливается на подъездной дорожке к вашему гаражу, вам, вероятно, интересно знать, кто это. Аналогично, когда кто-то посылает вам данные по локальной сети, вам нужно знать, кто послал их. Что касается Ethernet, то заголовок фрейма Ethernet в дополнение к полю адреса получателя включает также поле адреса отправителя. Адрес отправителя (source ad- dress) идентифицирует Ethernet-адрес платы интерфейса сети, которая послала фрейм. На рис. 5.6 показан пример, в котором перечисляются адреса плат интерфейса сети всех трех ПК, а также отображается основная логика работы. Перед отправкой фрейма Лэрри добавляет к посылаемым данным заголовок и концевик Ethernet. Он помещает свой Ethernet-адрес в поле адреса отправителя (это поле находится в заголовке) и Ethernet-адрес получателя (это снова Боб) — в поле адреса получателя. После того как Лэрри подготовит фрейм, он может использовать технологию CSMA/CD, чтобы определить, когда можно послать фрейм. Обратите также внимание на то, что стиль изображения фрейма на рис. 5.6 соответствует типичному, когда заголовок фрейма показывают слева, а концевик справа. Посылая фрейм, плата интерфейса сети посылает его биты, начиная с заголовка и заканчивая концевиком, независимо от того, как это может быть показано на рисунке. Я не понимаю, о чем вы говорите Итак, кто-то подъезжает к вашему дому и останавливается на вашей подъездной дорожке. Этот человек подходит к двери, звонит, и вы идете его встречать. Приезжий улыбается и тихо говорит: "Двл! Сфк оефп фкас лал ввжж. КК45и!!!" Конечно,
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 101 вы ничего не понимаете и просите, чтобы посетитель повторил, что ему нужно, после чего он говорит: "Привет, я — Арчи. Если вы Боб, то вы только что выиграли наш главный приз — миллиард долларов." "Вот это да! Да, я — Боб. Пожалуйста, входите." Что касается Ethernet, то в этой сети также происходит подобный процесс, если выясняется, что полученный фрейм не имеет смысла. Когда приемная плата интерфейса сети интерпретирует поступающий электрический сигнал как значение некоторой строки, состоящей из двоичных нулей и единиц, получатель может неправильно принять переданное значение. Это может случиться из-за того что электрический сигнал изменился в процессе передачи его по кабелю, из-за ненулевого сопротивления провода, электромагнитных помех, коллизий и других факторов. Проще говоря, отправитель мог бы послать 1, а получатель мог бы думать, что это был 0, или наоборот. Чтобы распознать ошибку, Ethernet использует поле в конце- вике Ethernet, которое называется поле контрольной последовательности фрейма (frame check sequence, FCS). Поле FCS содержит 4-байтовое число, которое позволяет получателю определить, имеет ли полученный им фрейм ошибки, возникшие из-за неправильной передачи значений отдельных битов. Чтобы распознать ошибки, получатель должен проверить значение поля FCS, переданное отправителем. Отправитель выполняет математические вычисления. При этом он оперирует содержимым фрейма Ethernet, подготовленного к отправке, от его начала и вплоть до концевика. Отправитель помещает результат вычислений в поле FCS концевика. Приняв фрейм, получатель выполняет те же вычисления по отношению к той же самой части фрейма Ethernet (всего его содержимого, до концевика). Если результат вычислений приемной платы интерфейса сети совпадает со значением переданной контрольной последовательности фрейма, считается, что ошибок при передаче не было. Если значения не совпадают, предполагается, что произошла ошибка. Описанный процесс представлен на рис. 5.7. Детали того, как работают поля FCS, могли бы быть интересны, но сейчас нам более важна реакция получателя фрейма. Стандарты Ethernet определяют, что получатель должен просто отказаться от фреймов, которые имеют ошибки. Конец истории. Получатель не просит, чтобы фрейм был передан повторно, а отправитель не знает, что фрейм был отвергнут из-за имеющихся в нем ошибок. Этот простой процесс называется обнаружением ошибок {error detection). Связанный с этим процессом термин, устранение ошибок {error recovery), относится к процессу, посредством которого получатель просит отправителя повторно передать фреймы, которые не прошли проверку FCS. Например, протокол управления передачей (TCP), как говорилось в главе 3, устраняет ошибки, но Ethernet этого не делает. В некотором смысле Ethernet и TCP дополняют друг друга. Ethernet определяет, как доставить данные через локальную сеть и как обнаружить ошибки. Конечный результат этой работы — отказ от фреймов с ошибками. Если понадобится устранять ошибки, то TCP выяснит, что некоторые данные были пропущены, и исправит ошибки. Теперь вы знаете, как работает Ethernet, но мы ничего не рассказали о стандартах, регламентирующих работу этой сети. В следующем разделе описаны некоторые из этих стандартов.
102 Часть II. Работа местного департамента (сетевого) транспорта Вновь созданный заголовок Данные V w r/v\ _ ГГ>0 *l (X) — 1 ОО Вновь созданный концевик i FCS А ЛЛГУ2Ш Й!АРЧ Ларри Концентратор 1 >/Применение формулы к заголовку + данным VРазмещение результата в концевике в качестве FCS V Отправка фрейма Боб V Повторное применение формулы к заголовку + данным 7 Если значение = принятому FCS, сохранить фрейм V Если нет, отбросить фрейм Принятый фрейм Адрес получателя Адрес Данные FCS F(x)=Y- ^ЕслиУ= FCS, значит ошибок не было Рис. 5.7. Как используется поле FCS Два стандарта Ethernet Технология Ethernet первоначально была разработана в 1970-х годах Робертом Меткэлфом (Robert Metcalfe) и другими сотрудниками корпорации Xerox в Пало- Альто, шт. Калифорния. Они привлекли к этой работе корпорацию Intel, убеждая ее разработать компьютерную микросхему, реализующую логику Ethernet, благодаря чему можно было наладить массовое производство менее дорогих плат Ethernet. Они также убедили корпорацию Digital Equipment Corporation (Digital), в то время второго по величине производителя компьютеров, поддержать Ethernet. В результате первоначальный стандарт получил название DIX Ethernet (по первым символам названий компаний) Этот стандарт также известен как Ethernet версии 2 {Ethernet version 2); конечная версия, созданная этими тремя компаниями, была второй версией их протокола Ethernet. Позже, в 1980-х годах, IEEE создал комитеты по разработке стандартов для быстро развивавшихся локальных сетей. За основу IEEE взял незавершенные стандарты на Ethernet и несколько других типов локальных сетей, сделал в них изменения и одобрил новые спецификации как стандарт. Поскольку IEEE одновременно стандартизировал несколько технологий локальных сетей, его сотрудники обратили внимание на то, что некоторые функции, выполняемые в локальной сети каждого типа, оказались подобными. Поэтому, чтобы разработать стандарты, IEEE создал комитет, задачей которого было определить стандарты Ethernet и протоколы, которые были бы уникальны для Ethernet. Он создал и другой комитет, задачей которого было установить стандарты и протоколы, которые совместно использовались бы сетями Ethernet и локальными сетями несколь-
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 103 ких других типов. IEEE назвал комитет по специфическим для Ethernet стандартам комитетом 802.3 (802.3 committee), а комитет, который определял общие особенности локальных сетей, назвал комитетом 802.2 (802.2 committee). Стандарт 802.3 также называют управление доступом к среде передачи (media access control, MAC), а стандарт 802.2 часто называют управление логическим каналом (logical link control, LLC). В этой главе вы узнали о полях, которые располагаются или в заголовке фрейма Ethernet, или в его концевике. На рис. 5.8 показан формат заголовка, определенного стандартами 802.3 и 802.2, а также концевика в соответствии со стандартом 802.3. 7 1 6 6 2 11 1-2 Переменная 4 Преамбула SD Адрес получателя Адрес отправителя Длина D S А Р S S А Р Управление Данные FCS 802.3 802.2 802.3 Рис. 5.8. Заголовки и концевики Ethernet IEEE Мы не описывали все поля заголовков в этой главе, но некоторые из этих полей должны быть вам знакомы. Сначала обратите внимание на то, что заголовок начинается с части, обозначенной 802.3, за нею следуют поля, составляющие часть 802.2. Комитеты определили различные функции, и для выполнения этих функций каждому комитету нужны были поля в заголовке, чтобы поместить в них немного полезной информации. Часть 802.3 заголовка содержит несколько интересных полей. Ethernet-адреса отправителя и получателя находятся в полях заголовка 802.3 (MAC). Из-за этого Ethernet-адреса часто называют МАС-адресами (MAC addresses). Кроме того, поле FCS фрейма находится в концевике части 802.3. В начале заголовка показана преамбула G байт), с 1-байтовым полем ограничителя начала фрейма (SD). (Вспомните: преамбула — набор чередующихся единиц и нулей, означающий, что в локальной сети появился новый фрейм.) В первоначальной спецификации DIX Ethernet использовалось 8-байтовое поле преамбулы. Когда IEEE изменил стандарт DIX Ethernet, он просто переименовывал восьмой байт преамбулы, назвав его ограничителем начала фрейма (starting delimiter), не изменив значение этого поля. Так что первые 8 байтов — по-прежнему связка чередующихся нулей и единиц. На самом деле вам не нужно запоминать, что именно передается в заголовке или концевике, но полезно рассмотреть формат заголовков и концевиков и найти поля, используемые протоколами. Рассмотрение остальных полей, показанных на рисунке, хотя они и полезны, не входит в задачи нашей книги. Резюме Создание локальной сети Ethernet с использованием концентратора требует значительно меньших усилий на прокладку кабелей. Концентратор позволяет всем подключенным к нему устройствам связываться с другими устройствами. Однако концентратор в то же время позволяет происходить коллизиям. Алгоритм CSMA/CD определяет, как уменьшить вероятность возникновения коллизий и как реагировать, если они все же происходят. Плата интерфейса сети
104 Часть II. Работа местного департамента (сетевого) транспорта сначала прослушивает сеть, она посылает данные только тогда, когда локальная сеть переходит в режим молчания. Если происходит коллизия, все платы интерфейса сети, которые посылали фреймы, ждут в течение случайного промежутка времени и затем пробуют послать свои фреймы снова. Стандарты Ethernet определяют детали заголовка и концевика Ethernet, которые инкапсулируют данные, прежде чем послать их по сети. IEEE определяет формат части 802.3 заголовка, так же как и части 802.2 заголовка, с единственным концеви- ком, определенным комитетом 802.3. В заголовке указываются Ethernet-адреса отправителя и получателя, длина каждого поля составляет 6 байт. Когда компьютер получает фрейм Ethernet, он должен сначала посмотреть адрес получателя фрейма и определить, соответствует ли он адресу Ethernet его собственной платы интерфейса сети. Если адрес соответствует, значит, фрейм посылали именно этому устройству. Получатель может посмотреть Ethernet-адрес отправителя, который является обычно самым полезным, если после получения данных нужно что-то отвечать. Получатель должен также проверить поле FCS, дабы убедиться в том, что во фрейм не вкрались ошибки во время передачи. Контрольные вопросы Ответы на эти вопросы вы можете найти в приложении А. 1. Закончите предложение: "Перед отправкой данных конечного пользователя по локальной сети Ethernet отправитель должен эти данные во Ethernet." 2. Назовите три главные части фрейма Ethernet. 3. Вообразите, что ПК1 подготовил фрейм Ethernet и желает его отправить. Что должен сделать ПК1 перед отправкой фрейма? 4. За что отвечает часть "CD" технологии CSMA/CD? 5. Представьте, что ПК1 и ПК2 одновременно посылают фреймы, и происходит коллизия. Кто из них посылает сигнал затора? 6. Представьте, что ПК1 и ПК2 одновременно посылают фреймы, и происходит коллизия. Как алгоритм CSMA/CD минимизирует вероятность того, что фреймы ПК1 и ПК2 вновь вступят в коллизию, когда компьютеры попытаются вновь послать фреймы? 7. Сколько байтов занимает Ethernet-адрес отправителя? Сколько — Ethernet- адрес получателя? 8. Представьте, что ПК1 посылает фрейм Ethernet компьютеру ПК2, при этом ПКЗ и ПК4 также получают копию, как побочный эффект того, что в сети есть концентратор. Как ПКЗ определяет, что данные фрейма нужно проигнорировать? 9. Назовите комитет IEEE, который стандартизировал специфичные для Ethernet детали Ethernet. Используйте и числовое наименование, и текстовое, состоящее из трех слов.
Глава 5. Правила движения: как использовать местную (сетевую) дорогу 105 10. Назовите комитет IEEE, который стандартизировал детали Ethernet, которые являются общими с другими типами локальных сетей. Используйте и числовое наименование, и текстовое, состоящее из трех слов. 11. Если бы вы использовали сетевое устройство компании Cisco Systems и видели результат выполнения команды, которая приводит к отображению МАС- адреса, то как он будет отформатирован? Приведите пример, предполагая, что все цифры в фактическом МАС-адресе являются единицами. 12. Что означает аббревиатура FCS? 13. Вообразите, что ПК1 посылает фрейм компьютеру ПК2, и ПК2 замечает, что FCS, посланная с фреймом, отличается от значения, вычисленного ПК2. Что должен делать ПК2? 14. Объясните различие между обнаружением ошибок и устранением ошибок. Что из названного выполняет Ethernet?
Что вам предлагается освоить После прочтения этой главы вы должны уметь S Объяснить основы работы коммутатора локальной сети. S Описать, как коммутаторы локальных сетей могут устранять коллизии. S Объяснить, почему коммутаторы обеспечивают большую пропускную способность локальной сети по сравнению с концентратором. S Описать условия, при которых может быть обеспечена работа в полнодуплексном режиме, и описать преимущества названного режима. S Перечислить различные скорости передачи, поддерживаемые Ethernet
Глава 6 Снижение перегрузки и повышение скорости на местной (сетевой) дороге Пока в этой книге мы рассказывали о том, как можно создать маленькую сеть Ethernet с двумя компьютерами при использовании одного кабеля, или как можно создать большую сеть Ethernet, соединив кабелями много устройств с одним концентратором Ethernet. Из того, что вы пока прочитали, следует, что если у вас есть более двух устройств, использование концентратора — хороший способ создания сети. Однако при использовании концентраторов возникают некоторые проблемы, связанные с производительностью, особенно когда по локальной сети передается много данных. В этой главе несколько больше рассказывается о том, как создаются современные локальные сети с использованием устройств, названных коммутаторами. Коммутаторы локальных сетей {LANswitches) позволяют преодолеть проблемы снижения производительности, связанные с применением концентраторов, позволяя передать через локальную сеть намного больше данных за тот же самый промежуток времени. Другой, вполне очевидный способ создания локальной сети, обеспечивающей более высокий трафик, состоит в пересылке данных с более высокой скоростью. Заканчивается эта глава описанием версий Ethernet, которые просто передают данные с более высокой скоростью, чем оговоренная в спецификации на изначальную сеть Ethernet скорость 10 Мбит/с. Уменьшение перегрузки за счет открытия большего количества маршрутов в каждой локальной сети Когда вы используете концентратор, только одно устройство может передавать данные в любой момент времени. В случае использования коммутатора сразу несколько устройств могут осуществлять передачу в одно и то же время, увеличивая тем самым количество данных, передаваемых по локальной сети. Все, что для этого нужно сделать, — заменить устаревший концентратор коммутатором локальной сети. Почему мы уверены в этом? Оставайтесь настроенными на эту тему — именно ей посвящена большая часть первого раздела этой главы! Сначала мы объясним, почему концентраторы позволяют только одному устройству посылать данные в любой момент времени; потом расскажем, как с помощью коммутатора можно преодолеть эту проблему.
108 Часть II. Работа местного департамента (сетевого) транспорта Концентраторы: однополосная дорога Чтобы оценить потенциальные проблемы, связанные с перегрузкой сети, вызванной использованием концентратора Ethernet, нужно рассмотреть нескольких ключевых факторов. Сначала давайте вспомним логику работы концентратора: — Концентратор: когда я получаю электрический сигнал, я передаю его на все порты, кроме порта, с которого сигнал был получен. Именно так работает концентратор. Теперь добавьте к этому логику, которой руководствуются платы интерфейса сети компьютеров, подключенных к концентратору. Эти ПК используют логику множественного доступа с контролем несущей и обнаружением коллизий (CSMA/CD), первая часть которой требует: — ПК: прослушай сеть, прежде чем начать передачу. Если ты в данный момент времени получаешь фрейм, подожди, пока не будет закончен прием, и только после этого попробуй послать свой фрейм. Объединяя эти два факта, приходим к выводу: в каждый момент времени только одно устройство может отправлять фрейм, а все другие устройства получают его. Это означает, что другие устройства стараются не посылать фреймы в то же самое время. Описанная логика представлена на рис. 6.1. Фред 0200.1111.1111 Вильма 0200.3333.3333 У меня есть фрейм, который я хочу отправить Вильме, но мне нужно подождать, пока не прибудет остаток фрейма 7^ 0200.2222.2222 Барни 0200.4444.4444 Бетти Рис. 6.1. Бетти ждет, пока не будет закончена передача фрейма, который Фред послал Барни Как следует из рисунка, фрейм Фреда пересылается по кабелю к концентратору, и тот предает этот фрейм на все другие порты, в том числе и порт компьютера Бетти. Из-за логики работы технологии CSMA/CD — которая является полезной, потому что предотвращает коллизии — Бетти должна ждать, несмотря на то что она просто хочет послать фрейм Вильме. Это походит на красивую широкую дорогу, на которой размечена только одна полоса движения. Из-за этого каждому авто приходится ждать, пока предыдущий автомобиль не съедет с дороги, только после этого дорогой может воспользоваться другой автомобиль.
Глава 6. Снижение перегрузки и повышение скорости на местной... 109 Коммутаторы: каким образом можно создать несколько полос движения в локальной сети Коммутаторы локальной сети обеспечивают то же самое преимущество для кабельной системы, которое дают концентраторы, но обеспечивают при этом существенное усовершенствование работы локальной сети. Например, вы можете проложить единственный кабель от каждого устройства до распределительного шкафа и подключить эти кабели к коммутатору вместо концентратора. Вы получаете намного лучшее управляемую кабельную систему. Чтобы понять, почему коммутаторы лучше чем концентраторы, давайте рассмотрим логику их работы и сравним ее с логикой, используемой концентратором. Коммутатор позволяет каждому устройству локальной сети связываться с каждым другим устройством — этого же результата можно добиться, используя концентратор — но руководствуется при этом другой логикой. Она состоит в следующем: — Получив фрейм, проверьте Ethernet-адрес получателя. Отправьте фрейм на один порт — и только на тот порт, через который фрейм может быть доставлен по указанному адресу. Следовательно, в отличие от концентратора, коммутатор не просто передает полученный электрический сигнал на все другие порты. Вместо этого коммутатор перенаправляет фрейм селективно — отправляет его туда, куда его действительно посылали. Коммутатор фактически исследует содержимое фрейма Ethernet, находит в нем МАС-адрес получателя и принимает "интеллектуальное" решение. На рис. 6.2 представлена логика его работы на примере Фреда, посылающего фрейм Барни. Фред 0200.1111.1111 Таблица адресов указывает следующим порт Е1 для доставки пакета адресату 0200.2222.2222, и пакет пересылается только Фрейм МАС-адрес получателя 0200.2222.2222 Вильма 0200.3333.3333 Таблица адресов коммутатора 0200.1111.1111 Е0 0200.2222.2222 Е1 0200.3333.3333 Е2 0200.4444.4444 ЕЗ 0200.2222.2222 Барни 0200.4444.4444 Бетти Условные обозначения: йЗР коммутатор Рис. 6.2. Логика работы коммутатора на примере Фреда, посылающего фрейм Барни На рис. 6.2 показаны те же самые ПК и кабели, которые были и на рис. 6.1, но здесь использован коммутатор вместо концентратора. Фактически, в реальной ситуации вы
110 Часть И. Работа местного департамента (сетевого) транспорта можете сделать ту же самую вещь. Просто замените концентратор коммутатором и используйте те же самые кабели. Коммутатор также использует одну витую пару каждого кабеля для передачи и другую для получения данных. Он использует те же самые контакты соединителя RJ-45. Коммутатор получает данные через штырьки 1 и 2 и передает через штырьки 3 и 6 — точно так же, как концентратор. Это означает, что между коммутатором и каждым компьютером вам нужно прокладывать кабель с прямыми соединениями контактов. То есть физические соединения могут остаться тем же самым. Различие между коммутаторами и концентраторами проявляется в том, как они выбирают момент для отправки данных. Чтобы принять решение о пересылке {forwarding decision), коммутатор использует таблицу, в которой перечислены МАС- адреса сети. Как показано на рис. 6.2, таблица подсказывает коммутатору, где находится в сети устройство с МАС-адресом Барни, 0200.2222.2222. Поэтому, если коммутатор получает фрейм, адрес которого — 0200.2222.2222, коммутатор пересылает фрейм на порт Е1 — и только на Е1. Эту таблицу можно называть по-разному; в этой книге, мы будем называть ее или таблицей коммутации {switching table), или таблицей МАС-адресов {MAC address table). Вы можете представлять таблицу МАС-адресов в виде дорожного указателя, а коммутатор в виде перекрестка. Коммутатор смотрит на дорожный указатель и сравнивает его с местом назначения фрейма (МАС-адресом получателя). Дорожный указатель подсказывает, куда нужно повернуть, или указывает порт коммутатора {switchport) — поэтому коммутатор может отправить фрейм в нужном направлении. Благодаря использованию в локальной сети логики переключения частично улучшается работа сети, потому что фрейм не пересылается на каждый компьютер, подключенный к коммутатору. Обратите внимание на то, что, в отличие от рис. 6.1, Бетти и Вильма не получают фрейм в ситуации, отображенной на рис. 6.2. Бетти все еще использует логику CSMA/CD, которая начинается с постулата "Сначала прослушиваю и, если вы в данный момент получаете фрейм, жду". Однако, поскольку Бетти не получает фрейм, то, если бы она хотела послать фрейм Вильме, то вполне могла бы это сделать, как показано на рис. 6.3. Фред 0200.1111.1111 Таблица адресов 0200.1111.1111 Е0 0200.2222.2222 Е1 0200.3333.3333 Е2 Вильма 0200.3333.3333 МАС-адрес получателя: 0200.2222.2222 0200.2222.2222 Барни 0200.4444.4444 Бетти Я ничего не слышу! Я собираюсь отправить этот фрейм Вильме. Рис. 6.3. Фред посылает фрейм Барни, в это же время Бетти передает фрейм для Вильмы
Глава 6. Снижение перегрузки и повышение скорости на местной... 111 Этот пример показывает, как два устройства — Фреда и Бетти — одновременно посылают фрейм. При использовании концентратора только одно устройство могло посылать фрейм в каждый момент времени. Если одновременно фреймы могут посылать два устройства, пропускная способность локальной сети фактически удваивается! Первоначальные спецификации Ethernet определяют скорость передачи 10 Мбит/с. На рис. 6.3 одновременно осуществляются две передачи фреймов, каждая со скоростью 10 Мбит/с. По сравнению с сетью на основе концентратора эта локальная сеть имеет пропускную способность 20 Мбит/с, потому что обеспечивает параллельную передачу двух фреймов со скоростью 10 Мбит/с. Теперь давайте представим коммутатор с 24-мя портами. Предположим, что устройство подключенное к порту 1, посылает данные на устройство, подключенное к порту 2; устройство, подключенное к порту 3, посылает данные на устройство, подключенное к порту 4; и т. д. То есть в рассматриваемом случае все 12 портов с нечетными номерами одновременно посылают фреймы, таким образом этот коммутатор обеспечивает пропускную способность сети, равную 12х 10 Мбит/с, или 120 Мбит/с. При использовании коммутатора вместо концентратора многие устройства могут посылать данные в одно и то же время, тем самым значительно увеличивая полную пропускную способность. Совершенное шоссе: аварии не разрешены! В реальной жизни можно только мечтать о том, чтобы каждый мог вести свой автомобиль с той скоростью, какой ему хочется., никогда не останавливаться на светофоре, легко добираться туда, куда нужно, и никогда не попадать в аварию. Такое возможно только в плохих научно-фантастических фильмах — ив сетях с коммутаторами. Аналогия вполне приемлема — благодаря коммутаторам вы можете создать мир без коллизий. Согласно той логике работы коммутатора, о которой мы пока узнали, многие устройства могут посылать данные одновременно, но в рассмотренном примере между собой общались парни (Фред и Барни) и девушки (Бетти и Вильма). Что, если все захотят поговорить с Фредом (послать ему фреймы) одновременно? Потенциальная проблема представлена на рис. 6.4. Согласно тем сведениями, которые вы знаете о коммутаторах, последний пробовал бы одновременно отправить все три фрейма, что неизбежно вызовет коллизию. Однако, чтобы не посылать все три фрейма одновременно, на самом деле коммутатор использует буферы. Буферы {buffers) представляют собой микросхемы памяти в коммутаторе, которые используются для временного хранения нескольких фреймов. Коммутатор посылает один фрейм и сохраняет остальные два фрейма в буферах. После того как коммутатор заканчивает передачу первого фрейма, он получает из буфера второй фрейм и посылает его. Наконец, коммутатор извлекает из буфера третий фрейм и отправляет его. Поступая таким образом, коммутатор обычно позволяет избежать коллизий. Логика работы коммутатора представлена на рис. 6.5. Итак, скучная логика работы коммутатора теперь такова: ■ Получая фрейм, узнайте Ethernet-адрес места назначения. Отправьте фрейм на один порт — и только на тот порт, через который он может достигнуть указанного адреса.
112 Часть И. Работа местного департамента (сетевого) транспорта Если сразу несколько фреймов должны быть отправлены на один и то же порт, пошлите один фрейм и буферизируйте остальные, посылая их, когда порт становится доступным. Фред 0200.1111.1111 Ну и дела! Три фрейма, один получатель — это коллизия! Вильма 0200.3333.3333 МАС-адрес получателя: 0200.1111.1111 МАС-адрес получателя: 0200.1111.1111 МАС-адрес получателя: 0200.1111.1111 0200.2222.2222 Барни 0200.4444.4444 Бетти Рис. 6.4. Потенциальная коллизия, возможная в случае отправки многих фреймов по одной паре проводов Рис. 6.5. Коммутатор позволяет избежать коллизий за счет помещения фреймов в буферы Буферизируя фреймы, коммутаторы не создают коллизий. Исходные фреймы передаются через локальную сеть с минимальными задержками, вызванными буферизацией. Например, если бы каждый из этих трех фреймов имел длину 1250 байтов, потребовалось бы только 3 миллисекунды @,003 секунды) для передачи всех трех фреймов по кабелю от коммутатора до Фреда. Если бы произошли коллизии, то для передачи каждого фрейма Фреду понадобилось бы больше времени, а две коллизии и время, потраченное на повторную передачу фреймов, возможно, помешали бы пе-
Глава 6. Снижение перегрузки и повышение скорости на местной... 113 редаче через локальную сеть трафика других пользователей. Следовательно, буферизация фреймов определенно улучшает работу локальной сети. Использование полного дуплекса: создание двухполосной трассы Платы интерфейса сети (NICs) в компьютерах, описанные в этой главе, используют логику CSMA/CD. Чаще всего, поскольку коммутатор пересылает фреймы только на порт адресата, многие ПК сети большую часть времени просто не получают фреймы. При использовании технологии CSMA/CD, если компьютер не получает фреймов, это хороший момент для него послать свои. Коммутатор предотвращает коллизии, буферизируя фреймы, если порт вывода занят. Однако остается еще один случай, при котором плата интерфейса сети компьютера, руководствуясь логикой CSMA/CD, полагает, что она не должна посылать данные. Это происходит, когда плата интерфейса сети получает фрейм. Представьте, что Фред посылает другой фрейм Барни, как на рис. 6.6. Барни тоже хочет послать фрейм. (В данном случае Барни хочет послать фрейм Фреду, но получатель на самом деле не играет роли в рассматриваемом сценарии.) У меня есть фрейм для Фреда, но я должен подождать, пока прибудет остаток фрейма! Фред Барни 0200.1111.1111 0200.2222.2222 Рис. 6.6. Барни откладывает передачу, когда Фред посылает фрейм Барни Если Барни руководствуется логикой CSMA/CD, он должен ждать, прежде чем посылать фрейм. Однако, физически, есть единственный кабель между компьютером Барни и коммутатором. Никакие коллизии не могут произойти при передаче сигналов через этот кабель, потому что Барни посылает их через витую пару, использующую штырьки 1 и 2 соединителя, а коммутатор посылает Барни данные по паре, использующей штырьки 3 и 6. И вы уже знаете, что коммутатор буферизирует фреймы, грозящие вызвать коллизию, так что нет никакой опасности возникновения коллизии. В этом конкретном случае Барни решает не посылать фрейм Фреду, потому что логика CSMA/CD подсказывает Барни: нужно переждать. Но если бы Барни послал фрейм, то коллизия не произошла бы. Решение таково: плата интерфейса сети Барни должна приостановить работу логики CSMA/CD. Отключив логику CSCMA/CD, Барни сможет посылать фреймы в то же самое время, когда он будет получать фрейм от Фреда. Способность посылать и одновременно получать данные называют полный дуплекс (full duplex). (Наложенное логикой CSMA/CD ограничение, позволяющее одновременно или только предавать данные, или только получать их, называют по-
114 Часть И. Работа местного департамента (сетевого) транспорта лудуплекс (half duple.) На рис. 6.7 показан результат применения полнодуплексной передачи данных между Барни и Фредом. I Я могу отправлять I данные, когда захочу — полный [_дуплекс! I . /mjmmf&a&wjmil ЖШ.АШ ■^gSag qrnl мшшшшшшШг шШшШг Фред Барни 0200.1111.1111 0200.2222.2222 Рис. 6.7. Барни и Фред передают и получают данные одновременно —полный дуплекс В начале этого раздела мы использовали следующую аналогию: концентратор похож на дорогу с одной полосой движения, и вы должны были ждать, пока другие автомобили освободят дорогу, прежде чем могли выехать на нее. Работу локальной сети с коммутаторами и возможностью использования полнодуплексного режима можно сравнить с двухпутной дорогой, проложенной между коммутатором и каждым устройством, плюс другая двухпутная дорога между всеми портами на коммутаторе. Коммутатор играет роль полицейского, регулирующего уличное движение, он предотвращает коллизии, просто буферизируя фреймы. Основная идея проиллюстрирована на рис. 6.8. Теперь, когда вам стало понятно, почему коммутаторы локальных сетей работают лучше, чем концентраторы, вас не удивит тот факт, что большинство локальных сетей Ethernet сегодня использует коммутаторы. Однако в этой главе мы пока еще не рассказали достаточно подробно о том, как работают коммутаторы. Более полное описание их работы вы найдете в следующем разделе. Коммутаторы: остальная часть истории В предыдущем разделе мы говорили о том, что коммутатор имеет таблицу МАС- адресов, на основании которой и принимает решения о том, куда отправить фрейм. Однако вы пока еще не знаете, как эта таблица оказывается в коммутаторе и точна ли содержащаяся в ней информация. И вот еще какой возникает вопрос: что происходит, если коммутатор получает фрейм, а МАС-адрес получателя в таблице МАС- адресов отсутствует? Короче говоря, существуют детали, которые мы еще не рассматривали, именно ими мы и займемся в следующем разделе. Сначала мы расскажем о том, как коммутатор получает данные, необходимые ему для заполнения таблицы МАС-адресов. Вы узнаете также о том, что делает коммутатор, когда он не находит в своей таблице записи для какого-то МАС-адреса. Установка дорожных указателей: изучение МАС-адресов Коммутаторы пересылают фреймы, руководствуясь МАС-адресом получателя, указанным во фрейме. Но как коммутатор вообще узнает то, что должно быть занесено в таблицу МАС-адресов? Оказывается, коммутаторы динамически изучают МАС-адреса и соответствующие им порты. Этот процесс изучения МАС-адресов эксперты по коммутаторам вполне логично назвали изучение (learning).
Глава 6. Снижение перегрузки и повышение скорости на местной... 115 Фред Вильма lit Барни Бетти Рис. 6.8. Полнодуплексный режим и полная коммутация На рис. 6.9 показана уже знакомая вам сеть с Фредом и остальными. Однако на первом этапе коммутатор не имеет никаких записей в таблице МАС-адресов. Это типично для случая, когда коммутатор включают впервые. Фред 0200.1111.1111 Вильма 0200.3333.3333 Переводная таблица: до того как был отправлен хотя бы один фрейм Сопоставительная таблица: После фрейма 1 (Фред-Барни) Адрес: Интерфейс: 0200.1111.1111 Е0 0200.2222.2222 Барни 0200.4444.4444 Бетти Сопоставительная таблица: после фрейма 2 (Барни Адрес: 0200.1111.1111 0200.2222.2222 -Фред) Интерфейс: Е0 Е1 Рис. 6.9. Изучение методом прослушивания — большой урок жизни
116 Часть II. Работа местного департамента (сетевого) транспорта Коммутатор изучает МАС-адрес отправителя каждого фрейма, исследуя МАС- адрес отправителя. Всякий раз, когда плата интерфейса сети посылает фрейм Ethernet, она помещает в него собственный МАС-адрес, указывая его как МАС- адрес отправителя. На рис. 6.9 показаны два фрейма: один посланный Фредом и один посланный Барни. В следующем перечне описывается то, что происходит в коммутаторе в результате получения каждого фрейма: 1. Когда Фред посылает фрейм, последний в заголовке Ethernet обязательно содержит МАС-адрес Фреда @200.1111.1111) — в поле адреса отправителя. Коммутатор знает: кто бы ни послал фрейм, его собственный МАС-адрес должен быть в поле адреса отправителя. Поэтому коммутатор полагает, что МАС-адрес 0200.1111.1111 связан с портом, через который коммутатор получил фрейм, в данном случае это порт Е0. Коммутатор просто добавляет запись 0200.1111.1111 в таблицу МАС-адресов и связывает порт Е0 с этим МАС-адресом. 2. Когда Барни посылает фрейм, коммутатор изучает МАС-адрес Барни @200.2222.2222), для этого он "смотрит" на адрес отправителя фрейма, который послал Барни. Коммутатор связывает этот МАС-адрес с портом Е1, потому что это — порт, через который был получен фрейм. Решение о пересылке и решение о фильтрации Специалисты по коммутаторам называют базовую логику, которой руководствуется коммутатор при пересылке пакетов, решение о пересылке в зависимости от решения о фильтрации (forward versus filter decision). Проще говоря, когда коммутатор получает фрейм, он посылает фрейм на один порт, основываясь на сравнении МАС- адреса места назначения и записи в таблице МАС-адресов. Это рассматривают как решение о пересылке (forwarding decision). И наоборот, не пересылая фрейм на другие порты, коммутатор просто осуществляет своего рода фильтрацию фрейма (от выхода на эти порты), это и является решением о фильтрации (filtering decision). Что делать, если на дорожном указателе (в таблице адресов) не указан пункт назначения Что коммутатор должен сделать с фреймом, который был послан до того, как коммутатор заполнил таблицу МАС-адресов? Короче говоря, коммутатор выполняет функцию, получившую название лавинная адресация (или лавинная маршрутизация). По существу, лавинная адресация (flooding) означает, что, когда коммутатор получает фрейм, адрес назначения которого не содержится в таблице МАС-адресов, коммутатор пересылает этот фрейм на все порты кроме того, через который фрейм был получен. /Я&\, Не кажется ли вам логика лавинной адресации уже знакомой? Должна ка- ■Ш^Ш заться. Это же самое все время делает концентратор. Поэтому иногда по- -«ррг ведение концентратора также называют "лавинная адресация". На рис. 6.10 показана уже знакомая вам сеть, но на этот раз предполагается, что первый фрейм Фред послал Барни еще до того, как коммутатор "узнал", каков постоянный МАС-адрес Барни.
Глава 6. Снижение перегрузки и повышение скорости на местной... 117 Фред 0200.1111.1111 В таблице адресов нет записи для 0200.2222.2222- отправить этот фрейм Вильма 0200.3333.3333 Сопоставительная таблица: до отправки фрейма Фрейм МАС-адрес получателя: 0200.2222.2222 0200.2222.2222 Барни 0200.4444.4444 Бетти Рис. 6.10. Логика работы коммутатора в случае, если адресат неизвестен Как показано на рисунке, коммутатор осуществляет лавинную адресацию фрейма, поэтому и Барни, и Вильма, и Бетти — все они получают копию фрейма. Отвечает на него Барни, после этого в таблицу адресов коммутатора вносится запись с МАС-адресом Барни. Следовательно, все последующие фреймы, посланные Барни, будут отправлены правильно. Как можно одновременно быть повсюду До сих пор, обсуждая МАС-адреса (другими словами, адреса Ethernet), мы подразумевали, что МАС-адрес представляет отдельную плату интерфейса сети, включенную в локальную сеть. И это правда — многие МАС-адреса представляют отдельные платы интерфейса сети. Адреса, которые представляют отдельные платы интерфейса сети, называют МАС-адресами для одноадресатной передани {unicast MAC addresses). Ethernet также определяет специальный МАС-адрес, названный широковещательным адресом {broadcast address). Широковещательный адрес Ethernet— FFFF.FFFF.FFFF. Когда компьютер посылает фрейм с адресом получателя FFFF.FFFF.FFFF, это означает, что фрейм должен быть отправлен всем устройствам локальной сети. Итак, представим, что коммутатор получает фрейм, МАС-адрес получателя которого— широковещательный адрес. Что он должен сделать? Коммутатор просто осуществляет лавинную адресацию фрейма, т.е. передает его на все порты (кроме порта, через который этот фрейм был получен), как показано на рис. 6.11. Логика работы коммутатора Ознакомившись с материалом этой главы, вы узнали несколько подробностей относительно того, как работает коммутатор. Прежде чем перейти к последнему разделу этой главы, стоит сделать небольшой обзор ключевых моментов работы коммутатора. ■ Коммутаторы решают, куда переслать фрейм, сравнивая адрес получателя фрейма с записями в таблице МАС-адресов. ■ Коммутаторы делают записи в таблице МАС-адресов на основании МАС- адресов отправителей фреймов, которые они получают.
118 Часть II. Работа местного департамента (сетевого) транспорта Фред 0200.1111.1111 Это широковещание! Осуществляю лавинную адресацию файма Вильма 0200.3333.3333 Сопоставительная таблица: нечего и смотреть! МАС-адрес получателя: FFFF.FFFF.FFFF 0200.2222.2222 Барни 0200.4444.4444 Бетти Рис. 6.11. Коммутатор осуществляет лавинную адресацию широковещательного фрейма ■ Решение о пересылке в зависимости от решения о фильтрации просто означает, что коммутатор пересылает фрейм только на необходимые порты (пересылка) и не пересылает фрейм (другими словами, осуществляют фильтрацию) на другие порты. ■ Коммутатор осуществляет лавинную адресацию фреймов, которые были посланы неизвестному ему одноадресатному получателю; неизвестные одноад- ресатные получатели — это те, адреса которых коммутатор еще не добавил в свою таблицу МАС-адресов. ■ Коммутатор осуществляет лавинную адресацию фреймов, посланных по широковещательному адресу. ■ Коммутаторы препятствуют возникновению коллизий, буферизируя фреймы вместо того, чтобы пытаться посылать много фреймов через одну и ту же витую пару в одно и то же время. Я чувствую потребность, потребность в скорости Когда IEEE взял на себя заботу о развитии стандартов Ethernet, приняв эстафету от компании Xerox в начале 1980-х годов, скорость передачи в Ethernet составляла 10 Мбит/с. Независимо от того, применялись ли в сети концентраторы или коммутаторы, когда речь заходила о фактической передаче данных, биты передавались по проводам со скоростью 10 Мбит/с. За прошедшие годы IEEE создал много расширений к стандартам Ethernet. Одним из достижений, к которому шли долгие годы, было увеличение скорости. В этом коротком разделе рассказывается о некоторых изменениях, сделанных в Ethernet за прошедшие годы, включая увеличения скорости.
Глава 6. Снижение перегрузки и повышение скорости на местной... 119 Новая, улучшенная и более быстрая сеть Ethernet — давайте назовем ее Fast Ethernet Когда я был ребенком, моя мама всегда стирала белье порошком "Тайд". Каждый раз она покупала новую пачку моющего средства, на которой всякий раз была новая реклама. Она могла быть такой: "новый и улучшенный", или, в следующий раз, "самый новый и еще более улучшенный". Потом кто-то очень умный начал использовать в рекламе слова с греческими и латинскими корнями, которые означали действительно высшее качество, как мои любимые "Ультра-очищающая мощь," или "Супер-пупер очищающая сила," и т.д. Когда в первый раз была увеличена скорость Ethernet, IEEE создал рабочую группу и назвал ее 802.Зи. ("и" не имеет никакого специального значения. IEEE выбирает названия для новых рабочих групп 802.3 (Ethernet), используя буквы после базового названия 802.3, он не использовал букву и раньше, что и определило выбор.) Итак, рабочая группа 802.3и создала спецификацию для сети Ethernet, которая могла бы передавать данные в 10 раз быстрее, со скоростью 100 Мбит/с. Но если технология Ethernet обеспечивала скорость 10 Мбит/с, то как вы назовете Ethernet, обеспечивающую скорость 100 Мбит/с? "Новая и улучшенная сеть Ethernet"? "Ультра Ethernet"? IEEE предложил другой термин — Fast Ethernet. (Быстрая Ethernet). Так что, получается, "нормальная" Ethernet медленная? Не факт. Но для сегодняшних корпоративных сетей технология Fast Ethernet действительно чрезвычайно удобна. Когда IEEE создал стандарт 802.3и на Fast Ethernet, он хотел сделать что-то невероятно умное. Мы, наверное, чересчур подчеркиваем этот момент, но это действительно важно. IEEE решил, что остальная часть Fast Ethernet должна работать так же, как обычная старая Ethernet. Например, и Ethernet, и Fast Ethernet используют те же самые заголовки и концевики. Применяется та же самая логика CSMA/CD. Кроме того, используются те же самые 6-байтовые МАС-адреса. Единственные отличия состоят в том, как кодируются биты перед передачей их по проводам, и в скорости, с которой они передаются. Фактически стандарт Fast Ethernet мог считаться детищем рабочей группы 802.3, потому что в нем лишь внесены исправления в исходный стандарт 802.3 Ethernet, а не создан новый тип локальной сети. Почему мы ультравосхищены этим выбором разработчиков? (Здесь снова появилось слово "ультра". Им так удобно пользоваться!) Потому что от выбора конструкции во многом зависело, как стандарт Fast Ethernet будет принят на рынке. Если вы уже знаете Ethernet, то сможете легко изучить Fast Ethernet. Кроме того, производителям пришлось сделать совсем небольшие изменения в уже существующих продуктах Ethernet, чтобы создать продукты Fast Ethernet. А это значит, что цены новых продуктов будут невелики, популярность на рынке высока, и покупатели вряд ли захотят приобретать что-нибудь, кроме Ethernet. Попутно с разработкой стандарта было введено много новых терминов, чтобы описать Fast Ethernet. Например, Fast Ethernet часто сокращают до FE. Старые сети Ethernet, передававшие данные по витой паре со скоростью 10 Мбит/с, называли lOBaseT, что означало Ethernet, 10 Мбит/с, витая пара (Т— от англ. twisted, витая). В результате FE стали называть 100BaseT.
120 Часть II. Работа местного департамента (сетевого) транспорта Если стандарт Fast Ethernet хорош, более быстрый еще лучше: Gigabit Ethernet Да, 100 Мбит/с — хорошая скорость передачи, но 1000 Мбит/с — также известная как скорость передачи 1 гигабит в секунду (Гбит/с) — еще лучше. Итак, ШЕЕ создал стандарт на еще более быстрый Ethernet, его разработали рабочие группы 802.3z и 802.ЗаЬ. Как бы вы назвали действительно очень быструю сеть Ethernet, обеспечивающую передачу данных со скоростью 1 Гбит/с? На сей раз IEEE поступил умнее и избежал ловушек, расставленных производителями моющих средств, он назвал новый стандарт просто Gigabit Ethernet (GigE). Главное различие между Gigabit Ethernet и Fast Ethernet — скорость. Чтобы поддерживать более высокую скорость, стандарты регламентируют применение высококачественной кабельной системы, но все остальное — то же самое. Те же самые заголовок фрейма и концевик, та же самая логика CSMA/CD, те же самые МАС- адреса, то же самое относительно быстрое признание на рынке, тот же самый похоронный звон для всех других технологий локальных сетей. Вообще-то говоря, к тому времени, когда Gigabit Ethernet завоевывал признание рынка, соревнование между Ethernet и другими технологиями локальных сетей было уже закончено. Технология Ethernet победила, будучи более быстрой, совершенной и дешевый, чем конкурирующие с нею. Этим частично объясняется, почему мы не рассказываем о других типах локальных сетей в этой книге — они больше не имеют значения. Между прочим, на случай, если вы задавались вопросом, почему рабочих групп две, объясняем: рабочая группа 802 Jz определяла стандарт на GigE с использованием оптического кабеля, а рабочая группа 802.3ab разрабатывала стандарт GigE, ориентированный на применение медного кабеля. В оптических кабельных системах (optical cabling) вместо медного провода для передачи данных используются стеклянные волокна {glass fibers).1 Устройства, соединенные между собою оптическим кабелем, посылают по кабелям световые импульсы вместо электрических, кодируя ими нули и единицы. Благодаря физическим свойствам световых импульсов и оптических волокон сигналы по волоконно-оптическому кабелю можно передавать с более высокими скоростями, на более дальние расстояния, с меньшим количеством ошибок и с очень высокой степенью защищенности, но при более высокой стоимости, чем в случае применения медных кабелей. Оптическая версия GigE (802.3z) вышла первой, медная версия (802.ЗаЬ) появилась несколько позже. А поскольку каждый стандарт требовал привлечения для своей разработки различных специалистов — в зависимости от того, использовались оптические или электрические кабели — IEEE и создал две рабочих группы. Ультрасуперскоростной Fast Ethernet: 10 Gigabit Ethernet Да, история повторилась — теперь есть еще более быстрый вариант. Стандарт на 10 Gbps Ethernet или, для краткости, lOGigE, разработанный рабочей группой 802.3ае IEEE, имеет несколько больше отличий от первоначальной версии, чем его собратья. Например, вы не можете использовать концентраторы в сетях 10 GigE. Кроме 1 В русскоязычной литературе чаще используется термин "оптические волокна". — Прим. ред.
Глава 6. Снижение перегрузки и повышение скорости на местной... 121 того, ко времени выхода этой книги стандарт 802.Зае был рассчитан на использование только оптических кабелей, вариант для меди отсутствовал. Как обычно, 10 GigE использует то же самое разбиение на фреймы, те же адреса, и т.д., как и другие варианты Ethernet, единственное отличие состоит в физических деталях кодирования и требованиях, предъявляемых к кабелям, которые должны обеспечивать более высокие скорости. И, конечно, уже поговаривают о 40 Gig Ethernet, но работа над этим стандартом только началась. Скорости Ethernet Хотя можно и не запоминать названия стандартов IEEE, относящихся к каждому типу Ethernet, вы должны по крайней мере знать, о каких скоростях идет речь. В табл. 6.1 представлен перечень нескольких характеристик сетей, для удобства собранных в одном месте. Таблица 6.1. Спецификации Ethernet Наименование Ethernet Fast Ethernet Gigabit Ethernet Gigabit Ethernet 10 Gigabit Ethernet Стандарт IEEE 802.3 802.3u 802.3z 802.3ab 802.3ae Скорость 10 Мбит/с 100 Мбит/с 1 Гбит/с 1 Гбит/с 10 Гбит/с Тип кабеля Оба Оба Оптический Медный Оптический Интересно то, что если бы вы спросили инженеров, долгое время занимающихся сетями, какой стандарт IEEE определяет работу GigE через оптический кабель, по крайней мере половина из них вряд ли вспомнила бы. Знать, что существуют стандарты для Ethernet на различные скорости передачи — вот что важно. Коммутатор для всех скоростей передачи Коммутатор локальной сети использует логику, которая полагается на информацию, содержащуюся в заголовке Ethernet. Поскольку новые варианты Ethernet используют тот же самый заголовок, пересылка коммутатором пакетов и изучение их адресов не изменяются в зависимости от того, какая скорость Ethernet используется. Коммутатор может вести себя одинаково, даже если некоторые его порты будут использовать Ethernet, некоторые — Fast Ethernet, некоторые Gigabit Ethernet и т.д. Представьте, что вы хотите обеспечить работу в сети нескольких пользователей, некоторые из которых имеют плату интерфейса сети, поддерживающую скорость только 10 Мбит/с стандарта 802.3, а другие поддерживают скорость лишь 100 Мбит/с стандарта 802.3u Fast Ethernet. Вы могли бы приобрести коммутатор, который имеет 24 порта — 12 портов на 10 Мбит/с и 12 портов на 100 Мбит/с. На рис. 6.12 показано, как это могло бы выглядеть; здесь Фред использует плату интерфейса сети на 10 Мбит/с, а Вильма — плату интерфейса сети, поддерживающую скорость 100 Мбит/с.
122 Часть II. Работа местного департамента (сетевого) транспорта Коммутатор может легко поддержать обе скорости, главным образом потому что единственное различие между Ethernet и Fast Ethernet состоит в том, как биты передаются по кабелю и с какой скоростью. Поскольку заголовки и концевики фреймов те же самые, адреса — те же самые, коммутатор по-прежнему изучает МАС-адреса, принимает решения о пересылке и фильтрации и буферизует фреймы — словом, все как всегда. Фрейм Гммм... 0200.3333.3333- это порт Fa1, на него и пересылаю фрейм! Фред 0200.1111.1111 МАС-адрес получателя: 0200.3333.3333I Вильма 0200.3333.3333 Порты 10 Мбит/с: Е1-Е12 Порты 100 Мбит/с: FA1-FA12 Таблица адресов Адрес: 0200.1111.1111 0200.3333.3333 Интерфейс Е1 Fa1 Рис. 6.12. Поддержка многих скоростей одним коммутатором Коммутатор, показанный на рис. 6.12, имеет физические порты, которые поддерживают скорость только 10 Мбит/с или только 100 Мбит/с; этот тип коммутатора не может просто переслать пакет с порта 10 Мбит/с на порт 100 Мбит/с. Например, представьте, что вы имеете 12 модернизированных устройств, использующих Fast Ethernet, поэтому вы включили их все в 12 портов Fast Ethernet коммутатора. Теперь Фред получает новую плату интерфейса сети на 100 Мбит/с, устанавливает ее в свой компьютер и хочет, чтобы его переключили на порт коммутатора, поддерживающий скорость 100 Мбит/с. Однако номер не проходит: нет больше таких портов. Чтобы решить проблемы, подобные этой, IEEE создал стандарт, названный автоматическое согласование, который обеспечивает простой способ перехода с Ethernet на 10 Мбит/с на Ethernet 100 Мбит/с, или даже на Ethernet 1000 Мбит/с (GigE). Производители предлагают коммутаторы с физическими портами, которые могут работать на различных скоростях. Механизм автоматического согласования (autonegotiation) позволяет коммутатору и плате интерфейса сети на другом конце кабели автоматически согласовывать скорость. Иногда коммутатор и компьютер "ведут переговоры" о том, использовать ли полный дуплекс или полудуплекс. На рис. 6.13 представлена общая идея.
Глава 6. Снижение перегрузки и повышение скорости на местной... 123 фред 24 порта 10/100: aFA1 - FA24 Барни Обозначения: канал на 100 Мбит/с, полнодуплексный Рис. 6A3. Автоматическое согласование между платами 10/100 Чтобы выполнить автоматическое согласование, коммутатор и плата интерфейса сети должны поддерживать многие скорости, а также логику автоматического согласования. Чтобы выполнять автоматическое согласование, коммутатор и плата интерфейса сети обмениваются некоторыми сообщениями. В этих сообщениях содержатся простые предложения, типа, "я хочу использовать 100 Мбит/с," с ответом, например, таким: "Хорошо, мне это подходит. Давай сделаем это." Конечно, спецификации ШЕЕ не настолько неофициальны, но суть мы передали верно. Если коммутатор и плата интерфейса сети не могут договориться, они снижают скорость передачи данных до 10 Мбит/с и работают в полудуплексном режиме. Многие из плат интерфейса сети Ethernet, используемых в последнее время, называют платами 10/100 A0/100 cards). Это означает, что они могут работать на любой из указанных скоростей и способны "вести переговоры" с коммутатором. На рис. 6.13 у Фреда новая плата 10/100, у Вильмы — ее старая плата, но тоже 10/100. Они автоматически согласовали скорость передачи 100 Мбит/с, в полнодуплексном режиме. Барни, используя старую плату 10 Мбит/с, которая не поддерживает автоматическое согласование, может "договорится" только о скорости 10 Мбит/с и работать в полудуплексном режиме. Поскольку продукты GigE продолжают падать в цене, вы можете теперь приобрести платы интерфейса сети 10/100/1000 и соответствующие коммутаторы, предполагая, что платы интерфейса сети и коммутаторы смогут согласовать также использование Gigabit Ethernet. Резюме Концентраторы позволяют только одному устройству передавать фрейм в каждый момент времени, тогда как коммутаторы локальных сетей позволяют одновременно передавать много фреймов. Коммутаторы локальных сетей также поддерживают режим полнодуплексной передачи, позволяя одному устройству одновременно отправлять и получать фреймы по одному кабелю. Благодаря этому, а также тому что коммутаторы буферизируют фреймы во избежание коллизий, сети, которые построены на основе коммутаторов, имеют намного большую пропускную способность чем аналогичные сети, построенные на основе концентраторов. Коммутатор принимает решение о пересылке и фильтрации для каждого фрейма, который он получает. Коммутатор сравнивает адрес получателя фрейма с записями в таблиц МАС-адресов. Если соответствие найдено, запись в таблице МАС-адресов указывает порт, на который коммутатор должен отправить фрейм — это называется
124 Часть И. Работа местного департамента (сетевого) транспорта "решение о пересылке". Не посылая фрейм на остальные порты, коммутатор тем самым фильтрует фреймы, это называется "решение о фильтрации". Коммутаторы создают таблицу МАС-адресов, исследуя в поступающих фреймах поле с МАС-адресом отправителя и помещая МАС-адрес и номер порта в запись таблицы. Этот процесс называют обучением. За прошедшие годы IEEE создал много новых и улучшенных версий Ethernet. Важно то, что многие из принципов работы остаются теми же самыми — заголовки и концевики, а также адреса. Параметр, который был значительно улучшен, — скорость передачи. Скорость 100 Мбит/с (Fast Ethernet) теперь реализуется почти в каждой сети, Gigabit Ethernet обычны для серверов, и даже 10 GigE теперь доступны для приложений, нуждающихся в высокой пропускной способности. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А 1. Сколько фреймов одновременно может пройти через концентратор с 24 портами без появления коллизий? 2. Сколько фреймов одновременно может пройти через коммутатор с 24 портами без появления коллизий и в полнодуплексном режиме, используемом на всех портах? 3. ПК1, ПК2 и ПКЗ подключены к одному и тому же коммутатору. Допустим, ПК1 и ПК2 посылают фрейм компьютеру ПКЗ, примерно в одно и то же время. Коммутатор отправит оба фрейма? Коллизия произойдет? Почему да или почему нет? 4. ПК1, ПК2 и ПКЗ подключены к одному и тому же коммутатору. ПК1 и ПК2 используют полнодуплексный режим, ПКЗ — полудуплексный. Может ли ПК1 послать фрейм ПК2, если в это же время ПК2 посылает фрейм ПКЗ? Почему да или почему нет? 5. ПК1, ПК2 и ПКЗ подключены к одному и тому же коммутатору, но коммутатор выключен. После того как коммутатор включен, ПК1 посылает фрейм ПК2. Сколько МАС-адресов находится в таблице адресов коммутатора? Почему? 6. Представьте, что три ПК (ПК1, ПК2, и ПКЗ) связаны с коммутатором. ПК2 и ПКЗ имеют платы интерфейса сети 10/100, а ПК1 оборудован только платой интерфейса сети на 10 Мбит/с. Может ли какой-нибудь ПК использовать стандарт 802.Зи? 7. Представьте, что три ПК (ПК1, ПК2, и ПКЗ) связаны с коммутатором. ПК2 и ПКЗ имеют платы интерфейса сети 10/100, а ПК1 оборудован только платой интерфейса сети на 10 Мбит/с. Что должно произойти, прежде чем ПК2 сможет осуществлять передачу со скоростью 100 Мбит/с? 8. Если фрейм с МАС-адресом места получателя 0200.6666.6666 достигает коммутатора, а коммутатор имеет только две нижеследующие записи в его таблице коммутации, то что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6
Глава 6. Снижение перегрузки и повышение скорости на местной... 125 9. Если фрейм с МАС-адресом места получателя 0200.7777.7777 достигает коммутатора, а коммутатор имеет только две нижеследующие записи в его таблице коммутации, что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6 10. Если фрейм с МАС-адресом места получателя FFFF.FFFF.FFFF достигает коммутатора, а коммутатор имеет только две нижеследующие записи в его таблице коммутации, что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6 11. Что означает термин "лавинная адресация" в контексте работы коммутатора локальной сети? 12. В чем состоит наибольшее различие между Ethernet и Fast Ethernet? 13. На сколько больше байтов IEEE добавил в поле адреса в заголовке Fast Ethernet по сравнению с Ethernet, когда создавал стандарты на Fast Ethernet? 14. На сколько больше байтов IEEE добавил в поле адреса в заголовке Gigabit Ethernet по сравнению с Ethernet, когда создавал стандарты на Gigabit Ethernet? 15. Перечислите различия в логике пересылки и механизме изучения, используемыми коммутатором Ethernet на 10 Мбит/с и коммутатором Gigabit Ethernet.
Что вам предлагается освоить После прочтения этой главы вы должны: s знать определения терминов "локальная сеть" (LAN), "виртуальная локальная сеть" (VLAN) и "широковещательный домен"; s знать, в чем сходство и различие физической локальной сети и виртуальной локальной сети; S уметь объяснить, как работает один коммутатор при наличии многих VLAN; S перечислить несколько причин, побуждающих к использованию VLAN; S объяснить потребность в транкинге VLAN и перечислить две разновидности транкинга в Ethernet.
Глава 7 Прокладка местных (сетевых) дорог без дополнительных затрат Вы уже достаточно хорошо представляете, как работают локальные сети. Вы можете приобрести платы интерфейса сети (NIC) и установить их в компьютеры, сб- единить кабелем каждую плату интерфейса сети с коммутатором, и вот уже создана локальная сеть. Если на ПК установлено сетевое программное обеспечение — а большинство операционных систем сегодня включает TCP/IP — значит, у вас есть все для того, чтобы создать сеть. Однако может появиться много причин иметь не одну локальную сеть. Независимо от причины, вы можете создать другую локальную сеть, купив больше плат интерфейса сети, больше кабелей и больше коммутаторов. Однако есть лучший способ создать несколько локальных сетей — создать виртуальные локальные сети (VLAN). В этой главе, мы расскажем о физических локальных сетях, уделяя особое внимание некоторым концепциям, которые помогут вам понять, что такое виртуальные локальные сети. Потом мы рассмотрим виртуальные локальные сети и расскажем, как их создают. Попутно мы изложим некоторые из причин использовать виртуальную локальную сеть. Физическая реальность предшествует виртуальной Прежде чем рассказывать о том, что такое виртуальные локальные сети, давайте рассмотрим физические локальные сети с точки зрения того, как они обрабатывают широковещательные фреймы. После того как вы начнете четко представлять, что такое широковещание, нам будет намного проще говорить о VLAN. Физические локальные сети: и это все о широковещании Многие люди по-разному понимают, что собой представляет сеть. Например, если вы спросите о сети кого-то, кто работает с серверами, такой человек может сказать, что локальная сеть — это сервер, подключенный к Ethernet. Электрик, который прокладывает кабели Ethernet, имеет другую точку зрения; он считает, что локальная сеть — это набор кабелей. Однако, для того чтобы понять, что такое виртуальная локальная сеть, лучше встать на точку зрения сетевого инженера, который занимается концентраторами и коммутаторами. Вы вероятно, помните, что концентраторы и коммутаторы ведут себя по-разному. Концентраторы пересылают все полученные электрические сигналы на все порты,
128 Часть II. Работа местного департамента (сетевого) транспорта кроме порта, через который сигнал был получен, по существу выполняя лавинную адресацию фрейма. Коммутаторы не осуществляют лавинную адресацию всех полученных фреймов, вместо этого они используют таблицу МАС-адресов, которая подсказывает им, куда лучше всего отправить фрейм. Однако процессы пересылки фреймов концентраторами и коммутаторами в режиме широковещания идентичны. Широковещательный фрейм — это фрейм Ethernet, в поле МАС-адреса адресата которого содержится набор символов FFFF.FFFF.FFFF. Широковещательные фреймы рассылают по разным причинам. (Они особенно полезны, когда компьютер не имеет нужных ему данных; он может послать широковещательный фрейм всем остальным компьютерам с просьбой прислать необходимую информацию.) Независимо от того, по какой причине был послан широковещательный фрейм, когда коммутатор получает фрейм, в поле адресата которого значится широковещательный адрес Ethernet, он пересылает фрейм на все порты кроме порта, с которого фрейм поступил. Концентратор тоже пересылает все фреймы — в том числе и широковещательные — на все порты кроме порта, с которого фрейм поступил. (Фактически концентраторы даже не "смотрят" на адреса.) Итак, хотя обработка фреймов коммутаторами и концентраторами осуществляется по-разному, если речь идет о пересылке широковещательного фрейма, то коммутатор по существу действует так же, как концентратор, Создайте собственный (широковещательный) домен Чтобы разобраться в том, что такое виртуальная локальная сеть, нужно понять смысл нескольких терминов, первый из которых — широковещательный домен {broadcast domain). Широковещательный домен представляет собой группу устройств, характеризующуюся тем что широковещательный фрейм, посланный одним устройством, будет получен всеми устройствами группы. Хотя это определение довольно формально, вы уже знаете обо всех основных понятиях, лежащих в его основе, главным образом из главы 6. На рис. 7.1 показаны три примера широковещательных доменов. i i Рис. 7.1. Три широковещательных домена: концентратор, коммутатор, концентратор и коммутатор
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 129 Один концентратор создает один широковещательный домен, как показано в левой верхней части рисунка. Этот первый широковещательный домен состоит из ПК, кабельной системы и концентратора. Если любое из компьютерных устройств посылает широковещательный фрейм, концентратор пересылает электрический сигнал на все порты, чтобы его получили все остальные ПК. Один коммутатор также создает один широковещательный домен. Этот широковещательный домен включает устройства, которые присоединены к единственному коммутатору, наряду с кабельной системой и самим коммутатором. Поскольку коммутатор пересылает широковещательные фреймы на все порты (кроме порта, с которого поступил фрейм), каждый получает копию каждого широковещательного фрейма, в полном соответствии с определением широковещательного домена. Концентратор и коммутатор, работающие в связке, также создают один широковещательный домен. Как показано в нижней части рис. 7.1, если устройство, подключенное к концентратору, посылает широковещательный фрейм, концентратор пересылает его на все порты, включая тот, который связан с коммутатором. Когда коммутатор получает широковещательный фрейм, он, как и полагается, пересылает широковещательный фрейм на все другие порты коммутатора. Точно так же, когда устройство, подключенное к коммутатору, посылает широковещательный фрейм, коммутатор пересылает широковещательный фрейм на все порты, включая тот, который связан с концентратором, — а концентратор пересылает фрейм на все порты. Для нескольких физических локальных сетей требуется несколько коммутаторов Локальная сеть состоит из устройств, принадлежащих одному широковещательному домену. Чтобы создать несколько физических локальных сетей, нужно использовать несколько физических коммутаторов, потому что коммутатор пересылает все широковещательные фреймы на все порты (кроме порта, через который они были получены). Допустим, вас приняли на работу в качестве сетевого инженера в компанию с маленькой сетью, которая показана на рис. 7.2. Это широковещание! Осуществляю лавинную адресацию фрейма Фред 0200.1111.1111 Вильма 0200.3333.3333 Таблица адресов коммутатора: 0200.1111.1111 0200.2222.2222 0200.3333.3333 0200.4444.4444 Е0 Е1 Е2 ЕЗ 0200.2222.2222 Барни 0200.4444.4444 Бетти Рис. 7.2. Маленькая физическая локальная сеть, за которую вы отвечаете При использовании одного коммутатора вы имеете один широковещательный домен и одну локальную сеть. Однако новый босс говорит вам, едва вы переступаете порог: "Мы должны включить Фреда и Барни в другую локальную сеть — не в ту, к которой подсоединены компьютеры Бетти и Вильмы. Девушки работают с суперсек-
130 Часть И. Работа местного департамента (сетевого) транспорта ретными проектами, и мы не можем выполнить требования безопасности, если Бетти и Вильма будут находиться в той же локальной сети, что и парни. Разъедините сети!" Чтобы Бетти и Вильма оказались в другой локальной сети, не в той, где работают мужчины, вы должны использовать два коммутатора. Альтернативная конструкция показана на рис. 7.3; теперь вы имеете дело с двумя физическими локальными сетями. LAN номер 1 Это широковещание! Осуществляю лавинную! адресацию фрейма Фред 0200.1111.1111 Барни 0200.2222.2222 Таблица адресов коммутатора 1: 10200.1111.1111 Е0 0200.2222.2222 Е1 Таблица адресов коммутатора 2: 0200.3333.3333 Е2 0200.4444.4444 ЕЗ LAN номер 2 Вильма 0200.3333.3333 ё^^тФ п ■llIffilMillllliBiiBir ЕЗ 11HF Бетти 0200.4444.4444 Рис. 7.3. Две физических локальных сети: широковещательные фреймы не покидают создавшие их локальные сети Обратите внимание: в случае использования двух коммутаторов каждый из них имеет собственную таблицу адресов. Когда Фред посылает широковещательный фрейм, коммутатор switch 1 пересылает его на другие порты (в данном случае только на порт Барни). Коммутатор switch2 не получает копию широковещательных фреймов — в данном случае отсутствует физическая кабельная система, соединяющая два коммутатора. Поскольку два коммутатора создали две отдельных виртуальных локальных сети, ни широковещательные, ни одноадресатные фреймы из верхней (на рисунке) локальной сети не могут быть отправлены в нижнюю локальную сеть. Например, если бы Фред должен был послать фрейм адресату 0200.3333.3333 (Вильме), коммутатор switch 1 не нашел бы адреса Вильмы в своей таблице адресов. Эта логика представлена на рис. 7.4. Имея два отдельных коммутатора, вы можете создать две физических локальных сети, при этом каждый коммутатор будет руководствоваться собственной таблицей МАОадресов. В следующем разделе мы расскажем о том, как виртуальная локальная сеть может сделать то же самое, используя при этом только один коммутатор. Ниже мы повторим ключевые моменты, относящиеся к физическим локальным се-
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 131 тям, которые помогут вам лучше усвоить сведения о VLAN, приведенные в следующем разделе. ■ Каждая локальная сеть имеет свою, независимую таблицу МАС-адресов. ■ Широковещательные фреймы, порожденные в одной локальной сети, рассылаются посредством лавинной адресации внутри этой локальной сети. ■ Широковещательные фреймы, порожденные в одной локальной сети, не пересылаются в другие локальные сети. ■ Одноадресатные фреймы, порожденные в одной локальной сети, не пересылаются в другие локальные сети. LAN номер 1 Фред 0200.1111.1111 Это одноадресатный фрейм. Но в моей таблице нет адреса 0200.3333.3333. Осуществляю лавинную адресацию Барни 0200.2222.2222 Однако... В последнее время никто не посылает мне фреймы. LAN номер 2 Таблица адресов коммутатора 2: 0200.3333.3333 Е2 0200.4444.4444 ЕЗ Рис. 7.4. Никаких пересылок между двумя физическими сетями Виртуальная (LAN) реальность: один коммутатор, но много локальных сетей Виртуальные локальные сети позволяют создавать много локальных сетей, не требуя дополнительных аппаратных средств в виде коммутаторов. В этом разделе описывается, как с помощью коммутатора можно создать виртуальные локальные сети, далее следует краткое описание причин использовать много виртуальных локальных сетей.
132 Часть II. Работа местного департамента (сетевого) транспорта Как создается виртуальная локальная сеть Чтобы создать несколько физических локальных сетей, или широковещательных доменов, нужно установить несколько коммутаторов LAN. Однако увеличить количество коммутаторов LAN можно только за счет увеличения расходов. К счастью, производители коммутаторов для локальных сетей наделяют их способностью создавать несколько широковещательных доменов с использованием одного коммутатора. По существу, вы можете создавать много локальных сетей, не приобретая дополнительные аппаратные средства. Эти широковещательные домены называются виртуальные локальные сети (virtual LANs, VLANs). Более формальное определение виртуальной локальной сети может быть следующим: — широковещательный домен, созданный коммутатором, с использованием поднабора физических портов этого коммутатора. Ранее в этой главе мы говорили о том, что широковещательный домен — это группа устройств, для которых выполняется правило: широковещательный фрейм, посланный одним устройством, будет получен всеми устройствами группы. И, как вы уже знаете, физическая локальная сеть — это то же самое, что и широковещательный домен. Да, но чем отличается физическая локальная сеть от виртуальной? Очень немногим. Дело в том, что сетевой инженер может сконфигурировать коммутатор так, что он будет считать некоторые физические порты принадлежащими одному широковещательному домену — одной VLAN, — а затем сконфигурировать другие порты так, что они будут принадлежать другому широковещательному домену (иными словами — принадлежать другой виртуальной локальной сети). Если вам нужно развернуть несколько локальных сетей, то вместо того, чтобы покупать новый коммутатор и создавать новую физическую локальную сеть, вы могли бы всего лишь сконфигурировать виртуальные локальные сети. На рис. 7.5 показан пример той же сети, что и на рис. 7.3. Сетевой инженер сконфигурировал порты ЕО и Е1 так, чтобы они находились в сети VLAN 1, а порты Е2 и ЕЗ так, чтобы они принадлежали виртуальной локальной сети номер 2. Коммутатор полагает, что эти две VLAN должны быть отделены одна от другой. Фактически эта сеть ведет себя точно так же, как сеть с двумя физическими коммутаторами, которая показана на рис. 7.4. Однако вы получаете преимущество: нет необходимости покупать второй коммутатор! Обратите внимание на то, что коммутатор сохраняет отдельно таблицы адресов для каждой VLAN. На самом деле коммутатор знает, конечно, все четыре МАС-адреса, но он не отправляет широковещательные или одноадресатные фреймы из одной VLAN в другую виртуальную локальную сеть. Этот процесс представлен на рис. 7.6. Коммутатор знает, что фрейм прибыл через порт ЕО и что ЕО был сконфигурирован как часть VLAN1. Коммутатор просматривает только таблицу адресов VLAN1 и в ней находит соответствие. После этого коммутатор пересылает фрейм. Если бы коммутатор не нашел соответствия в таблице адресов сети VLAN1, он осуществил бы лавинную адресацию фрейма, но только на порты сети VLAN1. Поэтому ни Вильма, ни Бетти не могли бы получить копию фрейма.
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 133 LAN номер 1 Это широковещание в VLAN 1 Осуществляю лавинную адресацию фрейма только на порты VLAN 1 Фред 0200.1111. 1Ш [Широковещание! Барни 0200.2222.2222 Таблица адресов коммутатора 1: 0200.1111.1111 0200.2222.2222 Е0 Е1 LAN номер 2 Вильма 0200.3333.3333 <Я0ЖЖЖ Бетти 0200.4444.4444 Таблица адресов коммутатора 2: 0200.3333.3333 0200.4444.4444 Е2 ЕЗ Конфигурация коммутатора: Порты VLAN 1:E0,E1 Порты VLAN 2: Е2, ЕЗ Рис. 7.5. Две виртуальных локальных сети: широковещательные фреймы не покидают породившие их сети LAN номер 1 Я получил одноадресатный фрейм через порт Е0... Это в сети VLAN 1. В моей таблице адресов для 0200.2222.2222 указан порт Е1. Пересылаю фрейм. Фред 0200.1111.1111 ff8||0200.2222.2 Барни 0200.2222.2222 Таблица адресов коммутатора 1: 0200.1111.1111 Е0| 0200.2222.2222 Е1 LAN номер 2 Рис. 7.6. Никаких пересылок фреймов между двумя VLAN
134 Часть II. Работа местного департамента (сетевого) транспорта Короче говоря, виртуальные локальные сети действуют точно так же, как физические локальные сети. Единственное различие состоит в том, что в физические локальные сети включаются все физические порты коммутатора, тогда как в виртуальную локальную сеть включают поднабор портов коммутатора, основываясь на конфигурации, выполненной сетевым инженером. Вы можете взять перечень фактов, относящихся к физическим локальным сетям, приведенный ранее в этой главе, изменить слово термин "локальная сеть" на "виртуальная локальная сеть", и все утверждения окажутся истинными. ■ Каждая виртуальная локальная сеть имеет свою, независимую таблицу МАС- адресов. ■ Широковещательные фреймы, порожденные в одной виртуальной локальной сети, рассылаются посредством лавинной адресации внутри этой виртуальной локальной сети. ■ Широковещательные фреймы, порожденные в одной виртуальной локальной сети, не пересылаются в другие виртуальные локальные сети. ■ Одноадресатные фреймы, порожденные в одной виртуальной локальной сети, не пересылаются в другие виртуальные локальные сети. Это — все, что мы хотели сказать о VLAN. Виртуальная локальная сеть — это только локальная сеть, или широковещательный домен, который создан за счет конфигурирования коммутатора. Зная, что коммутатор относится к некоторым портам так, словно они находятся в одной локальной сети, а к другим — как будто они находятся во второй локальной сети, вы можете создать несколько виртуальных локальных сетей. Почему может понадобиться несколько локальных сетей Виртуальная локальная сеть является просто локальной сетью, которая создается путем конфигурирования коммутатора таким образом, чтобы поднабор его портов рассматривался как находящийся в одном широковещательном домене. Но зачем это нужно? Разве нельзя оставить коммутатор в покое и позволить ему всегда работать с одной физической локальной сетью? Можно. В маленьких сетях вы не должны использовать виртуальные локальные сети. Однако на больших предприятиях виртуальные локальные сети весьма популярны. Как спросила бы моя дочь: "Почему?" Мы приведем несколько типичных причин на следующих страницах. Это не исчерпывающий список, но в нем представлены наиболее популярные причины. Если 100 устройств в локальной сети хороши, 1000 устройств должны быть лучше В некоторых случаях больше означает лучше, но так бывает не всегда. Если локальная сеть растет, она может стать чересчур большой. Вы спросите, в чем проблема? Дело в том, что каждый ПК должен потратить несколько циклов центрального процессора на обработку полученных им широковещательных фреймов. По мере увеличения размера широковещательного домена каждое устройство получает больше широковещательных фреймов, которые нужно обработать. Следовательно, не стоит помещать слишком много устройств в одну виртуальную локальную сеть.
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 135 Не существует точного предельного значения, но на сегодняшний день стараются не создавать локальные сети, содержащие более нескольких сотен устройств. Если вы имеете 1000 устройств, но хотите, чтобы в локальной сети их было не более 200, разумно просто создать пять или более виртуальных локальных сетей, распределив устройства между ними. Проблемы, связанные с уровнем 8 модели OSI Вы, наверное, удивились: какой еще уровень 8? Дело в том, что к большинству сетевых решений предъявляются не только технические требования; другими словами, реальная жизнь сложнее, чем семь технических уровней модели OSI. Люди иногда используют термин уровень 8 (Layer <У), чтобы обозначить внутреннюю политику компании, деловые правила, т.е. все то, что находится вне чисто технических проблем. Часто именно проблемы уровня 8 определяют, какие решения будут приняты относительно использования виртуальных локальных сетей. Например, представьте, что отдел заработной платы переезжает на тот же самый этаж, где размещается отдел информационных технологий (ИТ). Директор отдела заработной платы входит в ваш отсек и говорит что-нибудь вроде: "Одом, я хотел бы, чтобы мы были в той же самой локальной сети, что и группа ИТ. Они могли бы следить за тем, чтобы очень важный трафик платежной ведомости беспрепятственно передавался по локальной сети." Прежде всего, если бы это были вы, а не я, вы задались бы вопросом, почему он назвал вас "Одом", но ваш ответ мог бы быть таким же простым: " Гммм... А как вы посмотрите на то, что мы организуем для вас отдельную локальную сеть? Это будет лучше для вас?" Он соглашается, более того, он просто счастлив, что вы так легко согласились оказать ему услугу, и обещает замолвить за вас словечко перед боссом. Все, что вы должны сделать, — это сконфигурировать коммутатор так, чтобы выделить порты для новой виртуальной локальной сети отдела зарплаты и заслужить одобрение вашего нового друга, работающего в отделе заработной платы. Цели создания уровня 3 модели OSI Одна из более популярных причин помещения группы устройств в одну виртуальную локальную сеть обусловлена концепцией уровня 3 модели OSI, и в частности, применением протокола Internet (IP). К сожалению, мы еще недостаточно рассказали об IP, чтобы сейчас подробно говорить о том, как связано использование протокола IP с решением применить виртуальную локальную сеть. Намного больше об IP рассказано в главах 10 и 11. Сейчас, чтобы вы могли продолжить чтение, мы лишь сообщим, что в терминологии IP используются такие понятия, как сети и фрагменты сетей, или подсети. Так вот, оказывается, что устройства, принадлежащие к одной локальной сети или виртуальной локальной сети, находятся также в одной сети TCP/IP или подсети TCP/IP. У вас могут появиться причины для включения некоторых устройств в одну IP-сеть или подсеть, а некоторых — в другую. Чтобы устройства находились в двух различных IP-сетях или подсетях, они должны быть включены в две различные локальные сети. Таким образом, за счет использования виртуальной локальной сети можно легко достичь целей создания уровня 3. Сбережение средств Независимо от мотивов, у сетевого инженера, возможно, появится необходимость распределения устройств по различным локальным сетям. Вместо того чтобы покупать
136 Часть II. Работа местного департамента (сетевого) транспорта больше аппаратных средств (коммутаторов), удобнее и эффективнее с точки зрения затрат сконфигурировать виртуальные локальные сети. Решающим доводом в пользу виртуальных локальных сетей может оказаться то, что для развертывания виртуальных локальных сетей не понадобятся дополнительные аппаратные средства. Упаковка фреймов вашей VLAN, покидающих коммутатор, в транк До сих пор в большинстве примеров использования коммутаторов в нашей книге мы показывали по одному коммутатору. Однако вы можете включить в сеть несколько коммутаторов так, чтобы устройства, подключенные к каждому из них, могли посылать фреймы друг другу. На рис. 7.7 представлена основная концепция, в варианте без конфигурирования виртуальных локальных сетей. Я получил одноадресатный фрейм для 0200.2222.2222. Я пересылаю его на порт Fa23! Фред 0200.1111.1111- f-Mj I0200.2222.222g Таблица адресов коммутатора 1: 0200.1111.1111 Е0 0200.2222.2222 Fa23 0200.3333.3333 Fa23 0200.4444.4444 Е1 Бетти 0200.4444.4444 Таблица адресов коммугатооа 2: 0200.3333.3333 0200.2222.2222 0200.1111.1111 0200.4444.4444 Е2 Е3 Fa24 Fa24 Я получил одноадресатный фрейм для 0200.2222.2222. Я пересылаю его на порт ЕЗ! Вильма 0200.3333.3333 Барни 0200.2222.2222 Рис. 7.7. Пересылка фреймов между двумя коммутаторами Основная логика переключений коммутатора не изменилась в результате использования нескольких коммутаторов. На рисунке предполагается, что заполнены таблицы адресов обоих коммутаторов и каждый коммутатор знает, куда он должен отправлять фреймы. Обратите внимание на то, что таблица адресов коммутатора switchl указывает ему пересылать фреймы, посланные для Барни, на порт FastEthernet 23, для коммутатора switch2. Таблица коммутатора switch2 указывает, что адресу Барни соответствует порт ЕЗ, поэтому коммутатор пересылает фрейм для Барни на порт ЕЗ. В контексте включения в сеть многих коммутаторов термин транк (trunk — ствол) может использоваться по-разному. Например, сегмент кабеля Ethernet между коммутаторами switchl и switch2 можно назвать транком. В этом случае, термин "транк" употребляется потому, что сегмент кабеля соединяет два коммутатора. (Другой вариант использования термина "транк" будет рассмотрен в следующем разделе.),
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 137 Как упаковать ваш транк для поездки в другой коммутатор Чтобы объяснить, как по-другому используется термин "транк," на рис. 7.8 к сети, показанной на рис. 7.7, добавлена виртуальная локальная сеть. Как показано на предыдущих рисунках, Фред и Барни находятся в одной виртуальной локальной сети, а Бетти и Вильма — в другой VLAN. Однако теперь трафик обеих VLAN должен быть передан по транку между двумя коммутаторами. Когда коммутатор получает фрейм, пришедший через этот транк, он может прийти в замешательство. Таблицу МАС-адресов какой виртуальной локальной сети нужно использовать, чтобы отправить фрейм? На рис. 7.8 показан пример сети и дилемма, которая стоит перед коммутатором switch2, получившим фрейм, который Фред послал Барни. Коммутатор switch 1 имеет таблицу адресов для каждой VLAN. Его таблица адресов сети VLAN1 говорит, что отправить фрейм для Барни @200.2222.2222) нужно на порт Fa23. Однако, когда switch2 получает фрейм, он приходит в замешательство. Принадлежит ли этот фрейм VLAN1 или VLAN2? Следует ли коммутатору switch2 искать 0200.2222.2222 в обеих таблицах адресов? Следует ли коммутатору switch2 предположить, что фрейм направлен в конкретную VLAN? Поскольку коммутатор switch2 поддерживает две виртуальных локальных сети, ему просто нужно больше инструкций. Я получил одноадресатный фрейм для 0200.2222.2222. Я пересылаю его на порт Fa23! Фред 0200.1111.1111 ШШШ Г ш 10200.2222.2222 VLAN1 VLAN 2 Таблица адресов коммутатора 1: 0200.1111.1111 0200.2222.2222 Е0 Fa23 Бетти 0200.4444.4444 Fa23 10200.2222.2222] Я получил фрейм через порт Fa24... Для какой VLAN? Какую таблицу адресов я должен смотреть? Помогите! Барни 0200.2222.2222 Конфигурация коммутатора: Порты VLAN 1: коммутатор 1 Е0, коммутатор 2 ЕЗ Порты VLAN 2: коммутатор 1 Е1, коммутатор 2 Е2 Рис. 7.8. Дилемма, стоящая перед коммутатором switch2: какая VLAN?
138 Часть II. Работа местного департамента (сетевого) транспорта Чтобы решить эту проблему, коммутаторы используют механизм, названный транкинг виртуальной локальной сети {trunking VLAN). Чтобы выполнить тран- кинг VLAN, коммутатор 1 перед посылкой фрейма по кабелю Ethernet другому коммутатору добавляет к фрейму еще один заголовок. Этот дополнительный заголовок идентифицирует фрейм как часть VLAN1. Коммутатор 2 ожидает, что фреймы, поступающие на порт Fa24, имеют этот дополнительный заголовок, благодаря которому он теперь может обработать фрейм. Изменения в логике работы показаны на рис. 7.9. Я получил одноадресатный фрейм для 0200.2222.2222. Я пересылаю его на порт Fa23! Но вначале я идентифицировал его как предназначенный для VLAN1 Фред 0200.1111.1111 VLAN 2 Бетти 0200.4444.4444 IVLAN1 [0200.2222.2222] VLAN1F0200.2222.2222 Fa23 Я получил фрейм через порт Fa24... Предназначен для VLAN1. Использую таблицу адресов LAN 1... пересылаю фрейм на порт ЕЗ. Вильма 0200.3333.3333 Таблица адресов коммутатора 2: 0200.1111.1111 Fa24 0200.4444.4444 ЕЗ Барни 0200.2222.2222 Рис. 7.9. Транкинговый заголовок подсказывает коммутатору switch2, что он должен делать Теперь коммутатор 2 знает, как следует обрабатывать каждый полученный фрейм. Когда он получает фрейм через порт FastEthernet 24, он ожидает найти в нем транкинговый заголовок, который идентифицирует VLAN. Это подсказывает коммутатору 2, какую таблицу адресов нужно использовать. Когда коммутатор 2 должен послать фрейм через порт Fa24 коммутатору 1, он также добавляет транкинговый заголовок VLAN, поскольку знает: коммутатор 1 будет искать этот заголовок, чтобы правильно идентифицировать VLAN. Итак, теперь мы можем перейти к другому варианту использования термина транк (trunk) и других связанных с ним терминов. Термин транк виртуальной локальной сети (VLANtrunk), или просто транк, относится к каналу связи между двумя коммутаторами, при передаче фреймов по которому к ним добавляется дополнительный транкинговый заголовок (trunkingheader), как показано на рис. 7.9. Термин транкинг виртуальной локальной сети (trunking VLAN), или просто транкинг (trunking), относится к про-
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 139 цессу добавления (при отправке) и удаления (при получении) дополнительных заголовков, которые идентифицируют виртуальные локальные сети. История о двух протоколах транкинга Это были лучшие из времен, это были худшие из времен... нет, нет, все было не так! Когда-то, в незапамятные времена, никакого транкинга VLAN не было. Компания Cisco хотела ввести что-то подобное транкингу в своих коммутаторах, но ни в каком наборе стандартов не было стандартного протокола для транкинга. И тогда Cisco создала собственный стандарт и назвала его канал связи между коммутаторами (inter-switch link, ISL). Стандарт ISL определяет тип заголовка, который должен быть добавлен к фрейму, включая поле, в котором может быть указан номер VLAN. Позднее комитет ШЕЕ 802.1Q определил стандарт для транкинга VLAN с названием "транкинг 802.1Q", или просто "точка 1 Q". Неудивительно, что транкинг 802.1Q отличается от ISL. Теперь, когда вы соединяете два коммутатора и хотите, чтобы между ними осуществлялся транкинг, вы должны выбирать между этими двумя вариантами. Коммутаторы на каждом конце транка должны согласовать, какой протокол они будут использовать, иначе транкинг не будет работать. Резюме Физическая локальная сеть состоит из устройств конечного пользователя, кабелей и сетевых устройств, соединенных так, что, если одно устройство конечного пользователя посылает широковещательный фрейм, его получают все остальные устройства, входящие в данную локальную сеть. Другими словами, одна физическая локальная сеть состоит из устройств одного широковещательного домена и всех входящих в него кабелей и сетевых устройств. Как и физическая локальная сеть, виртуальная локальная сеть также состоит изо всех устройств конечного пользователя, находящихся в одном широковещательном домене. Чтобы создать виртуальную локальную сеть, сетевой инженер конфигурирует коммутатор, переводя некоторые физические порты в одну виртуальную локальную сеть, а другие физические порты — в другую. В результате этого коммутатор создает несколько широковещательных доменов и пересылает фреймы только между устройствами, которые находятся в одной и той же виртуальной локальной сети. Вы можете соединить коммутаторы между собой сконфигурировать их так, что порты одной и той же виртуальной локальной сети будут находиться в разных коммутаторах. Чтобы обеспечить работу виртуальной локальной сети, содержащей несколько коммутаторов, последние используют транкинговый протокол для связи между собой. Транкинговый протокол требует, чтобы коммутаторы добавляли к каждому фрейму заголовок, перед тем как послать его через транк; заголовок идентифицирует VLAN, в которую послан фрейм. Транкинговый протокол позволяет получающему фрейм коммутатору понять, куда он должен отправить фрейм. Два варианта транкинкового протокола называются ISL и 802.1Q.
140 Часть II. Работа местного департамента (сетевого) транспорта Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Сравните и противопоставьте термины "физическая локальная сеть" и "широковещательный домен." 2. Определите термин "широковещательный домен". 3. Что происходит с широковещательным фреймом, когда его получает концентратор или коммутатор? 4. Представьте, что сконфигурирован автономный коммутатор в сети, не содержащей VLAN, с 24 физическими портами, каждый из которых связан с различным ПК. Сколько широковещательных доменов образуется? 5. Представьте, что 11 ПК подключены к коммутатору с 12-ю портами, его двенадцатый порт связан с концентратором. К концентратору также подключены четыре ПК. Коммутатор не сконфигурирован так, чтобы образовались виртуальные локальные сети. Сколько широковещательных доменов образуется в такой сети? 6. Определите термин "VLAN". 7. В чем, согласно этой главе, состоит главное различие между физической локальной сетью и виртуальной локальной сетью? 8. Представьте, что три виртуальных локальных сети созданы с помощью одного коммутатора. Коммутатор получает широковещательный фрейм через порт сети VLAN1. Будут ли устройства сети VLAN2 получать этот широковещательный фрейм? 9. Представьте, что три виртуальных локальных сети созданы с помощью одного коммутатора. Коммутатор через порт VLAN1 получил одноадресатный фрейм, посланный по МАС-адресу 0200.5555.555. Таблица адресов сети VLAN1 в коммутаторе не имеет записи для этого МАС-адреса. Что коммутатор сделает с этим фреймом? 10. Представьте, что три виртуальных локальных сети созданы с помощью одного коммутатора. Одноадресатный фрейм, посланный по МАС-адресу 0200.5555.555, был получен коммутатором через порт сети VLAN1. Таблица МАС-адресов VLAN2 содержит запись с МАС-адресом 0200.5555.5555, указывающую на порт 18. Что коммутатор сделает с этим фреймом? 11. Перечислите две причины, по которым сетевой инженер может использовать виртуальные локальные сети. 12. Представьте одну локальную сеть со 100 устройствами, а другую с 1000 устройствами. В чем сходство и в чем различие воздействия широковещания на каждую локальную сеть? 13. Сравните и противопоставьте физические локальные сети и виртуальные локальные сети. 14. Представьте, что два коммутатора связаны кабелем Ethernet. На каждом коммутаторе сконфигурированы три виртуальных локальных сети — VLAN1, VLAN2 и VLAN3. Назовите два транкинговых протокола, которые могли ис-
Глава 7. Прокладка местных (сетевых) дорог без дополнительных затрат 141 пользоваться на сегменте между коммутаторами, и объясните их основную функцию. 15. Представьте, что два коммутатора связаны кабелем Ethernet. Никакие виртуальные локальные сети не сконфигурированы. Опишите значение термина "транк" и скажите, необходим ли транк и используется ли он в этой маленькой сети. 16. Назовите два транкинговых протокола VLAN и укажите, который из них является патентованным протоколом Cisco.
ЧАСТЬ III Доставка и логистика: торговля с использованием (сетевых) шоссе В части III основное внимание уделяется данным, которые устройство конечного пользователя отправляет по сети. Данные, передаваемые по сети, должны представлять собой информацию, полезную для конечного пользователя. Таким образом, конечная цель сети должна состоять в том, чтобы доставить данные приложений, выполняемых конечным пользователем. В главе 8 обсуждение этих вопросов начинается с подробного рассмотрения Web, электронной почты и приложений, служащих для передачи файлов, а также протоколов, которые используют названные приложения. Глава 9 посвящена рассмотрению некоторых общих служб, которые используют все эти приложения. Глава 8. Доставка товаров по (сетевому) шоссе Глава 9. Выбор вариантов доставки при перевозке товаров по (сетевому) шоссе
Что вам предлагается освоить После прочтения этой главы вы должны: S уметь объяснить, как электронная почта использует множество серверов; s уметь описать две части адреса электронной почты; s назвать два самых популярных почтовых протокола и указать, когда они используются чаще всего; S уметь объяснить, как FTP-клиенты используют FTP-сервер в качестве хранилища файлов; S уметь объяснить, что происходит, прежде чем Web-браузер сможет обратиться к серверу сети; S уметь описать процесс, происходящий между Web-браузером и сервером сети, и назвать используемые протоколы. /^v4 >%:>, ъ** ЯЖ- ,< #>,/*/',;-. ;»ti ■;,;■?,, V;~'' i'i'- '&. %h '"''"'*' -"'">
Глава 8 Доставка товаров по (сетевому) шоссе Министерство транспорта США (DOT) проектирует и строит шоссе. Дороги проектируют, чтобы автомобили и грузовики различной грузоподъемности могли по ним ездить. Однако DOT мало беспокоит, что именно перевозят в автомобилях и грузовиках. Точно так же локальная сеть позволяет двум компьютерам отправлять данные друг другу, но сами локальные сети — кабели, платы интерфейса сети (NICs), коммутаторы и концентраторы — не интересуются тем, какие данные транспортируются во фреймах локальной сети. В этой главе подробно рассказывается о том, что именно пользователи должны "отгружать" по рети. В частности, в этой главе описываются типы данных, генерируемых наиболее распространенными сетевыми приложениями. Каждое приложение имеет различные требования относительно данных, которые ему нужно отправлять по сети; это одна из вещей, которая делает каждое приложение отличным от других. Однако, если говорить о данных, с которыми оперируют приложения, то многие из них имеют схожие потребности. Например, многие приложения хотят не только отправить данные по сети, но еще и удостовериться в том, что они доставлены. Они требуют, чтобы общие программные средства передачи данных обеспечили выполнение нескольких важных функций, например устранение ошибок. Эти общие программные средства описаны в главе 9 данной части. Но сначала вы должны ознакомиться с приложениями, описанными в этой главе. В ней рассматриваются три приложения: электронная почта, средства передач файлов и World Wide Web (Всемирная паутина). Не помешают ни дождь, ни снег, ни темная ночь: электронная почта Почтовая служба США (United States Postal Service, USPS) обещает доставлять почту независимо от погодных условий. Хотя служба электронной почты не дает такого обещания, обе названные службы стали одинаково важными. Я знаю многих людей, которые начинают нервничать, если не могут получить свою электронную почту в течение всего лишь нескольких минут! Электронная почта работает во многом как "бумажная" почта (сейчас ее все чаще называют "обычная" почта). Вы можете написать письмо на бумаге и вложить его в конверт. Если на лицевой стороне конверта вы правильно укажете имя получателя и его адрес, а потом бросите конверт в почтовый ящик, вполне разумно ожидать, что почтовая служба доставит письмо по указанному адресу. Если вы напишете на конверте еще и обратный адрес, получатель сможет вам ответить, указав ваш адрес на лицевой стороне конверта.
146 Часть 111. Доставка и логистика: торговля с использованием (сетевых) шоссе Для тех из вас, кто, возможно, еще не пользовался электронной почтой, скажем следующее: она позволяет делать в основном то же самое, но без использования бумаги. Программа электронной почты позволяет набрать некоторый текст, указать, кому вы хотите его послать, поместив электронный адрес этого человека в начале письма, и отправить электронное сообщение. Посылая электронную почту, вы делаете то же самое, что и в случае, когда бросаете обычное письмо в почтовый ящик, — вверяете его почтовой службе. Эта служба доставляет электронные письма, и когда ваш друг в следующий раз проверит свой электронный почтовый ящик, он найдет в нем сообщение, которое вы послали. Каждая электронное сообщение включает текст, который вы набрали, почтовый адрес получателя и ваш почтовый адрес. Поскольку получатель теперь знает ваш почтовый адрес, он может ответить на ваше электронное письмо. Электронная почта также дает возможность послать одно сообщение многим получателям сразу. Отправка и получение (электронной) корреспонденции Если вы живете в доме или на квартире, почтовый служащий обычно подходит к вашему дому каждый рабочий день. Он оставляет вашу почту в вашем почтовом ящике. Он также собирает всю исходящую почту, которую вы оставили или в своем почтовом ящике, или в централизованном почтовом ящике, предназначенном для исходящей почты. Общая идея представлена на рис. 8.1. Забрав вашу почту, почтовый служащий доставляет ее в местное почтовое отделение. В конечном счете ваше письмо попадает в почтовое отделение, расположенное невдалеке от дома адресата. Здесь местный почтовый служащий бросает письмо в почтовый ящик вашего друга, где он может забрать его, когда будет возвращаться домой. Просто и ничего удивительного, не так ли? Электронная почта работает аналогичным образом. Если бы вы написали и послали электронное письмо своему другу, ваш ПК фактически не отправил бы это письмо на ПК вашего друга. Вместо этого он послал бы сообщение вашему почтовому серверу, который выполняет работу, эквивалентную сбору почты служащим местного почтового отделения. Ваш почтовый сервер послал бы электронную почту почтовому серверу вашего друга, который является эквивалентом местного почтового отделения, доставляющего бумажное письмо другому почтовому отделению, располагающемуся поблизости от дома вашего друга. Через некоторое время ваш друг проверит свою электронную почту и получит электронное письмо у местного почтового сервера, что является эквивалентом извлечения бумажной почты из почтового ящика. На рис. 8.2 показан основной
Глава 8. Доставка товаров по (сетевому) шоссе 147 процесс, осуществляемый службой обычной почты, но применительно к почте электронной. Здесь Кейт посылает электронную почту коммерческому отделу на сервер fredsco.com (sales@f redsco. com). Кейт посылает электронное ISP1 Fredsco Рис. 8.2. Пересылка почты с использованием почтовых серверов Хотя все происходит не точно так, как при обслуживании обычной почтой, основные идеи те же самые. Каждая компания имеет один (или больше) почтовых серверов, которые действуют аналогично местным почтовым отделениям. Кроме того, каждый Internet-провайдер (поставщик услуг Internet) имеет как минимум один почтовый сервер. Если вы получаете доступ к электронной почте через корпоративную сеть вашего предприятия, значит, вы используете почтовые серверы вашей компании, которые получают и доставляют электронную почту. Если вы соединяетесь с поставщиком услуг Internet, используя домашний компьютер, значит, вы используете почтовые серверы этого Internet-провайдера, получающие и доставляющие электронные письма. Почтовый и электронный адреса Чтобы послать обычную почту, вы должны указать имя и адрес получателя на лицевой стороне конверта. Тогда почтовая служба доставит письмо по нужному адресу. Точно так же, чтобы послать письмо электронной почтой, вы должны указать в нем почтовый адрес получателя. Адрес электронной почты {e-mail address) идентифицирует конкретного пользователя, который должен получить электронное письмо, позволяя почтовым серверам доставить письмо нужному человеку. Почтовые адреса состоят из двух частей: имени пользователя и имени почтового сервера. Имя пользователя указывается перед символом @, имя сервера — после символа @. Например: tweedledee@fredsco.com Из рис. 8.3 вполне очевидно, почему адрес электронной почты должен состоять из двух частей. И Кейт, и Коннер посылают электронные письма различным служащим компании Fredsco. Надписи на рисунке объясняют, как адрес электронной почты помогает доставить электронные письма.
148 Часть Hi. Доставка и логистика: торговля с использованием (сетевых) шоссе Кейт посылает электронное письмо по адресу sales@fredsco.com Отдел продаж Коннер посылает электронное письмо по адресу fred@fredsco.com Рис. 8.3. Чем полезен адрес электронной почты, состоящий из двух частей Обратите внимание на то, что приложения, обеспечивающие работу электронной почты на компьютерах Кейта и Коннера, вообще не интересуются электронными адресами. ПК всегда посылает электронные письма своему почтовому серверу. В реальной жизни, когда вы посылаете бумажное письмо, вы вверяете его судьбу почтовому отделению. Для этого вы бросаете письмо в ближайший почтовый ящик или относите его в почтовое отделение. Вы делаете так независимо от того, кому адресованы ваши письма. Аналогичным образом вы поступаете, отправляя электронные письма. Приложение, обеспечивающее работу электронной почты на вашем ПК, каждый раз посылает исходящие электронные письма одному и тому же почтовому серверу, независимо от того, кто является получателем. После того как почтовые серверы Кейта и Коннера получают соответствующие электронные письма, они смотрят на имя, стоящее после символа @, но игнорируют имя, стоящее перед символом @. Их цель состоит; в доставке электронного письма на почтовый сервер компании Fredsco, а этот сервер идентифицирует часть адреса, стоящая после символа @. Это очень похоже на работу сортировщика местного почтового отделения, когда он смотрит только на названия города и государства на конверте письма, или когда сортировочный автомат "смотрит" только на почтовый индекс, чтобы выяснить, в какое почтовое отделение следует переслать письмо. Местное почтовое отделение не обращает внимания на имя человека или название улицы; от него требуется лишь доставить письмо почтовому отделению получателя. Серверы электронной почты провайдеров ISP1 и ISP2 "знают", как найти почтовый сервер fredsco.com, потому что они делают запрос серверу другого типа, называемого DNS-сервер (Domain Name System, DNS — доменная система имен). DNS-
Глава 8. Доставка товаров по (сетевому) шоссе 149 сервер сообщает почтовым серверам, как найти другие почтовые серверы. Более подробно о DNS-серверах рассказано в главе 13. Пока вам достаточно знать, что они могут легко найти другие почтовые серверы. Наконец, после того как сервер электронной почты компании Fredsco получает электронные письма, он хранит их у себя, ожидая, пока пользователи проверят свою почту. Когда человек, который использует учетную запись sales@fredsco.com, проверяет свою электронную почту, сервер электронной почты компании Fredsco должен проверить электронные адреса всех электронных писем, которые он хранит с целью последующей доставки. Электронные письма с именем пользователя sales доставляются на соответствующий ПК. Аналогично, когда пользователь f red проверяет свою электронную почту, почтовый сервер компании Fredsco доставляет почту Фреду. Еще больше правил? Теперь, когда вы имеете обще представление о том, как работает электронная почта, вам следует познакомиться с несколькими протоколами и стандартами, разработанными для этого сервиса. Сначала мы перечислим эти стандарты (табл. 8.1), затем расскажем о каждом и них. Таблица 8.1. Стандарты TCP/IP электронной почты Стандарт RFC Описание Формат сообщения Internet 2822 Определяет заголовки, используемые (Internet message format) для инкапсуляции текста электронного письма, заголовки включают электронные адреса отправителя и получателя Простой протокол доставки со- 2821 Определяет протоколы, используемые общений (Simple Messaging для передачи электронных писем Transport Protocol, SMTP) Почтовый протокол (Post Office 1939 Определяет протоколы для клиента, ис- Protocol, POP), версия 3 (РОРЗ) пользуемые им для получения электронных писем с сервера Модель TCP/IP включает тысячи протоколов и стандартов, определенных документами, получившими название "запросы на комментарии" (Requests For Comments, RFCs). В табл. 8.1 приведены наиболее употребительные названия трех протоколов, а также номера их RFC. Если вы хотите больше узнать об этих и других RFC, можете, используя свой Web- браузер, заглянуть на Web-сайт Целевой группы инженерной поддержки Internet (Internet Engineering Task Force, IETF), размещенный по адресу http://www.ietf.org/rfс.html. Протоколы, перечисленные в табл. 8.1, согласно модели TCP/IP, являются протоколами уровня приложений. Интересно то, что есть важное различие между непосредственно приложением и протоколом уровня приложений. Хорошей основой для того, чтобы разобраться в этом, может служить рис. 8.4. Пользователь использует программное обеспечение почтового клиента {e-mail client), чтобы создавать, посылать, получать и читать электронные письма. Почтовый г\
150 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе клиент должен выполнить работу, которая не имеет никакого отношения к связи. Он должен иметь пользовательский интерфейс, принимать текст, набранный посредством клавиатуры, понимать, чего хочет пользователь, щелкая мышью на кнопках, отображаемых на экране, хранить электронные письма на жестком диске компьютера и т.д. Ни одна из этих задач не требует наличия сети. Компьютер конечного пользователя Пользовательский интерфейс Рис. 8.4. Клиентское почтовое приложение и использование им протоколов уровня приложений Однако почтовый клиент все же нуждается в сети. Чтобы он мог использовать сеть, разработчики программного обеспечения почтового клиента должны прочитать, понять и применить почтовые протоколы TCP/IP в программном обеспечении почтового клиента. Поэтому приложение "почтовый клиент" — это не то же самое, что протокол уровня приложений; скорее, чтобы иметь возможность устанавливать сетевое соединение, почтовый клиент должен правильно применять протоколы электронной почты уровня приложений. Протоколы для правильной адресации конвертов: формат сообщений Internet Когда почтовый клиент посылает электронное письмо, а почтовые серверы пересылают его, они посылают не только текст почтового сообщения, но также и заголовок. Заголовок содержит несколько полей, в том числе почтовые адреса получателя и отправителя, как показано на рис. 8.5.
Глава 8. Доставка товаров по (сетевому) шоссе 151 (Заголовок/' RFC 2822/ 7*~~J Текст почтового сообщения Отдел продаж компании Fredsco ( Щ Сеть почтовый компании сервер Fredsco омпании Fredsco Получатель Отправитель Данные Время И многое другое! Рис. 8.5. Выборка заголовка почтового сообщения в соответствии с RFC 2822 Запрос на комментарии RFC 2822, "Форматы сообщений Internet," определяет... гммм... ну, в общем, формат электронных сообщений Internet. Да, это название относится к числу самоопределяемых. RFC 2822 определяет поля заголовка, показанные на рис. 8.5, и многие другие так, чтобы все клиенты и серверы знали, где можно найти всю информацию, необходимую для доставки письма. Принцип KISS и SMTP Принцип KISS означает мудрый совет: делай это проще, болван] Большую часть работы, которую вы делаете каждый день, можно сделать лучше, если вы начнете делать все проще. Один из самых популярных почтовых протоколов также пробует не усложнять жизнь, он так и называется: Простой протокол передачи почты (Simple Mail Transfer Protocol, SMTP). Почтовые клиенты и серверы используют протоколы SMTP, чтобы управлять процессом отправки и получения электронной почты. Оказывается, вместо того чтобы просто послать электронное письмо с заголовком, полностью соответствующим RFC 2822, почтовые клиенты и серверы должны сначала договориться об отправке. Например, клиент должен идентифицировать себя перед сервером, прежде чем отправлять электронную почту. Кроме того, отправитель электронной почты должен идентифицировать получателя перед отправкой электронной почты. Таким образом, если выяснится, что следующие на пути следования электронного письма серверы не могут доставить его, вы не будет напрасно тратить время, отправляя письмо электронной почты. Этот процесс представлен на рис. 8.6. Протокол SMTP определяет сообщения так, чтобы почтовые клиенты и серверы могли управлять процессом пересылки электронной почты. Команда EHLO (extended hello — расширенное приветствие) идентифицирует клиента. Команда MAIL говорит серверу, что клиент хочет или послать, или получать письмо электронной почты. Команда RCPT1 сообщает... гммм... ну, в общем, получателю элек- 1 RCPT — от англ. receipt (квитанция, расписка в получении). — Прим. ред.
152 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе тронной почты некоторые сведения о том, что будет послано. После того как сервер ответит сообщением с подтверждением (АСК) на каждую из первых трех команд, электронная почта может быть передана. Типичный обмен SMTP Сообщение SMTP EHLO Keith < | Сообщение SMTP АСК | Сообщение SMTP MAIL | ► < | Сообщение SMTP АСК | Сообщение SMTP RCPT| ► < | Сообщение SMTP АСК | щ ш Заголовок RFC 2822 Текст электронного письма Почтовый сервер ISP1 Журнал регистрации: EHLO — Клиент идентифицирует себя (Extended Hello) Mail — Клиент сообщает, что он желает отправить сообщение RCPT — Клиент идентифицирует получателя Рис. 8.6. Простые сообщения SMTP: идентификация клиента и получателя Обратите внимание на то, что, когда любое из устройств фактически посылает электронное письмо, содержимое заголовка и текста этого сообщения соответствует спецификациям на формат содержимого сообщений Internet (Internet message format, RFC2822). Формат сообщений, которые управляют процессом выполнения SMTP, типа EHLO и MAIL, определяет запрос на комментарии SMTP (RFC 2821). Что делать, когда вы нуждаетесь в небольшом POP для сети Последний почтовый протокол, который мы здесь рассмотрим, называется почтовый протокол (Post Office Protocol, ЮР) Текущая версия, РОРЗ, также позволяет передавать письма электронной почты, как и SMTP. Однако РОРЗ был спроектирован специально для использования между почтовым клиентом и его почтовым сервером; он не может осуществлять пересылку электронных писем между серверами. Итак, РОРЗ, по существу, позволяет выполнять функции SMTP. Но для чего нужен другой протокол, если SMTP уже позволяет клиентам получать электронную почту? Дело в том, что РОРЗ позволяет реализовать для почтовых клиентов несколько опций идентификации, а также другие полезные возможности, которые не способен реализовать SMTP. Одна из наиболее полезных особенностей РОРЗ — аутентификация. Под аутентификацией (authentication) понимается процесс, при котором одно устройство идентифицирует себя перед другим устройством за счет использования имени и пароля. После этого другое устройство решает, можно ли позволить первому устройству доступ. Например, если вы имеете учетную запись электронной почты на сервере Internet-провайдера, значит, в некоторый момент вам выдавали адрес электронной почты и пароль. Когда вы проверяете почту, то при использовании РОРЗ ваш почто-
Глава 8. Доставка товаров по (сетевому) шоссе 153 вый клиент идентифицирует себя и сообщает пароль. Почтовый сервер решает, можно ли вам позволить получить электронное письмо. На рис. 8.7 показан процесс, выполняемый РОРЗ. Типичный обмен сообщениями по протоколу РОРЗ Гммм... Пользователь Коннер, пароль Secret в моей таблице - он аутентифицирован! Позволю ему получить его электронную почту! Conner РОРЗ Пользователь: Коннер РОРЗ Сообщение ОК РОРЗ пароль: Secret ОК. Для вас имеется 3 сообщения (от 1 до 3) jjjjj ISP2 РОРЗ сервер SMTP RETR 1 Сообщение RFC 2822 Заголовок! Текст 1 -го сообщения Регистрация сообщений: USER — клиент идентифицирует себя PASS — Клиент подтверждает пароль RETR - Клиент запрашивает электронные сообщения Рис. 8.7. Базовая аутентификация по протоколу РОРЗ Как следует из рисунка, Коннер посылает имя пользователя и пароль на сервер. Сервер проверяет свой список имен пользователей и паролей и находит соответствие. После этого сервер говорит клиенту "ОК", это означает, что сервер готов отправлять клиенту электронную почту. РОРЗ также сообщает пользователю, сколько писем его ждет. Чтобы получить эти письма, клиент запрашивает их по одному, как показано на рис. 8.7. Сотрудничество SMTP и РОРЗ Часто сети используют оба протокола — и SMTP, и РОРЗ. Клиенты используют РОРЗ для получения электронных писем со своего почтового сервера, но для отправки электронной почты они используют SMTP. Серверы используют SMTP для пересылки электронных писем другим серверам. Общий процесс представлен на рис. 8.8. Коннер посылает электронное письмо по адресу fred@fredsco.com Hfc ix: <eith ^ Обозначения -►РОРЗ ►SMTP SMTP- и почтовый ) 1 сервер ISP1 f ISP1 1 Fredsco SMTP- V, и РОРЗ-сервер Fredsco ) Отдел продаж J компании Fredsco Рис. 8.8. Типичный вариант использования SMTP и РОРЗ
154 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе При изучении рисунка обнаруживается несколько важных фактов. РОРЗ используется только для получения электронных писем с сервера. Кроме того, обратите внимание на то, что почтовые серверы обозначены как сервер SMTP (SMTP server) и сервер РОРЗ (РОРЗ server). До сих пор мы говорили о почтовом сервере в общем. На практике, чтобы протокол SMTP мог выполнять свою работу, необходимо программное обеспечение сервера, которое "понимает" SMTP. Это программное обеспечение вполне логично называют программным обеспечением сервера SMTP (SMTP server software). Следовательно, для того чтобы все это работало, на серверах должно выполняться программное обеспечение сервера SMTP. Точно так же, чтобы клиент мог получать свою почту, аппаратные средства сервера должны в дополнение к программному обеспечению сервера SMTP выполнять еще и программное обеспечение сервера РОРЗ (РОРЗ server software). To есть на одном компьютере должны работать оба сервера. Сервер SMTP и сервер РОРЗ на одном компьютере хранят электронную почту в одном и том же месте, оттуда же они ее и извлекают. Например, на рис. 8.8 почтовый сервер компании Fredsco получил электронное письмо, используя сервер SMTP, и сохранил его на жестком диске. Позднее, когда человек, использующий учетную запись sales@fredsco.com, проверял свою электронную почту, используя протокол РОРЗ, сервер РОРЗ, выполняемый на том же компьютере, отыскал это электронное письмо и отправил его получателю. Если вы дочитали до этого места, то, наверное, уже знаете об электронной почте больше, чем хотели. Хотя, как и при использовании обычной почты, все, что пользователю нужно знать, — это то, что, если он посылает почту, то ее доставляют адресату. Теперь, когда вы узнали об электронной почте больше, вы сможете говорить о ней с другими, не опасаясь прослыть невеждой. Строительство централизованного склада: передача файлов Как было показано в предыдущем разделе, электронная почта имеет много общего с обычной почтой. Следующее приложение, предназначенное для передачи файлов, напоминает склад, который компания могла бы использовать для хранения товаров. Допустим, некая компания работает с какими-то продуктами, и многим ее сотрудникам время от времени нужны эти продукты. Некоторые продукты большие, некоторые маленькие. Итак, компания арендует склад и размещает там продукты. Потом компания выдает каждому служащему ключ от склада, и любой из них, кому понадобился какой-то продукт, может пойти и получить его. На рис. 8.9 представлена общая концепция. Удаленный офис Кейт Склад ггпт !*- © © Рис. 8.9. Процесс складирования продуктов Удаленный офис Коннер
Глава 8. Доставка товаров по (сетевому) шоссе 155 На этапе 1 Кейт заполняет склад штучками, которые изготовила его компания. Позже, на этапе 2, Коннер идет, чтобы получить штучку и доставить ее клиенту. Кроме помещения продуктов на склад и вывоза их со склада, должны происходить и другие вещи. Например. ■ Кейт, вероятно, размещает штучки на складе в выделенных для них местах, чтобы другие служащие могли знать, где их можно найти. ■ Коннер имеет доступ к документации, из которой он может узнать, где следует искать штучки Кейта на складе. ■ Склад, на котором невозможно находить штучки и вести их учет, бесполезен. Приложение передачи файлов, т.н. протокол передани файлов {File Transfer Protocol, FTP), работает в соответствии с той же логикой что и приведенный нами пример склада. Вы можете поместить какие-то вещи на FTP-сервер и получить их с сервера FTP, но вы также нуждаетесь в документации, указывающей, где можно найти те или иные вещи, чтобы от FTP была какая-то польза. Основной процесс представлен на рис. 8.10. Сеть компании Fredsco Рис. 8.10. Процесс, осуществляемый на FTP-cepeepe при передаче файлов При использовании технологии FTP любой может поместить файлы на сервере, как это сделал Кейт на этапе 1 (см. рис. 8.9). Затем пользователи могут соединиться с FTP-сервером и получить файлы, как это сделал Коннер на этапе 2. Кроме того, если бы Коннер не знал название файла или то, в каком именно каталоге он был сохранен, он не смог бы найти этот файл. Следовательно, Кейт должен сказать ему, где нужно искать, используя какие-то другие средства. Также обратите внимание на то, что Коннер подключается к Internet, пользуясь услугами провайдера ISP2, тогда как FTP-сервер находится в сети компании Fredsco. В отличие от почтовых протоколов, FTP не требует, чтобы файлы были распределены по различным серверам. Один пользователь просто размещает файл на сервере так, чтобы другие могли зайти на тот же самый сервер и получить копию файла.
156 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Складские процедуры и жаргон FTP использует многие из общих концепций, характерных для таких приложений, как электронная почта. Вот некоторые общие черты. ■ Как и электронная почта, FTP использует клиентское программное обеспечение, устанавливаемое на компьютере конечного пользователя. ■ Как и электронная почта, клиентское программное обеспечение FTP имеет и детали пользовательского интерфейса, и код, который выполняет функции протоколов уровня приложений. ■ Как и почтовые клиенты, клиенты FTP должны соединиться с сервером, чтобы сделать что-нибудь полезное. ■ Как и клиенты электронной почты, FTP-клиент должен идентифицировать себя перед сервером, прежде чем он сможет сделать что-нибудь полезное. ■ Как и почтовые стандарты TCP/IP, стандарт FTP TCP/IP определяет форматы сообщений и заголовков, которые использует FTP. ■ Как и программное обеспечение почтового сервера, программное обеспечение FTP-сервера выполняется на физическом сервере. Несмотря на указанные подобия, между FTP и электронной почтой существуют и отличия. Например, для того, чтобы служба FTP могла принести пользу, на сервере FTP должны быть размещены файлы. Поэтому первый этап состоит в том, что клиент соединятся с сервером FTP и размещает на нем какие-то файлы (рис. 8.11). Клиентское ПО FTP 0 Серверное ПО FTP FTP-пользователь Кейт FTP-сообщение ОК FTP PASS Secret ®. FTP-сообщение OK FTPPUTFilel ©. FTP-сообщение OK Здесь содержимое файла Filel FTP-сообщение OK Рис. 8.11. Заполнение склада FTP Ниже перечислено, что происходит с каждым из. четырех сообщений Кейта, представленных на рисунке. 1. Сначала Кейт посылает серверу свое имя пользователя, используя команду FTP USER. Эта команда позволяет FTP-клиенту Кейта сообщить имя пользователя FTP-серверудля аутентификации. 2. Затем FTP-клиент Кейта использует команду FTP PASS, чтобы сообщить FTP- серверу соответствующий пароль. На этой стадии FTP-сервер может решить, яв-
Глава 8. Доставка товаров по (сетевому) шоссе 157 ляется ли Кейт легитимным пользователем FTP-сервера. Если FTP-сервер отвечает сообщением "FTP OK", это означает, что Кейт был аутентифицирован. 3. Затем FTP-клиент Кейта использует команду FTP PUT, дабы сообщить серверу, что в следующих сообщениях Кейт пошлет содержимое файла, а имя этого файла file 1. 4. Наконец, Кейт посылает фактическое содержимое файла. Весь этот процесс — пустая трата времени, если не выполнено несколько требований. Во-первых, другие пользователи также должны иметь возможность провести аутентификацию на сервере, чтобы получить доступ к файлам. Они должны также хотеть получить эти файлы! На рис. 8.12 показано, как Коннер подключается к серверу FTP и получает файл (названный filel), который разместил на сервере Кейт. Серверное ПО FTP FTP USER Conner .© Клиентское ПО FTP FTP-сообщение OK OL /?j\ Коннер FTP PASS Secrettoo FTP-сообщение OK | FTP GETFileT ,® FTP-сообщение OK Здесь содержимое файла Filel FTP-сообщение OK <3) Рис. 8.12. Получение товаров (файлов) со склада FTP Коннер проходит через те же основные этапы, которые Кейт выполнил на рис. 8.11. Однако вместо того чтобы выполнить команду PUT, Коннер дает команду GET. В терминологии FTP указание PUT означает скопировать файл клиента на сервер, другими словами, разместить его на сервере. Команда GET приводит к копированию файла с сервера на компьютер клиента, другими словами, получению файла с сервера. Ниже перечислено, что происходит с каждым из четырех сообщений Кон- нера, представленных на рисунке. 1. Сначала Коннер посылает серверу свое имя пользователя, используя команду FTP USER. Эта команда позволяет программному обеспечению FTP-клиента Коннера сообщить имя пользователя FTP-серверу для аутентификации. 2. Затем FTP-клиент Коннера использует команду FTP PASS, чтобы сообщить соответствующий пароль FTP-серверу. В этот момент FTP-сервер может решить, является ли Коннер легитимным пользователем FTP-сервера. Когда FTP-сервер отвечает сообщением "OK FTP", это означает, что Коннер был аутентифицирован. 3. Затем клиент FTP Коннера использует команду GET, тем самым сообщая серверу, что Коннер хочет получить копию файла file 1. 4. Наконец, FTP-сервер посылает фактическое содержимое файла Коннеру.
158 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Вы должны также запомнить, что команды PUT и GET просто копируют файл, но не удаляют его. Например, когда Кейт размещает файл на сервере (см. рис. 8.11), он фактически копирует файл, но файл (filel) по-прежнему остается на жестком диске ПК Кейта. Точно так же, когда Коннер получает файл (см. рис. 8.12), он лишь копирует его, но исходный файл остается на сервере FTP. Правила для FTP Для передачи файлов было разработано много стандартов. Тот, о котором мы говорим здесь, названный FTP, имеет один основной запрос на комментарии, который определяет все его детали: RFC959. Этот FTP RFC определяет сообщения, которые FTP использует, чтобы послать имя пользователя, пароль, команды GET, PUT и многие другие. Он также определяет процесс, в соответствии с которым фактически передается файл (см. рис. 8.11 и 8.12). Интересно то, что FTP использует отдельное TCP-соединение (TCP connection) для передачи управляющих сообщений, отличное от того, которое используется для передачи файла. Почему? У нас возникла небольшая проблема курицы и яйца: мы не можем рассказать вам о TCP-соединении, пока вы не прочитаете следующую главу, но вместе с тем мы хотим, чтобы вы знали уже теперь: FTP использует не одно, а два TCP-соединения. Все, что вы пока должны знать, это то, что процесс управления — аутентификацией, именованием файла, который будет передан, и т.д. — считается отдельным от процесса фактической передачи данных. Общая идея похожа на использование транспортной компании. Вы могли бы позвонить в транспортную компанию, договориться об отправке груза, сказать, откуда груз следует забрать, и удостовериться в том, что они знают, как проехать к вашему дому. Вы могли бы даже сказать транспортной компании, что груз, например, имеет большие размеры, необычную форму или большую массу. Это — эквивалент управляющего соединения. Человек, с которым вы говорили по телефону, вероятно, не будет сам забирать ваш груз. Это сделает водитель; он просто погрузит ваш тюк (пакет) в кузов и доставит это адресату. Точно так же FTP выполняет процессы отдельно; он посылает управляющую информацию через одно подключение, или канал, а передача данных происходит через другое соединение. Подводя итоги, можно сказать, что FTP работает с клиентами, соединяющимися с сервером для того чтобы разместить на нем файлы и/или получить файлы с сервера. FTP-сервер не должен связываться с другими FTP-серверами; каждый пользователь, который хочет получить или разместить файлы, соединяется только с одним сервером. Сервер обычно использует механизм аутентификации, обеспечивая право доступа к файлам, хранящимся на сервере, каждому пользователю. Прогулка по торговому пассажу Internet: World Wide Web Ранее, в главе 2, мы кратко рассказали о том, как работает World Wide Web ("Всемирная паутина"). Работа Web во многом напоминает модель розничной торговли. Фактически, когда розничный продавец решает предложить товары для продажи в Web, он может использовать многие из бизнес-процессов, которые осуществ-
Глава 8. Доставка товаров по (сетевому) шоссе 159 ляются при обычной торговле, чтобы обеспечить выполнение коммерческих операций, проводимых через Internet. На случай, если вы не помните, о чем мы говорили в главе 2, приводим основные сведения. ПК пользователя выполняет программное обеспечение, которое называется Web-браузер, или просто браузер. Говоря об электронной почте и FTP, следует напомнить, что программное обеспечение, устанавливаемое на ПК пользователя, называется почтовый клиент, или FTP-клиент. Следуя той же самой логике рассуждений, в случае Web можно было бы назвать программное обеспечение, устанавливаемое на ПК пользователя, Web-клиентом, но большинство людей предпочитает использовать термин "Web-браузер". Конец этой истории зависит от того, кто создает Web-сайт, который размещают на Web-сервере. В случае FTP кто-то должен был поместить файлы на FTP-сервер, прежде чем другие FTP-пользователи могли отыскать полезные для себя файлы. Точно так же и с Web-серверами — кто-то должен подготовить информацию и разместить ее на Web- сервере, прежде чем пользователь может сделать с нею что-нибудь полезное. Информацию, которая находится на Web-сервере и которую пользователи могут просматривать с помощью Web-браузера, в общем случае называют Web- содержимым {web content), или просто содержимым {content). Содержимое состоит из отдельных Web-страниц, коллекцию которых называют Web-сайтом {website). На рис. 8.13 представлены многие из названных концепций и процессов. Fredsco Network i Компьютер разработчиков содержимого компании Fredsco /я\ Разработка и передача ^ Web-содержимого на сервер Установка\ программного обеспечения Web-сервера Сеть провайдера ISP2 Клиент запрашивает Web-страницу (з) Web-сервер /j\ Сервер пооыла fredsco.com ^jA/eD-страницу Рис. 8.13. Строительство и снабжение нового розничного магазина, или нового Web-сайта В следующем перечне описывается, что происходит с каждым из четырех сообщений, которые посылает Коннер (см. рис. 8.13). 1. На компьютере, который будет использоваться в качестве Web-сервера, должно быть установлено программное обеспечение Web-сервера. 2. Кто-то должен создать содержимое, которое должно быть отображено на страницах Web-сайта http: //www. fredsco. com, и поместить это содержимое на Web-сервер. Содержимое состоит из множества файлов; файлы могут быть скопированы с компьютеров Web-разработчиков на Web-сервер с помощью любых средств, включая FTP.
160 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе 3. Теперь Web-сервер готов принять потенциальных покупателей. Один такой покупатель, Коннер, открывает свой Web-браузер и пробует соединиться с http://www.fredsco.com. 4. Web-сервер получает запрос Коннера и пересылает ему Web-страницу. Основная модель подразумевает множество людей, создающих и просматривающих Web-сайты. На компьютерах этих людей должны быть установлены браузеры. В следующих разделах рассмотрены особенности протоколов и стандартов, используемых при работе серверов и Web-браузеров. Правила продажи в розницу через Web Для начала давайте рассмотрим, как загрузить Web-страницу, назначенную по умолчанию, ее часто называют домашней страницей. С точки зрения пользователей, они должны идентифицировать Web-сайт. Пользователи могут сделать это разными способами. Предположим, Коннер (рис. 8.14) ввел адрес http: //www. f redsco. com в поле, расположенном в верхней части окна браузера. В результате на экране появится домашняя страница компании Fredsco. Web-сервер www.fredsco.com Пользователь вводит http://www.fredsco.com. Я должен послать запрос на страницу, загружаемую по умолчанию для этого Web-сайта! HTTP GET (по умолчанию) Программное обеспечение Web-клиента HTTPOK данные: home.html Коннер Рис. 8.14. Подключение к домашней странице компании Fredsco Обратите внимание на строку, которая начинается с символов HTTP (http: // www. fredsco. com). Эту строку в целом называют унифицированный указатель информационного ресурса (uniform resource locator, URL). URL идентифицирует используемый протокол, а также имя сервера. Например, HTTP — это аббревиатура выражения протокол передачи гипертекста (HyperText Transfer Protocol, HTTP). HTTP представляет собой один из протоколов набора TCP/IP, который используется, чтобы послать содержимое Web-страницы с Web-сервера Web-браузеру. Символы, стоящие после //, представляют собой имя сервера. В главе 13 мы подробно будем говорить об именах, используемых в TCP/IP, а сейчас только сообщим, что имя www.fredsco.com идентифицирует компьютер, на котором выполняется программное обеспечение Web-сервера компании Fredsco. Первое сообщение, которое посылает браузер, включает команду GET протокола HTTP (значение по умолчанию). Это означает, что браузер попросил, чтобы Web- сервер послал ему Web-страницу сервера, открываемую по умолчанию (default web page), также называемую домашняя страница сервера (home page). Когда Web- разработчик создавал Web-страницы и размещал их на сервере, одна Web-страница была определена как загружаемая по умолчанию. Итак, теперь сервер смотрит на
Глава 8. Доставка товаров по (сетевому) шоссе 161 свою конфигурацию и находит имя файла, который содержит домашнюю страницу. Используя HTTP, сервер посылает браузеру содержимое файла home.html. Файл, который Web-сервер послал Web-браузеру Коннера, — формата .html. Это означает, что файл содержит текст, соответствующий спецификации, получившей наименование язык гипертекстовой разметки (HyperText Markup Language, HTML). HTML был первым языком, который начали использовать для описания содержимого Web-страниц. Когда браузер Коннера получает файл home.html, браузер, "понимающий" язык HTML, может правильно отобразить содержимое в своем окне. Интересно, что, когда создавался протокол HTTP, содержимое сети было представлено в формате I-LfML, поэтому протокол создавался в первую очередь для того, чтобы передавать файлы HTML. Именно поэтому первое слово в аббревиатуре HTTP — гипертекст (Hypertext). Обратите внимание на то, что, хотя TCP/IP и указывает HTTP в качестве стандартного протокола в запросе на комментарии 2616, TCP/IP ничего не определяет собственно в спецификации HTML. Протокол HTML говорит браузеру, что нужно показать в окне, какой цвет выбрать, какого размера должен быть шрифт и т.д., но ничего не говорит о том, как нужно посылать и получать данные; поэтому TCP/IP не очень-то заботится об HTML! Итак, браузер использует HTTP для запроса конкретной Web-страницы, а сервер использует HTTP, чтобы фактически передать файлы. Web-страницы просто хранятся в файлах на жестком диске сервера. Передавая файлы компьютеру, на котором он установлен, браузер может читать содержимое файла и отображать его на дисплее пользователя. Покупайте один, получайте связку бесплатно Если вы когда-либо пробовали загрузить Web-страницу, то, наверное, обращали внимание на то, что некоторые ее фрагменты отображаются сразу же, в то время как остальная часть страницы заполняется медленно. В этом разделе вы узнаете, почему так происходит. В реальной жизни, когда вы загружаете Web-страницу с помощью браузера, вы фактически получаете много файлов, а не один. Когда браузер получает первый файл (см. рис. 8.14), это лишь начало загрузки того, о чем средний пользователь думает как о Web-странице. Часто первый объект (object), загружаемый HTTP, является HTML-файлом. (Термин "объект" относится к отдельным файлам, которые передает HTTP; каждая Web-страница состоит из одного или более объектов.) Файлы HTML включают текст, который отображается на Web-странице, команды форматирования, плюс инструкции для браузера по загрузке других объектов, которые также должны быть отображены. Например, когда Коннер загружал домашнюю страницу компании Fredsco, он получил файл home.html. Этот файл включал много текста, который отображается на домашней странице, и несколько инструкций относительно того, где следует размещать различные графические изображения. Однако файл HTML не включал графические изображения; они находятся в отдельных файлах на Web-сервере и рассматриваются как отдельные объекты. Итак, реальный процесс выглядит примерно так. 1. Браузер Коннера получает файл HTML, используя HTTP. 2. Браузер Коннера читает файл и отображает что-то на экране.
162 Часть 111. Доставка и логистика: торговля с использованием (сетевых) шоссе 3. В файле, который читает браузер Коннера, могут быть инструкции, которые требуют, чтобы были загружены и другие объекты. Если это так, браузер использует HTTP, чтобы получить указанные объекты. 4. Браузер Коннера читает содержимое новых объектов и отображает его на экране. 5. Когда браузер Коннера читает вновь загруженные объекты, он может найти в них инструкции, требующие, чтобы были загружены другие объекты, и т.д. В конечном счете процесс оказывается законченным, все объекты загруженными, и браузер отображает нечто похожее на то, что хотел показать пользователю Web-разработчик. На рис. 8.15 показан простой пример. HTTP GET (по умолчанию) www.fredsco.com HTTPOK data:home.html HTTP GET /graphics/logol .gif Файл с домашней страницей - home.html. Он попросил меня передать logo1.gif и ad1.gif из каталога /graphics Программное обеспечение Web клиента Кейт HTTPOK |data:logo1.gif HTTP GET /graphics/ad 1.gif НИР OK I data:ad 1.gif Рис. 8.15. Передана всех файлов, образующих Web-страницу Браузер Коннера получает начальную страницу, читает ее и обрабатывает. Файл HTML домашней страницы подсказал Коннеру, что нужно получить два других объекта: файл с именем logol.gif и файл adl.gif. (файлы с расширением .gif содержат графические изображения.) Начальная страница home.html включает два URL, которые указывают браузеру, что оба нужных ему файла расположены в каталоге /graphics сервера, поэтому запросы HTTP на получение файлов включали название каталога. Файл home.html также сообщил браузеру, где нужно показать эти два графических изображения в его окне, поэтому после получения файлов браузер отобразил их содержимое на экране. Резюме В этой главе мы немного рассказали о трех самых популярных приложениях — электронной почте, FTP и World Wide Web. Однако существует много других приложений, и о них можно рассказать намного больше. Прозрачные службы печати и работы с файлами, базы данных, удаленная регистрация и другие опции для передачи файлов и электронной почты образуют богатую смесь приложений и протоколов. Хотелось бы надеяться, что, после рассмотрения небольшой части деталей, касающихся некоторых приложений и их протоколов, вы обратили внимание на многие сходства между ними, например следующие.
Глава 8. Доставка товаров по (сетевому) шоссе 163 ■ Приложения включают клиентское программное обеспечение, которое устанавливается на ПК пользователя, а также серверное программное обеспечение, которое постоянно находится на сервере. ■ Приложение-клиент создает пользовательский интерфейс для пользователя и общается с сервером, используя протоколы уровня приложений. ■ Приложение-сервер позволяет клиенту делать запросы на получение чего-то, что может быть посланным через сеть, например на получение электронной почты, файла или Web-страницы. ■ В дополнение к передаче данных протоколы уровня приложения включают сообщения, которые управляют тем, что посылается через сеть. В частности, электронная почта использует организационную модель, похожую на модель обычной почтовой службы. Она использует протоколы SMTP и РОРЗ для доставки электронной почты. SMTP применяется, чтобы послать электронное письмо серверу SMTP, а РОРЗ используется для получения почты с сервера РОРЗ. Сообщение электронной почты включает заголовок, определенный в соответствии с RFC, определяющим формат Internet-сообщения, а также текст электронного письма. Клиенты и серверы определяют, куда следует отправить письмо электронной почты, руководствуясь почтовым адресом, состоящим из двух частей. При передаче файлов — в частности, с использованием FTP — используется модель склада, на котором хранятся товары. Любой пользователь, который имеет надлежащие права, может поместить файлы на сервер. Позже другие клиенты могут зайти на FTP-сервер и получить копии файлов. Наконец, при просмотре Web используется модель, аналогичная розничным продажам. Сначала создается Web-сайт, который включает аппаратные средства и программное обеспечение сервера, а также Web-страницы. Затем пользователь может просмотреть Web-страницы созданного сайта, это очень похоже на ситуацию, когда вы идете в магазин и просматриваете товары, выложенные в витринах. Браузеры используют протокол HTTP, чтобы получить файлы с сервера; зачастую первый файл Web-страницы (как правило, в формате HTML) подсказывает браузеру: для того чтобы правильно отобразить Web-страницу, он должен получить и другие файлы. Контрольные вопросы Вы можете найти на следующие вопросы в приложении А. 1. Какие два протокола TCP/IP регламентируют передачу по сети электронной почты? Перечислите аббревиатуры и полные названия. 2. И Фред, и Барни используют ПК. Они подключаются к Internet, пользуясь услугами различных Internet-провайдеров. Опишите процесс, в соответствии с которым электронная почта Фреда через Internet передается Барни, с указанием, для чего и как используются почтовые серверы. 3. Какой протокол электронной почты использует клиент в типичной сети, чтобы получить сообщения с сервера? 4. Опишите две части типичного почтового адреса и скажите, что определяет каждая часть.
164 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе 5. На каком уровне сетевой модели TCP/IP работают почтовые протоколы, описанные в данной главе? 6. Что означает аббревиатура FTP, и какова основная цель этого протокола? 7. Каковы названия операций FTP, выполняемых при перемещении файла на сервер и получении файла клиентом? 8. Объясните, как применяются FTP-серверы для того, чтобы передать файл от пользователя used, который пользуется услугами провайдера ISP1, пользователю user2, который связан с ISP2. В частности, укажите, на какие серверы каждый клиент перемещает файл. 9. Рассматривая две основных команды FTP, служащие для перемещения файлов на сервер FTP и с него, скажите, какие команды одновременно и перемещают файл, и удаляют оригинальный файл с диска, с которого он был скопирован? (Например, если userl перемещает файл filel.doc на FTP-сервер, удаляется ли filel.doc с компьютера пользователя userl?) 10. Как называется процесс проверки того, что пользователь является тем, за кого он себя выдает, перед выдачей ему разрешения использовать сервер? 11. Что означает аббревиатура HTTP, и какова основная цель этого протокола? 12. Из какого другого стандарта HTTP позаимствовал первые две буквы своего названия? \ 13. Какую операцию HTTP использует браузер, чтобы запросить получение конкретного файла с сервера сети? 14. Что означает аббревиатура URL и как это используется?
Что вам предлагается освоить После прочтения этой главы вы должны уметь: s перечислить основные особенности TCP; s объяснить процесс исправления ошибок TCP; S описать, почему компьютер должен использовать много номеров портов TCP; s объяснить потребность в стандартных номерах портов TCP; s объяснить процесс и выгоды сегментации. ш $$*/" i у$%* *&$#&& ЪХ'1?<*<Г. '*'''"' 4;''У'/'!</?"//,, "">/',' .■"^i. ч4г;^Л/ €ЙЙ^Й^ ^ 1 Ш Щ 1 ^ М \щ ^' ^Ъ/а <■ {' Й5 <?':S ""' ;s/ *-Д ,}if%fr, %, ' Р0 %$ >yf? '/",:'' till. -.им? I| щ :?$/ Ш
Глава 9 Выбор вариантов доставки при перевозке товаров по (сетевому) шоссе Множество фирм всего мира пользуются услугами транспортных компаний для доставки своих товаров. Например, небольшие магазины розничных продаж заказывают товары у оптовых продавцов, а третья компания, транспортная, фактически забирает продукты у оптового продавца и доставляет их розничному торговцу. Аналогично, когда вы заказываете что-нибудь через Internet, обычно одна из больших транспортных компаний, типа FedEx или UPS (в США), доставляет продукт вашей фирме. Эта модель бизнеса работает хорошо. Крупные транспортные компании мира могут создавать большие парки грузовиков, самолетов, судов, ослов — словом, всего того, что необходимо для доставки грузов. Они могут доставлять товары для менее крупных компаний, пытающихся создать собственные системы распределения. Благодаря такой организации труда компании, которые нуждаются в доставке товаров, экономят средства, а транспортные компании зарабатывают деньги. Подобное происходит с протоколами уровня приложений и протоколами транспортного уровня в компьютерных сетях. Протоколы уровня приложений должны посылать сообщения другим компьютерам и получать от них сообщения. Как говорилось в главе 8, некоторые из этих сообщений являются только служебными, а некоторые содержат фактические данные конечного пользователя. Многие протоколы уровня приложений нуждаются в одних и тех же основных службах, которые могли бы передавать их сообщения через сети на другие компьютеры. Подобно фирмам, которые пользуются услугами транспортных компаний, протоколы уровня приложений не хотят беспокоиться о том, как данные передаются между компьютерами. Они только хотят передать данные кому-то еще и ожидают, что эти данные будут доставлены программному обеспечению уровня приложений на компьютере адресата. В этой главе мы расскажем о том, как протоколы транспортного уровня выполняют несколько важных функций в интересах несметного числа протоколов уровня приложений, включая доставку сообщений уровня приложений и данных между двумя компьютерами. "Привет, я к вашим услугам" "Привет, это Фред из "Транспортной компании Фреда". Чем я могу помочь вам?" Да, Фред, владелец, сам отвечает на звонки в своей маленькой транспортной компании. Он ждет телефонного звонка, чтобы послать своего единственного води-
168 Часть 111. Доставка и логистика: торговля с использованием (сетевых) шоссе теля грузовика, Барни, чтобы забрать пакет и доставить его через весь город. Чтобы быть готовым к этому первому обращению по телефону, Фред купил грузовик, нанял Барни; снял офис, арендовал телефонные линии, организовал Web-сайт и дал рекламу. Наконец телефон зазвонил, и Фред получил первую возможность отправить товары и заработать немного денег. Как и Фред, протоколы транспортного уровня должны быть готовы к тому, что протоколу уровня приложений понадобятся их услуги. Если вы используете приложения TCP/IP, протоколы уровня приложений используют протоколы транспортного уровня TCP/IP, чтобы передать сообщения через сеть. В то время как протоколы уровня приложений — это обычно часть прикладного программного обеспечения, протоколы транспортного уровня, как правило, входят в состав операционной системы (operating system, OS) компьютера. Итак, программное обеспечение транспортного уровня бодрствует, ожидая, пока прикладная программа — а именно, часть прикладной программы, которая применяет протоколы уровня приложений — попросит что-нибудь сделать. Общая идея представлена на рис. 9.1. Компьютер конечного пользователя Пользовательский интерфейс Клиентское программное обеспечение E-Mail Пользовательский ' интерфейс Сохранение E-Mail [Хна ПК Уровень приложений: управление потоком данных между приложениями Жесткий диск Встроено в ОС Транспортный уровень: обеспечение потребностей приложений Рис. 9.1. Прикладная программа и уровень приложений запрашивают помощь у транспортного уровня Как было показано на рис. 8.4 в предыдущей главе, прикладная программа включает пользовательский интерфейс и протоколы уровня приложений. На рис. 8.6 были показаны SMTP-сообщения, которые использовались при отправке электронной почты. На этом и других рисунках главы 8 были показаны сообщения, передаваемые между двумя ПК. В реальной жизни, когда почтовый клиент,
Глава 9. Выбор вариантов доставки при перевозке товаров... 169 показанный на рис. 9.1, посылает сообщения такого типа, он пользуется услугами транспортного протокола. Вообще говоря, когда Те, Кто Пришел Раньше Нас создавали сетевую модель TCP/IP, они разработали целую связку протоколов. При этом протоколы одного уровня обеспечивают работу протоколов, функционирующих одним уровнем выше. И наоборот, протоколы каждого уровня ожидают услуг со стороны протоколов, работающих одним уровнем ниже. В этой главе мы расскажем о том, как протоколы уровня приложений, типа SMTP, ожидают, что протоколы транспортного уровня, типа TCP, обеспечат транспортировку данных через сеть. Доставка с предоставлением полного комплекса услуг Точно так же как компания может создать собственный отдел доставки, протокол уровня приложений может избежать использования протокола транспортного уровня, но этого почти никогда не происходит. Почему? Дело в том, что протоколы транспортного уровня уже существуют. Они предоставляют множество услуг, в которых нуждаются многие приложения. Для использования протокола транспортного уровня приложению приходится потратить намного меньше времени и усилий. Короче говоря, приложению удобнее, лучше, быстрее, дешевле и проще использовать протокол транспортного уровня. Что же делают для приложения протоколы транспортного уровня? В этой главе мы рассмотрим один из таких протоколов, а именно: протокол управления переданей (transmission control protocol, TCP), который описан в RFC 793. TCP/IP на самом деле имеет другой протокол транспортного уровня — протоко/: дейтаграмм пользователя (user datagram protocol, UDP), но протокол TCP намного более интересен TCP обеспечивает много возможностей, недоступных для UDP. Можно считать, что TCP обеспечивает сервис высокого качества, в то время как UDP — лишь дешевое обслуживание. В эгой главе будет рассказано о наиболее важных возможностях TCP, таких как: ■ доставка данных приложений с использованием инкапсуляции; ■ разбиение объемных "грузов" на меньшие и лучше управляемые; ■ гарантированная доставка благодаря исправлению ошибок; ■ доставка данных не только конкретному компьютеру, но конкретной программе, благодаря использованию номеров портов; ■ упрощение создания приложения за счет избавления его от необходимости самому обеспечивать доставку данных. О каждой из названных особенностей вы узнаете, ознакомившись с материалами следующих четырех разделов данной главы. Основы транспортировки: управление отгрузкой с помощью бирок доставки Если вы решили отправить пакет, воспользовавшись услугами известной транспортной компании, вы заполняете бирку доставки, прикрепляете ее к пакету и оставляете его там, где служащий транспортной компании найдет его, зайдя в ваш офис. Короче говоря, вы сообщаете транспортной компании, куда нужно доставить
170 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе пакет, а затем выбираете вариант доставки. Почти по волшебству пакет появляется в указанном вами месте. Вы можете подумать, что бирки доставки — слишком далекая аналогия, однако некоторые касающиеся их применения моменты идентичны таковым, характерным для протокола TCP. Например, бирки доставки: ■ включают адрес транспортной компании, указываемый в специальной форме; ■ включают адрес получателя, указываемый в специальной форме; ■ определяют другие опции, например скорость доставки, страхование и номера телефонов (на случай проблем); ■ каждый бит информации на бирке размещают в одном и том же месте; ■ гарантируют, что в различных пунктах маршрута будут точно знать, что нужно сделать с пакетом. Вернемся к нашим сетям. Термин "инкапсуляция" по отношению к сетям означает примерно то же самое, что "бирка доставки" по отношению к отправке пакетов. Например, на рис. 9.2 показан пример запроса HTTP GET на домашнюю страницу, с отображением инкапсуляции, выполняемой TCP. Браузер Кейта просит прислать домашнюю страницу. Однако фактически браузер не посылает запрос по сети; он просто просит, чтобы программное обеспечение TCP, установленное на компьютере Кейта, послало для этого необходимые данные. (В этой главе мы опускаем другие относящиеся к сети детали, такие как передача данных на физическом уровне, об этом мы будем говорить позже). Я подготовил этот запрос HTTP GET. Эй, TCP! Пошли это серверу, пожалуйста, и обеспечь доставку! Я добавил свой заголовок, поэтому я могу выполнить свою работу - сейчас я отправлю это! Р4п Компьютер Кейта Web-браузер HTTP GET (по умолчанию) Программное обеспечение TCP |ТСР-заголовок|НТТРСЕТ(поумолчанию)]- Web-сервер TCP-заголовок HTTP OK data:home.html Рис. 9.2. Добавление к данным информации о транспортировке путем инкапсулирования в заголовок TCP Программное обеспечение TCP Кейта, которое обычно является частью ОС, отвечает за доставку данных на Web-сервер. Протокол TCP предоставляет несколько услуг, поэтому необходимо место (в пакете), где он мог бы записать информацию о своих услугах. Именно для этого TCP использует заголовок. Как говорилось в главе 5, заголовок — связка служебных битов, которые сетевой протокол добавляет к данным. Протокол, который добавляет заголовок — в данном случае TCP — использует эти биты для записи информации, которая необходима ему, чтобы выполнить его работу. Многие из служб этого протокола, описанных в этой главе, записывают информацию в заголовке TCP, чтобы выполнить полезную функцию.
Глава 9. Выбор вариантов доставки при перевозке товаров... 171 Процесс добавления заголовка TCP к данным уровня приложений называют инкапсуляцией {encapsulation). Достаточно подробно об инкапсуляции мы уже говорили к главе 5. Представьте, что Пол управляет грузовиком транспортной компании. Каждое утро он добирается до места работы и обнаруживает, что его машину кто-то уже загрузил. Он садится в грузовик, начинает поездку, время от времени останавливаясь, чтобы доставить или забрать пакеты. Пола не волнует, что находится в пакетах. Он мог бы немного побеспокоиться о размере пакетов, особенно если пакет является слишком большим или тяжелым. Но вообще-то он руководствуется только тем, что указано на бирке доставки, и старается доставить пакет в указанное место. Точно так же TCP не беспокоится о том, какие данные он доставляет другому компьютеру. На рис. 9.3 показано то же самое, что происходило на рис. 9.2, но с точки зрения TCP. К0МПЬД КеЙта ГтСР-заголовок! Данные |—► Web-сервер ЯИг <—|ТСР-заголовок[ Данные" Рис. 9.3. TCP относится ко всем данным одинаково TCP должен беспокоиться только о заголовке TCP и выполнять то, что в нем указано. В данном случае, как только TCP передаст первую порцию данных на сервер и вторую порцию получит для браузера с сервера, его задание будет выполнено. Заголовок TCP и следующие за ним данные называются TCP-сегмент {TtP segment). Далее в этой главе, в разделе, названном "Большой ящик, маленький грузовик — что делать?," будет сказано, почему разработчики протокола TCP решили называть это сегментом {segment). Одна из наибольших выгод многоуровневой сетевой модели имеет отношение к тому, как TCP ведет себя в случае, показанном на рис. 9.3. Тот факт, что TCP не должен волноваться о том, что пытается сделать HTTP, означает, что программное обеспечение TCP вообще не должно ничего знать о принципах работы HTTP. Поэтому человек, который пишет программное обеспечение TCP, может сделать его достаточно простым. Человек, который пишет программное обеспечение HTTP или протокол другого приложения, которое намеревается использовать TCP, также может сохранить его простоту, полагаясь на то, что данные доставит TCP. Если вы, дочитав до этого места, пока еще не уверены в своих знаниях относительно протокола TCP, это нормально. Пока что в этой главе описаны механизмы, используемые TCP, но очень мало сказано о том, почему TCP полезен для приложений. В следующем разделе вы узнаете об исправлении ошибок; это одна из самых важных особенностей TCP. Покупка страховки для сетевого "груза" Если вы отправляете что-то ценное, то можете дополнительно потратить немного денег, чтобы застраховать груз. Тогда, если транспортная компания потеряет или повредит пакет, она компенсирует вам потери. В случае TCP вы получаете сервис еще более высокого качества. Если утерян реальный физический пакет — он утерян скорее всего навсегда. Однако если вы теряе- ||||
172 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе те связку битов, вы можете сделать больше! В главе 3 мы уже рассматривали основную идею, которую сейчас кратко еще раз поясним с помощью рис. 9.4. Старый компьютер Фреда Супер-пупер компьютер Вильмы *- <— «*— _zzn <— #1 Первая часть файла... #2 1\>Вторая часть файла... #3 #2 Третья часть файла... Пожалуйста, передайте повторно #2 Вторая часть... Повторно Рис. 9.4. Страхование доставки данных На рис. 9.4 компьютер Вильмы посылает три TCP-сегмента Фреду. Второй сегмент был передан с ошибками, и Фред это заметил. Как он узнал, что произошли ошибки? Напоимер, он мог бы проверить значение в поле контрольной последовательности фрейма (FCS) сети Ethernet, которое может подсказать, было ли что-то передано по локальной сети с ошибками. Хотя в этой главе не рассматривается именно случай Ethernet, представим, что используется как раз эта сеть и что Фред действительно заметил, что фрейм передан с ошибками. Процесс прост: отправитель (Вильма) пронумеровал сегменты так, что, если один из них будет потерян, Фред сможет не только узнать, что один сегмент передан с ошибками, но сможет запросить повторную передачу сегмента с пропущенным номером. Итак, Фред просит, чтобы Вильма снова послала сегмент 2. В следующих двух разделах мы расскажем о том, как TCP определяет, какие сегменты были доставлены успешно, и как TCP обнаруживает, что сегменты были потеряны и требуется их повторная передача. Подтверждение доставки TCP использует одни и те же механизмы и для того, чтобы подтвердить доставку данных, и обнаружить, что какие-то данные не были доставлены, а затем выполнить исправление ошибок. Чтобы сделать все это, TCP помещает информацию, представленную на рис. 9.5, в заголовок TCP. Сначала рассмотрите полный заголовок TCP (рис. 9.5). Потом мы расскажем о частях заголовка, которые используются для исправления ошибок. Заголовок, добавляемый к пакету протоколом TCP, имеет несколько различных полей. Для исправления ошибок используются поля порядковый номер {sequence number) и номер подтверждения {acknowledgment number). Порядковый номер идентифицирует сегмент, а номер подтверждения используется, когда происходит ошибка. На рис. 9.6 показаны поля порядкового номера и номера подтверждения, если ошибок нет.
Глава 9. Выбор вариантов доставки при перевозке товаров... 173 Бит О Бит 15 Бит 16 Бит 31 Порт отправителя A6) Порт получателя A6) Порядковый номер C2) Номер подтверждения C2) Длина заголовка D) Зарезервировано F) Биты кода F) Контрольная сумма A6) Окно A6) СрочностьA6) Опции @ или 32, если не 0) Данные (переменной длины) 20 байт Рис. 9.5. Формат бирки доставки: заголовки TCP Старый компьютер Фреда Супер-пупер компьютер Вильмы «— *— *— _ZZZ SEQ=1 SEQ = 2 SEQ = 3 АСК = 4 Первая часть файла... Вторая часть файла... Третья часть файла... (Данные отсутствуют) Рис. 9.6. Подтверждение доставки, ошибок не было На рис. 9.6 TCP подтверждает доставку каждого сегмента, используя поля порядкового номера и номера подтверждения. Однако номер подтверждения выглядит немного забавным. Вильма пронумеровала сегменты как 1, 2, и 3, но обратите внимание: Фред послал назад значение в поле АСК, равное 4. Значение в поле АСК означает, что это число — номер следующего сегмента, который Фред ожидает получить. То есть Фред подразумевает следующее: "Я получил все сегменты до номера 4, так что пошлите мне следующий, 4." Косвенным образом Фред сообщил, что им получены сегменты 1, 2 и 3, потому что он указал в поле подтверждения следующий номер — в данном случае 4. Использование поля подтверждения для указания следующего сегмента, который должен быть получен, называют прогнозным подтверждением {forward acknowledgment). Используя поля порядкового номера в отсылаемых сегментах и наблюдая поля с номерами подтверждения в полученных сегментах, программное обеспечение TCP
174 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Вильмы может узнать, что все три сегмента успешно доставлены Фреду. Далее вы увидите, что Вильма делает с потерянными сегментами. Теряйте все, что угодно, — мы все вернем Теперь вернемся к исправлению ошибок. На рис. 9.7 показан случай, когда сегмент был передан с ошибками (сегмент два), поэтому Фред посылает сегмент со значением АСК равным 2. Старый компьютер Фреда Супер-пупер компьютер Вильмы SEQ=1 Первая часть файла... . А SEQ = 2 ] > £ Вторая часть файла... 1' SEQ = 3 Третья часть файла... АСК = 2 (Данные отсутствуют) SEQ = 2 Вторая часть... Повторно АСК = 4 (Данные отсутствуют) Рис. 9.7. Процесс исправления ошибок протоколом TCP Процесс идентичен представленному на рис. 9.4, но на рис. 9.7 показаны значения поля заголовка TCP. Фред успешно получил сегменты 1 и 3, поэтому он косвенно знает, что Вильма должна была послать сегмент 2, но она или не сделала этого, или при передаче произошли ошибки. Поэтому Фред посылает сегмент назад Виль- ме, со значением АСК, равным 2. В соответствии с логикой прогнозного подтверждения, Вильма знает, что Фред ожидает получить сегмент 2, это подразумевает, что он получил номер 1, но не номер 2. В ответ Вильма повторно посылает сегмент 2. Чтобы повторно послать сегмент 2, Вильма, должна хранить копии всех сегментов. После того как доставка сегмента будет подтверждена, Вильма может освободить память компьютера для использования ее в других целях. Однако, сохраняя копию, Вильма может снова послать любой потерянный сегмент. Обратите внимание на то, что Вильмц повторно послала только сегмент 2, предоставляя тем самым Фреду время для отправки сегмента со значением АСК, равным 4. Сделав это, Фред подтвердил получение повторно посланного сегмента 2, а также ранее принятого сегмента 3. Большой ящик, маленький грузовик — что делать? Когда вы что-нибудь отправляете, транспортная компания доставит ваш пакет, используя обычный грузовик, водитель, которого и заберет ваш пакет. Но транс-
Глава 9. Выбор вариантов доставки при перевозке товаров... 175 портная компания накладывает ограничения на габариты и вес груза; иначе он может не уместиться в грузовик, или водитель не сможет в одиночку его забрать. Однако иногда необходимо отправить много какого-то материала, который даже в упакованном виде значительно превышает ограничения транспортной компании на габариты груза (размеры пакета). В подобных случаях транспортная компания присылает специальный грузовик, способный забрать такой груз, и, возможно, грузоподъемник, чтобы поднять груз в кузов. Или компания, желающая отправить что- то громоздкое, договаривается с транспортной компанией и старается упаковать материал так, чтобы пакеты с ним было легко обрабатывать. При работе с сетями, если необходимо отправить данные большого объема, можно разделить большое количество битов на несколько частей. Как выясняется, Те, Кто Пришел Раньше Нас решили, что протокол транспортного уровня должен перед передачей данных разделить их на фрагменты. Если какому-то приложению нужно передать много данных, оно выдает сразу все эти данные протоколу транспортного уровня, и уже его заботой становится разбиение данных на фрагменты, которыми проще управлять. В сегмент TCP (включая заголовок TCP) может быть помещено какое-то максимальное число байтов Типичное значение — 1480, хотя в некоторых случаях оно может быть и большим. Максимальный размер сегмента называют... максимальным размером сегмента {maximum segment size, mss). Протокол уровня приложений не накладывает ограничений на количество байтов, которые он хочет послать; предоставляя беспокоиться об этом протоколу транспортного уровня. Вот что протокол уровня приложений думает о размере данных, которые нужно послать: — "Мне нужно срочно послать большую связку байтов. Транспортный уровень, пожалуйста, отправь эти биты другому компьютеру." Транспортный уровень получает эти байты от уровня приложений, но у него есть mss, о соблюдении которого он должен заботиться. Поэтому транспортный уровень думает примерно так: — "Я должен послать эту большую связку байтов. Перед отправкой их на другое устройство я разобью связку на части, не большие, чем mss, каждая." Процесс деления данных на части называют сегментацией {segmentation). Байты, которые включают данные и заголовок TCP, называют сегментами TCP, потому что именно TCP часто разбивает большие порции данных, полученных от приложений, на части, или просто сегментами {segments). На рис. 9.8 показан пример, в котором файл с домашней страницей содержит 3000 байт данных. В этом примере TCP, выполняемый на Web-сервере, разбивает 3000 байт данных приложения на три сегмента. HTTP выдает протоколу TCP все 3000 байт. TCP в данном случае имеет mss, равный 1480. А поскольку каждый заголовок TCP занимает 20 байт, то лишь 1460 байт могут быть помещены в часть сегмента, предназначенную для размещения данных. Так как в рассматриваемом случае протоколу TCP нужны три сегмента, он помещает в каждый сегмент примерно 1/3 данных.
176 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Web-сервер Web-браузер Кейта SEQ=1 1000 Bytes SEQ = 2 Более 1000 байт SEQ = 3 Более 1000 байт ___ - I Home.html: 3000 байт данных Т 3000 байт данных I A A J — — | — — — HTTP TCP АСК =4 (Данные отсутствуют) Рис. 9.8. Сегментация данных перед отправкой Почему три маленьких сегмента лучше, чем один большой Зачем занимаются сегментацией? Почему разработчики протокола TCP не выбрали mss большего размера? Чтобы понять, почему необходима сегментация, вспомните, как выполняется исправление ошибок, и рассмотрите следующий пример. Представьте, что вы загружаете Web-страницу, и эту страницу украшает логотип компании. Имя графического файла — logo.gif, и его размер составляет 146 Кбайт (Килобайт). Теперь вообразите, что TCP послал все данные в одном сегменте TCP. Если вы посылаете 146 Кбайт данных в одном сегменте и он добирается до места назначения, все хорошо. Однако если один-единственный бит передан с ошибкой, то весь этот замечательный сегмент, содержащий 146 Кбайт данных, надо передавать повторно. И все из-за одной глупой ошибки при передаче одного бита! Передавая logo.gif в виде 100 сегментов, каждый из которых содержит 1460 байт, вы также отправили бы весь файл. Однако, если бы произошла ошибка в передаче всего лишь одного бита, то, соответственно, только один сегмент был бы передан с ошибкой, поэтому передавать повторно пришлось бы только один сегмент. Поскольку ошибки при передаче происходят нечасто, ограничение сегментов некоторым максимальным размером позволяет увеличить полную пропускную способность сети. Небольшая безобидная ложь о подтверждениях А теперь позвольте признаться в том, что механизмы исправления ошибок и подтверждений TCP работают не вполне так, как было показано на рис. 9.7 и 9.8. Мы намеренно упростили описания, чтобы не останавливаться на деталях. Теперь, когда вы прочитали большую часть этой главы, посвященной TCP, позвольте пояснить, как на самом деле происходит исправление ошибок при использовании протокола TCP.
Глава 9. Выбор вариантов доставки при перевозке товаров... 177 <§> Мы, конечно, могли бы изложить детали, о которых сейчас пойдет речь, несколько ранее, но наш опыт преподавания подсказывает, что лучше вначале частично изложить концепцию, а потом рассказать все остальное. Именно так мы и поступаем! В полях порядкового номера и номера подтверждения TCP указываются не номера сегментов; в них идентифицируется первый байт части сегмента, содержащей данные. Например, если бы ПК посылал сегменты, каждый из которых содержит только 1 байт, тогда порядковые номера и подтверждения работали бы так, как мы описывали ранее в этой главе. Однако в примере, показанном на рис. 9.8, все сегменты содержат по 1000 байт. Поэтому на рис. 9.9 мы показываем правильные значения полей порядковых номеров и подтверждений. Web-сервер HTTP TCP Web-браузер Кейта SEQ = 1 Байты 1-1000 SEQ = 1001 Байты 1001-2000 SEQ = 2001 Байты 2001-3000 АСК = 3001 (Данные отсутствуют) Рис. 9.9. Подтверждение каждого байта Когда сервер посылает первый сегмент, он начинается с порядкового номера 1. Однако в поле порядкового номера TCP фактически нумеруются байты, а не сегменты. Поэтому, с точки зрения TCP, первый байт в первом сегменте имеет номер 1, а последний байт в первом сегменте — номер 1000. Программное обеспечение TCP на компьютере Кейта видит порядковый номер 1, видит 1000 полных байтов, и решает, что байты пронумерованы от 1 до 1000. Когда TCP на сервере готовит второй сегмент, он думает примерно так: "Предыдущий порядковый номер был 1, и сегмент содержал 1000 байт. Следующий порядковый номер должен быть 1001, потому что последний байт в предыдущем сегменте был байтом номер 1000." Как следует из рисунка, именно так сервер и поступает. Аналогично, когда сервер посылает третий сегмент, он присваивает ему порядковый номер 2001. Последний байт этого сегмента мог бы иметь номер 3000. Наконец, когда программное обеспечение TCP Кейта подтверждает получение данных, оно должно подтвердить получение всех данных. Оно получило байты 1-1000, 1001-2000 и 2001-3000, содержавшиеся в трех последовательно переданных сегмен-
178 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе тах TCP. Поскольку Кейт получил все три сегмента без ошибок, в следующем сегменте Кейта показывается подтверждение 3001 —номер следующего байта, который он ожидает получить. Доставка пакета нужному человеку, а не только по правильному адресу Когда вы отправляете пакет в реальной жизни, в бирке доставки вы указываете не только адрес, но и имя человека, которому предназначен пакет. Причина очевидна: вы хотите быть уверенными в том, что пакет, который вы посылаете, получит вполне определенный человек. Протоколы транспортного уровня делают то же самое. Представьте, например, что Кейт открыл два браузера: один — со страницей http: //www. f redsco. com, а в окне второго отображается страница http://www.espn.com. На компьютере Кейта также все время работает программное обеспечение почтового клиента, а еще он загружает какие-то файлы с помощью FTP-клиента. Что происходит, когда очередной сегмент TCP поступает на компьютер Кейта? Да, сегмент был доставлен на тот компьютер, где его ждали, но он мог бы содержать данные, предназначенные для одного из двух браузеров, почтового клиента или клиента FTP (рис. 9.10). Компьютер Кейта Браузер 1 Браузер 2 Почтовый клиент FTP- клиент Программное обеспечение TCP" Я выполняю 4 приложения, использующих TCP. Какому из них нужно передать данные последнего сегмента? TCP-заголовок Данные — Рис. 9.10. Затруднительное положение: один сегмент, но четыре приложения Если пакет обнаруживается в здании вашего офиса, кто бы ни взял его в руки, он посмотрит на бирку доставки, обратит внимание на имя адресата и сделает все необходимое для того, чтобы этот человек мог получить пакет. Точно так же в заголовке TCP имеется поле, названное порт адресата TCP, {TCP destination port), которое говорит принявшему сегмент компьютеру (в нашем случае — ПК Кейта), какой прикладной программе нужно передать полученные данные. Для каждой прикладной программы, которая в данный момент выполняется, компьютер назначает уникальный номер порта TCP (TCPport). Чтобы данные получило определенное приложение, выполняемое на компьютере, вы посылаете этому компьютеру сегмент TCP и указываете нужный номер порта TCP в поле заголовка TCP, предназначенном для указания номера порта TCP адресата. Конечно, разобраться во всем этом нам поможет очередной пример. На рис. 9.11 показано, как Кейт использует поле порта адресата. Браузер browserl использует порт номер 1030, a browser2 использует порт 1031. Почтовый клиент использует порт 1040, а клиент FTP использует порт 1045. Поэтому, когда приходит очередной сег-
Глава 9. Выбор вариантов доставки при перевозке товаров... 179 мент, программное обеспечение TCP Кейта проверяет поле порта адресата TCP в заголовке TCP, значение которого говорит ПК: эти данные должны быть переданы приложению browser2. Поскольку каждое приложение, выполняемое на компьютере Кейта, использует свой номер порта TCP, Кейт может получать сегменты TCP и будет знать, что нужно сделать с пришедшими данными. Компьютер Кейта Эй, TCP-порт адресата - 1031, передам-ка я —, данные браузеру 2! ТСР-сегмент Порт адресата = 1031 Данные Рис. 9.11. Использование поля порта адресата в качестве имени получателя на бирке доставки Когда Кейт получает сегмент, он смотрит на поле порта адресата. В данном случае он выяснил, что порт TCP адресата— 1031, поэтому передал данные приложению browser2. Курица, яйцо и порт адресата первого сегмента Чтобы позволить компьютеру одновременно выполнять много приложений, которые используют TCP, разработчики TCP решили ввести в заголовок особое поле, в котором указываются номера портов адресата. Однако при этом возникла небольшая проблема курицы и яйца. Представьте, что Кейт только что запустил второй браузер — тот, который мы на рис. 9.11 назвали browser2. Кейт начинает щелкать на кнопках, чтобы запустить приложение browser2, затем он вводит URL Web- страницы, которую хочет получить с Web-сервера. На рис. 9.12 показан пример первого сегмента, посланного компьютером Кейта от имени этого нового браузера, и сегмент ответа от Web-сервера. Новый браузер (браузер 2) нуждается в данных. Гммм... Порт 1031 не используется; я задействую его. Кроме того, Web сервер ВСЕГДА использует порт 80, поэтому я укажу порт 80 в качестве порта адресата! ПО моего Web сервера настроено получать все сегменты, в которых указан порт получателя 80 - стандартный порт для Web. Компьютер Кейта Порт отправит.= 1031 Порт получат. = 80 Порт отправит.= 80 Порт получат. = 1031 Данные Данные \г Web-сервер Рис. 9.12. Инициализация номера порта TCP
180 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Когда приложение на ПК Кейта (в данном случае browser2) впервые просит, чтобы TCP отправил данные, программное обеспечение TCP, выполняемое на компьютере Кейта, находит номер порта TCP, который в данный момент времени не используется, и резервирует его для нового приложения. Пока никакое другое приложение, которое выполняется на ПК Кейта, не использует порт TCP с этим же самым номером, любые сегменты TCP, которые в будущем получит ПК Кейта, могут быть обработаны правильно. На рис. 9.12 ПК Кейта использует для приложения browser2 порт 1031. ПК Кейта надеется, что сервер ответит на его запрос относительно Web- страницы. Кейт ожидает, что сегмент, который он получит с сервера, будет иметь в поле, где указывается номер порта TCP адресата, значение 1031. Чтобы именно так и произошло, ПК Кейта устанавливает в поле порта отправителя TCP в первом сегменте значение 1031. Сегмент с номером порта отправителя TCP содержит номер порта, используемого приложением, которое послало сегмент TCP. Поэтому, когда сервер отвечает, он знает, какое значение нужно указать в поле порта адресата TCP — в нашем примере 1031. Когда клиентское приложение запускается впервые, TCP на том компьютере динамически назначает приложению номер порта TCP. Эти номера портов иногда называют портами с динамически назначаемыми номерами {dynamically assigned port), или номерами эфемерных портов {ephemeralport). Хорошо, но это — только часть истории. Когда ПК Кейта создает первый сегмент (см. рис. 9.12), который предполагается послать Web-серверу, ПК Кейта должен что-то указать в поле порта адресата TCP. Почему? Дело в том, что компьютер, на котором постоянно выполняется программное обеспечение Web-сервера, может выполнять и многие другие приложения, поэтому программное обеспечение TCP сервера захочет посмотреть на поле порта адресата в полученном сегменте TCP, чтобы выяснить, какому именно приложению следует направить данные. В данном случае ПК Кейта указал в заголовке порт 80, потому что порт 80 — стандартный порт для Web-серверов. Стандартные номера портов {well-known ports) позволяют приложениям, выполняемым на двух компьютерах, посылать первый сегмент с указанием в нем нужного порта адресата. Прежде чем Кейт пытается соединиться с Web-сервером, программное обеспечение Web-сервера говорит TCP на Web-сервере примерно следующее: "Эй, если вы получите что-то для адресата с портом 80, передаете это мне." Позже, когда Кейт посылает на этот сервер сегмент с портом адресата 80, программное обеспечение TCP сервера знает, что полученные данные следует передать программному обеспечению Web-сервера. Серверы часто используют стандартные порты, давая тем самым клиентам возможность правильно указать номер порта адресата в их начальных сегментах TCP. Стартуйте с правой ноги при использовании соединения TCP Пока что вы узнали, как TCP обеспечивает обслуживание протоколов уровня приложений. Это обслуживание включает собственно доставку, сегментацию и исправление ошибок. TCP также позволяет многим программам пользоваться его услугами одновременно, отслеживая, какие сегменты для каких приложений предназначены; для этого используются номера портов.
Глава 9. Выбор вариантов доставки при перевозке товаров... 181 Чтобы выполнить все эти функции, TCP использует несколько полей в заголовке TCP. Прежде чем может произойти передача данных с использованием TCP, обе оконечных точки должны согласиться со значениями, изначально указываемыми в этих полях. TCP использует процесс, названный установление соединения TCP {TCP connection establishment), чтобы инициализировать несколько полей в заголовке TCP. Каждый раз, когда браузер соединяется с новым Web-сайтом, каждый раз, когда почтовый клиент проверяет поступающую почту, и т.д., создается новое соединение TCP, в установлении которого участвуют оба компьютера. Установление соединения выполняется в результате того, что два компьютера посылают друг к другу определенный набор сегментов TCP, число которых составляет 3. После этого между прикладными программами, выполняемыми на каждом компьютере, начинает действовать ТСР- соединение, и поля заголовка TCP получают необходимые начальные значения, согласованные обеими оконечными точками. Термин "TCP-соединение" {TCP connection) относится к соглашению, согласно которому приложение на одном компьютере соглашается "говорить" с приложением на другом компьютере. Например, прежде чем ПК Кейта мог запросить Web- страницу (см. рис. 9.12), показанную на рисунке, нужно было создать ТСР- соединение между браузером browser2 и программным обеспечением Web-сервера. Чтобы создать это TCP-соединение, между браузером и Web-сервером передаются три TCP-сегмента. По окончании этого процесса начинает функционировать ТСР- соединение, с соглашением по таким вопросам, как номера портов, используемых браузером и сервером, значения, изначально указываемые в полях порядкового номера, и т.д. Как только вы запускаете новое приложение на основе TCP, должно быть сформировано новое TCP-соединение, и только после этого могут быть переданы сообщения приложений или данные конечного пользователя. На рис. 9.13 еще раз показан компьютер Кейта, на котором работают два браузера, один почтовый клиент и один FTP-клиент. В этом случае показаны также и серверы. Линии на рисунке представляют четыре TCP-соединения Кейта. Компьютер Кейта Браузер 1 Порт 1030 Браузер 2 Порт1031 Почтовый клиент Порт1040 FTP- клиент Порт1045 Web-сервер Web-сервер Почтовый FTP-сервер компании компании сервер компании Fredsco ESPN компании Fredsco (порт 80) (порт 80) Fredsco (порт 21) (порт 25) Рис. 9.13. ТСР-сединения Кейта
182 Часть III. Доставка и логистика: торговля с использованием (сетевых) шоссе Как следует из рисунка, Кейт установил четыре соединения TCP — по одному для каждого из его клиентских приложений, с соответствующими им серверами. Резюме Почти все протоколы уровня приложений имеют общий набор функций, которые они должны выполнить. Вместо того чтобы поручить выполнение этих функций каждому протоколу уровня приложений, разработчики сетевых моделей переводят некоторые из этих общих функций на один уровень ниже уровня приложений. Для TCP/IP это — транспортный уровень. В этой главе мы рассказали о самом популярном протоколе транспортного уровня TCP/IP, протоколе TCP. Протокол TCP обеспечивает для приложений несколько возможностей, в том числе такие. ■ Базовая доставка с использованием механизма инкапсуляции. ■ Разбиение больших порций данных на меньшие за счет сегментации. ■ Гарантирование доставки за счет механизма исправления ошибок. ■ Доставка данных конкретной программе, а не только запросившему их компьютеру, за счет использования номеров портов. ■ Упрощение создания приложений благодаря сокрытию от них деталей, касающихся фактической доставки данных. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А. 1. Перечислите три основные особенности TCP. 2. Представьте, что вы посещаете Web-сайт и в результате загружаете графическое изображение, названное logo.gif. Это логотип, размер его файла 4000 байт. Сколько сегментов сервер пошлет вашему браузеру, чтобы вы могли увидеть логотип? Примите mss равным 1480 байт. Объясните ваш ответ. 3. Представьте, что Web-сервер послал 3 сегмента TCP браузеру на ПК Кейта, каждый 1000 байт длиной, с порядковыми номерами 4304, 5304 и 6304. При передаче никаких ошибок не произошло. Объясните, как ПК Кейта мог бы подтвердить получение данных. 4. Представьте, что Web-сервер послал 3 сегмента TCP браузеру на ПК Кейта, каждый 1000 байт длиной, с порядковыми номерами 4304, 5304 и 6304. Предполагая, что третий сегмент был передан с ошибками, объясните, как данные могут быть восстановлены. 5. Определите термин инкапсуляция (encapsulation), используя как пример инкапсуляцию TCP. 6. Представьте, что Кейт запускает на своем ПК браузер и просматривает Web- сайт. Потом он запускает другой браузер, чтобы просмотреть второй Web- сайт. Когда Кейт получает следующий сегмент TCP, как его ПК определяет, какому браузеру нужно передать данные?
Глава 9. Выбор вариантов доставки при перевозке товаров... 183 7. Сколько TCP-сегментов должно быть передано между двумя компьютерами, чтобы они могли установить ТСР-соединение? 8. Каково название второго протокола транспортного уровня TCP/IP? 9. Заголовок TCP, наряду с данными приложения, называют.:, как? 10. Определите термин "прогнозное подтверждение" (forward acknowledgment). 11. Определите термин "стандартный порт" (well-knownport).
ЧАСТЬ IV Навигация на дорогах в поисках улицы с нужным адресом В части IV более подробно рассказывается о том, как работают сети, состоящие из многих локальных сетей. Для доставки данных конечного пользователя из одной локальной сети в другую используются сетевые устройства, названные маршрутизаторами; эти маршрутизаторы отправляют данные, основываясь на ТСР/1Р-адресах. В главе 10 дается введение в концепцию TCP/IP-адресации и излагаются основы маршрутизации, в главе 11 подробно описывается процесс маршрутизации. В главе 12 приводятся основные сведения о том, как маршрутизаторы узнают, куда они должны направлять пакеты, благодаря использованию протокола маршрутизации. Наконец, в главе 13 объясняется, как сети TCP/IP используют имена и как осуществляется их преобразование в соответствующие числовые ТСР/1Р-адреса. Глава 10. Доставка товаров по нужному (IP-) адресу Глава 11. Куда поворачивать на каждом перекрестке (маршрутизатор) Глава 12. Установка дорожных указателей на автомагистрали между штатами (объединенная сеть) Глава 13. Люди предпочитают имена, но компьютерам нравятся числа
Что вам предлагается освоить После прочтения этой главы вы должны: S уметь объяснить основной процесс маршрутизации пакета IP от одного компьютера до другого; S уметь описать структуру IP-адресов; S знать возможные размеры IP-сетей классов А, В и С; V уметь идентифицировать адреса как принадлежащие сети определенного класса — А, В, или С; S уметь объяснить потребность в IP-подсети; S уметь объяснить, как работает IP-подсеть, на примере сети класса В.
Глава 10 Доставка товаров по нужному (IP) адресу Когда люди используют компьютеры, они любят использовать имена, позволяющие им обратиться к другим компьютерам, — особенно имена, которые просто запомнить. Например, намного проще запомнить что-то вроде http://www. cisco. com, а не числа типа 198.133.219.25. Оказывается, вы могли бы ввести в поле URL вашего браузера или это имя, или указанное число, чтобы получить домашнюю страницу Cisco, но запомнить имя намного проще. Компьютерам, однако, удобнее идентифицировать каждый компьютер с помощью числа. Компьютеры, работающие совместно с сетевыми устройствами, названными маршрутизаторами (routers), обеспечивают передачу данных от одного компьютера другому. И хотя человек мог бы предпочесть использовать имена типа http://www.cisco.com, компьютеры и маршрутизаторы предпочитают отправлять данные по адресу http://www.cisco.com, используя числовой эквивалент адреса сервера, типа 198.133.219.25. В двух предыдущих главах мы рассматривали протоколы уровня приложений и разбирались в том, как они используют протокол TCP для выполнения общих функций. Однако, чтобы сосредоточиться на этих протоколах, мы в этих главах избегали упоминания нескольких проблем. Например, когда пользователь вводит URL http://www.cisco.com, как браузер узнает, где находится Web-сервер? Как ПК знает, куда нужно послать данные? В предположении, что Web-сервер компании Cisco находится в другой локальной сети — что наиболее вероятно — как другие сетевые устройства, типа маршрутизаторов, узнают, куда нужно направить биты, предназначенные этому Web-серверу? В следующих четырех главах мы, наконец, ответим на эти вопросы. В данной главе мы изложим важные сведения о протоколе Internet (IP), а также расскажем, как работают IP-адреса. Основы навигации: езда в нужном направлении Когда вы хотите поехать в какое-нибудь место, находящееся недалеко от вашего дома, то садитесь в автомобиль, едете по местным дорогам и вскоре оказываетесь в нужном месте. Когда вам нужно проехать большее расстояние, например попасть в другой город, вы, вероятно, начнете свое путешествие с тех же местных дорог, но потом выедете на автотрассу. Проехав по ней достаточно долго, чтобы оказаться поближе к нужному городу, вы свернете с автомагистрали и воспользуетесь местными городскими дорогами, чтобы добраться до места назначения.
188 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Теперь представьте, что у вас был гость, который хочет добраться до ближайшего города. Вы могли бы предложить ему поехать дорогой, которая проходит мимо вашего дома, пока ему не встретится первый перекресток, а потом руководствоваться дорожными указателями. Ваш друг мог бы просто посмотреть на дорожный указатель на первом перекрестке, который подскажет ему, куда нужно повернуть. Если он будет смотреть на дорожные указатели на каждом перекрестке, то в конечном счете доберется, куда ему нужно (если, конечно, на этих указателях указывается город, в который он так стремится). В сетях TCP/IP маршрутизаторы действуют как перекрестки, и маршрутизатор решает, в каком направлении нужно отправить пакеты данных. В типичной большой сети много маршрутизаторов и коммутаторов LAN находятся между ПК клиента и сервером. Когда один компьютер отправляет данные на другой компьютер, маршрутизаторы решают, куда отправить их так, чтобы они достигли адресата. Например, на рис. 10.1 пользователь (Ханна) локальной сети в Мейсоне хочет получить Web-страницу с Web-сервера (http://www.cisco.com), расположенного в локальной сети в Цинциннати. В некоторый момент времени ПК Ханны посылает начальный запрос HTTP GET на Web-сервер. На рисунке показаны начальный запрос и маршрутизаторы, которые решают, куда нужно отправить данные так, чтобы они достигли нужного Web-сервера. Цилиндрические значки на рисунке представляют маршрутизаторы (routers), а прямоугольные значки — коммутаторы локальной сети Ethernet. Маршрутизаторы — это сетевые устройства, которые соединяются с несколькими физическими сетями, типа нескольких сетей Ethernet, показанных на рисунке. Маршрутизаторы также пересылают данные из одной сети в другую. Когда вы едете в автомобиле и доезжаете до перекрестка, дорожные указатели подсказывают, куда нужно повернуть. В сетях эквивалентами дорожных указателей являются маршрутизаторы, именно маршрутизатор указывает пакету данных, куда он должен "повернуть". Полный процесс, в соответствии с которым компьютер посылает данные, проходящие через все маршрутизаторы и в конечном счете достигающие адресата, называют маршрутизация (routing). В следующем списке перечислены три основных этапа маршрутизации, показанной на рис. 10.1. 1. Ханна посылает данные на маршрутизатор R1, аналогично тому как водитель мог бы поехать туда, откуда он может попасть на автомагистраль, проложенную между штатами. Чтобы послать данные R1, ПК Ханны посылает фрейм Ethernet по МАС-адресу маршрутизатора R1, аналогично тому, как водитель мог бы использовать местные дороги, чтобы достигнуть въезда на автомагистраль. 2. Маршрутизатор R1 знает: для того чтобы доставить данные компьютеру в Цинциннати, он должен отправить данные маршрутизатору R2, а не посылать их маршрутизатору R3. Этот процесс очень походит на выбор, который делает водитель, когда решает, глядя на дорожные указатели, в каком направлении ему нужно ехать по автомагистрали между штатами. (Поскольку физическая сеть между R1 и R2 — сеть Ethernet, маршрутизатор R1 пересылает данные на R2, используя фрейм Ethernet.) 3. R2 посылает данные компьютеру адресата по локальной сети, это очень похоже на завершение водителем его поездки, когда он съезжает с автомагистрали между штатами и приезжает по местной дороге в Цинциннати.
Глава 10. Доставка товаров по нужному (IP) адресу 189 Если вы рассмотрите эти шаги более внимательно, то заметите: три устройства должны последовательно отправить данные в некоторый момент времени: Ханна, R1 и R2. Каждый раз, чтобы оправить данные на следующее устройство, эти устройства должны послать данные по локальной сети Ethernet (вы уже знаете, как она работает, об этом мы говорили в главах с четвертой по седьмую). В рассматриваемой последовательности Ханна использует Ethernet, чтобы послать данные R1; маршрутизатор R1 использует вторую сеть Ethernet, чтобы послать данные R2; наконец, R2 использует третью сеть Ethernet, чтобы послать данные Web-серверу. Как мы уже упоминали выше, слово "сеть" может подразумевать различные значения. С одной точки зрения, на рис. 10.1 показана одна сеть, но при другом способе рассмотрения это четыре сети Ethernet, отделенных одна от другой тремя маршрутизаторами. Иногда, если возникает необходимость в использовании более точного термина, применяют другой относящийся к нашему примеру термин — "объединенная сеть", или "сетевой комплекс" (internetwork). Если вы считаете каждую из четырех представленных на рис. 10.1 Ethernet отдельной сетью, можете рассматривать всю представленную диаграмму как объединенную сеть (поскольку английский термин internetwork является сокращением слов interconnected networks — объединенные сети). Имейте в виду, что люди используют термин "сеть" по-разному. Хотя на рис. 10.1 показаны только локальные сети, маршрутизаторы могли бы быть связаны и с глобальной сетью (WAN). Одна из основных выгод использования маршрутизаторов, помимо помощи в пересылке данных через сеть, состоит в возможности соединения с физическими сетями различных типов. В последующих главах рассказано о том, как маршрутизаторы используют глобальные сети, чтобы передавать данные, это очень похоже на то, как они используют с этой же целью локальные сети. Независимо от того, используете вы локальные сети, глобальные сети или их комбинацию, основной процесс маршрутизации остается тем же. Фактически одна из причин популярности маршрутизаторов — их способность соединять физические сети многих различных типов. Этот пример показывает концепцию маршрутизации, которая представляет собой процесс, когда компьютеры и маршрутизаторы совместно пересылают данные нужному адресату. Чтобы лучше разобраться в процессе маршрутизации, нужно вначале понять, что такое IP-протокол, IP-адрес и как они влияют на маршрутизацию. Протокол IP как министр почтовой сети Почтовая служба США (USPS) использует адреса, которые состоят из номера дома, названия улицы, названия города, страны и почтового индекса (zip-кода). USPS стремится к тому, чтобы каждый адрес в стране был уникальным. Все города страны должны иметь различные имена. В каждом городе каждая улица должна иметь свое название. Наконец, на каждой улице каждый дом должен иметь свой номер. Эта система позволяет каждому адресу в стране быть уникальным. Благодаря уникальности адресов почтовая служба четко знает, куда нужно послать письмо. Почтовая служба требует включения в адрес информации, которая упрощала бы сортировку. Почтовый служащий в Джорджии может видеть письмо, адресованное №
190 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом кому-то в штате Огайо, и немедленно отсортировать это письмо, положив его в мешок, который будет отправлен в штат Огайо. После того как письмо будет доставлено в штат Огайо, сортировщик почты может отыскать на конверте название города и послать письмо в этот город. В местном почтовом отделении этого города сортировщик может посмотреть на название улицы и номер дома. Таким образом, процесс сортировки упрощается благодаря наличию в адресе на конверте нужной информации. Протокол IP (IP) входит в состав комплекта протоколов TCP/IP; наибольшим образом он соответствует уровню 3 сетевой модели OSI. Протокол IP определяет правила адресации так же, как маршрутизации, в том числе те, которые выполнялись в случае маршрутизации, показанной на рис. 10.1. Как и почтовая служба, IP определяет адреса так, чтобы они имели структуру, позволяющую просто осуществлять маршрутизацию — сетевой эквивалент сортировки почты. IP требует, чтобы каждое сетевое устройство имело уникальный IP-адрес (точно так же, как USPS требует наличия уникальных почтовых адресов), дабы избежать путаницы при доставке данных нужному адресату. Почтовая служба определяет детали адресации так, чтобы почтальоны могли легко и эффективно доставлять почту; точно так же IP определяет детали адресации так, чтобы облегчить простую и эффективную пересылку IP-пакетов. Каждый сетевой интерфейс на компьютере должен иметь свой IP-адрес. Сетевой интерфейс (network interface) — это просто плата в компьютере, которая имеет физический соединитель для подключения к сети некоторого типа, например это может быть плата интерфейса сети (NIC) Ethernet. Эта плата интерфейса сети выполняет функции уровня сетевого интерфейса TCP/IP, который является эквивалентом уровней 1 и 2 модели OSI. Межсетевой уровень TCP/IP, реализуемый в соответствии с протоколом IP, определяет логические IP-адреса. Большинство компьютеров пользователей имеет один сетевой интерфейс, это означает, что компьютер имеет только один IP- адрес. Однако любое устройство, которое имеет хотя бы один IP-адрес, уже может посылать и получать IP-пакеты; такое устройство называют хост TCP/IP (TCP/IP host) или просто хост (host). Устройства, которые имеют более одного сетевого интерфейса, имеют несколько IP-адресов. Маршрутизаторы обычно имеют много сетевых интерфейсов, некоторые серверы также имеют несколько интерфейсов. IP-адреса — это 32-разрядные двоичные числа, но, поскольку людям неудобно пользоваться 32-разрядными числами, адреса записывают в виде десятичных чисел. Формат IP-адресов часто называют каноническим (canonical) форматом; иногда его называют десятинный формат с точками (dotted decimal). Например, в следующих двух строчках показана двоичная версия IP-адреса, сопровождаемая тем же самым IP-адресом, записанным в виде десятичного числа с точками. При сравнении этих двух вариантов становится вполне очевидно, что намного проще работать с десятичной версией: 00001000 00000100 00000010 000000001 8.4.2.1 Каждое из десятичных чисел в IP-адресе называют октетом (octet). (Термин октет является эквивалентом термина байт (byte).) Итак, каждый десятичный октет представляет 8 бит IP-адреса, а все 4 октета (отделенные точками) образуют полный десятичный IP-адрес с точками, представляющий 32 бита. В приложении Б рассказано, как преобразовывать двоичную версию IP-адреса в десятичную и наоборот. На самом деле при изучении материала этой главы вам не
Глава 10. Доставка товаров по нужному (IP) адресу 191 придется иметь дело с IP-адресами в двоичной форме. Однако, если вы хотите разобраться в том, как осуществляется преобразование между двоичными и десятичными форматами IP-адресов, не стесняйтесь прочитать приложение В. Перед тем как ехать, обычно узнают адрес Давайте вернемся к более важным, концептуальным деталям. Обращаясь к услугам транспортной компании, чтобы послать кому-то пакет, вы заполняете бирку доставки и указываете в ней среди прочего улицу, на которую вы посылаете пакет. Если вы заполняете бирку целиком, то вы также указываете обратный адрес, чтобы в случае возникновения проблем транспортная компания могла возвратить вам пакет. Точно так же IP определяет заголовок, который включает IP-адреса получателя и отправителя. Следовательно, чтобы отправить данные с одного компьютера на другой, отправитель помещает IP-адрес компьютера получателя в IP-заголовке, в поле IP-адреса получателя. Точно так же отправитель помещает свой IP-адрес в поле заголовка, предназначенное для указания IP-адреса отправителя. На рис. 10.2 представлена та же сеть, что и на рис. 10.1, но теперь здесь показаны также IP-адреса Ханны и Web-сервера. Показано, что Ханна послала на сервер один IP-пакет. Ханна www.cisco.com 1.1.1.1 3.3.3.3 -IP-адрес получателя: 3.3.3.3 -IP-адрес отправителя: 1.1.1.1 Рис. 10.2. Использование адреса, указанного на (IP) бирке доставки Протокол IP определяет 20-байтовый заголовок, который включает 4-байтовый IP-адрес отправителя и 4-байтовый IP-адрес получателя. IP-пакет {IPpacket) включает IP-заголовок, а также некоторые данные, которые следуют за заголовком IP. Хотя другие части заголовка IP тоже по-своему интересны, самыми важными в нем все же являются поля адресов. <§> Вы могли бы вспомнить, что заголовок Ethernet включает поля с Ethernet- адресами отправителя и получателя, и что для каждого адреса выделяется поле шириной 6 байт. IP-адреса, о которых идет речь в данной главе, совершенно другие, они используются, чтобы сетевые устройства могли отправлять данные по большой сети, которая помимо Ethernet может включать физические сети других типов. При отправке пакета именно поле IP-адреса получателя в IP-заголовке определяет, куда нужно послать пакет. Компьютеры и маршрутизаторы, расположенные в сети между ними, определяют, куда должен быть отправлен пакет, основываясь на IP-адресе получателя. IP-адрес отправителя в заголовке также важен, потому что после того, как пакет будет доставлен компьютеру получателя, он должен на него ответить. Этот компьютер определит IP-адрес компьютера, который послал ему пакет,
192 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом посмотрев на поле с IP-адресом отправителя. Например, на рис. 10.2, когда Web- сервер получает пакет и должен ответить, он знает, что должен послать пакет с ответом по адресу 1.1.1.1. Термин "пакет" при работе с сетями имеет вполне определенное значение. Под пакетом подразумеваются данные, которые включают заголовок уровня 3 и какие-то инкапсулированные данные. В сетевой модели TCP/IP, IP является протоколом уровня 3, таким образом, IP-заголовок и данные, которые за ним следуют, образуют IP-пакет. Термин "сегмент", о котором мы говорили в главе 9, относится к данным, которые включают заголовок уровня 4 (TCP) и какие-то инкапсулированные данные. Различие между пакетом и сегментом состоит в том, что сегмент не включает заголовок уровня 3, а пакет включает. Чтобы лучше вспомнить это, вы можете также обратиться к материалу главы 5, в которой рассматривался термин "фрейм" — заголовок канального уровня и инкапсулированные данные. В главе 5 заголовок Ethernet и концевик инкапсулировали данные, чтобы их можно было послать по локальной сети Ethernet. Обычно термин "фрейм" используют по отношению к заголовку канального уровня, концевику и данным; термин "пакет" — по отношению к заголовку и данным сетевого уровня (IP); термин "сегмент" — по отношению к заголовку и данным транспортного уровня (TCP). Отправляя данные, программное обеспечение IP на компьютере (Ханны в рассматриваемом примере) инкапсулирует данные более высокого уровня в IP-пакет. Для того чтобы лучше разобраться в этом, вспомните, как мы в главе 8 рассматривали протокол HTTP, а в главе 9 — протокол TCP. Для того чтобы Ханна могла получить Web-страницу, она должна послать запрос HTTP GET. Чтобы послать сообщение HTTP, она должна использовать TCP. А для того чтобы доставить сегмент TCP другому компьютеру, TCP должен использовать IP. На рис. 10.3 более подробно, чем раньше, показан процесс получения домашней страницы, с отображением IP-заголовков и IP-пакетов. Ханна 1.1.1.1 -IP-адрес отправителя: 1.1.1.1 'IP-адрес получателя: 3.3.3.3 Web-сервер 3.3.3.3 IP-заголовок ТСР-заголовок HTTP GET (по умолчанию) IP-заголовок ТСР-заголовок НТТРОК Данные: home.html I — IP-адрес получателя: 1.1.1.1 — IP-адрес отправителя: 3.3.3.3 Рис. 10.3. Пакеты IP с отображением подробностей, относящихся к передаче данных На одном компьютере различные уровни модели TCP/IP работают совместно ради достижения окончательной цели, которая состоит в том, чтобы передать конечному пользователю данные, в которых он нуждается. HTTP заинтересован в доставке пользователю Web-страницы. TCP заботится о сегментации, исправлении ошибок и других вещах — во имя выполнения желания HTTP. Следовательно, как вы уже знаете из главы 9, TCP удовлетворяет потребности уровня приложений — в данном случае, протокола HTTP. Точно так же IP (сетевой уровень) обеспечивает потребности более высокого уровня, а именно уровня TCP (транспортного уровня): осуществляет сквозную дос-
Глава 10. Доставка товаров по нужному (IP) адресу 193 тавку пакетов. TCP хочет послать сегмент другому компьютеру, но не TCP занимается доставкой сегмента. Вместо этого TCP обращается за помощью к IP. Программное обеспечение IP на компьютере Ханны помещает перед сегментом IP-заголовок. Этот заголовок включает IP-адреса отправителя и получателя, что и позволяет протоколу IP доставить пакет Web-серверу. На рис. 10.3 показано, что находится внутри пакета; однако так же, как транспортная компания не беспокоится о том, что находится в пакете, так и IP не обращает внимания на заголовок TCP, заголовок HTTP и данные конечного пользователя. IP должен знать только адрес получателя, чтобы иметь возможность отправить пакет адресату. Поэтому, с точки зрения IP, пакет IP похож на показанный рис. 10.4. Ханна 1.1.1.1 ▼ ▼ -IP-адрес получателя: 3.3.3.3 -IP-адрес отправителя: 1.1.1.1 Web-сервер 3.3.3.3 IP-заголовок Data IP-заголовок >ГТ Data IP-адрес получателя: 1.1.1.1 IP-адрес отправителя: 3.3.3.3 Рис. 10.4. Пакеты IP не интересуются тем, какие данные передают Указание названия в бирке доставки Именно протокол IP определяет, как компьютеры пересылают IP-пакеты через объединенную сеть. Однако большинство людей предпочитает использовать имена, а не адреса. Прежде чем компьютер сможет послать пакет по конкретному IP-адресу получателя, пользователь должен указать или IP-адрес другого компьютера, или имя другого компьютера. Например, Ханна, вероятно, введет что-нибудь вроде http://www.fredsco.com; но нужно так или иначе связать введенное ею имя (типа http: //www. f redsco. com) с соответствующим IP-адресом (типа 3.3.3.3). Процесс, в соответствии с которым Ханна выясняет IP-адрес другого компьютера, основываясь на его имени, называют преобразованием имен в адреса {name resolution). О преобразовании имен рассказано в главе 13. Пока же, чтобы мы могли идти дальше, имейте в виду, что люди обращаются к другому компьютеру, указывая его имя, а компьютер, отсылающий данные, выясняет соответствующий этому имени IP-адрес. Теперь, когда вы понимаете основы IP-адресации и IP-маршрутизации, в оставшейся части этой главы мы более подробно расскажем об IP-адресах. В главе 11 мы подробно рассмотрим процесс маршрутизации. В главе 12 рассказывается о том, как маршрутизаторы изучают маршруты, а после прочтения главы 13 вы будете знать, как компьютер преобразует имя, введенное пользователем, в IP-адрес, соответствующий введенному имени компьютера. Как обеспечить работу (сетевой) почтовой службы Почтовая служба обеспечивает замечательное обслуживание. Вы бросаете письмо в почтовый ящик, и оно волшебным образом появляется в ящике адресата —
194 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом по крайней мере, в большинстве случаев. Протокол IP обеспечивает подобный сервис для сетей. Если в сеть отправлен IP-пакет, в котором правильно указан адрес получателя, сетевые устройства должны быть в состоянии, совместными усилиями, отправить пакет указанному адресату. В этом разделе немного подробнее рассмотрены вопросы IP-адресации. Чтобы лучше изложить эти концепции, мы дадим несколько комментариев по поводу маршрутизации. Дело в том, что IP-адреса устроены так, чтобы помочь механизму маршрутизации хорошо выполнять его работу. Более подробно о процессе маршрутизации рассказано в главе 11. Один адрес, один zip-код, один номер сети Пока что вы узнали о том, как выглядит IP-адрес в письменном виде — 4 десятичных числа, каждое из диапазона от 0 до 255, разделенные точками. Однако вы должны знать больше о структуре и значении этих адресов. Структура и значение адресов подскажут вам, как IP-адреса используются в объединенной сети. Аналогия с почтовой службой вновь поможет нам, потому что используемые концепции очень похожи. Помимо номера дома, названия улицы, города и страны почтовая служба использует zip-коды {zip codes), облегчающие сортировку почты. (Для тех, кто не знаком с zip-кодами, используемыми в США, скажем, что zip-код — американская версия того, что другие страны называют почтовыми индексами {postal code)). Почтовая служба включает почтовый индекс в адрес каждого получателя. Это также гарантирует, что все, проживающие в одной и той же географической зоне, имеют один и тот же почтовый индекс. Почтовые индексы позволяют почтовой службе легко сортировать почту, используя автоматизированные механические машины сортировки. Сортировочные машины ищут почтовый индекс на лицевой стороне письма и игнорируют остальную часть адреса. Технология распознавания рукописных чисел и букв работала намного лучше, распознавая числа, поэтому машины сортировки были спроектированы так, чтобы они могли искать числовой zip-код. Кроме того, осуществляя сортировку на основе zip-кода, USPS смогла избежать проблем, связанных с орфографическими ошибками при указании города. Поэтому сортировщики могли сортировать почту, руководствуясь zip-кодом, а почтовые служащие могли доставить письма в соответствии с почтовым индексом почтовому отделению, которое обрабатывало почту с этим zip-кодом. Единственный момент, когда необходим почтовый адрес в целом — это когда письмо поступает в конечное почтовое отделение — то, которое обрабатывает почту с конкретным почтовым индексом. Например, представьте, что в почтовое отделение Цинциннати поступило письмо, с адресом получателя в г. Мейсоне, штате Огайо, zip-код 45040. Машина сортировки в Цинциннати смотрит на zip-код и отправляет письмо в мешок, который будет отправлен в г. Мейсон. Когда письмо поступает в почтовое отделение Мейсона, местный почтовый служащий смотрит на адрес в целом, включая название улицы и номер дома, чтобы письмо взял нужный почтальон — тот, кто каждый день проезжает мимо дома с указанным адресом. Этот простой пример представлен на рис. 10.5.
Глава 10. Доставка товаров по нужному (IP) адресу 195 Почтовое отделение в Цинциннати Гммм... 45050- это Мейсон. Отправлю туда. Почтовое отделение 45050 в Мейсоне Гммм... Почтовый грузовик Фреда проезжает по Элм-стрит. Он доставит это письмо. Уэнделл, 1010 Элм стрит, Мейсон, Огайо, 45040 1010 Элм-стрит Рис. 10.5. Почтовые служащие сортируют почту, основываясь на почтовом индексе В следующем списке поэтапно описан процесс, показанный на рисунке: 1. Кто-то написал письмо и адресовал его мне, в г. Мейсон, шт. Огайо. Этот человек или приносит письмо в почтовое отделение, расположенное в Цинциннати, или бросает его в почтовый ящик в г. Цинциннати. В любом .случае письмо окажется в почтовом отделении в Цинци, и здесь должно быть принято какое-то решение. 2. Или почтовый служащий, или, что более вероятно, сортировочная машина отсортирует письмо. Сортировщик направит письмо, показанное на рисунке, в груду писем, которые будут погружены в автомобиль и привезены в г. Мейсон. Письмо отправляют почтовому отделению Мейсона. 3. В почтовом отделении Мейсона письмо будет отсортировано повторно. Однако в этом случае сортировщик смотрит уже на адрес в целом, включая название улицы. Письмо попадает в автомобиль, который каждый день проезжает мимо дома 1010 по улице Вязов в г. Мейсон. Таким образом, водитель может остановиться возле указанного в адресе дома и оставить письмо в почтовом ящике. Процесс IP-маршрутизации осуществляется похожим образом. Например, в процессе IP-маршрутизации учитывается тот факт, что все IP-адреса одной физической сети — типа всех IP-адресов одной локальной сети Ethernet — имеют общую часть. Эта часть адреса, которая одинакова для всех IP-адресов одной физической сети,
196 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом используется точно так же, как почтовый индекс. Как почтовые индексы идентифицируют целую группу почтовых адресов, обладатели которых находятся в одной геофафической зоне, все IP-адреса одной сети Ethernet находятся в одной зоне, этот факт используется в процессе маршрутизации. Лучше разобраться в этом нам помогут примеры. Посмотрите на рис. 10.6, на котором показана простая объединенная сеть с двумя маршрутизаторами и тремя IP-сетями. Все адреса Все адреса Все адреса начинаются с 1 начинаются с 2 начинаются с 3 Сеть 1.0.0.0 - Сеть 2.0.0.0 - Сеть 3.0.0.0 - все адреса между все адреса между все адреса между 1.0.0.1 и 1.255.255.254 2.0.0.1 и 2.255.255.254 3.0.0.1 и 3.255.255.254 Рис. 10.6. Почтовые индексы IP: номера сетей Соглашения об IP-адресации и группировании IP-адресов упрощают процесс маршрутизации. В этом примере все IP-адреса сети Ethernet, представленной слева, начинаются с первого октета 1. Точно так же все IP-адреса, которые начинаются с 2, принадлежат сети Ethernet, находящейся в середине, а все IP-адреса, которые начинаются с 3, должны быть присвоены устройствам, входящим в сеть Ethernet, расположенную справа. Если вы должны включить новый компьютер в сеть Ethernet, находящуюся на рисунке слева, вы должны дать ему IP-адрес, который начинается с 1. Кроме того, вы должны убедиться в том, что никакие другие устройства этой локальной сети не используют вновь присвоенный IP-адрес. Эти соглашения делают процесс маршрутизации простым. Например, представьте логику, которой должен руководствоваться маршрутизатор R1 на рис. 10.6, чтобы отправить пакеты. ■ Пакеты, адрес получателя которых начинается с 1, должны быть отправлены налево. ■ Пакеты, адрес получателя которых начинается с 2, должны быть отправлены в сеть Ethernet, представленную справа. ■ Пакеты, адрес получателя которых начинается с 3, должны быть отправлены направо, маршрутизатору R2, чтобы R2 мог переслать пакет дальше.
Глава 10. Доставка товаров по нужному (IP) адресу 197 Маршрутизаторы не должны знать о каждом IP-адресе в сети; они должны знать только о каждой группе адресов. Это аналогично тому, что сортировочная машина на почте в Техасе не должна знать адрес каждой улицы в Мейсоне, шт. Огайо; она должна только знать, что, если zip-код 45040, письмо нужно послать в Мейсон. Когда Ханна посылает пакет на Web-сервер http://www.fredsco.com (IP-адрес 3.3.3.3), она посылает пакет на R1. Маршрутизатор R1 знает, что все получатели с адресами, которые начинаются с 3, могут получить пакеты от маршрутизатора R2, поэтому R1 озабочен только пересылкой пакетов маршрутизатору R2. Маршрутизатор R2, в свою очередь, знает, что все адреса, которые начинаются 3, принадлежат устройствам сети Ethernet, находящейся справа от него, поэтому он может послать пакет непосредственно Web-серверу этой сети Ethernet. Протокол IP называет группу IP-адресов, которые совместно используют общее начало их адресов, IP-сетью (IP network). На рис. 10.6 показаны три IP-сети. /^PhL Термин "сеть" используется по-разному и иногда обозначает слегка от- Mp^fl личающиеся понятия. Ранее, в главе 1, мы определили сеть как -Щ^^ "комбинацию аппаратных средств, программного обеспечения и кабельной системы, которые объединяют несколько компьютерных устройств таким образом, чтобы они могли связываться друг с другом." Если говорить об IP-адресации, то следует сказать, что термины "сеть" и "IP-сеть" имеют различное и более определенное значение, об этом мы еще будем говорить далее. Говоря об IP-сетях, мы использовали бы обозначения типа "сеть 1" или "IP-сеть 1", имея в виду группу IP-адресов, которые начинаются с 1. Однако, когда мы записываем что-то или вводим что-нибудь при работе с сетевым устройством, то используем особое число, которое представляет каждую сеть. Это особое число для каждой сети называют номером IP-сети (IP network number), или просто номером сети (network number). Каждый номер сети представляет какую-то сеть. Каждый номер IP-сети имеет ту же самую первую часть IP-адреса, как и все адреса этой сети, но все остальные октеты заполняются нулями. Следовательно, номер сети похож на IP-адрес, но хост не может использовать номер сети как IP-адрес какого-то устройства, находящегося в сети. (Напоминаем: компьютер, который имеет IP-адрес, называется "хост.") Например, адреса всех хостов Ethernet, расположенной в левой части рис. 10.6, начинаются с одного октета— 1. В данном случае номер сети — 1.0.0.0. Аналогично, два других номера сети числа на рисунке — 2.0.0.0 и 3.0.0.0. Три размера, на все случаи жизни Сколько IP-адресов может иметь сеть 1.0.0.0? Как выяснилось, вы не можете использовать число 1.0.0.0, потому что это — номер сети. Вы также не можете использовать 1.255.255.255; это число зарезервировано по другим причинам. Однако любой другой IP-адрес, который начинается с 1, имеет право на существование. Если бы вы посчитали все возможные адреса, то получили бы число, превышающее 16 миллионов! IP определяет сети трех возможных размеров как различные классы сетей (classes of networks). Три различных класса сетей называют классами А, В и С. По определению, все адреса всех устройств одной сети класса А, В или С имеют одинаковое числовое значение части адреса, это сетевая часть адреса (network portionof the address).
198 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Остальную часть адреса называют хостовая часть адреса {host portion of the address). Например, в сети класса А, такой как сеть 1.0.0.0, все адреса начинаются с цифры 1 в первом октете. Последние 3 октета этих адресов включают часть адреса, идентифицирующую хост. Когда запросы на комментарии TCP/IP впервые очертили концепцию сетей, таких как сети 1.0.0.0, 2.0.0.0 и 3.0.0.0, в тех же самых RFC были определены и два других класса сетей. Если сети 1.0.0.0, 2.0.0.0 и 3.0.0.0 обеспечивают более 16 миллионов адресов для каждой, другие (класса В) сети дают несколько более 65 000 адресов. Сети третьего типа (класса С) позволяют использовать для входящих в них устройств по 254 адреса на каждую IP-сеть. Почему именно так? Просто люди, проектировавшие TCP/IP, решили, что мир будет нуждаться в сетях трех размеров. Сравнивая адреса классов А, В и С, вы увидите, что каждый из них имеет различную длину частей адресов, относящихся к сети и хосту. Вследствие этого каждый класс сети позволяет присвоить адреса различному числу хостов. Чтобы лучше разобраться во всем этом, давайте сначала рассмотрим форматы этих трех классов IP-сетей, представленные в табл. 10.1. Таблица 10.1. Размеры сетей и части IP-адресов, выделенные для хостов Любая сеть этого класса А В С Количество байтов (битов), выделенных для номера сети 1(8) 2A6) 3B4) Количество байтов (битов), выделенных для адреса хоста 3B4) 2A6) 1(8) Количество адресов в каждой сети* 224-2, или 16 777 214 216 - 2, или 65 534 28 - 2, или 254 *Каждая сеть имеет два зарезервированных адреса хоста. Сети класса А имеют 1 октет (байт) в части адреса, предназначенной для указания сети, и 3 октета в части адреса, предназначенной для указания хоста. Поскольку вы можете иметь любые значения в части адреса, идентифицирующей хост, получится 224 различных IP-адресов каждый из которых начинается с одних и тех же цифр в первом октете. Два из этих 224 адресов зарезервированы. Следовательно, каждая сеть класса А имеет огромное количество адресов — более 16 миллионов. Каждая сеть класса В требует, чтобы все ее адреса использовали те же самые первые 2 октета. Это означает, что сетевая часть этих адресов занимает 2 октета, оставляя только 2 октета для части адреса, вьщеленной для хостов. Поскольку хостовая часть адреса может иметь любое значение (кроме двух зарезервированных), вы можете иметь 216 - 2 адреса хоста в каждой сети класса В. Аналогичным образом сети класса С имеют 3 октета в сетевой части адресов; это означает, что каждый адрес одной сети класса С должен иметь одно и то же значение в первых 3 октетах. Для хостов выделяется 1 октет, количество вариантов составляет 28 - 2, или 254 адреса хоста в сети класса С. На рис. 10.7 показана схема той же самой сети, что и на рис. 10.6, но на этот раз с указанием трех различных классов, к которым принадлежат IP-сети.
Глава 10. Доставка товаров по нужному (IP) адресу 199 Класс А Класс С Класс В Все адреса начинаются с 8 Все адреса начинаются с 199.1.1 Все адреса начинаются с 130.4 Сеть 8.0.0.0 Все адреса между 8.0.0.1 и 8.255.255.254 Сеть 199.1.1.0 Все адреса между 199.1.1.1 и 199.1.1.254 Сеть 130.4.0.0 Все адреса между 130.4.0.1 и 130.4.255.254 Рис. 10.7. Маленькие, средние и большие IP-cemu Эта объединенная сеть использует три IP-сети с различными номерами, как и на рис. 10.6. При использовании IP-сети с одним номером для каждой физической сети эта объединенная сеть соответствует правилам, которые позволяют очень просто осуществлять маршрутизацию. Каждая IP-сеть соответствует локальной сети, одна от другой сети отделены маршрутизаторами. Однако две из сетей — сеть класса В с номером 130.4.0.0 и сеть класса С с номером 199.1.1.0 — намного меньше по размерам, чем сети класса А, показанные на рис. 10.6. Чтобы лучше разобраться в этом, давайте посмотрим на сеть 8.0.0.0. Это —сеть класса А, т.е. для сетевой части адреса используется только 1 байт. Как упомянуто выше, адреса всех хостов в сети 8.0.0.0 начинаются с 8. Итак, 8.0.0.1 — корректный IP-адрес для такой сети, также, как 8.0.0.2, 8.0.0.3, 8.0.0.4, 8.0.0.5 и т.д. Фактическое число возможных адресов хостов в сети класса А с номером 8.0.0.0 составляет 16 777 214. Аналогично, сеть класса В с номером 130.4.0.0 имеет сетевую часть адреса, состоящую из 2 октетов, для хостовой части остаются 2 октета. Корректные IP-адреса для этой сети начинаются с 130.4.0.1 и продолжаются как 130.4.0.2, 130.4.0.3, 130.4.0.4 и т.д., в этом случае в сети класса В с номером 130.4.0.0 имеется 65 534 адреса. В сети класса С с номером 199.1.1.0 первый корректный адрес хоста — 199.1.1.1, второй — 199.1.1.2 и т.д., в общей сложности в этой сети для хостов предназначено 254 адреса. Красота использования одной IP-сети для каждой физической сети — типа одной IP-сети для локальной сети Ethernet — состоит в том, что механизм маршрутизации работает одинаково хорошо, независимо от того, установлено в сети 10 компьютеров или 10 000. На рис. 10.7 маршрутизаторы R1 и R2, чтобы правильно переслать пакеты, нуждаются в указании только трех фактов: куда посылать пакеты, предназначенные для сети 8.0.0.0, куда посылать пакеты для сети 199.1.1.0 и куда по-
200 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом слать пакеты, предназначенные для сети 130.4.0.0. Проще говоря, сети класса А позволяют использовать огромное количество IP-адресов в одной IP-сети, сети класса В позволяют использовать довольно большое их количество, а сети класса С предполагают использование меньшего числа IP-адресов хостов. Люди, которые разрабатывали механизм адресации IP, выбрали три размера сетей, потому что один размер не подошел бы всем компаниям и организациям. Большие компании могут использовать сети класса А, компании среднего размера могут использовать сети класса В, а маленькие компании могут использовать сети класса С. Фактические номера сетей классов А, В и С В предыдущем примере использовались три сети: сеть класса А с номером 8.0.0.0, сеть класса В с номером 130.4.0.0 и сеть класса С номер 199.1.1.0. Однако существуют и другие сети классов А, В и С. Номера сетей классов А, В, и С не перекрываются, чтобы предотвратить дублирование адресов. Если бы TCP/IP позволил иметь сеть класса А с номером 8.0.0.0 и сеть класса В с номером 8.1.0.0, то IP-адрес 8.1.1.1 мог бы появиться в обеих сетях, что привело бы к большому беспорядку. Аналогично, если бы какой-то дом в другой части города имел тот же самый почтовый адрес, что и ваш, то почтовая служба запуталось бы. Во избежание возникновения беспорядка IP определяет диапазоны номеров сетей классов А, В и С. В табл. 10.2 указаны номера сетей, общее количество сетей каждого типа и количество сетей в каждом классе А, В и С. Таблица 10.2. Перечень возможных номеров сетей классов А, В и С Класс А В С Диапазон номеров для первого октета с 1 по 126 с 128 по 191 с 192 по 223 Возможные номера сетей с 1.0.0.0 по 126.0.0.0 с 128.1.0.0 по 191.254.0.0 с 192.0.1.0 по 223.255.254.0 Общее число сетей данного класса 27-2, или 126 2,4-2, или 16 382 221-2,или2 097 150 *Столбец "Возможные номера сетей" показывает именно возможные номера сетей. Есть несколько зарезервированных случаев. Например, сеть 0.0.0.0 (первоначально определенная для использования как широковещательный адрес) и 127.0.0.0 (все еще доступный для использования как адрес обратной связи) зарезервированы. Номера сетей 128.0.0.0, 191.255.0.0, 192.0.0.0 и 223.255.255.0 также зарезервированы. Вы можете видеть, что номера сетей (их первый октет) класса А могут начаться с какого-то числа из диапазона от 1 до 126. Например, номера 1.0.0.0, 2.0.0.0, 3.0.0.0, 4.0.0.0 и т.д., до 126.0.0.0, являются корректными номерами для сетей класса А. Номера сетей класса В начинаются с октетов от 128 до 191. Однако, поскольку сеть класса В имеет сетевую часть адреса, состоящую из 2 октетов, номера сетей могут быть 128.1.0.0, 128.2.0.0, 128.3.0.0 и т.д., до 191.254.0.0. Наконец, первый октет сетей класса С должен принадлежать диапазону от 192 до 223, сетевую часть адресов в этих сетях содержат первые 3 октета.
Глава 10. Доставка товаров по нужному (IP) адресу 201 Подразделение сети на подсети Сети класса А содержат более чем 16 000 000 IP-адресов каждая, а сети класса В — более 65 000 адресов. На первый взгляд кажется, это — достаточное количество. Но если вы вспомните, что все хосты одной и той же IP-сети не могут быть отделены друг от друга маршрутизатором, приведенные числа перестают выглядеть огромными. В наши дни локальные сети, содержащие более чем несколько сотен устройств, считаются необычными, а локальные сети с более чем 1000 устройств чрезвычайно редки. Если вы будете использовать сеть класса А или даже класса В для всех устройств локальной сети, то многие IP-адреса останутся неиспользованными. Одно из решений этой проблемы —разбиение на подсети (subnetting), позволяющее ликвидировать расточительность в использовании адресов. Под разбиением на подсети понимается процесс, в соответствии с которым сетевой инженер, отвечающий за сеть TCP/IP с конкретным номером, в действительности изменяет правила. Далее в этой главе будет показан пример, в котором много IP-адресов потрачено впустую, затем тот же самый пример уже с подсетью, призванной уменьшать растрату. Проблема: утрата IP-адресов хостов Как пример возможности чрезмерного расходования IP-адресов рассмотрим рис. 10.8, на котором представлены три сети класса В. К-во возможных К-во возможных К-во возможных адресов: 65 534 адресов: 65 534 адресов: 65 534 Используется: 3 Используется: 4 Используется: 3 Сеть 150.1.0.0- Сеть 150.2.0.0 - Сеть 150.3.0.0 - все адреса между все адреса между все адреса между 150.1.0.1 и 150.2.0.1 и 150.3.0.1 и 150.1.255.254 150.2.255.254 150.3.255.254 Рис. 10.8. Напрасная трата IP-адресов: из тысяч возможных нужны лишь несколько Объединенная сеть, показанная рис. 10.8, требует наличия трех сетей, в данном случае трех различных сетей класса В. Каждая сеть класса В имеет 216 -2 адреса хоста F5 534) — намного больше, чем вам когда-либо понадобится для локальной сети. Только несколько IP-адресов использовалось до сих пор: по одному для каждого
202 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом компьютера, плюс по одному для каждого интерфейса маршрутизатора. (Вспомните: каждый сетевой интерфейс имеет IP-адрес. Поэтому в сети 150.2.0.0 два адреса используются двумя компьютерами, третий используется интерфейсом маршрутизатора R1 для сети Ethernet, расположенной справа, четвертый используется интерфейсом маршрутизатора R2 для Ethernet, расположенной слева.) Процесс маршрутизации IP работает по-прежнему хорошо, поскольку все хосты одной сети находятся в одном месте. Например, все хосты с адресами, которые начинаются с 150.1, должны находиться в Ethernet, показанной в левой части рис. 10.8. Однако в каждой из трех сетей имеется свыше 65 000 неиспользуемых IP-адресов. Решение: разбиение на подсети сохраняет IP-адреса хостов Разбиение на IP-подсети немного ослабляет правила. Без разбиения на подсети действуют следующие правила. 1. Устройства одной сети классов А, В или С не могут быть отделены одно от другого маршрутизатором. 2. Устройства различных сетей классов А, В или С должны быть отделены друг от друга маршрутизатором. Эти два правила, возможно, были интуитивно понятны вам, поскольку они использовались в предыдущих примерах. Однако, чтобы обеспечить безупречную работу механизма маршрутизации, на рис. 10.8 все адреса, которые начинаются с 150.1, должны принадлежать устройствам, находящимся в Ethernet, расположенной слева, — это соответствует правилу 1. Компьютеры Ханны и Дина, размещенные в сетях 150.1.0.0 и 150.2.0.0, должны быть отделены друг от друга маршрутизатором — в данном случае, R1. По существу, это обусловлено правилом 2. За счет разбиения на подсети сетевой инженер может разделить сеть класса А, В или С на меньшие фрагменты — получившие наименование подсети — и применять к каждой из них правила, справедливые для сетей. Таким образом, для того, чтобы разделить сеть на подсети и уменьшить непроизводительную трату IP- адресов, правила должны быть несколько изменены. 1. Устройства одной подсети не могут быть отделены одно от другого маршрутизатором. 2. Устройства в различных подсетях должны быть отделены одно от другого маршрутизатором. Эту концепцию проще всего объяснить на примере. В сети класса В с номером 150.1.0.0 все хосты, адреса которых начинаются с цифр 150.1, находятся в одной сети. IP-сеть — это всего лишь группа хостов, некоторая часть IP-адресов которых имеет одно и то же значение. Разбиение на подсети позволяет сетевому инженеру конфигурировать сетевые устройства так, что они будут рассматривать первые 3 октета адресов как октеты, идентифицирующие сеть. В нашем примере сетевой инженер может создать следующие подсети: ■ все адреса которых начинаются с 150.1.1; ■ все адреса которых начинаются с 150.1.2;
Глава 10. Доставка товаров по нужному (IP) адресу 203 ■ все адреса которых начинаются с 150.1.3; ■ и т.д. Хотя все адреса находятся в сети класса В с номером 150.1.0.0, сетевые устройства не будут рассматривать сеть как одну большую группу устройств, вместо этого они будут видеть много меньших по размерам групп, названных подсетями. Подсеть {subnet) — это всего лишь часть большой сети класса А, В или С. Термин разбиение на подсети (subnetting) относится к процессу, посредством которого инженер создает подсети. На рис. 10.9 показана схема той же самой сети, но теперь уже реализованной с использованием подсетей. К-во возможных К-во возможных К-во возможных адресов: 254 адресов: 254 адресов: 254 Используется: 3 Используется: 4 Используется: 3 Подсеть 150.1.1.0— Подсеть 150.1.2.0— Подсеть 150.1.3.0 — все адреса между все адреса между все адреса между 150.1.1.1 и 150.1.2.1 и 150.1.3.1 и 150.1.1.254 150.1.2.254 150.1.3.254 Рис. 10.9. Использование одной сети со многими подсетями Как и сеть, показанная на рис. 10.8, конструкция, представленная на рис. 10.9, требует трех групп IP-адресов. Но в отличие от рис. 10.8 на этом рисунке используются три подсети, каждая из которых является подсетью одной сети класса В (сети 150.1.0.0). Обратите внимание, изучая рис. 10.9, на то, что каждая подсеть намного меньше, чем первоначальная сеть класса В, но зато здесь используется много подсетей. Номера IP-сетей представляют сети, и точно также номера IV-подсетей (subnetnumbers) представляют каждую из подсетей. Номер подсети имеет одно и то же значение в своей первой части, как и соответствующие значения всех адресов входящих в данную подсеть хостов, и нули в последней части. Например, 150.1.1.0 — один из номеров подсетей, показанных на рис. 10.9. Все адреса этой подсети начинаются с цифр 150.1.1, поэтому номер подсети также включает эти цифры. Поскольку четвертый октет может быть любым допустимым числом, номер подсети в последнем октете содержит нули. Благодаря использованию подсетей сеть, показанная на рис. 10.9, экономит IP- адреса. Эта объединенная сеть трех локальных сетей Ethernet использует только
204 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом часть сети 150.1.0.0 класса В, в отличие от объединенной сети, показанной на рис. 10.8, которая полностью использует три сети класса В A50.1.0.0, 150.2.0.0 и 150.3.0.0). Кроме того, если вы развертываете еще одну локальную сеть, то вместо того, чтобы использовать новую сеть класса А, В, или С, можете сконфигурировать одну из неиспользованных подсетей, например 150.1.4.0, 150.1.5.0 ит.д. В этом примере рассмотрен только один способ использования подсети. Вы можете использовать подсети разными способами, включая разбиение на подсети сетей класса А, класса В и даже сетей класса С. Пока что мы рассмотрели лишь концепцию, однако вы должны знать, что разбиение на IP-подсети может оказаться намного более сложным, чем рассмотренное в этом разделе. Резюме Протокол IP определяет детали IP-адресации и маршрутизации. Протокол IP работает аналогично сортировщику почтового отделения, а IP-адреса имеют структуру и выполняют функции, аналогичные таковым почтовых адресов. IP-адреса представляют собой 32-разрядные числа, записанные в виде десятичных чисел с точками. Каждый сетевой интерфейс должен иметь свой IP-адрес. Компьютер, которому предоставлен IP-адрес, называют 1Р-хостом. Маршрутизация IP основана на группировании IP-адресов в сети и подсети. Если подсети не используются, то все адреса одной IP-сети соответствуют устройствам одной физической сети. Маршрутизаторы могут иметь список всех IP-сетей, а также инструкции относительно того, куда нужно отправлять IP-пакеты, адресованные получателю той или иной сети. Чтобы отправить пакеты, маршрутизатор сравнивает IP-адрес получателя в заголовке IP-пакета со своим перечнем номеров сетей. В случае разбиения сети на подсети все адреса одной IP-подсети принадлежат одной физической сети. Однако каждая подсеть рассматривается так, будто это отдельная IP-сеть. Следовательно, маршрутизаторы могут просто иметь список всех подсетей IP, с инструкциями относительно того, куда нужно отправить IP-пакеты, чтобы они попали в подсети, в которых находятся получатели пакетов. При использовании подсетей меньше тратится впустую IP-адресов. IP-сети могут быть большими (класс А), средними (класс В) или маленькими (класс С). В одной сети класса А все адреса начинаются с одного и того же первого октета, 3 оставшихся октета предназначены для хостовой части адреса. Для сетей класса В все адреса начинаются с одних и тех же первых двух октетов, оставшиеся 2 октета предназначены для указания хостовых частей адресов. Наконец, в сетях класса С все адреса начинаются с одних и тех же первых 3 октетов, оставшийся октет предназначен для использования хостовой частью адресов. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А 1. Представьте, что маршрутизатор получает пакет через сеть Ethernet. Что ищет маршрутизатор в IP-пакете, чтобы решить, что сделать с этим пакетом?
Глава 10. Доставка товаров по нужному (IP) адресу 205 2. ПК1 находится в Ethernet, a Web-сервер расположен в другой сети Ethernet. Маршрутизатор R1 связан с обеими Ethernet. Как ПК1 может сделать HTTP- запрос Web-серверу? 3. ПК1 находится в сети Ethernet, вместе с маршрутизатором R1, маршрутизаторы R1 и R2 связаны со второй сетью Ethernet. Кроме того, маршрутизатор R2 связан с третьей сетью Ethernet, а также с Web-сервером. IP-адрес ПК1 — 5.5.5.5, сервера — 6.6.6.6. Какой IP-адрес указывается в поле IP-адреса получателя пакета, посланного с ПК1 на Web-сервер? 4. ПК1 находится на сети Ethernet, вместе с маршрутизатором R1. Маршрутизаторы R1 и R2 связаны со второй сетью Ethernet. Кроме того, маршрутизатор R2 связан с третьей сетью Ethernet, а также с Web-сервером. IP-адрес ПК1 — 5.5.5.5, сервера — 6.6.6.6. Когда Web-сервер отправляет пакет для ПК1, какой IP-адрес указывается в поле IP-адреса отправителя пакета? 5. Числа какого диапазона разрешено использовать в первом октете сетей класса В? 6. Числа какого диапазона разрешено использовать в первом октете сетей класса С? 7. Сколько IP-адресов существует в сети класса А с номером 7.0.0.0? 8. Сколько IP-адресов существует в сети класса В с номером 166.5.0.0? 9. Сколько IP-адресов существует в сети класса С с номером 192.55.0.0? 10. Опишите структуру IP-адреса сети класса А. 11. Опишите структуру IP-адреса сети класса С. 12. Что такое октет! 13. Определите термин IP-сеть. Приведите пример адреса сети, с указанием допустимых первого и последнего IP-адресов. 14. Все хосты сегмента конкретной локальной сети используют IP-адреса, которые начинаются с цифр 150.1.1. Какой номер имеет сеть, которой принадлежат устройства с этими адресами? 15. Все хосты сегмента конкретной локальной сети используют IP-адреса, которые начинаются с цифр 150.1.1. Было произведено разбиение на подсети, устройства с первыми 3 октетами адреса считались принадлежащими к этой подсети. Какой номер у этой подсети? 16. Каков основной мотив разбиения IP-сетей на подсети? 17. Опишите, как выполняется разбиение на подсети, обращая внимание на то, как при этом изменяются или ослабляются некоторые правила структурирования IP-адресов. 18. Представьте, что сеть класса В с номером 128.1.0.0 разбита на подсети в предположении, что первые 3 октета являются номером сети. Структура сети требует наличия четырех подсетей. Опишите решение, позволяющее достичь этого результата, и скажите, какими могут адреса устройств каждой подсети. 19. Какие две основные функции выполняет протокол IP?
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S объяснить процесс IP-маршрутизации пакета от одного компьютера до другого; s описать назначение шлюза по умолчанию; S объяснить, как IP-пакеты инкапсулируют во фреймы Ethernet для доставки; S описать содержимое таблицы 1Р-маршрутизации; S определить логику, которую использует маршрутизатор, принимая решение о пересылке
Глава 11 Знать, куда поворачивать на каждом перекрестке (маршрутизатор) В главе 10 вы узнали о IP-адресах и основах IP-маршрутизации. Вы можете лучше понять механизм адресации, если разберетесь в том, как осуществляется маршрутизация. Теперь, когда вы разобрались в основах IP-адресации, мы в этой главе несколько подробнее рассмотрим механизм маршрутизации. В большинстве случаев IP-маршрутизация осуществляется аналогично тому, как вы управляете автомобилем. Вы покидаете окрестности своего дома и выезжаете на улицу. Добравшись до первого перекрестка, вы принимаете решение: повернуть налево, направо или продолжить движение прямо. Каждый раз, когда вы доезжаете до очередного перекрестка, вы делаете выбор, куда повернуть, и так до тех пор, пока не прибудете к месту назначения. В случае IP-маршрутизации ПК посылает IP-пакет соседнему маршрутизатору. Этот маршрутизатор выбирает интерфейс, на который он должен пересылать пакет. Пакет передается через физическую сеть, например через коммутатор локальной сети, на следующий маршрутизатор. В конечном счете пакет достигает последнего маршрутизатора, который пересылает пакет по адресу получателя. Процесс маршрутизации довольно прост, и вы уже ознакомились с его основами, читая главу 10. В данной главе более подробно рассмотрен процесс маршрутизации, а также относящиеся к нему важные концепции. Короткая поездка от дома (ПК) к ближайшему магазину (серверу) Иногда я бездельничаю и думаю, какой большой и густонаселенный мир окружает меня. Иногда я еду по крупной автомагистрали в час пик, вижу множество автомобилей и удивляюсь тому, как много машин проезжает по этой трассе каждый день. Возможно, у меня слишком много свободного времени, если я задумываюсь о таких вещах, но факт остается фактом: Министерство транспорта США (DOT) должно заботиться о строительстве дорог, по которым будет проезжать много автомобилей. Когда Министерство транспорта строит магистрали в большом городе, оно старается сделать их многорядными, ожидая, что, возможно, сотни тысяч автомобилей будут проезжать по дороге каждый день. Аналогично, маршрутизаторы отправляют ежедневно множество IP-пакетов. Некоторые из наиболее дорогих, наиболее быстродействующих маршрутизаторов могут, по словам их производителей, пересылать сотни миллионов пакетов в секунду. Даже самые дешевые маршрутизаторы компании Cisco могут пересылать десятки тысяч IP-пакетов в секунду. Как через загру-
208 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом женный перекресток проезжает множество автомобилей, так и маршрутизатор должен обработать множество проходящих через него отдельных пакетов. Теперь представьте себя на мгновение на месте людей, которые разрабатывали протокол IP и механизм IP-маршрутизации. Если вы должны определить протоколы и стандарты, регламентирующие что-то, и это "что-то" должно происходить тысячи или миллионы раз в секунду, вы должны следовать принципу KISS (Делай это проще, болван!). Если чрезмерно усложнить механизм маршрутизации, то для его реализации потребовались бы дорогие аппаратные средства. Сведя объем работы по пересылке пакета к минимуму, производители создали маршрутизаторы, способные пересылать много пакетов при сохранении стоимости маршрутизаторов весьма низкой. В этой части книги будет описана история жизни одного пакета, переданного с одного компьютера (компьютера Ханны) на Web-сервер (http://www.example.com). Процесс, который происходит на компьютере и маршрутизаторе, довольно прост, он позволяет маршрутизатору быстро переходить к обработке следующего пакета, который ждет отправки. Краткий обзор процесса сквозной маршрутизации Давайте сделаем обзор основного процесса маршрутизации, описанного в главе 10. Рис. 11.1 подобен нескольким рисункам главы 10, но на нем не отображены многие детали, чтобы вы могли полностью сосредоточиться на том, как доставить пакет от Ханны на Web-сервер www. example . com. IP Данные t t -IP-адрес получателя: 130.4.3.3 -IP-адрес отправителя: 8.1.1.1 www.example.com 130.4.3.3 Шаг 1 — послать пакет R1 Шаг 2 — послать пакет R2 Шаг 1 — послать пакет серверу Рис. 11.1. Объединенная сеть с двумя маршрутизаторами и тремя IP-сетями Эта объединенная сеть использует три IP-сети с различными номерами, по одному номеру IP-сети для каждой физической сети. Проще говоря, в этой объединенной сети нет подсетей. Чтобы упростить изложение, мы будем использовать термин "объединенная сеть" по отношению ко всей сети, показанной на рисунке, и термин "сеть" — по отношению к одной физической сети, типа одной из трех сетей Ethernet, которые показаны на рис. 11.1. Вспомните: мы можем использовать термин "сеть" по-разному; при описании процесса маршрутизации с помощью терминов "объединенную сеть" и "сеть" чтение текста заметно упростится. Для того чтобы Ханна могла послать пакет Web-серверу, должно произойти несколько событий. 21
Глава 11. Знать, куда поворачивать на каждом перекрестке... 209 1. Ханна посылает пакет маршрутизатору R1. (Конечно, пакет проходит через коммутатор локальной сети, показанной на рисунке слева, прежде чем он попадает на R1, но сейчас нас интересует только логика 1Р-маршрутизации, применяемая для пересылки пакета направо.) 2. R1 принимает решение о пересылке пакета маршрутизатору R2. 3. Маршрутизатор R2 решает отправить пакет непосредственно Web-серверу. На рис. 11.1 показан каждый из этих трех шагов; в следующих трех разделах этой главы все они рассмотрены более подробно. Шаг 1: выезд на улицу каждый раз по одной и той же дороге Большинство людей, имеющих автомобили, могут выехать из гаража только одним маршрутом. И только на ближайшем перекрестке у них появляется возможность выбора. Если вы знаете, куда именно направляетесь и как туда ехать, то можете ехать прямо или повернуть. Если не знаете, как попасть в нужное место, можете на каждом перекрестке искать дорожные указатели, которые подскажут вам, куда повернуть. На рис. 11.1 Ханна находится в такой же ситуации. После того как программное обеспечение IP, установленное на ПК Ханны, создало IP-пакет, который нужно послать серверу, оно должно знать, куда вначале нужно послать пакет. Поскольку оказывается, что R1 — единственный маршрутизатор, подключенный к IP-сети Ханны (сеть 8.0.0.0), она должна послать пакет маршрутизатору R1. Чтобы посылать пакет маршрутизатору R1, Ханна должна знать IP-адрес R1, если говорить более определенно, — IP-адрес интерфейса маршрутизатора, который связан с сетью Ethernet, в которой находится компьютер Ханны. В терминологии TCP/IP, R1 был бы для Ханны маршрутизатором по умолчанию {default router), или шлюзом по умолчанию {default gateway). Маршрутизатор, назначенный для какого- либо ПК по умолчанию, — это просто маршрутизатор, которому этот ПК посылает пакеты, если их адресат находится в другой сети или подсети. Как можно видеть из рис. 11.2, Ханна знает, что ее маршрутизатор по умолчанию — R1. Получатель 130.4.3.3 находится в другой IP-сети — я должен послать пакет моему шлюзу по умолчанию (8.1.1.250) www.example.com 130.4.3.3 —IP-адрес получателя: 130.4.3.3 —IP-адрес отправителя: 8.1.1.1 Рис. 11.2. По умолчанию пакеты покидают сеть через маршрутизатор, назначенный по умолчанию
210 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Ханна находится в IP-сети 8.0.0.0, и R1 является единственным маршрутизатором, связанным с этой IP-сетью. Поскольку Ханна уверена, что маршрутизаторы знают, как следует маршрутизировать пакеты, с ее стороны вполне разумно переслать пакет маршрутизатору Rl. Однако есть несколько небольших деталей, на которые следует обратить внимание при изучении рис. 11.2. ПК Ханны знает свой маршрутизатор по умолчанию по его IP-адресу, а не по имени. Маршрутизаторы обычно имеют по одному IP-адресу на каждый физический интерфейс. Ханна должна знать IP-адрес маршрутизатора R1, в данном случае адрес интерфейса Ethernetl маршрутизатора R1, потому что интерфейс Ethernetl маршрутизатора R1 связан с локальной сетью Ethernet, в которой находится компьютер Ханны. (Поскольку маршрутизаторы имеют много интерфейсов различных типов, маршрутизаторы обозначают физические интерфейсы названием и номером, например Ethernetl.) Хотя термин "маршрутизатор по умолчанию" имеет смысл, большинство людей используют термин "шлюз по умолчанию", подразумевая, однако, то же самое. Прежде чем термин "маршрутизатор" приобрел популярность, люди назвали устройства такого типа шлюзами. Достаточно странно то, что, хотя почти каждый использует термин "маршрутизатор", говоря об аппаратном средстве, которое выполняет маршрутизацию, многие все еще используют термин "шлюз по умолчанию", хотя некоторые уже используют термин "маршрутизатор по умолчанию." Последняя подробность, о которой следует упомянуть, имеет отношение к тому, как пакет добирается от Ханны до R1. Обратите внимание, изучая рис. 11.2, что IP-адрес Ханны (8.1.1.1) указан в качестве адреса отправителя, а IP-адрес www.example.com A30.4.3.3) — в качестве адреса получателя. Итак, каким образом Ханна передает пакет маршрутизатору R1? Для того чтобы полностью рассказать эту историю, нам придется рассмотреть еще несколько моментов, включая инкапсуляцию и протокол преобразования адресов (address resolution protocol, ARP), который будет описан в следующих разделах. Когда на ланч едут в автомобиле Когда приходит время прерваться на ланч, то, если поблизости от вашего офиса нет ресторана, вы садитесь в автомобиль. Если вы встретили друзей или едете на ланч с деловыми партнерами, беседуя с ними в пути, вы, вероятно, не станете рассказывать о том, как именно поедете к ресторану. Попутчиков обычно не интересует, как именно вы доберетесь до него. Аналогично, прежде чем IP-пакет выполнит эквивалент того, что можно сравнить с ездой по дороге, он вначале должен выполнить эквивалент того, что можно сравнить с посадкой в автомобиль. Прежде чем IP-пакет может быть передан через Ethernet, он должен быть инкапсулирован во фрейм Ethernet. При выполнении инкапсуляции Ханне приходится решать две различных проблемы: ■ она не может переслать IP-пакет через Ethernet, но может отправить фрейм Ethernet через Ethernet; ■ поле с IP-адресом получателя в заголовке IP содержит только адрес получателя — в данном случае это 130.4.3.3. В заголовке нет места для "IP-адреса шлю- т
Глава 11. Знать, куда поворачивать на каждом перекрестке... 211 за по умолчанию", поэтому Ханна должна иметь другой способ гарантировать, что пакет получит именно маршрутизатор R1. Решение первой проблемы, как вы уже, вероятно, догадались, обеспечивается за счет инкапсуляции. Вспомните: каждый уровень модели TCP/IP обеспечивает обслуживание потребностей вышестоящего уровня. Ethernet работает на уровне сетевого интерфейса TCP/IP, непосредственно под межсетевым уровнем. Чтобы получить пакет от Ханны, направленный маршрутизатору Rl, IP использует Ethernet. Ханна инкапсулирует IP-пакет во фрейм Ethernet для передачи его по локальной сети (рис. 11.3). Ханна Ethernet-адрес 71 0200.1111.1111 www.example.com 130.4.3.3 Заголовок Ethernet Получатель 0200.3333.3333 Отправитель 0200.1111.1111 Концевик Ethernet ^ ^ Фрейм Ethernet Рис. 11.3. Инкапсуляция IP-пакета во фрейм Ethernet Здесь может оказаться полезным краткий обзор механизма инкапсуляции Ethernet. Когда протоколы других уровней инкапсулируют данные, они добавляют только заголовок. Однако протоколы канального уровня передачи данных — в том числе Ethernet — добавляют и заголовок, и концевик; IP-пакет помещается между заголовком и концевиком. Заголовок Ethernet содержит несколько полей, в том числе поля с адресами Ethernet отправителя и получателя. Концевик содержит поле контрольной последовательности фрейма (FCS), которая позволяет определить, произошли ли ошибки в ходе физической передачи; если ошибки произошли, получатель отказывается от фрейма. На рис. 11.3 ПК Ханны предпринимает следующие шаги, чтобы инкапсулировать IP-пакет во фрейм Ethernet и послать его. 1. Создает новый заголовок Ethernet. 2. Указывает в качестве Ethernet-адреса отправителя Ethernet-адрес Ханны. 3. Указывает в качестве Ethernet-адреса получателя Ethernet-адрес маршрутизатора R1. 4. Создает новый концевик. 5. Вставляет IP-пакет во фрейм. 6. Посылает фрейм. Инкапсулировав IP-пакет во фрейм Ethernet, Ханна создала нечто, что может быть передано по локальной сети Ethernet. Теперь Ханна должна удостовериться в том, что фрейм дошел до маршрутизатора R1 и что R1 обрабатывает полученный фрейм.
212 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Поскольку мы затронули вопрос инкапсуляции, будет полезно сделать обзор инкапсуляции, осуществляемой и на других уровнях. Инкапсуляция используется на всех уровнях модели TCP/IP, теперь вы видите, как этот механизм работает на каждом уровне. Например, протокол HTTP определяет заголовки, и когда Web-сервер или Web-браузер отправляет данные, HTTP инкапсулирует данные в заголовок HTTP. Полезно показать все заголовки одновременно по крайней мере в одном примере (рис. 11.4). На этом рисунке показаны заголовки Ethernet, IP, TCP и HTTP, а также данные пользователя (Web-страница) в ответе, поступающем с Web-сервера. -IP-адрес отправителя: 8.1.1.1 "IP-адрес получателя: 130.4.3.3 1 =—I 1 Web-сервер Ethernet | IP-заголовок |ТСР-заголовок| HTTP GET (по умолчанию)! Ethernet | ^ 130.4.3.3 Ethernet IP-заголовок TCP-заголовок HTTP OK Данные: home.html Ethernet IP-адрес получателя: 8.1.1.1 IP-адрес отправителя: 130.4.3.3 Рис. 11.4. Инкапсуляция IP-пакета во фрейм Ethernet В оставшихся разделах этой главы мы будем говорить о маршрутизации и игнорировать все, что следует после заголовка IP. Однако имейте в виду, что цель состоит именно в том, чтобы доставить данные прикладной программы, как показано на рис. 11.4. Другая дилемма, которая возникает перед Ханной, обусловлена тем, что она желает доставить пакет маршрутизатору R1. Мало того что пакет должен быть доставлен маршрутизатору R1, он еще должен знать, как обработать пакет. Как видно из рис. 11.4, Ханна поместила во фрейм свой Ethernet-адрес как адрес отправителя и указала адрес маршрутизатора R1 в качестве адреса получателя. Тот факт, что Ханна указала Ethernet-адрес R1 в качестве адреса получателя, решает ее вторую дилемму. Как следует из рис. 11.5, когда вы посылаете фрейм, адрес получателя которого 0200.3333.3333, фрейм нужно доставить маршрутизатору R1. Фрейм МАС-адрес получателя: 0200.3333.3333 Гммм... 0200.3333.3333 означает порт Е2 — пересылаю фрейм! Я только что получил фрейм с МАС-адресом получателя, совпадающим с моим — это для меня! Адрес Ethernet 0200.3333.3333 Ханна Таблица адресов коммутатора Адрес: Интерфейс 0200.1111.1111 Е1 0200.3333.3333 Е2 Рис. 11.5. Использование фрейма Ethernet для доставки пакета маршрутизатору, назначенному по умолчанию На этом рисунке предполагается, что коммутатор Ethernet уже имеет записи с МАС- адресами Ethernet Ханны @200.1111.1111) и маршрутизатора R1 @200.3333.3333). Что ка-
Глава 11. Знать, куда поворачивать на каждом перекрестке... 213 сается адреса получателя 0200.3333.3333, то коммутатор решает посылать фрейм на свой интерфейс Е2. Фрейм, который, конечно, содержит IP-пакет, доставляется маршрутизатору R1. Наконец, пакет поступает на маршрутизатор по умолчанию. Маршрутизатор будет знать, как обрабатывать поступающий фрейм, потому что адрес Ethernet получателя — его собственный адрес. Как пройти к почтовому отделению (маршрутизатору) по умолчанию Когда Ханна в первый раз попытается создать заголовок Ethernet, ей будет нужна подробная информация. Чтобы закончить создание заголовка Ethernet, Ханна должна поместить Ethernet-адрес маршрутизатора R1 в заголовок в качестве адреса получателя. Проблема состоит в том, что Ханна знает IP-адрес шлюза по умолчанию — в нашем случае это 8.1.1.250, — но она не знает Ethernet-адрес того же самого интерфейса R1. Хост может узнать IP-адрес своего шлюза по умолчанию двумя способами. В некоторых случаях IP-адрес шлюза по умолчанию просто указывается в определенном месте в конфигурации ПК. В других случаях хост узнает IP-адрес шлюза по умолчанию динамически, используя протокол динамического конфигурирования хоста (dynamic host configuration protocol, DHCP). Хосты IP используют DHCP, чтобы автоматически распознать свой IP-адрес, а также IP-адрес их маршрутизатора по умолчанию. Поскольку мы в этой главе рассматриваем лишь основные понятия, подробности того, как работает протокол DHCP, здесь освещены не будут. Независимо от того, как Ханна может узнать IP-адрес ее шлюза по умолчанию, она должна выяснить это. Хост не знает — по крайней мере до определенного времени — МАС-адрес, используемый для связи с маршрутизатором по умолчанию (в нашем примере это адрес 0200.3333.3333). Чтобы получить информацию о МАС-адресе, Ханна использует протокол ARP. Протокол ARP— это протокол TCP/IP, который поможет выяснить IP-адрес; для этого ему нужно знать соответствующий МАС-адрес локальной сети. Чтобы понять, как работает протокол ARP, посмотрите на рис. 11.6, где показано то, что знают компьютер Ханны и маршрутизатор R1, прежде чем Ханна начинает использовать протокол ARP. Маршрутизатор по умолчанию: 8.1.1.250 8.1.1.1 Ханна Известно Ханне: Интерфейс IP-адрес МАС-адрес Моя NIC: 8.1.1.1 0200.1111.1111 Маршрутизатор 8.1.1.250 ? по умолчанию 8.1.1.250* Ethernet 1 И 92.168.1.5 I Ethernet2 Известно R1: Интерфейс IP-адрес Ethernetl 8.1.1.250 МАС-адрес 0200.3333.3333 Рис. 11.6. Что знают компьютер Ханны и маршрутизатор R1, прежде чем Ханна начинает использовать протокол ARP
214 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Чтобы Ханна могла узнать, какой МАС-адрес Ethernet маршрутизатора R1, ей достаточно спросить об этом у R1. Ханна так и делает, осуществляя широковещание по протоколу ARP. Широковещание по протоколу ARP (ARP broadcast) — это сообщение, в котором говорится примерно следующее: "Эй, если это твой IP-адрес, сообщи мне свой МАС- адрес Ethernet." Это названо широковещанием, потому что МАС-адрес получателя протокола ARP — широковещательный адрес Ethernet, FFFF.FFFF.FFFF. Поскольку коммутаторы отправляют широковещательные сообщения LAN всем устройствам этой сети, каждое из них получает широковещательные сообщения ARP. Каждый IP-хост локальной сети исследует широковещательные сообщения ARP, но только маршрутизатор R1 сконфигурирован так, что его IP-адрес — 8.1.1.250, таким образом это единственное устройство, которое должно ответить. Основной процесс показан на рис. 11.7. Посылаю широковещательный ARP-запрос в надежде узнать МАС-адрес устройства 8.1.1.250 Гммм... Широковещательный, пересылаю на все порты Этот широковещательный ARP-запрос предназначен устройству 8.1.1.250 —это мне! Ханна Этот широковещательный ARP-запрос предназначен кому-то другому - проигнорирую его. Митчелл 8.1.1.2 Известно R1: Интерфейс IP-адрес Ethernet 8.1.1.250 Ethernets 192.168.1.5 МАС-адрес 0200.3333.3333 0200.4444.4444 Рис. 11.7. Ханна посылает широковещательное сообщение по протоколу ARP, пытаясь найти Ethernet-адрес устройства 8.1.1.250 На рис. 11.7 все IP-хосты локальной сети получают широковещательное сообщение протокола ARP, потому что коммутатор осуществляет лавинную адресацию фрейма на все физические интерфейсы, кроме порта, связанного с Ханной. Поскольку каждое устройство сети 8.0.0.0 должно находиться где-нибудь в данной сети Ethernet, если IP-адрес 8.1.1.250 существует, то соответствующее устройство должно получить запрос ARP. Протокол ARP передает широковещательное сообщение, в котором указывается IP-адрс, для которого ARP ищет соответствующий МАС-адрес. Поэтому Митчелл игнорирует запрос, а вот R1 решает ответить. Маршрутизатор R1 отвечает сообщением ARP, которое называется ответ ARP (ARP reply). Обратите внимание на то, что в ответе ARP не используется в качестве адреса получателя широковещательный Ethernet-адрес; взамен него используется адрес отправителя широковещательного сообщения ARP. В нашем случае адрес получателя ответа — Ethernet-адрес Ханны @200.1111.1111). Поэтому коммутатор локальной сети не осуществляет лавинную рассылку фрейма, направляя ответ ARP на все порты; вместо этого он посылает фрейм только Ханне (рис. 11.8).
Глава 11. Знать, куда поворачивать на каждом перекрестке... 215 Я получил ответ... теперь| я знаю, что адрес R1 — 0200.3333.3333. Гммм... Одноадресатный, отправлен только на порт, соединенный с компьютером Ханны. Ханна 8.1.1.1 Отправляю ARP-ответ с указанием, что 8.1.1.250 соответствует 0200.3333.3333 8.1.1.250 Ethernet 1 Кэш на компьютере Ханны после получения ARP: IP-адрес МАС-адрес 8.1.1.250 0200.3333.3333 Рис. 11.8. Ответ по протоколу ARPнаправляется маршрутизатором R1 Ханне Внутри порции данных пакета ответ ARP содержит исходный IP-адрес (8.1.1.250) и соответствующий МАС-адрес @200.3333.3333). Теперь Ханна знает МАС-адрес Ethernet, который соответствует IP-адресу шлюза, назначенного по умолчанию. Ханна сохраняет эту информацию в месте, названном кэшем ARP (ARP cache), чтобы, когда она в следующий раз должна будет послать пакет шлюзу, назначенному по умолчанию, ей не пришлось еще раз посылать широковещательное сообщение по протоколу ARP. Кэш ARP — не что иное как место в памяти IP-хоста, где хранятся зарегистрированные IP-адреса и соответствующие им МАС-адреса. Резюме шага 1 Хотя нам потребовалось примерно 10 страниц этой главы, чтобы описать первый шаг, выполняемый в этом простом примере маршрутизации, на самом деле он сводится к довольно примитивному процессу, представленному ниже. 1. Создать IP-пакет, инкапсулировав данные транспортного уровня (введя их после IP-заголовка). 2. Проверить кэш ARP, чтобы узнать, известен ли МАС-адрес шлюза, назначенного по умолчанию. Если это не так, использовать протокол ARP, чтобы узнать этот МАС-адрес. 3. Инкапсулировать пакет во фрейм Ethernet. 4. Послать фрейм Ethernet. Хотя этот короткий алгоритм маршрутизации не соответствует каждому из возможных вариантов, он определенно соответствует логике, которой руководствуется Ханна, пытаясь послать пакет Web-серверу с адресом 130.4.3.3. В конце этой главы вы узнаете о нескольких исключениях из правил, которым мог бы следовать 1Р-хост, но пока что часть этого примера, касающуюся Ханны, можно считать безусловно выполненной. В следующем разделе мы расскажем о том, что делает с полученным пакетом маршрутизатор R1.
216 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Шаг 2: выбор, куда повернуть на первом перекрестке Когда вы отъезжаете в автомобиле от своего дома, то обычно едете одной и той же дорогой, пока не доберетесь до первого перекрестка. Конечно, вы знаете, как добраться туда, куда вы едете, поэтому вам нет нужды смотреть на дорожные указатели, чтобы выбрать, в какую сторону повернуть. Однако кто-то из друзей, приехавших к вам, может и не знать местные дороги. Когда ваш визитер добирается до перекрестка, он может посмотреть на дорожные указатели и решить, в какую сторону нужно повернуть. Если сравнивать сети с дорогами, то маршрутизаторы можно считать перекрестками; однако направление пересылки пакета выбирает маршрутизатор, а не "водитель". Когда пакет достигает маршрутизатора, последний "смотрит" на эквивалент дорожного указателя — нечто, названное таблицей маршрутизации {routing table). Маршрутизатор определяет, куда нужно переслать пакет (IP-адрес получателя), и смотрит на свою таблицу маршрутизации. Сравнивая то и другое, маршрутизатор может решить, куда нужно послать пакет. Повсюду в этой главе в примерах используется одна и та же объединенная сеть. На рассматриваемом этапе фрейм Ethernet прибывает на интерфейс маршрутизатора R1, связанный с сетью, расположенной в левой части рисунка (Ethernet 1). Фрейм содержит IP-пакет, посланный Ханной (8.1.1.1), с адресом получателя, принадлежащим Web-серверу www. example . com A30.4.3.3). Данный этап процесса маршрутизации показан на рис. 11.9. Ханна 8.1.1.1 www.example.com 130.4.3.3 IP-адрес получателя: 130.4.3.3 IP-адрес отправителя: 8.1.1.1 МАС-адрес получателя: 0200.3333.3333 (R1 Ethernetl) МАС-адрес отправителя: 0200.1111.1111 (Ханна) Рис. 11.9. Начало процесса маршрутизации, осуществляемой R1 На данном этапе процесса маршрутизации пакета, который должен быть доставлен Web-серверу, фрейм только что поступил на R1. Маршрутизатор R1 должен переслать пакет маршрутизатору R2. Процесс, выполняемый R1, чтобы переслать пакет маршрутизатору R2, может быть разделен на три шага. 1. Деинкапсуляция. 2. Решение, куда нужно переслать пакет. 3. Инкапсуляция. В следующих разделах последовательно рассмотрен каждый шаг. Полезная, но короткая жизнь фрейма Ethernet После получения фрейма, посланного Ханной, маршрутизатор R1 может выполнить следующее:
Глава 11. Знать, куда поворачивать на каждом перекрестке... 217 ■ Проверить FCS поступившего фрейма. Если в нем есть ошибки, отказаться от фрейма. ■ Если ошибок не обнаружено, удалить заголовок и концевик Ethernet, оставив лишь исходный IP-пакет. Поле FCS в концевике Ethernet — это поле, которое позволяет плате интерфейса сети Ethernet узнать, произошли ли ошибки при передаче фрейма. Если фрейм свободен от ошибок, R1 удаляет заголовок и концевик Ethernet. На рис. 11.9 после того, как R1 проверяет поле FCS и узнаёт, что фрейм не имел ошибок, маршрутизатор R1 удаляет заголовок и концевик Ethernet. Маршрутизатор R1 оставляет себе IP-пакет, IP-адрес отправителя которого — 8.1.1.1 (Ханна), а получателя — 130.4.3.3 (Web-сервер). Решение, куда ехать дальше Маршрутизаторы выполняют свою работу, определяя IP-адрес получателя IP- пакета. Термин маршрутизация {routing) относится к процессу, в соответствии с которым маршрутизатор исследует недавно полученный пакет, смотрит на IP-адрес получателя и принимает решение о том, куда нужно переслать пакет. Для того чтобы маршрутизация выполнялась хорошо, маршрутизатор должен знать, как пакеты могут достигнуть различных IP-сетей и подсетей объединенной сети. Маршрутизаторы определяют, куда они должны пересылать пакеты, глядя на таблицу маршрутизации. Ключом к пониманию процесса маршрутизации является таблица IP- маршрутизации {IP routing table). Таблица IP-маршрутизации включает список номеров IP-сетей или подсетей, а также инструкции относительно того, как маршрутизатор должен пересылать пакеты, чтобы доставить их в ту или иную сеть либо подсеть. Определение длинное, но концепция проста, особенно если рассматривать ее на примере. На рис. 11.10 показана таблица маршрутизации R1. Ханна 8.1.1.1 Таблица маршрутизации R1 Сеть- Интерфейс Маршрутизатор получатель 8.0.0.0 Е1 199.1.1.0 Е2 130.4.0.0 Е2 следующего перехода Не определен Не определен 199.1.1.2 www.example.com 130.4.3.3 Сеть 8.0.0.0 Сеть 199.1.1.0 Сеть 130.4.0.0 IP А А Данные -IP-адрес получателя: 130.4.3.3 -IP-адрес отправителя: 8.1.1.1 Рис. 11.10. Решения относительно маршрутизации принимаются на основе данных, хранящихся в таблице маршрутизации
218 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Прежде чем пакет поступает на R1, маршрутизатор R1 должен создать таблицу маршрутизации, поскольку эта информация ему еще понадобится. Объединенная сеть, используемая в качестве примера в этой главе, включает три IP-сети, поэтому в таблице маршрутизации R1 перечислены три IP-сети. Каждая строка в таблице маршрутизации содержит данные об одной IP-сети, наряду с инструкциями по маршрутизации для данного маршрутизатора. Эти инструкции говорят маршрутизатору R1, как он должен пересылать пакеты, чтобы они достигли нужной сети. Когда R1 получает фрейм Ethernet от Ханны, он сначала проверяет его на предмет ошибок. Если ошибок нет, R1 отбрасывает заголовок и концевик Ethernet и остается с исходным IP-пакетом "на руках". Этот IP-пакет на рис. 11.10 показан под маршрутизатором R1. Начиная с этого момента, процесс маршрутизации выполняется по следующему алгоритму. 1. Найти соответствие IP-адресу получателя пакета к записях таблицы маршрутизации. 2. После того как соответствие найдено, послать пакет на исходящий интерфейс, маршрутизатору следующего перехода, как указано в строке таблицы маршрутизации. Например, обратите внимание на запись в таблице маршрутизации для сети 130.4.0.0. Вы знаете из главы 10, что сеть 130.4.0.0 включает все IP-адреса с 130.4.0.1 по 130.4.255.254, включительно. Конечно, IP-адрес Web-сервера, 130.4.3.3, находится в этом диапазоне, поэтому пакет вполне соответствует этой записи в таблице маршрутизации. Последние два столбца таблицы маршрутизации говорят R1, что он должен сделать с пакетами, чтобы они были успешно доставлены нужным получателям. Из рис. 11.10 следует: для того чтобы пакет получил R2, маршрутизатор R1 должен переслать пакет на свой интерфейс Ethernet2. Обратите внимание на то, что запись в таблице маршрутизации для сети 130.4.0.0 указывает в качестве исходящего интерфейса Ethernet2. Она также ссылается на IP-адрес R2 как на маршрутизатор следующего перехода. Маршрутизатор следующего перехода (next-hop router) — это просто следующий маршрутизатор, который должен получить пакет, чтобы последний был доставлен правильно. Исходящий интерфейс (outgoing interface) — интерфейс данного маршрутизатора, на который должен быть отправлен пакет. Короче говоря, маршрутизатор получает пакет, сопоставляет его с таблицей маршрутизации и принимает решение о пересылке этого пакета, основываясь на инструкциях таблицы маршрутизации. Этот процесс обычно называют "маршрутизация", а иногда — решением о пересылке (forwarding decision). Однако R1 еще не закончил свою работу. Теперь перейдем к последнему шагу, выполняемому R1 для этого пакета. Еще один фрейм канала передачи данных Ethernet Вы можете почувствовать некоторое волнение. Маршрутизатор R1 получил фрейм, отбросил заголовок и концевик Ethernet, принял решение о маршрутизации. Теперь R1 имеет IP-пакет, находящийся в памяти, и знает, что он должен просто переслать IP-пакет на свой интерфейс Ethernet2. Решение этой задачи простое и, мы надеемся, уже немного вам знакомо: R1 должен инкапсулировать пакет в другой фрейм Ethernet.
Глава 11. Знать, куда поворачивать на каждом перекрестке... 219 Пока маршрутизатор R1 не передает биты на свой интерфейс Ethernet2, его логика работы — точно такая же, какой ранее была логика компьютера Ханны. Логика R1 должна быть похожа на описанную ниже: ■ Перед отправкой пакета на интерфейс Ethernet2 его (пакет) нужно инкапсулировать во фрейм Ethernet. ■ МАС-адрес отправителя в новом заголовке Ethernet должен быть МАС- адресом интерфейса Ethernet2. ■ МАС-адрес получателя в новом заголовке Ethernet — МАС-адрес маршрутизатора R2. ■ Перед пересылкой первого пакета маршрутизатору R2 нужно отправить широковещательное сообщение по протоколу ARP, чтобы выяснить МАС-адрес маршрутизатора R2. Маршрутизатор R1 записывает эту информацию в свой ARP-кэш, чтобы воспользоваться ею при пересылке других пакетов. Представьте, что R1 не знает МАС-адрес маршрутизатора R2. На рис. 11.11 показано широковещательное сообщение ARP, ответ ARP и, наконец, новый фрейм Ethernet, который доставляет пакет от маршрутизатора R1 маршрутизатору R2. ^gj^Ethemet2 Р0200.5555.5555 Ethernet 1 199.1.1.2 www.example.com 130.4.3.3 0200.4444.4444 (Т) [Широковещательный запрос ARP, поиск для 199.1.1.2. ARP-OTBeTOTR2. © C)[Ethernet | IP-пакет [Ethernet IP-адреса отправителя и получателя не изменились! МАС-адрес отправителя: 0200.5555.5555 (R1 Ethernet2) МАС-адрес получателя: 0200.4444.4444 (R2 Ethernet) Рис. 11.11. Широковещание R1 по протоколу ARP, ответ R2 и, наконец заключительная пересылка пакета Процесс, показанный на рисунке, состоит в следующем. 1. R1 посылает широковещательное сообщение ARP, чтобы выяснить МАС- адрес устройства с IP-адресом 199.1.1.2. Коммутатор осуществляет лавинную адресацию широковещательного фрейма, поэтому R2 и все другие устройства данной локальной сети получают широковещательное сообщение ARP. 2. R2 отвечает маршрутизатору R1, сообщая, что его МАС-адрес— 0200.4444.4444. 3. R1 заканчивает создание заголовка и концевика Ethernet, указывая МАС-адрес 0200.4444.4444 маршрутизатора R2 в качестве получателя, и пересылает фрейм. Между прочим, R1 также сохраняет информацию в кэше ARP, поэтому он знает, что МАС-адрес 20200.4444.4444 принадлежит устройству с IP-адресом 199.1.1. В еле-
220 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом дующий раз, когда маршрутизатору R1 понадобится пересылать пакет маршрутизатору R2, он не будет прибегать к услугам протокола ARP. Кроме того, обратите внимание на то, что новый фрейм Ethernet — не тот, что создала и послала Ханна; в новом фрейме Ethernet указаны иные адреса отправителя и получателя. Однако IP-пакет во фрейме остался прежним. Поскольку IP-пакет — это объект, который должен пройти через сеть и при этом не измениться, говорят, что маршрутизаторы и маршрутизация осуществляют сквозную пересылку пакетов через сеть. Поэтому слово "пакет" подразумевает IP-заголовок и следующие за ним данные и не включает заголовок канала передачи данных и концевик. Резюме шага 2 Логика маршрутизации, используемая маршрутизатором R1, может быть кратко подытожена так. 1. Получить поступающие фреймы Ethernet, которые отправлены на мой собственный МАС-адрес. 2. Если в них нет ошибок, извлечь инкапсулированные IP-пакеты и отбросить заголовок и концевик старого канала передачи данных. 3. Сопоставить IP-адрес получателя каждого пакета со списком адресатов в таблице маршрутизации. 4. После того как соответствие найдено, обратить внимание на исходящий интерфейс и маршрутизатор следующего перехода, указанные в найденной записи таблицы маршрутизации. Использовать эту информацию, чтобы инкапсулировать и отправлять получающиеся в результате фреймы на исходящий интерфейс. Шаг 3: выбор дороги на последнем перекрестке В примере объединенной сети, использованном в данной главе, имеется только два маршрутизатора. Теперь, когда пакет, инкапсулированный во фрейм Ethernet, пересек участок Ethernet между маршрутизаторами R1 и R2, только один маршрутизатор должен обработать пакет, а именно маршрутизатор R2. Если бы между Ханной и Web-сервером было еще много маршрутизаторов, то они использовали бы логику, подобную той, которой в предыдущем разделе руководствовался R1. Однако после того как пакет добирается до конечного маршрутизатора, логика несколько изменяется. Чтобы закончить рассмотрение примера и обсуждение маршрутизации, в этом разделе описываются те же три шага, что и для R1, но упор делается на различиях. Все еще полезная, но по-прежнему короткая жизнь фрейма Ethernet Ранее маршрутизатор R1 начинал работу, получая адресованный ему фрейм Ethernet. Аналогично начинает работать и логика маршрутизатора R2. В нашем случае R2 получает фрейм, который R1 посылает по адресу Ethernet маршрутизатора R2, этот фрейм содержит исходный пакет Ханны, посланный ею Web-серверу. Этот первый шаг логики R2 соответствует таковой R1. 1. Проверить FCS поступившего фрейма. Если выявлены ошибки, отказаться от фрейма.
Глава 11. Знать, куда поворачивать на каждом перекрестке... 221 2. Если ошибок нет, отбросить заголовок и концевик Ethernet, оставив исходный IP-пакет. В нашем примере объединенной сети после того, как R2 получает фрейм, в его распоряжении оказывается исходный IP-пакет, IP-адрес отправителя которого — 8.1.1.1 (Ханна), IP-адрес получателя — 130.4.3.3 (Web-сервер). Таблица маршрутизации R2: адресат тот же самый, инструкции по пересылке другие Как и Rl, R2 смотрит на адрес получателя пакета и сравнивает его с таблицей маршрутизации. Аналогично тому, как это делал R1, маршрутизатор R2 должен найти соответствующую запись в таблице, и эта запись подскажет R2, что он должен сделать с пакетом. Однако таблица маршрутизации R2 отличается от таковой маршрутизатора R1, потому что таблица маршрутизации R2 включает инструкции о том, куда должен пересылать IP-пакеты маршрутизатор R2. Это походит на езду по городу, когда вы поворачиваете налево на одном перекрестке и едете прямо на другом. Решение, которое вы принимаете, зависит от того, где вы в данный момент находитесь. Аналогично, инструкции относительно того, на какой интерфейс нужно отправить пакет, зависят от того, в какой точке объединенной сети находится маршрутизатор. На рис. 11.12 показаны таблицы маршрутизации маршрутизаторов R1 и R2, чтобы проиллюстрировать тот факт, что R2 ведет себя иначе, чем R1. Таблица маршрутизации R1 Таблица маршрутизации R2 Сеть Интерфейс Маршрутизатор получателя следующего перехода 8.0.0.0 Е1 199.1.1.0 Е2 130.4.0.0 Е2 Не определен Не определен 199.1.1.2 Сеть Интерфейс получателя 8.0.0.0 199.1.1.0 130.4.0.0 Е1 Е2 Е2 Маршрутизатор следующего перехода 199.1.1.2 Не определен Не определен Ханна 8.1.1.1 www.example.com .130.4.3.3 Сетьв.О.О.О Сеть199.1.1.0 Сеть 130.4.0.0 Рис. 11.12. Таблица маршрутизации R2 — адресаты прежние, инструкции по пересылке другие Как и R1, маршрутизатор R2, чтобы переслать пакет, должен сравнить IP-адрес получателя пакета со списком адресатов в таблице маршрутизации. Как и R1, маршрутизатор R2 обнаруживает соответствие адресата записи, относящейся к сети 130.4.0.0, потому что получатель, 130.4.3.3, входит в эту сеть. Различие в том, как ведут себя R1 и R2, обусловлено тем, что, в отличие от R1, соответствующая получателю запись в таблице маршрутизации R2 не указывает на маршрутизатор следующего перехода. Из рис. 11.12 можно видеть, что R2 не должен пересылать пакет другому маршрутизатору, вместо этого он должен послать пакет непосредственно Web-серверу. R2 знает, что нет другого маршрутизатора, потому что никакой маршрутизатор следующего перехода не указан в записи таблицы маршрутизации, соответствие с которой (записью) было обнаружено. R2 просто должен послать пакет непосредственно Web-серверу с IP-адресом 130.4.3.3.
222 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Еще один короткоживущий фрейм Ethernet Точно так же, как до этого Ханна и R1, маршрутизатор R2 должен послать IP- пакет через Ethernet. Он знает IP-адреса отправителя и получателя пакета, потому что они не изменились в течение всего описываемого процесса. Маршрутизатор R2 знает Ethernet-адрес своего исходящего интерфейса. Все, что должен знать R2, — это МАС-адрес, который соответствует Web-серверу, тогда он сможет закончить создание фрейма Ethernet и переслать его Web-серверу. Чтобы выяснить МАС-адрес Ethernet Web-сервера, R2 использует те же сообщения протокола ARP, какие до этого посылали Ханна и R1. Маршрутизатор R2 посылает широковещательный запрос ARP, пытаясь выяснить Ethernet-адрес хоста 130.4.3.3 (Web-сервер). После того как Web-сервер отреагирует на запрос ответом ARP, маршрутизатор R2 сможет закончить создание фрейма Ethernet и переслать его. После того как R2 передаст фрейм, коммутатор локальной сети перешлет его так, чтобы этот фрейм мог получить Web-сервер. Наконец, Web-сервер получает фрейм и извлекает пакет. Маршрутизация пакета завершена! Другие правила движения Хотя рассмотренный в предыдущих разделах пример помог нам разобраться в маршрутизации, одного примера недостаточно для того, чтобы можно было рассмотреть все нюансы работы механизма маршрутизации. Рассмотрим несколько дополнительных коротких вопросов, касающихся маршрутизации. Это не означает, что правила маршрутизации изменяются — просто мы хотим разъяснить, что происходит в нескольких различных ситуациях. Маршрутизация при наличии подсетей В примере, использованном в этой главе, рассматривались три IP-сети, в которых не было подсетей. Как выясняется, даже при наличии подсетей маршрутизация осуществляется в основном точно так же. Например, давайте рассмотрим рис. 11.13, на котором показана та же объединенная сеть с двумя маршрутизаторами, но теперь уже с подсетями в сети 150.1.0.0 класса В. Таблица маршрутизации R1 Таблица маршрутизации R2 Сеть Интерфейс Маршрутизатор получателя 150.1.1.0 150.1.2.0 150.1.3.0 Е1 Е2 Е2 следующего перехода Не определен Не определен 150.1.2.2 Сеть Интерфейс Маршрутизатор получателя 150.1.1.0 150.1.2.0 150.1.3.0 Е1 Е2 Е2 следующего перехода 150.1.2.1 Не определен Не определен www.example.com 150.1.3.3 Шлюз по умолч. Подсеть 150.1.1.0 150.1.1.250 Первый: 150.1.1.1 Последний: 150.1.1.254 Подсеть 150.1.2.0 Первый: 150.1.2.1 Последний: 150.1.2.254 Подсеть 150.1.3.0 Первый: 150.1.3.1 Последний: 150.1.3.254 Рис. 11.13. Таблица маршрутизации R2 — адресаты прежние, инструкции по пересылке другие
Глава 11. Знать, куда поворачивать на каждом перекрестке... 223 В этой новой объединенной сети используется единственная IP-сеть класса В, с номером 150.1.0.0. Эта IP-сеть подразделена на три подсети а именно: 150.1.1.0, 150.1.2.0 и 150.1.3.0. В данном случае было выполнено разбиение на подсети, чтобы работа сети осуществлялась так, как описано в главе 10 — все хосты одной и той же IP-подсети имеют одно и то же значение в первых 3 октетах их IP-адресов. (Обратите внимание на то, что IP-адреса хост-компьютеров, как и маршрутизаторов, изменились по сравнению с предыдущими примерами в этой главе.) Теперь рассмотрим таблицы маршрутизации. В предыдущем примере список получателей был списком номеров сетей классов А, В и С. В данном случае список показывает номера IP-подсетей. Чтобы правильно маршрутизировать пакеты, маршрутизатор нуждается в таблице маршрутизации, в которой перечисляются все возможные группы IP-адресов. Как мы уже говорили в главе 10, подсеть — только подмножество сети большего класса А, В или С, другими словами, только меньшая группа адресов. Компьютер Ханны, маршрутизаторы R1 и R2 руководствуются, как и прежде, базовой логикой. Когда Ханна посылает пакет Web-серверу, она указывает адрес получателя— 150.1.3.3. Шлюз, назначенный по умолчанию для Ханны, по-прежнему указывает на IP-адрес маршрутизатора R1 и интерфейс Ethernet 1. Логика компьютера Ханны работает так же, как и в случае без разбиения на подсети. Ханна посылает широковещательный запрос ARP относительно IP-адреса 150.1.1.250, R1 отвечает, и Ханна посылает маршрутизатору R1 фрейм с IP-пакетом во фрейме Ethernet. Логика работы маршрутизатора R1 тоже остается прежней. R1 получает фрейм и, если в нем нет ошибок, извлекает из него IP-пакет. Адрес получателя в данном случае — 150.1.3.3, поэтому R1 смотрит на свою таблицу IP-маршрутизации и находит запись для 150.1.3.0. Маршрутизатор R1 знает, что эта подсеть включает адреса с 150.1.3.1 по 150.1.3.254, т.е. адрес получателя пакета соответствует этой записи. Запись таблицы маршрутизации подсказывает R1 отправить пакет на его собственный интерфейс Ethernet2, а затем — маршрутизатору R2. Единственная разница состоит втом, что IP-адрес R2 отличен от прежнего A50.1.2.2). Наконец, когда R2 получает фрейм, он выполняет обычную проверку на предмет ошибок и извлекает IP-пакет. После этого маршрутизатор R2 сравнивает IP-адрес получателя со своей таблицей маршрутизации и находит запись для IP-адреса 150.1.3.0. В данном случае не указан никакой маршрутизатор следующего перехода, поэтому R2 может переслать пакет непосредственно Web-серверу. Короче говоря, независимо от того, используются в объединенной сети подсети или нет, основная логика маршрутизации остается той же самой. Как управлять автомобилем поблизости от дома (в подсети) Рассмотрение всех примеров этой главы всегда начиналось с компьютера Ханны, который посылал пакет ее маршрутизатору, назначенному по умолчанию. Но что, если Ханна должна послать пакет тому, кто находится в той же подсети? Для Ханны, конечно, было бы лучше послать пакет непосредственно адресату. На рис. 11.14 показана соответствующие топология и решение. Хосты не всегда посылают пакеты шлюзу, назначенному по умолчанию. Они начинают свою работу, задавая простой вопрос: "Адрес получателя этого пакета при-
224 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом надлежит той же подсети, в которой нахожусь я?" Если это так, хост должен послать пакет непосредственно получателю, как показано на рис. 11.14. Если адресат пакета находится в другой подсети, хост просто должен послать пакет своему маршрутизатору, назначенному по умолчанию. Поскольку каждый хост-компьютер знает диапазон IP-адресов своей подсети, то все, что он должен сделать, — это сравнить IP-адрес получателя пакета с этим списком адресов. Мне нужно послать пакет адресату 150.1.1.2... это в моей подсети! Отправлю прямо по указанному адресу! V Подсеть 150.1.1.0 Первый: 150.1.1.1 Последний: 150.1.1.254 Ханна Митчелл 150.1.1.2 Рис. 11.14. Процесс решения, когда адресат находится в локальной подсети Между прочим, хосту, возможно, придется использовать ARP, чтобы узнать или МАС-адрес другого хост-компьютера, или шлюза, назначенного по умолчанию. Резюме Процесс маршрутизации начинает хост-компьютер, у которого появляется пакет, который нужно отправить. Вначале хост-компьютер выясняет, находится ли адресат пакета в этой же или другой подсети. Если адресат находится в другой подсети, хост посылает пакет шлюзу, назначенному по умолчанию. Если получатель находится в той же подсети, хост посылает пакет непосредственно этому хосту, игнорируя шлюз, назначенный по умолчанию. Прежде чем хост может послать пакет плате интерфейса сети Ethernet, он должен узнать МАС-адрес устройства получателя. Хост ищет его в своем ARP-кэше, где хранится список IP-адресов подсети вместе с соответствующими МАС-адресами Ethernet. Если в кэше нет соответствующей записи, хост использует протокол ARP, чтобы передать широковещательный запрос, ожидая получать ответ с необходимой ему информацией. Маршрутизатор получает адресованный ему фрейм Ethernet и, если этот фрейм не содержит ошибок, деинкапсулирует IP-пакет, находящийся внутри фрейма. Маршрутизатор сравнивает IP-адрес получателя пакета с записями таблицы маршрутизации. Запись, которая соответствует этому адресу, подсказывает маршрутизатору, куда нужно послать пакет. Эти инструкции по пересылке включают интерфейс
Глава 11. Знать, куда поворачивать на каждом перекрестке... 225 маршрутизатора, на который следует пересылать пакет (он называется "исходящий интерфейс"), а также маршрутизатор следующего перехода, если последний нужно выполнить. Эта основная базовая логика работает независимо от того, используются или нет подсети. Контрольные вопросы Вы можете найти ответы на эти вопросы в приложении А. 1. ПК1 находится в сети Ethernet и использует IP-адрес 130.1.1.1. ПК1 должен послать пакет FTP-серверу с IP-адресом 19.1.1.1. По какому IP-адресу ПК1 должен отправить IP-пакет? 2. Представьте, что ПК1 с IP-адресом 130.1.1.1 должен послать пакет. ПК1 решает послать пакет своему маршрутизатору, назначенному по умолчанию, с IP- адресом 130.1.1.2. ПК1 никогда не посылал пакет этому маршрутизатору. Два сообщения должны быть переданы по сети, прежде чем ПК1 сможет переслать пакет. Какая аббревиатура используется для протокола, который регламентирует эти два сообщения, и как она расшифровывается? 3. Представьте, что ПК1 с IP-адресом 130.1.1.1 должен послать пакет своему маршрутизатору, назначенному по умолчанию, с IP-адресом 130.1.1.2. И ПК1, и маршрутизатор подключены к одному коммутатору Ethernet, наряду с ПК Ларри, Моу и Кэли. ПК1 не знает МАС-адрес маршрутизатора Ethernet. Какое сообщение должен послать ПК1, чтобы узнать МАС-адрес маршрутизатора? Какое из устройств локальной сети получит это сообщение? 4. ПК1, с IP-адресом 130.1.1.1, должен послать пакет Кэли, IP-адрес которого 130.1.1.3. Маршрутизатор, назначенный по умолчанию для ПК1 — маршрутизатор с IP-адресом 130.1.1.2. Оба ПК и маршрутизатор подключены к одному коммутатору Ethernet и находятся в одной подсети. Опишите роль маршрутизатора, назначенного по умолчанию, при отправке этого пакета с компьютера ПК1 компьютеру Кэли. 5. ПК1 A30.1.1.1) подключен к коммутатору Ethernet. Он должен послать пакет Web-серверу A9.1.1.1). IP-пакет находится в памяти ПК1. Опишите процесс инкапсуляции, которую требуется выполнить, прежде чем ПК1 может передать биты. 6. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Скажите, чьи IP- и МАС-адреса содержались бы во фрейме Ethernet, который передается от ПК1 маршрутизатору R1. ПК1 ПК2 150.1.1.1 150.1.3.3 Шлюз поумолч. Подсеть 150.1.1.0 Подсеть 150.1.2.0 Подсеть 150.1.3.0 150.1.1.250 Первый: 150.1.1.1 Первый: 150.1.2.1 Первый: 150.1.3.1 Последний: 150.1.1.254 Последний: 150.1.2.254 Последний: 150.1.3.254 Рис. 11.75. Объединенная сеть, которая упоминается в вопросах к главе 11
226 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом 7. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Скажите, чьи IP- и МАС-адреса содержались бы во фрейме Ethernet, который передается от R2 компьютеру ПК2. 8. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Опишите содержимое записи таблицы маршрутизации R1, которая необходима маршрутизатору R1, чтобы правильно переслать пакет. 9. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Опишите содержимое записи таблицы маршрутизации R2, которая необходима маршрутизатору R2, чтобы правильно переслать пакет. 10. Определите термин "маршрутизация." 11. Определите термин "шлюз по умолчанию." 12. Опишите различия между процессами маршрутизации для случаев, когда используются подсети и когда они не используются. 13. Опишите логику, которой руководствуется хост-компьютер, решая, должен ли он послать пакет своему шлюзу, назначенному по умолчанию, или непосредственно хосту получателя. 14. В промежуток времени между отправкой компьютером ПК1 пакета и получением его компьютером ПК2 (см. рис. 11.15), возможно, многое изменится. Опишите, что остается прежним и что изменяется в передаваемых данных. Сравните то, что отправляет ПК1, с тем, что получает ПК2. 15. В этой главе предполагается, что вы найдете три элемента в одной записи таблицы маршрутизации. Что это за элементы и какой (какие) из них необходим для того, чтобы маршрутизатор знал, куда послать пакет? 16. Какой из трех элементов записи таблицы маршрутизации (см. предыдущий вопрос) не всегда является необходимым? Используя R2 (см. рис. 11.15) в качестве примера, опишите одну запись таблицы маршрутизации, в которой какое-то поле не являлось бы необходимым.
Что вам предлагается освоить После прочтения этой главы вы должны уметь: s объяснить, как маршрутизатор учится записывать маршруты в свою таблицу маршрутизации для сетей или подсетей, которые непосредственно с ним связаны; s описать, как сетевой инженер может сконфигурировать маршрутизатор, чтобы он использовал статические маршруты и добавил эти маршруты в свою таблицу маршрутизации; S объяснить основную идею относительно того, как многие маршрутизаторы могут использовать протокол маршрутизации, чтобы обмениваться информацией относительно маршрутизации друг с другом; S перечислить несколько протоколов 1Р-маршрутизации ■^i|piis illl;,.. •llllls, ^liliii. •Jill* .^mmm^ "'III! Jiflfff ЯП mm liii mi -ЧШ0'
Глава 12 Установка дорожных указателей на автомагистрали между штатами (объединенная сеть) Если вы совершаете автомобильное путешествие и не используете карту, то все равно сможете добраться до выбранного места, руководствуясь дорожными указателями. Механизм маршрутизации, как было показано в главе 11, работает во многом аналогично тому, как перемещается путешественник, доверяющий дорожным указателям. IP-пакеты можно рассматривать как автомобили, перекрестки — как маршрутизаторы, таблицы маршрутизации как дорожные указатели. Как водитель использует информацию, содержащуюся в дорожных указателях, IP-пакеты полагаются на таблицы маршрутизации. Когда маршрутизатор получает пакет, он должен найти соответствие IP-адресу получателя пакета в таблице маршрутизации, чтобы выяснить, куда переслать пакет. Подобно тому, как вы, управляя автомобилем, могли бы посмотреть на дорожный указатель и свернуть на другую дорогу, маршрутизатор направляет пакет на следующее "сетевое шоссе", чтобы он мог добраться до получателя. (Обратите внимание на то, что именно маршрутизатор пересылает пакет и принимает решение относительно того, куда его нужно послать, что не вполне соответствует аналогии с управлением автомобилем, когда водитель автомобиля решает, куда нужно повернуть.) Короче говоря, IP-пакеты полагаются на то, что маршрутизаторы имеют в своих таблицах маршрутизации надежную и полную информацию по маршрутизации. В данной короткой главе рассмотрено большинство основных концепций, на основании которых маршрутизатор создает и заполняет свою таблицу маршрутизации. Маршрутизация к соседним местам Представьте небольшой сонный город с несколькими парнями, сидящими без дела на единственной бензоколонке. Поскольку я рос в городке такого типа, то назову его по имени моего родного города — Снеллвилл. Парни на бензоколонке разговаривают в ожидании следующего клиента. Незнакомец подъезжает, опускает стекло автомобиля и спрашивает: "Извините, вы не подскажете, как добраться до Снеллвилла?" Конечно, он услышит не менее
230 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом дюжины остроумных или саркастических реплик, но в конце концов парни скажут незнакомцу, что он только что пропустил дорожный знак, который подсказал бы ему, что он уже в Снеллвилле. Не нужно никуда ехать! Интересно то, что первоначальное заполнение таблиц маршрутизации осуществляется на основе подобной концепции. Каждый маршрутизатор знает, какие из его физических интерфейсов активизированы и работают. Он знает IP-адреса, используемые для каждого интерфейса. Каждый маршрутизатор знает также, какие IP-сети или подсети существуют в физических сетях, которые связаны с его интерфейсами. Маршрутизатор может добавить маршруты к подсетям, сконфигурированным в физических сетях, к которым он подключен. Прежде чем маршрутизатор сможет добавить маршруты к этим подсетям, он должен назначить IP-адрес каждому сетевому интерфейсу. Когда вы покупаете совершенно новый маршрутизатор, он не знает, какие IP-адреса вы хотите использовать. Сетевой инженер должен так или иначе сообщить маршрутизатору, какие IP-адреса он должен использовать; для этого инженер конфигурирует маршрутизатор. Конфигурирование маршрутизатора (configuring a router) означает, что инженер подключается к маршрутизатору и вводит в него нужную информацию. Например, на рис. 12.1 маршрутизатор R1 должен знать свои IP-адреса для интерфейсов Ethernetl и Ethernet2. Когда инженер конфигурирует IP-адрес для каждого интерфейса, он также сообщает маршрутизатору, какие подсети или сети присоединены к этим двум интерфейсам. Основная концепция представлена на рис. 12.1 Ханна 150.1.1.1 к\ Использую 150.1.1.250 как ваш IP-адрес Ethernetl. Этот интерфейс подключен к подсети 150.1.1.0, для которой действует диапазон адресов 150.1.1.1 — 150.1.1.254. Также использую 150.1.2.1 как ваш IP адрес Ethernet2. Этот интерфейс подключен к подсети 150.1.2.0, для которой действует диапазон адресов 150.1.2.1 — 150.1.2.254 Рис. 12.1. Конфигурирование маршрутизатора с его IP-адресами и подключенными подсетями Прежде чем весь механизм маршрутизации, описанный в главе 11, мог начать свою работу, маршрутизаторы должны были узнать, каковы IP-адреса их интерфейсов. На рис. 12.1 вы видите: инженер сообщил маршрутизатору R1, что его IP- адреса— 150.1.1.250 (Ethernetl) и 150.1.2.1 (Ethernet2). Основываясь на этой информации, маршрутизатор может определить номера подсетей, связанных с этими двумя интерфейсами, и диапазон допустимых IP-адресов. (Хотя в нашей книге мы не рассматриваем все подробно, для тех, кто уже имеет небольшой опыт конфигурирования маршрутизатора, добавим: инженер конфигурирует IP-адрес и маску подсети для каждого интерфейса. Маршрутизатор использует эти два номера, чтобы определить диапазон допустимых IP-адресов для каждой подсети.)
Глава 12. Установка дорожных указателей на автомагистрали между... 231 После того как оба интерфейса R1 задействованы и работают, R1 узнает несколько важных для себя фактов: ■ номера подсетей, которые связаны с этими двумя интерфейсами; ■ исходящие интерфейсы, которые нужно использовать, чтобы пересылать пакеты этим подсетям; ■ он должен посылать пакеты другому маршрутизатору, чтобы тот мог доставить их в эти подсети. В результате R1 просто добавляет маршрут для каждой непосредственно связанной с ним подсети в свою таблицу маршрутизации. Непосредственно связанная подсеть {directly connected subnet) — это подсеть, которая... ну, в общем, связанная непосредственно с маршрутизатором. Ранее, в главе 10, вы узнали о том, что все 1Р-хосты одной IP-подсети были присоединены к одной физической сети. На рис. 12.1 интерфейс Ethernet 1 маршрутизатора R1 подключен к той же физической сети Ethernet, к которой подключен компьютер Ханны; поэтому интерфейс Ethernet 1 маршрутизатора R1 непосредственно связан с той же подсетью, с которой связан компьютер Ханны. Добавив маршрут для этой подсети в свою таблицу маршрутизации, R1 сможет пересылать пакеты Ханне и другим хостам этой подсети. Аналогично, R2 может добавить два маршрута в свою таблицу маршрутизации после того, как сетевой инженер сконфигурирует R2 и два его интерфейса начнут работу. На рис. 12.2 показаны таблицы маршрутизации маршрутизаторов R1 и R2, на этот раз с вновь добавленными маршрутами к непосредственно связанным сетям. Таблица маршрутизации R1 Сеть Интерфейс Маршрутизатор получателя 150.1.1.0 Е1 150.1.2.0 Е2 следующего перехода Не определен Не определен Таблица маршрутизации R2 Сеть Интерфейс Маршрутизатор получателя следующего перехода 150.1.2.0 150.1.3.0 Е1 Е2 Не определен Не определен Ханна 150.1.1.1 Example.com 150.1.3.3 Подсеть 150.1.1.0 Первый: 150.1.1.1 Последний: 150.1.1.254 Подсеть 150.1.2.0 Первый: 150.1.2.1 Последний: 150.1.2.254 Подсеть 150.1.3.0 Первый: 150.1.3.1 Последний: 150.1.3.254 Рис. 12.2. Маршруты к непосредственно связанным сетям в таблицах маршрутизации R1 и R2 Маршрутизаторы всегда добавляют маршруты для непосредственно связанных с ними подсетей и сетей, если их интерфейс сконфигурирован и работает. Хотя важно, что маршрутизаторы включают непосредственно связанные с ними подсети в свои таблицы маршрутизации, если это — все, что знают R1 и R2, то они хранят недостаточно много маршрутов в своих таблицах маршрутизации. Например, если Ханна попробует послать пакет Web-серверу A50.1.3.3), то у R1 не будет маршрута, который соответствует адресу получателя пакета, и он просто отбросит такой пакет.
232 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Установка дорожных знаков и других долговременных указателей Нужно много времени для того, чтобы построить автомагистраль, еще больше — для того, чтобы построить новый город. Но всякий раз, когда строительство новой дороги закончено, старые дорожные указатели приходится обновлять, потому что появляется лучший маршрут проезда к соседнему городу. К счастью, поскольку строительство дорог занимает много времени, дорожные указатели не приходится обновлять слишком часто. Что касается маршрутизаторов, то сетевой инженер может сделать нечто, эквивалентное обновлению дорожных знаков. Чтобы сделать это, инженер может сконфигурировать статический IP-маршрут (static IP route), который представляет собой конфигурацию маршрутизатора, указывающую ему добавлять специфическую запись в таблицу маршрутизации. Например, на рис. 12.2 маршрутизатор R1 не имел маршрута к подсети 150.1.3.0, это означает, что он не мог пересылать пакеты, предназначенные для IP-адреса 150.1.3.3. На рис. 12.3 инженер решил эту проблему, сконфигурировав статический маршрут на R1 для подсети 150.1.3.0, с исходящим интерфейсом Ethernet2, и маршрутизатор следующего перехода с IP-адресом 150.1.2.2. Таблица маршрутизации R1 Сеть Интерфейс получателя 150.1.1.0 150.1.2.0 150.1.3.0 Е1 Е2 Е2 Маршрутизатор следующего перехода Не определен Не определен 150.1.2.2 Ханна 150.1.1.1 Example.com 150.1.3.3 150.1.1.250, 150.1.2.2 1150.1 2.1 Эй, R1, добавь маршрут к подсети 150.1.3.0, с IP-адресом следующего перехода 150.1.2.2 и исходящим интерфейсом Ethernet2 Рис. 12.3. Обновление таблицы маршрутизации статическим маршрутом Перед добавлением статического маршрута R1 не знал, как пересылать пакеты, получатели которых находились в подсети 150.1.3.0. Теперь R1 знает, что эти пакеты нужно пересылать маршрутизатору R2. Статические маршруты работают, но их поддержка может стать невыносимой. Топологии сетей имеют тенденцию изменяться гораздо чаще, чем появляются новые дороги, и статические маршруты мешают использованию всех маршрутов к определенной части сети, когда возможно использование многих физических путей. Поэтому большинство компаний не использует статические маршруты в своих сетях; вместо этого они используют протоколы маршрутизации, описанные в следующем разделе.
Глава 12. Установка дорожных указателей на автомагистрали между... 233 Динамическое изучение и изменение таблиц маршрутизации Обычно можно по-разному проехать из одного района города в другой. В час пик вы могли бы руководствоваться сообщениями по радио для соответственного изменения маршрута или смотреть на электронные дорожные указатели, которые ознакомят вас с последней информацией относительно дорожных пробок. Например, обозреватель мог бы пролетать над шоссе в вертолете или наблюдать трафик через камеры, установленные вблизи главных шоссе. Обозреватель передает информацию диктору радиостудии или кому-то, кто наберет текст предупреждения, которое появится на электронном указателе. Вы могли бы узнать, проезжая мимо электронного указателя или услышав передачу радиостанции, что дорога, по которой вы едете, впереди закрыта из-за несчастного случая, и свернуть на другую. Подобная (но не идентичная) концепция применима и к работе сетей. Наиболее типичный способ, посредством которого маршрутизатор узнает об остальных маршрутах, возможных в объединенной сети, помимо маршрутов к непосредственно связанным с ним сетям, реализуется посредством протокола маршрутизации. Протоколы маршрутизации {routingprotocols) определяют форматы сообщений, посредством которых маршрутизаторы могут обмениваться информацией о возможных маршрутах. Маршрутизатор может сообщить другим маршрутизаторам о маршрутах, которые ему известны, и может сам прослушать сообщения соседних маршрутизаторов о маршрутах, которые известны им. Если в этом процессе будут участвовать все маршрутизаторы, то все они будут знать маршруты для всех подсетей или сетей, входящих в объединенную IP-сеть. Маршрутизаторы R1 и R2, показанные на рис. 12.2, знали о непосредственно связанных с ними подсетях, но ничего не знали о других. В примере, показанном на рис. 12.4, работа начинается, как на рис. 12.2, но в этом случае R1 использует протокол маршрутизации, чтобы сообщить R2 о своих маршрутах. На рис. 12.4 показано несколько действий, выполняемых в течение определенного времени, они описаны ниже. 1. Каждый маршрутизатор знает только о непосредственно связанных с ним маршрутах, как следует из таблиц маршрутизации, показанных в верхней части рисунка. 2. R1 посылает обновление информации о маршрутизации маршрутизатору R2. Термин обновление маршрутной информации (routing update) относится к сообщению протокола маршрутизации, которое содержит информацию об IP- сетях и подсетях. Обратите внимание на то, что обновление маршрутной информации, посылаемое R1, представляет собой всего лишь перечень подсетей, данные о которых R1 имеет в своей таблице маршрутизации. 3. Каждый маршрутизатор имеет таблицу маршрутизации, у R2 она теперь расширилась, потому что он узнал несколько новых маршрутов. R2 решил добавить маршрут к подсети 150.1.1.0 — подсети, в которой находится компьютер Ханны. Ранее R2 не имел маршрута к подсети 150.1.1.0, но, получив от R1 обновление маршрутной информации, теперь уже R2 знает об этой подсети.
234 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом © Таблица маршрутизации R1 — до обновления маршрутной информации © Таблица маршрутизации R2 — до обновления маршрутной информации Сеть Интерфейс получателя 150.1.1.0 Е1 150.1.2.0 Е2 Маршрутизатор следующего перехода Не определен Не определен Сеть Интерфейс получателя 150.1.2.0 150.1.3.0 Е1 Е2 Маршрутизатор следующего перехода Не определен Не определен Ханна 150.1.1.1 Example.com 150.1.3.3 150.1.1.250 150.1.2.2 Подсеть 150.1.1.0 Обновление маршрутной информации Подсеть 150.1.2.0 Подсеть 150.1.3.0 150.1.1.0 150.1.2.0 ® Таблица маршрутизации R1 — после обновления маршрутной информации после обновления маршрутной информации ® Таблица маршрутизации R2 - Сеть Интерфейс Маршрутизатор получателя следующего перехода 150.1.1.0 150.1.2.0 Е1 Е2 Не определен Не определен Сеть Интерфейс получателя 150.1.2.0 150.1.3.0 150.1.1.0 Е1 Е2 Е1 Маршрутизатор следующего перехода Не определен Не определен 150.1.2.1 Рис. 12.4. Маршрутизатор R2 узнает о маршрутах от R1 Также обратите внимание на исходящий интерфейс и маршрутизатор следующего перехода для нового маршрута. В качестве исходящего интерфейса R2 использует свой интерфейс Ethernet 1. Из рис. 12.4 кажется, что R2 мог бы использовать свой интерфейс Е1, чтобы пересылать пакеты в подсеть 150.1.1.0, но R2 предпочитает указать этот интерфейс в маршруте, потому что это интерфейс, через который он получил обновление маршрутной информации. R2 также указывает IP-адрес 150.1.2.1 маршрутизатора R1 в качестве маршрутизатора следующего перехода, потому что это IP-адрес маршрутизатора, который прислал маршрутную информацию. Из рис. 12.4 вы можете видеть, что IP-адрес маршрутизатора следующего перехода этого маршрута должен быть IP-адресом 150.1.2.1 маршрутизатора R1. Обратите внимание на то, что R2 узнал о существовании нового для него маршрута, получив обновление маршрутной информации от R1, однако R1 пока еще не получил сведений о маршрутах. Маршрутизаторы узнают о маршрутах благодаря протоколам маршрутизации, когда получают обновления маршрутной информации от других маршрутизаторов; маршрутизаторы посылают обновления маршрутной информации так, чтобы другие маршрутизаторы могли получить необходимые им сведения. Для того чтобы R1 мог узнать о новых для него маршрутах, другой маршрутизатор должен сообщить ему о них, прислав обновление маршрутной информации. На рис. 12.5 показан R2, рекламирующий свои маршруты, и R1, изучающий маршрут к подсети 150.1.3.0.
Глава 12. Установка дорожных указателей на автомагистрали между... 235 © Таблица маршрутизации R1 — до обновления маршрутной информации © Таблица маршрутизации R2 — до обновления маршрутной информации Сеть Интерфейс получателя 150.1.1.0 150.1.2.0 Е1 Е2 Маршрутизатор следующего перехода Не определен Не определен Сеть Интерфейс получателя 150.1.2.0 150.1.3.0 150.1.1.0 Е1 Е2 Е1 Маршрутизатор следующего перехода Не определен Не определен 150.1.2.1 Ханна 150.1.1.1 Example.com 150.1.3.3 Подсеть 150.1.1.0 Подсеть 150.1.2.0 150.1.2.0 150.1.3.0 Подсеть 150.1.3.0 Обновление маршрутной информации ® ® Таблица маршрутизации R1 — Таблица маршрутизации R2 — после обновления маршрутной информации после обновления маршрутной информации Сеть Интерфейс Маршрутизатор получателя следующего перехода 150.1.1.0 150.1.2.0 150.1.3.0 Е1 Е2 Е2 Не определен Не определен 150.1.2.2 Сеть Интерфейс получателя 150.1.2.0 150.1.3.0 150.1.1.0 Е1 Е2 Е1 Маршрутизатор следующего перехода Не определен Не определен 150.1.2.1 Рис. J2.5. Маршрутизатор R1 обучается, получив обновление маршрутной информации На рис. 12.5 представлены действия, которые выполняются в течение определенного промежутка времени, когда R1 изучает маршруты, полученные от R2. 1. Каждый маршрутизатор знает только о непосредственно связанных с ним маршрутах, как следует из таблиц маршрутизации, показанных в верхней части рисунка. 2. R2 посылает обновление маршрутной информации маршрутизатору R1. 3. Таблица маршрутизации R1 теперь содержит данные о маршруте к подсети 150.1.3.0. Обратите внимание: исходящий интерфейс маршрутизатора R1 для этого маршрута — Ethernet2; он является интерфейсом, через который было получено обновление маршрутной информации. Маршрутизатор следующего перехода — 150.1.2.2, это IP-адрес маршрутизатора R2. Теперь и R1, и R2 имеют маршруты ко всем трем подсетям, показанным на рисунке, и оба маршрутизатора знают про остальные маршруты, поскольку они получили и обработали обновления маршрутной информации. Выбор наилучшей дороги (маршрута) Я много путешествую, поскольку занимаюсь преподавательской деятельностью. Иногда, закончив урок, я спрашиваю, как мне лучше куда-нибудь проехать, и неизменно от трех разных студентов получаю три разных ответа. Каждый знает короткий
236 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом путь или проселочную дорогу, которая позволит добраться до нужного мне места немного быстрее. Протоколы маршрутизации не только помогают маршрутизаторам изучать маршруты, они также помогают маршрутизаторам выявлять оптимальные маршруты, ведущие к определенному получателю, когда есть более чем один способ доставить ему пакет. Маршрутизаторы узнают обо всех возможных маршрутах и затем должны решать, который из них лучше. Например, на рис. 12.6 объединенная сеть была расширена за счет трех маршрутизаторов. Маршрутизатор R1 может по-прежнему передавать пакеты в подсеть, где находится Web-сервер A50.1.3.0), через R2, но может также отправить пакеты в эту же подсеть через маршрутизатор R3. / \ Example.com Ханна \^ / / \ \ 150.1.3.3 150.1.1.1 * —' / \ ч* >■ до —1^—■ - > Подсеть 150.1.3.0 Рис. 12.6. Много способов добраться до одного места Как видно из рисунка, R1 может послать пакеты в подсеть 150.1.3.0 через маршрутизатор R2 или R3. Однако, наверное, маршрут через R2 имеет больше смысла. Протоколы маршрутизации решают эту проблему за счет использования объективного инструмента, названного метрикой. Метрика (metric) — это число, связанное с каждым маршрутом в обновлении маршрутизации. Это число характеризует маршрут как хороший или плохой. Когда маршрутизатор получает много обновлений маршрутной информации, он узнает о существовании многих способов достичь какой-то сети или подсети. Глядя на метрики, связанные с каждым маршрутом в каждом обновлении, маршрутизатор может выбрать оптимальный маршрут. Сначала мы расскажем о том, как R1 может узнать о существовании двух маршрутов к подсети 150.1.3.0 (рис. 12.7.). Потом будет проще объяснить, как работает метрика. На рис. 12.7 показаны следующие шаги. 1. R2 передает информацию относительно маршрутизации непосредственно маршрутизатору R1. 2. R2 сообщает о тех же маршрутах маршрутизатору R3, включая информацию о подсети 150.1.3.0. 3. R3 сообщает маршрутизатору R1 о тех же подсетях. 4. R1, после изучения обоих способов связи с подсетью 150.1.3.0, выбрал маршрут через маршрутизатор R2 и добавляет этот маршрут в таблицу маршрутизации.
Глава 12. Установка дорожных указателей на автомагистрали между... 237 Я могу достичь подсети 150.1.3.0 через R2 и R3, но маршрут через R2 имеет меньшую метрику! 150.1.2.0 150.1.3.0 1 1 Подсеть 150 © Таблица маршрутизации R1 — после обновления маршрутной информации 150.1.2.0 150.1.3.0 1 1 Подсеть 150.1.3.0 Сеть Интерфейс получателя 150.1.1.0 150.1.2.0 150.1.3.0 Е1 Е2 Е2 Маршрутизатор следующего перехода Не определен Не определен 150.1.2.2 Рис. 12.7. Выборы, выборы: использование метрики для выбора оптимального маршрута Теперь мы должны разобраться, почему R1 выбирает маршрут через R2, а не маршрут через R3. Обратите внимание на то, что обновления маршрутной информации на рис. 12.7 также включают метрики для каждого маршрута или подсети, указанной в обновлении. В случае с метрикой меньше — означает лучше. Как показано на рис. 12.7, R3 объявляет большую метрику (метрика 2), чем R2 (метрика 1), поэтому R1 решает использовать маршрут через R2. На этапе 4 показана получающаяся в результате запись в таблице маршрутизации. Протоколы маршрутизации позволяют маршрутизаторам использовать оптимальный маршрут, если он доступен, но они используют менее желательные маршруты, если оптимальный маршрут недоступен. Представьте, что кто-то выключает электропитание на коммутаторе Ethernet между R1 и R2. Этот маршрут выйдет из строя и станет недоступным. Протокол маршрутизации на R1 обратит внимание на то, что маршрут, бывший наилучшим, оказался неработоспособным, и удалит маршрут из таблицы маршрутизации. В то же самое время протокол маршрутизации на R1 обратит внимание на то, что существует другой маршрут — через R3, — и добавит этот маршрут в таблицу маршрутизации. Этот пример демонстрирует несколько важных моментов, касающихся протоколов маршрутизации. Сначала они изучают все возможные способы достижения каждой подсети, или маршруты. Затем они выбирают наилучший маршрут, в настоящее время доступный для каждой подсети, реагируя на изменения в сети. Введение в длинный список протоколов маршрутизации За прошедшие годы было разработано много различных протоколов маршрутизации. Чтобы обмениваться информацией о маршрутизации, как это было описано
238 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом в примерах данной главы, маршрутизаторы должны использовать один протокол маршрутизации. Каждый маршрутизатор должен использовать один и тот же протокол маршрутизации. Однако вы имеете возможность выбора протокола маршрутизации. Подробности относительно того, почему вы могли бы предпочесть один протокол маршрутизации другому, лежат вне рамок нашей книги. Однако, чтобы иметь возможность участвовать в разговорах о сетях, вы должны по крайней мере знать названия протоколов IP-маршрутизации и несколько основных фактов о каждом. Например, некоторые протоколы маршрутизации определены как общедоступные стандарты Internet в RFC, тогда как другие являются патентованными протоколами компании Cisco Systems, которая занимает видное место на рынке маршрутизаторов. Кроме того, один протокол маршрутизации, а именно протокол граничного шлюза (Border Gateway Protocol, BGP) предназначен для использования между Internet- провайдерами (ISPs) и их клиентами, тогда как другие больше подходят для использования в одной компании или организации. Протокол маршрутизации, который спроектирован специально для использования в компании, называют внутренним протоколом маршрутизации {Interior Routing Protocol), а тот, который спроектирован для использования между различными компаниями, называют внешним протоколом маршрутизации (Exterior Routing Protocol). В табл. 12.1 приведен перечень протоколов, наряду с некоторыми из критериев сравнения. Таблица 12.1. Протоколы 1Р-маршрутизации Протокол маршрутизации Общедоступный или патентованный Внутренний или внешний Протокол маршрутной информации (Routing Information Protocol, RIP) Внутренний протокол маршрутизации (Gateway Routing Protocol, IGRP) Протокол поиска первого кратчайшего пути (Open Shortest Path First, OSPF) Расширенный IGRP (Enhanced IGRP, EIGRP) Протокол граничного шлюза (Border Gateway Protocol, BGP) Общедоступный Патентованный Общедоступный Патентованный Общедоступный Внутренний Внутренний Внутренний Внутренний Внешний Большинство компаний выбирает внутренний протокол маршрутизации для использования его на всех маршрутизаторах компании. Из перечисленных протоколов маршрутизации чаще всего в одной компании используются протоколы OSPF и EIGRP. Резюме Маршрутизаторы используют таблицу маршрутизации, чтобы выяснить, куда пересылать пакеты. Если маршрутизатор получает пакет и не обнаруживает соответствующей записи в своей таблице маршрутизации, он отказывается от пакета. Для того чтобы маршрутизация осуществлялась должным образом, коллективные маршрутизаторы в объединенной сети должны иметь маршруты ко всем IP-сетям и IP-подсетям объединенной сети.
Глава 12. Установка дорожных указателей на автомагистрали между... 239 Маршрутизаторы сначала узнают о непосредственно связанных с ними маршрутах. Если интерфейс маршрутизатора работает и имеет сконфигурированный IP- адрес, маршрутизатор может добавить маршрут для связанной с ним подсети в таблицу маршрутизации. Сетевые инженеры могут также статически конфигурировать маршрут, сообщая маршрутизатору сведения для записи, которую он должен добавить в свою таблицу маршрутизации. Самый общий способ изучения маршрутизатором маршрутов, — выполнение протокола маршрутизации. Маршрутизаторы обмениваются информацией о маршрутах, посылая сообщения с обновлениями маршрутной информации. Другие маршрутизаторы получают эти сообщения и изучают маршруты. Если все маршрутизаторы будут объявлять о своих маршрутах, то в конечном счете они будут знать обо всех IP-сетях и подсетях. Разработано много протоколов IP-маршрутизации. RIP и IGRP — самые старые внутренние протоколы маршрутизации, предназначенные для использования в одной компании. IGRP и OSPF — наиболее популярные на сегодняшний день внутренние протоколы маршрутизации, причем OSPF — общедоступный стандарт, EIGRP — патентованный, компании Cisco. BGP — основной вариант протокола, обеспечивающего внешнюю маршрутизацию. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Маршрутизатор R4 имеет два рабочих интерфейса Ethernet, и каждый интерфейс сконфигурирован со своим IP-адресом. Какое наименьшее количество маршрутов R4 должен иметь в своей таблице маршрутизации, и почему? 2. Маршрутизатор R4 имеет работающий интерфейс Ethernetl, IP-адрес которого 10.10.10.10. Номер подсети, к которой подключен этот интерфейс — 10.10.10.0, все ее хосты совместно используют первые 3 октета A0.10.10) адреса этой подсети. Какую запись R4 поместит в свою таблицу маршрутизации? Укажите содержимое полей получателя, исходящего интерфейса и маршрутизатора следующего перехода. 3. Перечислите три части IP-маршрута, который мог быть статически добавлен к конфигурации маршрутизатора R1 (рис. 12.8) так, чтобы он мог пересылать пакеты Web-серверу. Укажите получателя, исходящий интерфейс и маршрутизатор следующего перехода. Example.com Ханна 173.18.13.1 173.18.11.1 '" ,173.18.1242 __ 173.18.12.43 E1|;R|^E2 ШШШШГ Е11 R2PE2 Подсеть 173.18.11.0 Подсеть 173.18.12.0 Подсеть 173.18.13.0 Рис. 12.8. Рисунок, на который ссылаются вопросы к главе 12 4. Глядя на рис. 12.8, перечислите три части IP-маршрута, о котором R1 мог бы узнать от R2, используя протокол маршрутизации. Укажите получателя, исходящий интерфейс и соответствующий маршрутизатор следующего перехода.
240 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом 5. Глядя на рис. 12.8, перечислите три части IP-маршрута, который R2 мог бы узнать от R1. Укажите получателя, исходящий интерфейс и соответствующий маршрутизатор следующего перехода. 6. Какова главная цель, достигаемая за счет использования протокола маршрутизации? 7. Что такое обновление маршрутной информации? 8. Какие два протокола маршрутизации чаще всего используются на сегодняшний день в одной компании? 9. Какой протокол маршрутизации чаще всего используется для обмена информацией относительно маршрутизации между Internet-провайдером и его клиентами (внешний протокол маршрутизации)?
Что вам предлагается освоить После прочтения этой главы вы должны: S описать, как хост TCP/IP может хранить локальный список имен и IP-адресов; s объяснить процесс, в соответствии с которым хост TCP/IP может узнать IP-адрес, соответствующий имени хоста; S перечислить термины, относящиеся к процессу преобразования имен в IP-адреса в сетях TCP/IP. w* Ж^"'"'7'*""" ''""'Ж'"'Ы,;^%1*Р1%ь. """Щ-;Г;\. •%;*'<% '§Ё?Л *'";,'». 'У%Ь v, ,-,
Глава 13 Люди предпочитают имена, а компьютеры — числа На днях мне нужно было поехать на автомобиле вместе с женой, а перед этим — позвонить моему хорошему другу Гэри. Я не говорил жене "Знаешь, мне нужно позвонить по телефону с номером 555-555-1234", я сказал по-другому: "Я должен позвонить Гэри." (Конечно, это не настоящий номер телефона Гэри. Если бы я привел здесь настоящий номер телефона Гэри, ему наверняка начали бы звонить.) Когда я звонил Гэри, я не набирал на клавиатуре его имя; я набирал номер его телефона. Я хочу поговорить с Гэри, но телефонную компанию интересует только номер телефона, с которым я хочу соединиться. Точно так же пользователи обычно пользуются именами, но компьютеры используют числа — в нашем случае IP-адреса, — чтобы доставить данные через сеть. Маршрутизаторы направляют пакеты, руководствуясь IP-адресом получателя; в IP-заголовке нет места для указания имени хост-компьютера получателя. Поэтому, прежде чем пользователь сможет соединиться с сервером, указав имя, его компьютер должен выяснить, какой IP-адрес нужно ввести в заголовок IP-пакета в качестве IP-адреса получателя. В этой главе рассмотрены основы процесса преобразования имен в IP-адреса. Термин преобразование имен в IP-адреса (name resolution) относится к процессу, в ходе которого компьютер получает имя, обычно вводимое пользователем, и выясняет соответствующий IP-адрес. Поиск имени и номера в телефонной книге (хост-файле) Если вы должны позвонить кому-то и знаете имя человека, а не его номер телефона, то можете найти нужную вам информацию в телефонной книге. Это просто и удобно. Однако этот метод сработает только в том случае, если в телефонной книге содержится имя этого человека и номер его телефона. Хосты TCP/IP могут иметь эквивалент телефонной книги, хранящийся в файле. Локальный хост-файл (local host file) содержит список имен хост-компьютеров TCP/IP и соответствующих им IP-адресов. Хост-компьютеру для определения нужного ему IP-адреса достаточно найти в локальном хост-файле имя и прочитать адрес, хранящийся рядом с этим именем. Базовый процесс показан на рис. 13.1. На рис. 13.1 представлены следующие четыре действия. 1. Ханна открывает браузер и вводит адрес http: //www. example. com. 2. Прежде чем ПК Ханны может послать IP-пакет Web-серверу example . com no адресу 150.1.3.3, она должна заглянуть в свой хост-файл. В хост-файле содер-
244 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом жится имя www.example.com, вместе с IP-адресом 150.1.3.3. Вся работа более высокого уровня — подача команд HTTP GET, установление соединения TCP и т.п. — осуществляется посредством IP-пакетов, и когда Ханна посылает эти IP-пакеты, они направляются по IP-адресу 150.1.3.3. Ханна 150.1.1.1 www.example.com 150.1.3.3 Рис. 13.1. Использование локального хост-файла, хранящегося на ПК 3. Ханна отыскивает IP-адрес в локальном хост-файле. 4. Затем ПК Ханны посылает пакеты Web-серверу, используя IP-адрес получателя 150.1.3.3. Технология, основанная на использовании локального хост-файла, проста, однако она имеет некоторые недостатки — точно такие же, как и характерные для телефонных книг. Телефонная книга просто не в состоянии вместить имена и номера телефонов всех жителей планеты. Тома такой книги, наверное, заполонили бы весь ваш дом, и поиск нужной информации в них стал бы проблематичным. Точно так же локальный хост-файл не решает все проблемы, связанные с именами в сетях TCP/IP. В сети одной компании часто появляются имена новых серверов, и множество новых имен серверов появляется в Internet каждый день. Кроме того, за обновление хост-файла ПК отвечает его пользователь. Хранение регулярно обновляемого-файла на локальном хосте весьма непрактично; даже если бы локальный хост-файл можно было бы постоянно обновлять, его размеры стали бы неприемлемо велики. Поэтому большинство хост-компьютеров не использует локальный хост-файл; вместо него они используют то, что получило название доменная система имен {Domain Name System, DNS), о которой вы узнаете в следующем разделе. Попросите кого-то найти для вас номер телефона (IP-адрес) Вместо того чтобы использовать вашу местную телефонную книгу, вы можете всегда позвонить в телефонную компанию и попросить помочь вам. Телефонные
Глава 13. Люди предпочитают имена, а компьютеры — числа 245 компании называют эту службу справочный стол {directory assistance), и почти каждый житель США звонит в эту службу, чтобы получить необходимую ему информацию. Вам достаточно позвонить в справочный стол (позвонив в США по номеру 411) и назвать оператору имя человека или фирмы, которым вы хотите позвонить, и оператор сообщит вам номер. Протокол TCP/IP, названный "доменная система имен" (DNS), ведет себя схожим образом. Служба DNS определяет протоколы, позволяющие узнать, какому имени соответствует какой IP-адрес. Доменная система имен также определяет структуру и формат имен хостов {host names) TCP/IP. Подобно тому как вы можете позвонить в службу 09 (или 411 в США) и получить справку относительно нужного вам номера телефона, хост TCP/IP может послать сообщение DNS-серверу, чтобы получить справку относительно какого-то IP-адреса. Доменная система имен определяет, как должны быть сконфигурированы имена и IP-адреса. В следующих разделах будут вначале описаны простые процессы, используемые в одной компании; затем вы узнаете о доменной системе имен Internet и соглашениях относительно того, на что должны быть похожи имена. Запрос помощи относительно преобразования имен в IP-адреса внутри компании Запрашивая помощь справочного стола в США, вы снимаете трубку телефона и звоните по номеру 411. Чтобы использовать доменную систему имен в одной компании, каждый хост TCP/IP запрашивает помощь у компьютера, на котором выполняется программное обеспечение, называемое DNS-сервер {DNSserver). Для того чтобы этот процесс работал, должны соблюдаться два ключевых правила: ■ хост-компьютер должен знать IP-адрес DNS-сервера, подобно тому как каждый гражданин США знает, что нужно позвонить по номеру 411, чтобы соединиться со справочным столом телефонной компании; ■ DNS-сервер должен знать имена и соответствующие им IP-адреса, додобно тому как телефонная компания имеет длинный список имен и номеров телефонов. DNS-сервер — это компьютер, который выполняет программное обеспечение DNS-сервера. DNS-сервер хранит список всех имен хостов сети TCP/IP, наряду с соответствующими IP-адресами. Этот список можно рассматривать как соответствующий локальному хост-файлу, но вместо того чтобы хранить копию на каждом хост-компьютере, поддерживают только одну копию на DNS-сервере. Хранить только одну копию перечня имен и соответствующих им в данный момент IP-адресов намного проще, чем поддерживать такой список в каждой компании! Как вы узнаете после прочтения следующего раздела, DNS-сервер отдельной компании не должен знать все имена и IP-адреса Internet, а только небольшую часть их. Чтобы поддерживать доменную систему имен, каждый хост TCP/IP должен знать IP-адрес DNS-сервера. Это подобно тому как каждый житель США знает, что нужно звонить по телефону 411, чтобы получить данные телефонного справочника. В нашем случае IP-адрес DNS-сервера— 150.1.3.4, и Ханна должна знать этот адрес, прежде чем она сможет послать пакеты серверу. ПК Ханны может узнать IP-адрес DNS-сервера двумя способами. Прежде всего, адрес мог бы быть статически сконфигурирован на ПК Ханны. Кроме того, Ханна
246 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом могла бы динамически узнать этот адрес, используя протокол DHCP, рассмотренный в главе 10. Независимо от того, как Ханна узнает, что адрес ее DNS-сервера 150.1.3.4, она должна выяснить его заранее. Основная концепция проста (рис. 13.2). На этот раз ПК Ханны находится в сети example . com вымышленной корпорации. Example.com Enterprise Network ( | IP [Данные|- IP-адрес получателя: 150.1.3.3 IP-адрес отправителя: 150.1.1.1 www.example.com 150.1.3.3 1 сервер 150.1.3.4 Рис. 13.2. Преобразование имен в IP-адреса и адресация: основной процесс DNS На рис. 13.2 представлены четыре действия, которые могут быть описаны следующим образом. 1. Ханна хочет соединиться с Web-сервером http: //www. example. com, поэтому она открывает браузер, вводит имя Web-сервера и нажимает клавишу <Enter>. 2. ПК Ханны посылает запрос на преобразование имен в IP-адреса своему DNS- серверу. Запрос на преобразование имен в IP-адреса к DNS-серверу (DNS resolution request) — это просто DNS-сообщение, в котором указано имя хоста (www. example. com) и то, что запрашивающий хост хотел бы знать IP-адрес, который соответствует этому имени. 3. Доменная система имен посылает Ханне DNS-ответ. DNS-ответ содержит нужную информацию, например IP-адрес 150.1.3.3. 4. Ханна может теперь послать пакет Web-серверу. Начиная с этого момента, Ханна будет действовать так же, как на рис. 13.1, когда она использовала локальный хост-файл. Для того чтобы система DNS хорошо работала в отдельной компании, нужно, чтобы кто-то отвечал за ее поддержку. Эта работа включает обновление и изменение списка имен и IP-адресов. Когда хосты TCP/IP изменяют свои IP-адреса, этот сотрудник должен обновить соответствующие записи на DNS-сервере.
Глава 13. Люди предпочитают имена, а компьютеры — числа 247 Хотя примеры нашей книги основаны на использовании Web-браузеров, любое приложение TCP/IP, которое использует имена, может использовать DNS. Например, если вы посылаете электронную почту по адресу barney@example . com, часть адреса "example.com" идентифицирует имя хоста сервера SMTP, который используется в example. com. Запрос помощи относительно преобразования имен в IP-адреса вне компании Местная телефонная компания имеет список всех своих клиентов и их номеров телефонов. Но в мире существует много людей, которые не являются клиентами вашей телефонной компании, поэтому эти люди не попадут в ее список имен. Однако в США вы можете позвонить по тел. 411 и получить справку о номере телефона любого жителя страны. Но если вы пользуетесь услугами одной местной телефонной компании, допустим Bell South, а человек, которому вы звоните, — клиент телефонной компании Verizon, как найти номер телефона этого человека при помощи справочного стола компании Bell South? Оказывается, телефонные компании совместно используют информацию об именах и их номерах телефонов, чтобы каждая из них могла обеспечить наилучшее обслуживание своих клиентов. В действительности главный список имен и номеров телефонов распределен среди многих телефонных компаний. Подобным образом работает и доменная система имен, хотя имеются и некоторые различия. Многие DNS-серверы работают совместно, однако каждый из них содержит отличный от других набор имен и IP-адресов. Из рис. 13.3 следует, что DNS- серверы должны сотрудничать, чтобы обеспечить преобразование в IP-адрес для любого имени. В данном случае Ханна все еще находится в сети example. com, но теперь она хочет получить доступ Web-сайту http://www.fredsco.com, который расположен в сети компании Fredsco. Ключ к пониманию проблемы и ее решению состоит в следующем: DNS-сервер знает только некоторые имена и адреса. Например, DNS-сервер example.com A50.1.3.4) знает только об именах, заканчивающихся на "example.com". Три действия, пронумерованных на рис. 13.3, показывают, что происходит, если Ханна не находит IP-адрес для имени www. fredsco. com на своем сервере имен. 1. Ханна вводит адрес http: //www. fredsco. com в своем браузере. 2. ПК Ханны посылает запрос на преобразование имен в IP-адреса DNS-серверу в сети example . com. 3. Поскольку DNS-сервер сети example. com знает только об именах, заканчивающихся на "example.com", DNS-сервер возвращает ответ, в котором сообщает, что он не может преобразовать имя в 1Р-алрес. ПК Ханны не знает IP-адрес для имени www. fredsco. com, поэтому она не может просмотреть страницы Web-сайта www.fredsco.com. Она, наверное, увидит сообщение в окне своего браузера, в котором будет сказано, что сайт не может быть найден. Только DNS-сервер предприятия Fredsco знает имя www. fredsco. com и соответствующий ему IP-адрес. Однако Ханна, как все дисциплинированные хосты TCP/IP, дела- т
248 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом ет запрос на преобразование имени в IP-адрес DNS-серверу, который ей известен. Чтобы решить проблему, серверы DNS должны сотрудничать, как показано на рис. 13.4. Ханна www.example.com 150.1.1.1 150.1.3.3 Example.com DNS-сервер 150.1.3.4 Я знаю только имена, заканчивающиеся на "example.com", извините! Конфигурация DNS-сервера, www.example.com 150.1.3.3 www.fredsco.com 199.1.1.2 Fred sco DNS-сервер 99.1.1.3 Конфигурация DNS-сервер) www.fredsco.com 199.1.1.2 Рис. 13.3. Запрос к DNS-серверу сделан, но DNS-сервер не знает этого имени Ханна 150.1.1.1 © Имя Отсылать на * .example.com 150.1.3.4 \fredsco.com 199.1.1.3 Example.com Ч— DNS-сервер 150.1.3.4 ч^Конфигурация DNS-серверд) www.example.com 150.1.3.3 Все другие 1.1.1.1 www.fredsco.com 199.1.1.2 —— Fredsco.com © DNS-сервер 199.1.1.3 J^o-нфигурация DNS-cepeepiJ) www.fredsco.com 199.1.1.2 Все другие 1.1.1.1 Рис. 13.4. Сотрудничество DNS-cepeepoe
Глава 13. Люди предпочитают имена, а компьютеры — числа 249 Вот описание процесса, показанного на рис. 13.4. 1. Ханна открывает браузер, вводит имя www. f redsco. com (точно так же, как и в предыдущем примере) и посылает запрос на преобразование имен в IP- адреса своему DNS-серверу. 2. DNS-сервер сети example . com не знает имени http: //www. f redsco. com. Однако DNS-сервер теперь имеет конфигурацию, которая подсказывает ему, что, если он не знает какое-то имя, он должен обратиться к DNS-серверу с IP- адресом 1.1.1.1. 3. DNS-сервер с адресом 1.1.1.1 имеет списки, в которых перечислены IP-адреса ряда серверов имен. DNS-сервер 1.1.1.1 знает, что для всех имен, которые заканчиваются на "example.com", преобразовать имена в IP-адреса может DNS- сервер 150.1.3.4. Он также знает, что для всех имен, которые заканчиваются на "fredsco.com", преобразовать имена в IP-адреса может DNS-сервер 199.1.1.3. Наконец, DNS-сервер с адресом 1.1.1.1 знает о многих других серверах имен и именах, которые они знают, поэтому этот сервер имен может направить каждый запрос нужному серверу имен. Этот DNS-сервер посылает сообщение DNS-серверу example.com, указывая на DNS-сервер 199.1.1.3. 4. DNS-сервер example.com повторяет запрос на преобразование имен в IP-адреса, однако теперь он посылает его DNS-серверу компании Fredsco A99.1.1.3). 5. DNS-сервер Fredsco получает запрос, и он знает имя и IP-адрес. Он посылает ответ хосту, пославшему запрос, а именно DNS-серверу example.com. 6. Наконец, DNS-сервер example.com отвечает Ханне, сообщая ей, что имени www. fredsco. com соответствует IP-адрес 199.1.1.2. В конечном счете Ханна узнаёт IP-адрес Web-сервера www.fredsco.com. Прежде чем этот процесс смог заработать, специальные серверы DNS, названные корневыми DNS-серверами {root DNS servers), должны были быть установлены в Internet. Корневые серверы DNS на самом деле не выполняют преобразование имен в IP-адреса; скорее они знают IP-адреса нескольких других DNS-серверов, которые и выполняют основную работу. (На рис. 13.4 роль корневого DNS-сервера выполнял DNS-сервер с IP-адресом 1.1.1.1.) DNS-сервер каждой компании может обратиться к одному или более корневым серверам, поэтому, когда он не знает имя, DNS-сервер может запросить справку у корневого DNS-сервера. Корневой DNS-сервер указывает пославшему запрос DNS-серверу адрес DNS-сервера, знающего правильный ответ, как на рис. 13.4. После того как Ханна узнаёт IP-адрес сервера, все остальное может происходить так, как было описано в предыдущих главах, потому что процесс преобразования имен в IP-адреса завершен. Например, Ханна может послать пакеты Web-серверу, и эти пакеты могут содержать TCP-сегменты. Эти TCP-сегменты, в свою очередь, содержат сообщения HTTP, а также содержимое Web-страницы. Как должны быть отформатированы имена Для того чтобы процесс DNS работал должным образом, доменная система имен определяет правила относительно того, какими могут быть имена хостов. В данном разделе рассматриваются структура и значение имен хостов TCP/IP, а также термины, относящиеся к преобразованию имен в IP-адреса.
250 Часть IV. Навигация на дорогах в поисках улицы с нужным адресом Прежде всегоимена должны соответствовать формату, который помогает DNS- серверам решать, какой из них должен обрабатывать DNS-запросы относительно определенного имени. Вы, вероятно, обратили внимание на то, что имена, используемые в этой главе, типа www. example . com и www. f redsco. com, имеют своего рода организацию и структуру. Последняя часть имена фактически помогает идентифицировать DNS-сервер, который может преобразовать имя в IP-адрес. Хосты TCP/IP разбиты на группы, названные доменами {domains). Домен состоит из всех хостов, имена которых заканчиваются одним и тем же текстом. Например, имена www. example . com, f tpxexample . com и smtp . example . com могли бы быть именами хостов одного домена, example.com. Общую часть всех имен— в данном случае example. com — называют именем домена (domain name). Один или более DNS-серверов считаются уполномоченными серверами поддержки (authoritative DNS) конкретного домена. Это означает, что любые имена, которые заканчиваются именем этого домена, должны быть преобразованы в IP-адрес данным DNS-сервером, и этот DNS-сервер является последней инстанцией, указывающей, какому имени какой IP-адрес соответствует, по крайней мере для имен конкретного домена. Например, на рис. 13.4 DNS-сервер с адресом 150.1.3.4 был уполномоченным сервером поддержки домена example . com. Структура системы DNS работает хорошо. В своей компании администратор DNS может изменять и добавлять имена по своему усмотрению. Поскольку корневой DNS- сервер знает список всех DNS-серверов и имен доменов, которые они поддерживают, пользователь Internet может запросить преобразование имен в IP-адреса, послав запрос нужному DNS-серверу, и узнать соответствующий имени IP-адрес. Резюме Доменная система имен (DNS) определяет терминологию, соглашения об именах и протоколы, необходимые для того, чтобы пользователи могли использовать имена хостов. Когда пользователь указывает имя хоста, хост, называемый DNS- распознаватель, посылает DNS-запрос DNS-серверу. Сервер возвращает ответ, где сообщает распознавателю IP-адрес, который соответствует указанному имени. Каждая компания или организация должна иметь DNS-сервер, который является уполномоченным сервером поддержки данного домена. Этот DNS-сервер может преобразовывать в IP-адреса имена данного домена. Когда этот DNS-сервер получает DNS-запросы об именах в других доменах, он запрашивает помощь у корневого DNS-сервера, который помогает ему определить адрес уполномоченного сервера поддержки домена, которому принадлежит запрошенное имя. Хост мог бы использовать и локальный хост-файл, который является просто списком имен хоста и их IP-адресов, но на сегодняшний день это уже непрактично. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. В чем состоит альтернативный метод преобразования имен в IP-адреса, не использующий доменную систему имен? 2. Что означает аббревиатура DNS?
Глава 13. Люди предпочитают имена, а компьютеры — числа 251 3. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http: //www. f redsco. com. Его ПК сконфигурирован на использование доменной системы имен. Сколько DNS- запросов пошлет ПК Ленни, прежде чем получит ответ на запрос об адресе хоста www.fredsco.com? 4. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http: //www. example. com. Его ПК сконфигурирован на использование доменной системы имен. Сколько DNS- запросов пошлет ПК Ленни, прежде чем получит ответ на запрос об адресе хоста www.example.com? 5. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http://www.example.com. Представьте, что его ПК получает DNS-ответ, сообщающий, что IP-адрес www. example. com — 192.0.33.166. Посылая пакет этому Web-серверу, ПК Ленни включает в заголовок IP-пакета IP-адрес получателя 192.0.33.166 или имя получателя www. example. com, или то и другое? 6. Согласитесь ли вы со следующим утверждением и, если да или нет, то почему: "Каждый хост TCP/IP обращается к его DNS-серверу, используя стандартный IP-адрес О.4.1.1." 7. Для имени www. example . com идентифицируйте вероятное имя домена, и на основе этого примера определите термин "имя домена." 8. Когда клиент из одной компании пробует просмотреть Web-сервер другой компании, используя его имя, опишите в общих словах, как может быть найден уполномоченный сервер поддержки домена для Web-сервера с указанным именем. 9. Согласитесь ли вы со следующим утверждением и, если да или нет, то почему: "Когда пользователь, который сконфигурирован на использование DNS, открывает Web-браузер и вводит http://www.example.com, следующий IP-пакет, который он пошлет, пойдет на Web-сервер."
ЧАСТЬ V Прокладка автомагистрали между штатами (между локальными сетями) В части V описаны три категории глобальных сетей. В главе 14 описаны глобальные сети, которые лучше всего подходят для создания связи между двумя промышленными или бизнес-площадками. В главе 15 рассмотрен протокол Frame Relay, который полезен для обеспечения взаимодействия более чем двух промплощадок. Наконец, в главе 16 обсуждается несколько технологий глобальной сети, которые позволяют подключаться к Internet из вашего дома. Глава 14. Аренда (сетевого) шоссе между двумя пунктами Глава 15. Аренда (сетевого) шоссе между многими пунктами Глава 16. Выезд из дому на международную (Internet) трассу
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S перечислить несколько подобий и различий между использованием кабеля Ethernet с перекрестными соединениями контактов и канала глобальной сети между двумя маршрутизаторами; S перечислить две причины, по которым использование телефонной компании для обслуживания глобальной сети имеет смысл; s объяснить смысл основных терминов, используемых телефонными компаниями по отношению к каналам глобальной сети; s объяснить, как осуществляется IP-маршрутизация через каналы глобальной сети типа "точка-точка"; S описать процессы инкапсуляции, осуществляемые протоколами HDLC иРРР.
Глава 14 Аренда (сетевого) шоссе между двумя пунктами Повсюду в этой книге мы использовали много аналогий с вождением автомобиля, дорогами и т.п. В этой части книги также проведено несколько аналогий с дорогами, но в последующих главах мы сравним новые относящиеся к сетям темы с другими, особенно с темой Ethernet. Под термином "глобальные сети" (WANs) обычно понимаются физические сетевые соединения, которые устанавливаются между далеко расположенными площадками. Локальные сети (LANs) — также физические сети, но они обычно соединяют устройства, которые расположены относительно близко друг к другу. Но, оказывается, глобальные сети и локальные сети имеют и другие различия — различия, обусловленные тем, как они создаются. В случае локальных сетей вы все держите под контролем. Вы можете купить кабели, проложить их, подключить кабели к коммутаторам, подключить их к сетевым устройствам, и все будет работать. В случае глобальных сетей вы не можете сами проложить кабель. Даже если канал связи глобальной сети имеет длину один километр, вы обычно не можете проложить кабель по улицам от одного вашего здания до другого. Это запрещено действующим законодательством, даже если вы собираетесь проложить кабель под землею, где он никому не мешал бы. Короче говоря, чтобы создать глобальную сеть, вы должны арендовать физическую сеть у кого-то, кто смог проложить кабель между зданиями, которые вы хотите соединить линией связи. В этой главе рассматриваются глобальные сети, которые хорошо обеспечивают связь между двумя площадками. Арендуйте кабель, если вы не можете его проложить Если два маршрутизатора, находящиеся в двух разных городах, должны отправить пакеты друг другу, они нуждаются в физической среде (physical medium), способной передать пакеты. Ранее, в главе 4, вы узнали о том, что между двумя устройствами сети Ethernet можно прокладывать только кабель с перекрестными соединениями контактов, тогда эти два устройства смогут общаться между собой. Эта технология работает хорошо, но нам не разрешают прокладывать кабели Ethernet через территорию, являющуюся чьей-то частной собственностью. В этом разделе рассматривается общая идея относительно линии связи глобальной сети, которая концептуально является эквивалентной кабелю Ethernet с перекрестными соединениями контактов. Общая идея представлена на рис. 14.1.
256 Часть V. Прокладка автомагистрали между штатами... < >■ Рис. 14.1. Линия связи глобальной сети, работающая как кабель Ethernet с перекрестными соединениями контактов Если вы вспомните о физических особенностях Ethernet, рис. 14.1 должен показаться вам знакомым. Когда маршрутизатор R1 посылает электрический сигнал по кабелю, R2 должен получить этот же сигнал по проводам, через которые он ожидает получать данные. Аналогично, R1 должен получить то, что передает маршрутизатор R2. Поскольку физические интерфейсы маршрутизаторов используют для передачи одни и те же контакты, кабель содержит витую пару, используемую маршрутизатором R1 для передачи данных на приемные контакты маршрутизатора R2, и наоборот. В действительности кабель на рисунке похож на кабель Ethernet с перекрестными соединениями контактов. Все, что необходимо этим двум маршрутизаторам, — это кабель между ними, с передающими и принимающими парами проводов, чтобы они могли посылать и получать данные в любое время. Искушением могло бы быть просто использование технологии Ethernet. Однако в данном случае использовать Ethernet мешают две проблемы. ■ Действующие законы не позволят проложить кабель между Атлантой и Цинциннати (городами, указанными на рисунке). ■ Те, кто могут выполнить прокладку кабелей (телефонные компании), не сдают в аренду и не продают кабели Ethernet с перекрестными соединениями контактов длиной 450 миль. Как вы уже, наверное, догадались, существует решение, которое выполняет функции связи между двумя маршрутизаторами, аналогичные таковым кабеля Ethernet с перекрестными соединениями контактов; несколько отличны только детали. В следующем разделе это решение описано подробно. /jBh, Многие телефонные компании начинают предлагать службы глобальной М^|1 сети, основанные на технологии Ethernet. Однако подавляющее болыиин- -Щррг ство существующих соединений глобальной сети работают так, как описано в этой главе и главах 15 и 16. Если вы не можете арендовать кабель с перекрестными соединениями контактов, то арендуйте нечто похожее Мы выяснили, что вы не можете приобрести или арендовать у телефонных компаний кабель Ethernet с перекрестными соединениями контактов. А если телефонная компания арендовала бы вам нечто, описанное ниже? ■ Служба, действующая между двумя маршрутизаторами и работающая аналогично кабелю с четырьмя проводами (двумя витыми парами).
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 257 ■ Когда маршрутизатор посылает данные по одной паре, она перекрещивается с другой парой, прежде чем данные поступают на другой конец кабеля. То, что один маршрутизатор посылает через одну пару, другой маршрутизатор получает через другую пару. ■ Поскольку эта служба требует, чтобы вы физически закодировали данные немного по-другому, чем при передаче их через сеть Ethernet, маршрутизаторы должны использовать несколько иной тип интерфейса, названный последовательным (serial interface). ■ Конечным результатом будет то, что два маршрутизатора смогут посылать данные и получать их друг от друга. Итак, конечный результат — возможность для маршрутизаторов отправлять пакеты друг другу, и это именно то, что предлагает телефонная компания. Она, по существу, может арендовать вам кабель с 4 проводами, или четырехпроводную линию связи D-wire circuit) между двумя пунктами. Хотя это не в точности Ethernet, линия во многом действует как кабель Ethernet с перекрестными соединениями контактов. Телефонные компании готовы предложить своим клиентам четырехпроводные линии связи в течение многих десятилетий. Они уже выполнили прокладку кабелей почти между всеми городами. Они также почти всюду имеют офисы, названные центральными автоматическими телефонными станциями (central offices (COs)), или центральными АТС. Кроме того, телефонные компании имеют право прохода через чужую землю (right-of-way), что предоставляет им юридическое право прокладывать кабели вдоль дорог поверху и в грунте, поскольку это делается для общественной пользы. Таким образом, телефонная компания может проложить кабель для вас, чтобы вы могли создать четырехпроводную линию связи. Это не кабель длиной 450 миль, но работает аналогично Допустим, вам понравилась идея организовать новый канал связи WAN от Атланты до Цинциннати, поэтому вы встречаетесь с продавцом телефонной компании. Вы подписываете бумаги, а затем появляется его более грамотный в технических вопросах коллега, обычно называемый инженером по сбыту или техническим консультантом (sales engineer, SE). Вы спрашиваете его, что подразумевал продавец, когда сказал: "Это все равно как если бы мы проложили для вас 450-мильный кабель". Технический консультант отвечает: "Мы не собираемся прокладывать никаких кабелей, но то, что мы вам предлагаем, будет действовать как такой кабель — по крайней мере в техническом отношении". Если бы телефонная компания фактически должна была прокладывать кабель длиной 450 миль, вы вряд ли смогли бы оплатить эти работы. Поэтому телефонная компания делает некоторые другие вещи в своей сети, которые скрыты от ее клиентов. Но в конечном счете предлагаемый ею сервис действительно выполняет функции кабеля с 4-мя проводами. Чтобы обеспечить такое обслуживание, телефонная компания должна проложить кабель с 4-мя проводами между зданиями, в которых расположены ваш и ее офисы (рис. 14.2). Один конец кабеля находится в центральной АТС, где телефонная компания устанавливает оборудование, необходимое для создания телефонной сети. Вообще говоря, коммутаторы, установленные в центральных АТС, называют коммутаторами телефонной компании, телефонными коммутаторами или коммутаторами WAN (telco
258 Часть V. Прокладка автомагистрали между штатами... switches, phone switches, или WAN switches). Есть много других названий для оборудования определенных типов, которое телефонная компания устанавливает в центральных АТС. Итак, вновь проложенный кабель подключается к физическому интерфейсу телефонного коммутатора в центральной АТС, другой конец кабеля соединяется с маршрутизатором клиента. Здание, где находится офис клиента: Атланта АТС телефонной компании в Атланте Уровень земли Коммутатор телефонной рмпании 4-проводной кабель (под землею) Рис. 14.2. Создание физического пути между офисами клиента и телефонной компании Кабель прокладывается от центральной АТС (обычно под землею) и заводится в здание, где расположен офис клиента. Для прокладки кабеля требуется оформить право прохода через улицы, блокировать движение и прокопать траншеи через улицы и дворы. Учитывая все это, телефонная компания заранее прокладывает дополнительные кабели между центральной АТС и большими зданиями, офисными центрами и другими деловыми центрами, чтобы ей не приходилось часто прервать движение и копать землю. Чтобы закончить путь между Атлантой и Цинциннати, вы будете нуждаться еще в двух вещах. Прежде всего, вам необходим подобный кабель, проложенный между офисом в Цинциннати, где установлен ваш второй маршрутизатор, и центральной АТС в Цинциннати. Второе требование — чтобы телефонная компания так или иначе обеспечила передачу электрических сигналов между АТС в Атланте и АТС в Цинциннати. Чтобы обеспечить это, телефонная компания делает нечто похожее на то, что показано на рис. 14.3. Прежде чем вам понадобился этот новый канал глобальной сети, телефонная компания позаботилась о поддержке большого количества клиентов в Атланте и Цинциннати. В ожидании будущего развития она устанавливала аппаратуру и прокладывала дополнительные кабели. Эта аппаратура и кабели способны получить биты данных, посланные маршрутизатором R1 по кабелю в центральную АТС Атланты, передать их через сети телефонной компании и послать биты маршрутизатору R2 в Цинциннати. Конечно, телефонная компания сделает то же самое и с битами, переданными в центральную АТС Цинциннати, пересланными затем в центральную АТС Атланты и отправленными маршрутизатору R1. Независимо от того, что происходит на участке между центральными АТС двух городов, если маршрутизатору понадобится отправить данные по этому кабелю, другой маршрутизатор получит их. Подробности относительно того, что именно те-
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 259 лефонная компания делает в своих сетях, важны, если вы работаете в ней, но цель этой главы состоит в том, чтобы просто кратко рассказать, как эти два маршрутизатора могут связываться между собой. Здание, где находится офис клиента: Атланта Сеть телефонной компании Здание, где находится офис клиента: Цинциннати 4-проводной кабель от АТС до маршрутизатора АТС в Цинциннати 4-проводной кабель Усовершенствованная от АТС до маршрутизатора технология, позволяющая передавать биты в обоих направлениях Рис. 14.3. Выделенный канал, выделенная линия, канал "точка-точка" и канал глобальной сети Много ликов канала связи глобальной сети, Мы используем термины канал глобальной сети (WAN link) и четырехпроводная линия связи D-wire circuit), чтобы описать службу, которая действует подобно кабелю с 4-мя проводами, проложенному между маршрутизаторами. Однако это же самое означают и несколько других терминов. Зачем использовать одно название, если можно позволить людям выбирать то, которое им больше нравится? В табл. 14.1 приведены эти названия, наряду с некоторыми из причин, по которым используются эти термины. Таблица 14.1. Различные названия для канала глобальной сети Термин Обоснование Выделенная линия Выделенный канал Телефонные компании полагают, что, когда вы снимаете трубку телефона и делаете звонок, для вас создается временная линия связи. Если клиент платит деньги, чтобы иметь постоянно действующую линию связи между двумя площадками, телефонная компания полагает, что эта линия выделена. Термин "выделенный" используется по тем же причинам что и выделенная линия. Термин "линия" обусловлен тем фактом, что служба должна всегда работать, поэтому это походит на линию, проложенную между этими двумя площадками. Канал типа Термин "точка-точка" обусловлен тем фактом, что ровно два конечных "точка-точка" пункта существуют в такой линии. Термин "канал" указывает на способ, которым два конечных пункта соединены так, чтобы они могли связываться между собой. Канал гло- Термин "канал" используется по тем же самым причинам, что и в термине бальной сети "канал типа "точка-точка"". Термин "глобальная сеть" указывает лишь на то, что канал используется для связи на относительно большом расстоянии.
260 Часть V. Прокладка автомагистрали между штатами... Окончание табл. 14.1 Термин Обоснование Последователь- Термин "последовательный" обусловлен тем фактом, что маршрутизаторы ный канал используют последовательные интерфейсы на каждом конце канала. 4-проводная Часть термина "четырехпроводная" обусловлена числом проводов в кабеле линия связи между каждой центральной АТС и каждым офисом; телефонная компания часто использует термин "линия связи" для обозначения канала связи между двумя устройствами клиента. Последователь- Канал глобальной сети, соединяющий последовательные интерфейсы мар- ный канал шрутизаторов, отсюда название "последовательный канал." Различия между кабелем с перекрестными соединениями контактов и выделенной линией Если вы прокладываете кабель Ethernet с перекрестными соединениями контактов между двумя маршрутизаторами и подключаете его к интерфейсам Ethernet того или иного типа на маршрутизаторах, эти два маршрутизатора, получают возможность отправлять друг к другу фреймы Ethernet. Если вы создаете канал глобальной сети между двумя маршрутизаторами, телефонная компания также создает нечто подобное кабелю с перекрестными соединениями контактов, но несколько деталей все же отличны. Если вы задаетесь вопросом, почему, отвечаем: есть много причин для того, чтобы делать некоторые вещи по-другому в случае использования выделенных линий Большинство этих причин обусловлено необходимостью поддержки служб большой и разноплановой сети телефонной компании. Я чувствую потребность в скорости Ethernet может поддержать скорости передачи 10 Мбит/с, 100 Мбит/с, 1000 Мбит/с A гигабит в секунду) и даже 10 Гбит/с (в новой версии Ethernet). Как говорилось в главе 6, скорости могут быть согласованы автоматически, поэтому ПК, который связан с коммутатором, может договориться о том, чтобы использовать скорость 100 Мбит/с, если и ПК, и коммутатор поддерживают эту скорость. Что касается каналов глобальной сети, то они поддерживают много различных скоростей передачи (transmission speeds). В глобальных сетях используются различные скорости передачи, но многие каналы WAN сегодня используют скорости, кратные скорости 64 кбит/с. (Когда телефонные компании 50 лет назад создавали первые цифровые сети, им нужна была скорость 64 Кбит/с, чтобы обеспечить один телефонный разговор; именно поэтому на сегодняшний день скорость передачи в каналах глобальной сети кратна 64 кбит/с.) Телефонная компания может предложить скорости, кратные 64 кбит/с, через эквивалент 24-х каналов со скоростью 64 кбит/с, что составляет приблизительно 1,5мбит/с. В терминологии телефонной компании служба, позволяющая передавать данные со скоростью 1,5 Мбит/с, называется линией Tl (T1 circuit или Tl line). Например, представьте, что вам необходим последовательный канал на скорость 128 кбит/с для связи между Атлантой и Цинциннати. Когда вы заказываете телефонной компании выделенный канал и подписываете
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 261 контракты, в них указывается скорость связи. Если передавать данные быстрее или медленнее, то канал не будет работать, поэтому вы должны сконфигурировать маршрутизатор (или CSU/DSU — больше об этом будет сказано в следующем разделе), чтобы он работал на "правильной" скорости. Вы должны знать о двух других терминах, которые относятся к скорости, с которой биты передаются по каналу глобальной сети: тактовая частота и пропускная способность. Тактовая частота (clockrate) указывает, как часто посылаются биты; например, через канал со скоростью передачи 64 кбит/с бит посылается через каждую 1/64000 секунды. Пропускная способность (bandwidth) — другой термин, которым обозначают скорость передачи в канале. Телефонные компании предлагает также скорости, превышающие 1,5 Мбит/с. Вы можете заказать каналы со скоростями, кратными 1,544 Мбит/с (именно это значение является точной скоростью передачи канала Т1). Вы можете также заказать еще более высокие скорости, которые обычно кратны 51,84 Мбит/с. Можно сказать, что вы имеете тысячи вариантов — как по разнообразию предъявляемых к каналам требований, так и по ценам. Ниже перечислены ключевые положения, которые вы должны помнить о скорости каналов глобальной сети. ■ Возможны различные скорости передачи, некоторые из них были названы выше. ■ При заказе выделенного канала вы должны оговорить скорость передачи данных. ■ Вы должны сконфигурировать маршрутизаторы (или CSU/DSU) так, чтобы они работали на оговоренной скорости. Скоростью нужно управлять Некоторые типы плат интерфейса сети Ethernet и интерфейсов маршрутизатора могут работать на различных скоростях, поддерживаемых технологией Ethernet. Для таких плат интерфейса сети и интерфейсов вы можете или конфигурировать ПК либо маршрутизатор так, чтобы они работали на нужной скорости, или эти устройства могут автоматически договориться о скорости. Последовательные каналы могут работать на различных скоростях, но скорость должна быть предварительно задана. Управляет скоростью компонент последовательного интерфейса, называемый CSU/DSU (Channel Service Unit/Data Service Unit — модуль обслуживания канала и данных). Функции CSU/DSU, в число которых входит выполнение других обязанностей помимо установки скорости, могут быть выполнены внешним устройством или платой последовательного интерфейса, установленной на маршрутизаторе. Если вы используете модуль CSU/DSU, который находится вне маршрутизатора, вы должны конфигурировать скорость на этом внешнем устройстве; если CSU/DSU встроен в маршрутизатор, вы должны сконфигурировать скорость связи глобальной сети на маршрутизаторе. Когда вы заказываете маршрутизатор, то можете заказать последовательный интерфейс с модулем CSU/DSU или без этого модуля. Если вы заказываете последовательный интерфейс с CSU/DSU, это будет называться внутренний CSU/DSU (internal CSU/DSU), а если вы заказываете последовательный интерфейс без CSU/DSU, вы должны использовать внешний CSU/DSU (external CSU/DSU). На рис. 14.4 показаны примеры и внутреннего, и внешнего модуля CSU/DSU. Когда вы используете внутренние модули CSU/DSU, кабель телефонной компании подключается к последовательному интерфейсу маршрутизатора. В случае использования внешних модулей CSU/DSU кабель подключается к CSU/DSU. Внеш-
262 Часть V. Прокладка автомагистрали между штатами... ний CSU/DSU соединяется с маршрутизатором с помощью другого короткого кабеля, длиной обычно менее 16 м. Эти короткие кабели имеют многочисленные разновидности, зависящие от используемых соединителей; рассматривать эти кабели в книге мы не будем. Однако, когда вы заказываете маршрутизатор и CSU/DSU, в документации на эти изделия будут указаны кабели, которые обычно можно приобрести у поставщика маршрутизатора. Последовательный интерфейс с внутренними CSU/DSU Кабели АТС, соединители RJ-45 Здание, где находится Здание, где находится офис клиента: Атланта офис клиента: Цинциннати Последовательный интерфейс без внутренних CSU/DSU I Кабели АТС, соединители RJ-45 Здание, где находится Здание, где находится офис клиента: Атланта офис клиента: Цинциннати Рис. 14.4. Кабельная система с внутренним и внешним CSU/DSU Удвойте скорость передачи бесплатно Между прочим, вы можете пересылать данные на максимальной скорости в обоих направлениях через канал глобальной сети, эта возможность называется дуплексный режим (full duplex). To есть вы можете считать, что получаете вдвое большую пропускная способность. Реплика продавца на заключительной стадии переговоров в телефонной компании, когда клиент не может решить, хочет ли он заказать новый выделенный канал: "А что, если мы бесплатно удвоим скорость только потому, что вы мне понравились? Посмотрите сюда, пожалуйста." Фокус в том, что при наличии двух пар проводов в четырехпроводной линии связи одна пара используется для того, чтобы передать данные в каждом направлении, таким образом нет никакого противоречия. Оба маршрутизатора могут посылать данные на полной скорости канала одновременно.
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 263 План установки кабеля глобальной сети Пока что в этой главе мы сообщили некоторые сведения о выделенных каналах (или каналах глобальной сети, или выделенных линиях..., выберите ваш любимый термин). Цель состоит в том, чтобы позволить двум маршрутизаторам посылать и получать данные между двумя площадками, особенно, когда вы не имеете права или возможности проложить кабель самостоятельно. Шаги, которые вы должны предпринять, чтобы создать выделенный канал, должны быть следующими. 1. Заключите контракт с телефонной компанией, чтобы получить выделенный канал между двумя городскими адресами, даже конкретно между определенными этажами и коммутационными шкафами, и на определенную скорость. 2. Установите маршрутизатор на каждой площадке, вблизи от того места, куда телефонная компания протянула кабель. 3. Установите внешний модуль CSU/DSU около маршрутизаторов на каждой площадке, если не были приобретены маршрутизаторы с внутренними модулями CSU/DSU. 4. Сконфигурируйте модули CSU/DSU (внутренние или внешние) так, чтобы они передавали данные с нужной скоростью. 5. После того как телефонная компания проложит кабели, подключите их к модулю CSU/DSU (внешнему) или последовательному интерфейсу маршрутизатора (внутренний CSU/DSU) на каждой площадке. Теперь маршрутизаторы готовы посылать и получать данные, по крайней мере на уровне 1 модели OSI. Однако прежде чем маршрутизаторы смогут посылать полезные данные пользователя, они должны выяснить еще несколько вещей, касающихся уровней 2 и 3 модели OSI, о чем мы поговорим в следующем разделе, замыкающем главу. Маршрутизаторы и WAN: соответствие, сделанное на небесах Маршрутизаторы и каналы глобальной сети имеют одинаковые общие цели, поэтому они часто используются вместе. Маршрутизаторы проектируют так, чтобы они могли пересылать IP-пакеты между различными подсетями, независимо от того, расположены эти подсети близко друг к другу или далеко. Каналы глобальной сети проектируют, чтобы они имели возможность отправлять биты на отдаленные площадки. Поэтому было бы вполне естественно, если бы маршрутизаторы могли использовать каналы глобальной сети, когда им нужно отправлять IP-пакеты в подсеть, развернутую на отдаленной площадке. Устройства конечного пользователя в месте расположения офиса компании обычно используют платы интерфейса сети Ethernet; они никогда непосредственно не подключаются к каналам глобальной сети. Чтобы посылать трафик IP-хосту на другой площадке, устройства конечного пользователя посылают данные маршрутизатору. Маршрутизатор пересылает IP-пакет на другой маршрутизатор, расположенный на другой площадке, который затем пересылает пакет другому IP-хосту. Знакомая картина? Да, это — 1Р-маршрутизация.
264 Часть V. Прокладка автомагистрали между штатами... Лучший способ понять, как используются каналы глобальной сети, состоит в том, чтобы рассмотреть механизм маршрутизации. На рис. 14.5 показана схема сети, которая включает знакомые детали из обзора IP-маршрутизации, сделанного нами в главе 11, а каналы той же глобальной сети мы рассматривали в первой части этой главы. Таблица маршрутизации R1 Сеть Интерфейс Маршрутизатор получателя следующего перехода 150.1.1.0 150.1.2.0 150.1.3.0 Е1 SO so Не определен Не определен 150.1.2.2 Таблица маршрутизации R2 Сеть Интерфейс получателя 150.1.1.0 150.1.2.0 150.1.3.0 S1 S1 Е2 Маршрутизатор следующего перехода 150.1.2.1 Не определен Не определен Ханна mm /' Шлюз по умолч. 150.1.1.250 жззщт ' * £9 ■HSfiiHr Г1 iF Подсеть 150.1.1.0 Атланта й^3-^ 1«и-г*Д! IIP Канал WAN Slff f Подсеть 150.1.2.0 ИГ Example.com Подсеть150.1.3.0 Цинциннати Рис. 14.5. Те же подсети, подобная таблица маршрутизации, но связь осуществляется через канал глобальной сети На рис. 14.5 показаны две локальные сети (в Атланте и в Цинциннати), кабель глобальной сети между этими двумя маршрутизаторами и таблицы маршрутизации каждого маршрутизатора. Обычно, чтобы представить кабель глобальной сети, используют стрелу молнии, как показано на рисунке. Маршрутизатор R1 использует свой интерфейс SerialO, сокращенно обозначенный на рисунке как SO, a R2 использует свой интерфейс Serial 1, сокращенно S1. Теперь внимательно рассмотрите таблицы маршрутизации на рис. 14.5. Сравнивая эту объединенную сеть с такой же, рассмотренной в главе 11 (см. рис. 11.13), вы обнаружите, что единственное физическое различие состоит в том, что теперь вместо Ethernet между маршрутизаторами используется кабель глобальной сети. Таблицы маршрутизации отличаются тем, что именно они указывают в качестве исходящих интерфейсов. Например, маршрут маршрутизатора R1 к сети 150.1.3.0 указывает в качестве исходящего интерфейс S0, с IP-адресом следующего перехода 150.1.2.2. Итак, у нас есть объединенная сеть, которую можно рассматривать; в следующих разделах будут обсуждены три темы, связанные с канальным уровнем WAN и IP-маршрутизацией. Вы узнаете о формировании фреймов для каналов глобальной сети, адресации данных в каналах глобальной сети и двух самых популярных протоколах передачи данных через каналы глобальной сети: HDLC и РРР. Нельзя отправить только данные; вы должны послать фрейм Вы не можете просто послать данные конечного пользователя, типа содержимого Web-страницы, через Ethernet. To, что фактически посылают по Ethernet, — фрейм Ethernet. Внутри фрейма после других заголовков следуют фактические данные конечного пользователя. В этом разделе вы узнаете, как создается фрейм, который подходит для передачи его через последовательный канал глобальной сети от одного маршрутизатора к другому.
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 265 На рис. 14.5, когда Ханна посылает пакет Web-серверу www. example. com no IP- адресу 150.1.3.3, она посылает IP-пакет своему шлюзу, назначенному по умолчанию, а именно маршрутизатору R1. Когда R1 получает этот фрейм Ethernet, он выясняет, произошли ли при передаче ошибки. Если ошибок не было, R1 извлекает IP-пакет и начинает процесс принятия решения о маршрутизации. Процесс маршрутизации в указанный момент представлен на рис. 14.6. Маршрутизатор R1 имеет пакет с адресом получателя, 150.1.3.3. Этот адрес получателя соответствует маршруту для подсети 150.1.3.0, для него указан исходящий интерфейс SerialO и IP-адрес следующего перехода, 150.1.2.2, который является IP-адресом маршрутизатора R2. Таблица маршрутизации R1 Сеть Интерфейс получателя 150.1.1.0 Е1 150.1.2.0 S0 150.1.3.0 SO Маршрутизатор следующего перехода Не определен Не определен 150.1.2.2 Example.com Ханна 150.1.1.250" .150.1.3.3 ПГ ^ 1 Шлюз поумолч. Подсеть 150.1.1.0 150.1.1.250 Атланта | ,Р 1данные|- Подсеть 150.1.2.0 Подсеть150.1.3.0 Цинциннати ■ IP адрес получателя: 150.1.3.3 " IP-адрес отправителя: 150.1.1.1 Рис. 14.6. Пересылка IP-пакета по каналу глобальной сети Перед маршрутизатором R1 стоит та же дилемма, и для него применимо то же решение, которое мы рассматривали ранее в главе 11, когда этот маршрутизатор использовал Ethernet, чтобы соединиться с R2. Маршрутизатор R1 должен инкапсулировать IP-пакет во фрейм канального уровня. Маршрутизаторы часто поддерживают много различных протоколов канального уровня для двухточечных каналов глобальной сети. Самые популярные два: высокоуровневый протокол управления каналом (High-level Data Link Control, HDLC) и протокол соединения "точка-точка" (Point to Point Protocol, PPP). Независимо от того, какой из этих двух протоколов используется, маршрутизатор R1 делает одно и то же: он инкапсулирует пакет во фрейм — или фрейм HDLC, или фрейм РРР, в зависимости от того, какой из этих двух протоколов использует маршрутизатор. На рис. 14.7 показан пакет, инкапсулированный с помощью HDLC. Example.com 150.1.3.3 Ш Последоват. 0 Последоват. 1 Ш g> I I HDLC | IP-пакет | HDLC |—► Ц_ "IP-адреса отправителя и получателя не изменены! - 1 -байтовое поле адреса — не имеет значения! Рис. 14.7. Инкапсуляция по протоколу HDLC
266 Часть V. Прокладка автомагистрали между штатами... Протоколы канала передачи данных глобальной сети, типа HDLC и РРР, выполняют определенные задачи — точно так же, как Ethernet. Протоколы HDLC и РРР инкапсулируют пакет, помещая его между заголовком и концевиком. Они также имеют поле контрольной последовательности фрейма (FCS) в концевике, которое позволяет получателю фрейма — в данном случае маршрутизатору R2 — определить, содержит ли фрейм ошибки. Адресация в последовательных каналах глобальной сети Одно из главных отличий между Ethernet и HDLC или РРР обусловлено отличием содержимого поля адреса в заголовке РРР и HDLC. Существует только одно поле адреса; его ширина составляет 1 байт. Однако нужно ли поле адреса вообще? Когда маршрутизатор R1 посылает что-нибудь по каналу типа "точка-точка" глобальной сети, единственное устройство, которое может получить данные, — маршрутизатор R2. Поэтому, хотя поле адреса существует, в действительности это не имеет значения. Кроме того, большинство людей вообще не подозревают о существовании поля адреса в заголовке HDLC или РРР. Удобный побочный эффект наличия поля адреса для HDLC и РРР состоит в том, что нет необходимости использовать протокол преобразования имен в IP-адрес (ARP) или что-нибудь типа этого для последовательного канала. Вы могли бы вернуться к главе 11 и вспомнить, что, когда R1 отправляет IP-пакет по локальной сети маршрутизатору R2, он должен использовать протокол преобразования адресов, чтобы узнать МАС-адрес (Ethernet) маршрутизатора R2. В случае использования протоколов канала глобальной сети типа "точка-точка", R1 не должен искать HDLC-адрес маршрутизатора R2, потому что фрейм в любом случае будет доставлен маршрутизатору R2. Это единственное место, куда может быть отправлен фрейм! Выбор одного из двух протоколов канала связи Как уже было упомянуто ранее в этом разделе, два протокола каналов глобальной сети типа "точка-точка", используемые чаще всего, — HDLC и РРР. Оба протокола хорошо работают, но, конечно, есть различия; иначе бы не были нужны два протокола. Самые важные вещи, которые следует помнить об этих протоколах, касаются их подобия. ■ Вы используете HDLC и РРР для каналов глобальной сети типа "точка-точка". ■ Вы не должны волноваться об адресах канального уровня. ■ Существует поле FCS, поэтому получатель может отказаться от фреймов, которые имеют ошибки. Различия между этими двумя протоколами состоят главным образом во времени их создания. Протокол HDLC был определен Международным союзом электросвязи в 1970-ых годах, а РРР был определен в запросе на комментарии 1661 в течение 1990- ых годов. Как простое следствие того, что РРР был спроектирован позже, он имеет расширенные возможности, некоторые из которых имеют отношение к безопасности, об этом рассказано в главе 17. Компания Cisco использует нестандартную версию HDLC, главным образом чтобы расширить возможности относительно старого HDLC. Поскольку реализация протокола HDLC компании Cisco является патентованной, оба маршрутизатора на каждом конце канала должны быть от Cisco, если вы
Глава 14. Аренда (сетевого) шоссе между двумя пунктами 267 используете протокол HDLC. Однако изделия Cisco соответствуют стандарту РРР, так что, если вы используете РРР, то можете установить маршрутизатор Cisco на одном конце канала и маршрутизатор другого поставщика на другом конце канала. Резюме Маршрутизаторы обычно маршрутизируют трафик между подсетями. Чтобы маршрутизировать трафик между подсетями, которые не находятся поблизости одна от другой, маршрутизатор использует соединение, которое обеспечивает телефонная компания. Таким образом телефонная компания может обеспечить установление соединения через каналы глобальной сети, также называемые выделенными каналами, выделенными линиями или каналами типа "точка-точка". В случае использования канала глобальной сети оба маршрутизатора могут посылать трафик друг другу и получать его. Чтобы создать физическую среду передачи, телефонная компания прокладывает кабель между каждой площадкой и местной центральной АТС. Телефонная компания так или иначе передает биты по внутренней сети телефонной компании. Конечный результат состоит в том, что для маршрутизаторов канал глобальной сети представляется эквивалентным кабелю с 4-мя проводами, проложенному между ними, по которому они могут посылать и получать данные в любой момент времени. На каждой площадке клиента установлен маршрутизатор, а также внутренний или внешний модуль CSU/DSU. Модуль CSU/DSU конфигурируется со скоростью канала, кратной наименьшей скорости 64 кбит/с, используемой телефонными компаниями. Чтобы передавать трафик по каналу глобальной сети, используется протокол канального уровня; наиболее популярны сегодня два из них — HDLC и РРР. Поскольку любые данные, пересылаемые по каналу глобальной сети типа "точка- точка", предназначены для устройства, находящегося на другом конце канала — и только для этого устройства — то протоколы канального уровня не очень-то обременены работой. Они главным образом обеспечивают инкапсуляцию пакетов и проверку их на предмет ошибок. Протокол РРР обеспечивает дополнительные возможности по сравнению с протоколом HDLC. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Сколько витых пар проводов обычно используется в выделенном канале между двумя маршрутизаторами? 2. Представьте, что вы хотели проложить кабель глобальной сети между двумя маршрутизаторами (маршрутизатор А и маршрутизатор Б), расположенными в городах, отстоящих один от другого на 1000 миль. Кабель какой длины должна проложить телефонная компания? 3. Что собой представляет канал глобальной сети? 4. Как иначе называются каналы глобальной сети? 5. Объясните, нуждаются ли каналы типа "точка-точка" глобальной сети в технологии CSMA/CD, применяемой в Ethernet.
268 Часть V. Прокладка автомагистрали между штатами... 6. Какой физический интерфейс использует маршрутизатор, чтобы подключиться к каналу глобальной сети? 7. Представьте, что был создан канал глобальной сети между маршрутизаторами А и Б. Кабель, предоставленный телефонной компанией, был подсоединен непосредственно к последовательным интерфейсам маршрутизаторов. Какой особенностью должны обладать платы последовательного интерфейса на этих маршрутизаторах, чтобы кабель мог быть связан непосредственно с маршрутизаторами? 8. Какова основная функция модуля CSU/DSU, описанная в этой главе? 9. Какая базовая скорость передачи данных обычно используется в каналах глобальной сети, которые работают на относительно низких скоростях (до 1,5 Мбит/с)? 10. Каковы два самых популярных протокола канала связи, используемые для передачи данных через каналы глобальной сети? 11. Что делает протокол HDLC, чтобы предупредить маршрутизатор, получающий фрейм, о том, что произошла ошибка? 12. Из двух наиболее популярных протоколов канального уровня глобальной сети который был разработан позже и обеспечивает больше возможностей? 13. Объясните, необходим ли протокол ARP IP в каналах глобальной сети. Почему да или почему нет?
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S сравнить и противопоставить физический уровень канала типа "точка-точка" глобальной сети с физическими топологиями Frame Relay; S сравнить и противопоставить протоколы HDLC и РРР с протоколом Frame Relay; S объяснить основной процесс пересылки, осуществляемой протоколом Frame Relay с использованием DLCI; S объяснить концепцию, на которой основан термин "виртуальный канал"; S перечислить несколько причин, по которым Frame Relay— широко используемая технология глобальной сети " ''''''^Ifi'^^',,- "i'JtiWWfs,,^'',1//'-, «**%ГЩ&". $ Ш ,*;>1- $н 1Щ> '//£ф "?^1„ ,>>'' - ''':<>ж ;;f '$/ '01 !|?| {%*/-, %/''*,'; >ш >ш <>№
Глава 15 Аренда (сетевого) шоссе между многими местами Министерство транспорта США (DOT) могло бы запланировать строительство дороги непосредственно между вашим домом и любым местом, к которому вы захотите поехать. Оно могло бы сделать то же самое для всех остальных жителей. Это было бы смешно, конечно, потому что DOT пришлось бы заасфальтировать фактически всю страну! Вместо этого DOT построила только одну дорогу к вашему дому, которая, в свою очередь, связана с другими дорогами, благодаря чему вы можете поехать в любое место, куда захотите. В главе 14 изложены основы работы последовательного канала, который может быть использован для передачи данных между двумя маршрутизаторами. Это можно сравнить со строительством дороги между ними. В данной главе описана технология глобальной сети, получившая название Frame Relay. Протокол ретрансляции фреймов (Frame Relay) позволяет множеству площадок, каждая из которых соединена с глобальной сетью лишь одним физическим кабелем, связываться между собой. Это немного похоже на работу DOT, прокладывающего одну дорогу к вашему дому; покидая свой дом, вы всегда можете ехать только по ней, но в конечном счете можете добраться, куда захотите. Если вы хотите создать сеть, обеспечивающую взаимодействие компьютерных устройств, размещенных на многих отдаленных одна от другой площадках, один из вариантов — заказать много последовательных каналов. Однако технология Frame Relay позволяет затратить на это меньшее количество труда и требует меньше новых аппаратных средств, поэтому решение на основе Frame Relay оказывается намного более рентабельным по сравнению с выделенными каналами. Во многих случаях решение на основе Frame Relay действует как сеть Ethernet, построенная с использованием коммутатора. При использовании коммутатора Ethernet к нему могут быть проложены кабели от более чем двух устройств. Чтобы отправить фрейм Ethernet любому из других устройств, отправителю достаточно указать во фрейме Ethernet адрес получателя. Как вы узнаете из этой главы, сеть Frame Relay действует как большой коммутатор глобальной сети, с которым соединяются маршрутизаторы. Чтобы отправить данные, маршрутизатору-отправителю достаточно лишь послать фрейм с правильно указанным в нем адресом. Как превратить телефонную компанию в огромный коммутатор Дочитав до конца первый раздел данной главы, вы будете знать основы технологии и то, что Frame Relay во многих случаях ведет себя подобно коммутатору локальной сети. Прежде чем коммутатор локальной сети сможет осуществлять коммутацию
272 Часть У. Прокладка автомагистрали между штатами... фреймов, снующих между ПК или маршрутизаторами, эти фреймы должны быть физически переданы на коммутатор. Мы начнем с рассмотрения эквивалента этому в технологии Frame Relay. В следующем разделе будет рассказано о том, как телефонная компания создает службу Frame Relay, обеспечивающую пересылку фреймов на маршрутизаторы, которые связаны с сетью Frame Relay. Детали работы Frame Relay отличаются от коммутации Ethernet, но многие из общих концепций применимы к обеим технологиям. Подключение маршрутизатора к большому коммутатору Frame Relay Чтобы технология Frame Relay работала, каждый маршрутизатор должен быть физически соединен кабелем с устройством, названным коммутатором Frame Relay {Frame Relay switch). Телефонные компании используют коммутаторы Frame Relay в местных АТС, совместно они перенаправляют данные на нужные площадки. Как ПК соединяются с коммутатором локальная сети посредством кабелей Ethernet, так и маршрутизатор должен быть физически подключен к коммутатору Frame Relay, чтобы эта технология могла работать. Когда маршрутизатор физически соединяется с коммутатором Frame Relay, он подключается к службе Frame Relay {Frame Relay service). Компанию, которая предлагает обслуживание Frame Relay, называют поставщиком услуг Frame Relay {Frame Relay service provider), или провайдером Frame Relay. Иногда в роли поставщика услуг Frame Relay также выступает телефонная компания, но в большинстве случаев провайдер работает вместе с другими аналогичными телефонными компаниями, чтобы создать сеть Frame Relay. Услуга, которую предлагает провайдер, — это возможность для маршрутизатора посылать фреймы Frame Relay и получать их от других маршрутизаторов, связанных с этой же сетью Frame Relay. Чтобы создать физическое соединение между маршрутизатором и поставщиком услуг Frame Relay, провайдер должен проложить кабели от всех ваших площадок до местной АТС. Знакомая картина? Frame Relay — это набор протоколов, каждый из которых выполняет функции, соответствующие уровню 2 модели OSI. Для выполнения функций уровня 1, таких как обустройство кабельной системы и фактическая передача битов по проводам, Frame Relay использует те же стандарты, что и последовательные каналы, как показано на рис. 15.1. Последоват. интерфейс на маршрутизаторах Кабели, тянущиеся от АТС Офис в Атланте АТС в Атланте АТС в Цинциннати Офис в Цинциннати Коммутаторы Frame Relay Рис. 15.1. Физические компоненты Frame Relay
Глава 15. Аренда (сетевого) шоссе между многими местами 273 Чтобы обеспечить физическое соединение с коммутатором Frame Relay, провайдер создает физический эквивалент выделенного канала между маршрутизатором и ближайшим коммутатором Frame Relay. Телефонная компания должна быть в состоянии посылать данные каждому маршрутизатору и получать их от него, это и обеспечивают выделенные линии. Поскольку технология Frame Relay не предполагает разработку собственных стандартов для уровня 1, определяющих особенности базовой физической передачи данных и организации кабельных систем, она полагается на те же самые стандарты, которые используют каналы глобальной сети типа "точка-точка" для физического соединения устройств кабелями и передачи по ним электрических сигналов. В стандартах Frame Relay этот физический последовательный канал между маршрутизатором и коммутатором Frame Relay называется канал доступа {access link) Frame Relay. Хотя кабели и модули CSU/DSU такие же, как и в случае выделенного канала, в центральной АТС телефонная компания делает кое-что другое: она подключает кабель к коммутатору Frame Relay. Коммутатор Frame Relay — это оборудование, которое "понимает" Frame Relay и может передавать трафик, основанный на протоколах Frame Relay. Набор коммутаторов Frame Relay провайдера, наряду с другим оборудованием, устанавливаемым между ними, формирует то, что принято называть сеть Frame Relay {Frame Relay network) провайдера. Базовая логика, используемая огромным коммутатором Frame Relay Чтобы разобраться в механизме коммутации локальных сетей, вы сначала должны были узнать кое-что о наборе протоколов и стандартов, которые совместно формируют то, что мы называем Ethernet. Аналогично, чтобы понять, как работает технология Frame Relay, вы должны познакомиться с протоколами Frame Relay. Исходные протоколы Frame Relay были определены консорциумом поставщиков, получившим наименование Форум Frame Relay {Frame Relay Forum). Консорциум поставщиков {vendor consortium) — группа поставщиков, которые собираются вместе и соглашаются сделать так, чтобы их изделия работали определенным образом; в то же время они надеются, что организации стандартизации формализуют предлагаемый стандарт. Форум Frame Relay — один из таких консорциумов. Позже Международный союз электросвязи (ITU) формализовал стандарт Frame Relay, это же сделал и Американский национальный институт стандартов (ANSI). Как и для локальной сети Ethernet, некоторые из самых важных особенностей Frame Relay касаются адресации, создания фреймов и коммутации. Хорошей основой для обсуждения всех трех вопросов может служить рис. 15.2. Когда телефонная компания продает вам службу Frame Relay, в сущности она обещает отправлять фреймы Frame Relay, посланные одним маршрутизатором, одному из многих других маршрутизаторов. Прежде чем маршрутизатор сможет послать пакет, он должен добавить к нему соответствующий заголовок канального уровня и концевик. На рис. 15.2 маршрутизатор R1 начинает свою работу, помещая IP-пакет во фрейм Frame Relay между заголовком и концевиком. Чтобы создать фрейм, маршрутизатор R1 должен поместить в заголовок нужный адрес. Каждый заголовок Frame Relay содержит поле адреса, именуемое идентификатором канала связи {Data Link Connection Identifier, DLCI). Идентификатор DLCI —
274 Часть V. Прокладка автомагистрали между штатами... это 10-разрядное число, обычно записываемое в десятеричном виде и принадлежащее диапазону от 0 и 1023. Маршрутизатор R1 помещает конкретный DLCI в заголовок Frame Relay, ожидая, что фрейм будет отправлен сетью Frame Relay другому маршрутизатору — в данном случае R2. Посылаю фрейм Frame Relay с DLC1102 в нем. Я обещал посылать фреймы с DLC1102 в АТС Цинциннати Я обещал пересылать фреймы с DLC1102 маршрутизатору R2 Офис в Атланте Frame Relay IP- пакет Frame Relay АТС в Атланте 10-разрядное поле DLCI — значение 102 Офис в Цинциннати Рис. 15.2. Коммутация Frame Relay с использованием механизма адресации Frame Relay Наконец, сеть Frame Relay провайдера пересылает фрейм другому маршрутизатору. Чтобы выполнить эту задачу, каждый коммутатор Frame Relay пересылает фрейм, основываясь на DLCI, через сеть, пока фрейм не достигнет нужного маршрутизатора. Это подобно тому, как ПК посылает фрейм Ethernet, указав в нем МАС-адрес получателя, а коммутатор локальной сети пересылает фрейм нужному адресату. Хотя общие идеи, на которых основаны коммутация Frame Relay и коммутация Ethernet, подобны, в деталях осуществляемые процессы отличаются весьма существенно. Например, Frame Relay использует только поле адреса, ширина которого составляет лишь 10 бит, в противоположность аналогичному полю Ethernet, когда для указания адресов отправителя и получателя используются поля шириной 48 бит F байт). Коммутаторы Frame Relay должны быть сконфигурированы так, чтобы они знали, куда должны отправлять фреймы с конкретными DLCI в их заголовках, вместо того, чтобы автоматически изучать адреса и их местоположения, как это делают коммутаторы локальных сетей Ethernet. Если сравнить этот пример Frame Relay с последовательным каналом между двумя маршрутизаторами, можно констатировать, что детали отличны, но результат — тот же. Когда R1 хочет отправить пакет маршрутизатору R2, независимо от того, используете ли вы выделенный канал и РРР или Frame Relay, когда R2 получает фрейм, он отбрасывает заголовок канала и концевик и остается с IP-пакетом "на руках". Маршрутизаторы счастливы, потому что они могут отправлять пакеты. Если две площадки — это хорошо, то три (или более) — еще лучше Хотя вам, возможно, понравились предыдущие страницы, реальное преимущество, которое дает технология Frame Relay по сравнению с выделенными каналами,
Глава 15. Аренда (сетевого) шоссе между многими местами 275 не вполне очевидно до тех пор, пока мы не рассмотрим пример по крайней мере с тремя площадками, использующими Frame Relay. В случае использования Frame Relay маршрутизатор может через единственный физический канал доступа отправлять данные многим отдаленным маршрутизаторам. Если вы вспомните, как работают коммутаторы Ethernet, то легко разберетесь и в технологии Frame Relay, потому что она работает аналогично. При использовании Ethernet ПК посылает фреймы разным получателям по одному кабелю Ethernet, который соединен с коммутатором локальной сети. Этот коммутатор пересылает фреймы, руководствуясь МАС- адресом получателя. При использовании Frame Relay происходит то же самое, за исключением того, что коммутатор Frame Relay пересылает фреймы, основываясь на протоколе DLCI. Базовая концепция представлена на рис. 15.3. Фреймы, поступающие через этот физический интерфейс, распределять так: с DLC1102 — в Цинциннати, с DLC1103 — в Бостон. Цинциннати Место Использовать Чтобы достичь DLCI этого места Атланта 102 Цинциннати Атланта 103 Бостон Бостон Рис. 15.3. Коммутация Frame Relay, позволяющая пересылать данные на многие отдаленные площадки На рис. 15.3 маршрутизатор R1 использует свой единственный физический канал доступа, чтобы отправить данные к маршрутизаторам R2 и R3. Заказывая службу Frame Relay, вы сообщаете телефонной компании, что хотели бы иметь возможность отправлять данные с маршрутизатора в Атланте (R1) на маршрутизаторы, расположенные в Цинциннати (R2) и в Бостоне (R3). Чтобы эта схема могла работать, телефонная компания предоставит вам документацию, в которой будет сказано, как она собирается программировать коммутатор Frame Relay. Сокращенная версия этой документации показана в левой нижней части рисунка. Согласно данным провайдера, если маршрутизатор R1 посылает фрейм со значением в поле идентификатора канала связи (DLCI) 102, сеть Frame Relay пересылает фрейм маршрутизатору R2 (в Цинциннати); если провайдер помещает в заголовок значение 103, сеть Frame Relay пересылает фрейм маршрутизатору R3 (в Бостон). Это походит на выделенную линию, поэтому давайте назовем это виртуальным каналом На жаргоне Frame Relay способность маршрутизатора R1 отправлять данные маршрутизатору R2 по сети Frame Relay называют виртуальным каналом {virtual circuit, VQ. Виртуальный канал похож на выделенную линию в том, что ровно два уст-
276 Часть V. Прокладка автомагистрали между штатами... ройства могут с его помощью посылать и получать данные. Он назван виртуальным, чтобы подчеркнуть его отличие от физической выделенной линии. А поскольку VC обычно настраивается так, чтобы всегда быть готовым к использованию, виртуальные каналы часто называют постоянными виртуальными каналами (permanent virtual circuits, PVCs). Когда вы рисуете схемы сетей, полезно показывать каналы PVC отдельно от физических кабельных систем, как показано на рис. 15.4. (Нет никакого стандарта относительно того, как изображать на схемах PVC, поэтому мы изображаем единственный PVC в свободном стиле, одной линией, как показано на рисунке.) Рис. 15.4. Концепция постоянного виртуального канала Frame Relay Как правило, поставщик услуг Frame Relay предварительно конфигурирует все необходимые параметры PVC. Например, на рис. 15.3 коммутаторы уже знают, что фреймы со значением DLCI равным 102 нужно отправлять в Цинциннати, а фреймы с DLCI 103 — в Бостон. Одна из причин, по которой отображение на схеме каналов PVC является важным, состоит в том, что, когда вы заказываете службу Frame Relay, вы не должны заказывать PVC между всеми парами маршрутизаторов. Например, на рис. 15.3 показаны три площадки и фреймы, пересылаемые с одной площадки (R1) на две другие (R2 и R3). Эта сеть не должна иметь канала PVC между R2 и R3. Выбор, между какими площадками должны быть использованы PVC, зависит от того, как, по мнению сетевых инженеров, должен распределяться трафик сети. Когда маршрутизаторы используют технологию Frame Relay и организуется PVC между каждой парой маршрутизаторов, говорят о полносвязанной сети (full mesh) (рис. 15.5); если не все маршрутизаторы связаны между собой каналами PVC, это называется частично связанная сеть (partialmesh) (рис. 15.3). Быстрее, дешевле, лучше — ошибочно отправить данные при использовании Frame Relay невозможно В наши дни площадки, которые используют Frame Relay, намного превосходят по численности площадки, использующие выделенные каналы. Причины популярности Frame Relay изменяются, но все они сводятся к основным: меньшая оплата за установку и меньшая ежемесячная, а еще вы можете пересылать больше данных. Полагаем, будет полезно более подробно рассмотреть причины, по которым Frame Relay быстрее, дешевле и лучше, чем выделенные каналы. После этого мы сможем поговорить о других важных вещах, касающихся этой технологии.
Глава 15. Аренда (сетевого) шоссе между многими местами 277 Можно использовать последовательные каналы, но это будет стоить дороже Каналы типа "точка-точка" глобальных сетей требуют больше аппаратных средств, чем эквивалентная сеть, построенная на основе технологии Frame Relay. Чтобы понять, почему так происходит, давайте рассмотрим, что телефонная компания должна сделать, чтобы создать три выделенных линии (рис. 15.6). Офис в Цинциннати АТС в Цинциннати 1аттшпеШ!Л Рис. 15.6. Три выделенных канала, позволяющие подключить три маршрутизатора Требуется вдвое больше аппаратных средств и вдвое больше кабелей, чтобы создать сеть, показанную на рис. 15.6, по сравнению с использованием Frame Relay. На этом рисунке для маршрутизатора R1 требуется два последовательных интерфейса и два отдельных модуля CSU/DSU. Кроме того, телефонная компания должна проложить два кабеля между местной центральной АТС и офисом в Атланте, где находится R1. Аналогично, для маршрутизатора R2 нужны два модуля CSU/DSU и два кабеля, проложенных к АТС; то же самое необходимо для R3. Для сети Frame Relay показанной на рис. 15.4 и предназначенной для трех площадок, необходим только один кабель, проложенный от каждого маршрутизатора до АТС, один последовательный интерфейс и один модуль CSU/DSU в каждом маршрутизаторе. Даже в этой маленькой сети вы уже нуждаетесь в большем количестве аппаратных средств и большем количестве кабелей. Теперь подумайте о том, что происходит, когда компания растет и количество ее площадок увеличивается до 10 или даже до 100. Для каждой линии типа "точка- точка" маршрутизатору R1 будет нужен физический последовательный интерфейс и модуль CSU/DSU, а телефонная компания должна будет проложить кабель с 4-мя проводами от центральной АТС Атланты до головного офиса компании Fredsco в Атланте. Это требует большого количества дополнительных финансовых средств для приобретения маршрутизатора и аппаратных средств CSU/DSU для части сети, расположенной на площадке компании Fredsco, а еще телефонная компания должна проложить много кабелей. Прокладка этих кабелей стоит дорого, и, конечно, оплатить эти работы придется компании Fredsco. Короче говоря, выделенные каналы требуют большего количества аппаратных средств и вложения большего количества финансовых средств, чем необходимо при использовании технологии Frame Relay.
278 Часть V. Прокладка автомагистрали между штатами... Получите бесплатную пропускную способность Итак, вы можете сохранить немного (или много) денег, в зависимости от того, сколько аппаратных средств вам придется приобретать, используя технологию Frame Relay. Теперь представьте, что Фред, президент компании Fredsco, имеет сеть с двумя площадками и одним каналом глобальной сети со скоростью 128 кбит/с. Коммивояжер компании Frame Relay получит бонус, если зарегистрирует нового клиента, поэтому он заходит в офис Фреда и говорит: "Мы можем установить Frame Relay вместо ваших каналов глобальной сети типа "точка-точка" со скоростью 128 кбит/с. За ту же самую цену мы гарантируем, что вы сможете послать как минимум 128 кбит/с между этими двумя площадками, используя технологию Frame Relay. Но большую часть времени вы будете в состоянии пересылать данные с удвоенной скоростью, 256 кбит/с, и без дополнительных затрат! А еще, после того как вы согласитесь, я заплачу за ланч." Хотя обещание коммивояжера кажется подозрительным, технология Frame Relay действительно обеспечивала бы равные или более высокие скорости передачи при той же самой цене, как и обещал коммивояжер. Протоколы Frame Relay фактически определяют технические детали, обеспечивающие выполнение обещаний коммивояжера. Чтобы понять, как они работают, посмотрите на рис. 15.7, где показаны три маршрутизатора, использующие технологию Frame Relay. Рис. 15.7. Типичная сеть Frame Relay с тремя площадками В распоряжении провайдера Frame Relay имеется два параметра настройки скорости, которые позволяют коммивояжеру давать обещания Фреду. Сначала, чтобы гарантировать наименьшую пропускную способность между этими двумя площадками, провайдер установил бы для PVC гарантированную скорость передачи (committed information rate, CIR). Вспомните: в сетях Frame Relay канал PVC больше всего похож на выделенную линию, поэтому провайдер Frame Relay фиксирует минимальный объем трафика этого PVC. В сети Frame Relay, скрытой от нас, прячется большая сеть, которая может пересылать фреймы. Сложное оборудование отслежи-
Глава 15. Аренда (сетевого) шоссе между многими местами 279 вает трафик для каждого PVC. Эти устройства делают все возможное, чтобы PVC в течение долгого времени передавал биты по крайней мере со скоростью CIR. Поскольку CIR — это скорость логической или виртуальной величины, она не определяет физическую скорость (тактовую частоту), с которой передаются биты. CIR — скорее законный контракт; оборудование, обеспечивающее выполнение условий договора, конфигурируется провайдером Frame Relay. Когда маршрутизатор фактически посылает биты, он отправляет их с физической скоростью передачи (тактовой частотой) канала доступа. Эта скорость называется скоростью доступа {access rate, AR). В нашем примере (см. рис. 15.7) скорость доступа каждого канала доступа была установлена равной 256 кбит/с. Теперь давайте сделаем несколько заключений из этих фактов, касающихся скорости. ■ Маршрутизаторы отправляют данные по каналам доступа с физической скоростью передачи, названной скоростью доступа. ■ Провайдер Frame Relay знает, что, если скорость доступа превышает CIR канала PVC, маршрутизатор сможет послать больше битов, чем оговаривает CIR для этого PVC. ■ Провайдер Frame Relay фиксирует в договоре, что его сеть будет поддерживать скорость по крайней мере CIR битов в секунду. ■ Когда маршрутизатор посылает на PVC большее количество битов, чем оговорено значением CIR (а так оно и будет) и внутренняя сеть провайдера в это время не перегружена, он так или иначе перешлет весь трафик, предоставляя тем самым клиенту услуг больше, чем те, за которые он заплатил! Этот последний пункт в вышеприведенном списке и позволяет коммивояжеру делать подозрительные утверждения, на самом деле вполне соответствующие действительности. И в самом деле, многие провайдеры Frame Relay проектируют свои сети Frame Relay так, чтобы сеть почти никогда не была настолько загруженной, что не смогла бы передать дополнительный трафик. Несмотря на мое ироничное описание сцены заключения контракта, на самом деле это действительно важно для провайдера Frame Relay, когда его коммивояжер может сказать что-то вроде следующего, чтобы заключить сделку, и это соответствует истине: "Фред, так как вы теперь — мой приятель, позвольте сообщить вам, что мы никогда не блокируем трафик, который вы посылаете по PVC со скоростью, превышающей CIR. Вы действительно будете передавать данные со скоростью 256 кбит/с, но платить лишь за 128. Только не говорите моему боссу, что я открыл вам нашу тайну." Новые приятели подмигнули друг другу, толкнули друг друга локтем — сделка завершена, пора сыграть в гольф. Вы могли бы подумать, что теперь, когда доступна технология Frame Relay, никто не будет использовать выделенные каналы. Но, как выясняется, в некоторых отдаленных сельских районах служба Frame Relay недоступна. Некоторые компании просто не потрудились заменить существующие выделенные каналы технологией Frame Relay. Кроме того, сеть Frame Relay может вносить задержку в доставку пакетов, составляющую доли секунды, что превышает задержку, вносимую выделенным каналом. Однако вы можете сделать кое-что на маршрутизаторах, чтобы минимизировать воздействие этой небольшой задержки.
280 Часть V. Прокладка автомагистрали между штатами... С точки зрения бизнеса Frame Relay предпочтительнее выделенных каналов. Это и дешевле, и вы получаете по крайней мере такую же пропускную способность (обычно больше), чем при использовании каналов глобальной сети. Неудивительно, что технология Frame Relay столь популярна. Маршрутизаторы и глобальные сети: все еще соответствие, сделанное на небесах В главе 14 мы раскрыли некоторые из деталей работы протоколов РРР и HDLC в контексте использования маршрутизаторов и маршрутизации, потому что в наше время большинство устройств, устанавливаемых на концах выделенных каналов — это маршрутизаторы. Точно так же большинство устройств на концах каналов PVC сетей Frame Relay является маршрутизаторами, это поможет нам кратко описать маршрутизацию в сетях Frame Relay, воспользовавшись рисунком. Чтобы лучше разобраться в этом вопросе, посмотрите на рис. 15.8, на котором указаны IP-адреса, показаны три площадки и сеть Frame Relay, использованная для обеспечения соединений через глобальную сеть. Атланта SerialO, 150.1.2.1 Подсеть 150.1.2.0 Цинциннати Example.com 150.1.3.3 Ханна Шлюз по умолчанию 150.1.1.250 Таблица маршрутизации R1 Подсеть 150.1.4.0 Бостон Бриан 150.1.4.1 Сеть Интерфейс получателя 150.1.1.0 Е1 150.1.2.0 S0 150.1.3.0 SO 150.1.4.0 SO Маршрутизатор следующего перехода Не определен Не определен 150.1.2.2 150.1.2.3 Документация телефонной компании Место Атланта Атланта Использовать Чтобы достичь DLCI этого места 102 103 Цинциннати Бостон Рис. 15.8. Маршрутизация через каналы PVC Эта объединенная сеть использует три маршрутизатора, размещенных на трех площадках. Каждый имеет канал доступа к местной центральной АТС, и нет никакого канала PVC между R2 и R3, поэтому рассматриваемая сеть — частично связанная. Провайдер Frame Relay предоставил этой компании некоторую информацию, когда создавал службу Frame Relay, как показано в надписи, сделанной в правой нижней части рисунка. Телефонная компания попросила клиента сконфигурировать маршрутизатор R1 так, чтобы он использовал DLCI 102 для отправки фреймов маршрутизатору R2, и DLCI 103, чтобы отправлять фреймы маршрутизатору R3. Для того чтобы объединенная сеть могла работать, каждому из трех маршрутизаторов необходим IP-адрес для его последовательного интерфейса. Обратите внимание на то, что IP-адреса, которые показаны рядом с последовательными интерфейсами маршрута-
Глава 15. Аренда (сетевого) шоссе между многими местами 281 заторов, находятся в одной и той же подсети — 150.1.2.0. Если вы знаете Frame Relay несколько лучше, чем мы смогли здесь рассказать, то вы знаете, что есть много вариантов IP-адресации в сетях Frame Relay; это — только один из вариантов. Точно так же как подсеть 150.1.2.0 использовалась, когда рассматривалась сеть Ethernet между маршрутизаторами R1 и R2 (глава 11), как подсеть 150.1.2.0 использовалась в канале глобальной сети между маршрутизаторами R1 и R2 (глава 14), в этом примере используется та же подсеть между маршрутизаторами R1 и R2. Теперь, когда вы имеете объединенную сеть, которую можно рассматривать в качестве примера, в следующих разделах мы сделаем обзор инкапсуляции в сетях Frame Relay и идентификаторов DLCI, а затем закончим обсуждением инверсного протокола ARP, используемого в технологии Frame Relay. Нельзя послать только данные — вы должны послать фрейм Frame Relay В этом примере Ханна будет запускать свой браузер, чтобы соединиться с Web- сайтом www. example. com. После использования доменной системы имен для выяснения того, что IP-адресом www. example. com является 150.1.3.3, Ханна посылает пакет по адресу 150.1.3.3. Поскольку адрес 150.1.3.3 принадлежит другой подсети, ПК Ханны посылает пакет ее шлюзу R1, назначенному по умолчанию. Когда маршрутизатор R1 получает фрейм Ethernet, он сперва выясняет, произошли ли при передаче ошибки. Если ошибок не было, маршрутизатор R1 извлекает IP-пакет и начинает процесс принятия решения о маршрутизации. На рис. 15.9 представлен процесс маршрутизации на данном этапе. Маршрутизатор R1 имеет пакет с адресом получателя 150.1.3.3. Данный адрес получателя соответствует маршруту для подсети 150.1.3.0, для которого указаны исходящий интерфейс SerialO и IP-адрес следующего перехода 150.1.2.2, который является IP-адресом маршрутизатора R2 для его интерфейса SerialO. 10-разр. поле DLCI — значение 102 Таблица маршрутизации R1 Сеть Интерфейс Маршрутизатор получателя следующего перехода 150.1.1.0 Е1 Неопределен 150.1.2.0 S0 Неопределен 150.1.3.0 SO 150.1.2.2 150.1.4.0 SO 150.1.2.3 Документация телефонной компании Место Использовать Чтобы достичь DLCI этого места Атланта 102 Цинциннати Атланта 103 Бостон Рис. 15.9. Отправка IP-пакета по каналу РУС сети Frame Relay
282 Часть V. Прокладка автомагистрали между штатами... Маршрутизатор R1 должен послать пакет маршрутизатору R2, физически используя его интерфейс SerialO и логически используя PVC с DLCI 102. Сначала маршрутизатор R1 должен выполнить инкапсуляцию Frame Relay, как это делают и другие протоколы канального уровня, описанные в этой книге. Для этого IP-пакет помещается между заголовком и концевиком Frame Relay. Как обычно, концевик содержит поле контрольной последовательности фрейма (FCS), которое позволяет получателю фрейма — в данном случае маршрутизатору R2 — узнать, имеются ли во фрейме ошибки. Как уже говорилось, заголовок Frame Relay содержит поле DLCI шириной 10 бит, которое идентифицирует канал PVC. Помещая в заголовок Frame Relay нужный DLCI (в данном случае 102), коммутаторы Frame Relay телефонной компании могут отправить фрейм нужному маршрутизатору R2. Адресация Frame Relay интереснее, чем таковая для последовательных каналов Последняя важная концепция, которая будет рассмотрена для технологии Frame Relay, связана с дилеммой, которая вам уже знакома, потому что она характерна и для Ethernet. Когда маршрутизатор R1 должен создавать заголовок Frame Relay, он должен поместить что-то в поле DLCI — значение 102 для последнего примера. Вы знаете, что маршрутизатор R1 должен использовать DLCI 102, потому что именно это значение сообщила телефонная компания, уверяя, что все будет работать. Маршрутизатор, однако, не имеет копии документации от провайдера Frame Relay, поэтому ему нужна помощь. Чтобы понять, почему так происходит, внимательно рассмотрите запись в таблице маршрутизации для подсети 150.1.3.0 на рис. 15.8. Обратите внимание на то, что в ней указан маршрутизатор следующего перехода 150.1.2.2, что является IP-адресом маршрутизатора R2, и исходящий интерфейс S0. В ней не указано, какой DLCI нужно использовать, чтобы добраться до 150.1.2.2. Маршрутизатор R1 знает исходящий интерфейс и IP-адрес следующего перехода, но он не знает, какой DLCI нужно использовать. Если бы между R1 и R2 располагалась сеть Ethernet и маршрутизатор R1 стоял бы перед этой той же самой дилеммой, то R1 использовал бы протокол ARP. Маршрутизатор R1 послал бы широковещательный запрос IP ARP, в котором указал бы IP-адрес следующего перехода A50.1.2.2), ожидая, что маршрутизатор R2 услышит широковещательный запрос и пришлет ARP-ответ. Ответ содержал бы МАС-адрес Ethernet маршрутизатора R2. Frame Relay решает ту же самую проблему, но другим способом. Как только PVC начинает работать, R2 объявляет свой IP-адрес маршрутизатору R1, используя виртуальный канал (VC) между этими двумя маршрутизаторами. R1 также объявляет свой IP-адрес маршрутизатору R2, используя что тот же самый VC. Поступая таким образом, оба маршрутизатора узнают IP-адрес другого маршрутизатора, который использует этот же VC. Это сообщение, используемое для объявления IP-адреса и DLCI, называют сообщением инверсного протокола ARP {Inverse ARP). Инверсный протокол ARP походит на протокол ARP в том, что помогает сопоставлять IP-адрес с адресом канала передачи данных, но работает этот процесс иначе. Чтобы различать эти два процесса, в названии версии Frame Relay используется слово "инверсный".
Глава 15. Аренда (сетевого) шоссе между многими местами 283 Резюме Маршрутизаторы обычно маршрутизируют трафик между различными подсетями. Чтобы перенаправлять трафик между подсетями, которые не находятся в одном месте, маршрутизатор использует соединение, которое обеспечивает телефонная компания. Хотя маршрутизаторы могут использовать каналы глобальной сети, более популярный на сегодняшний день вариант —использование технологии Frame Relay. Технология Frame Relay требует меньшего количества аппаратных средств на площадках клиентов телефонной компании, а телефонная компания тратит меньше средств на обеспечение той же самой пропускной способности между площадками. Кроме того, маршрутизаторы обычно могут посылать трафик большего объема, чем оплачен клиентом, и телефонная компания обеспечит его пересылку, если только это не пойдет в ущерб другим клиентам. Концепция службы Frame Relay, предоставляемой телефонной компанией, аналогична концепции большого коммутатора Ethernet. Маршрутизаторы соединяются с сетью Frame Relay, используя выделенный канал, простирающийся от маршрутизатора до коммутатора Frame Relay, установленного в местной центральной АТС. При пересылке фреймов Frame Relay по этому каналу доступа к ближайшему коммутатору, последний смотрит на заголовки фрейма и пересылает фреймы, руководствуясь значением DLCI в заголовке. DLCI — это по существу поле адреса, определяемое технологией Frame Relay. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Какие уровни модели OSI реализует технология Frame Relay? 2. Каково название поля в заголовке Frame Relay, которое идентифицирует PVC? Какова его аббревиатура и каково полное название? 3. Представьте, что компания имеет маршрутизатор А в головном офисе. Маршрутизатор будет использовать каналы глобальной сети типа "точка-точка", чтобы посылать трафик к пяти отдаленным площадкам и получить его от них. Сколько кабелей с 4-мя проводами должно быть проложено от маршрутизатора до центральной АТС телефонной компании, ближайшей к маршрутизатору А? 4. Представьте, что компания имеет маршрутизатор А в головном офисе. Маршрутизатор будет использовать технологию Frame Relay, чтобы посылать трафик к пяти отдаленным площадкам и получить его от них. Сколько кабелей с 4-мя проводами должно быть проложено от маршрутизатора до центральной АТС телефонной компании, ближайшей к маршрутизатору А? 5. Какой термин используется для обозначения кабеля, прокладываемого от маршрутизатора до центральной АТС, когда маршрутизатор использует Frame Relay? 6. Определите термин "PVC". 7. Скорость доступа или CIR определяет, сколько битов в секунду должна передавать телефонная компания, чтобы передать данные по одному PVC? 8. Скорость доступа или CIR определяет тактовую частоту физического канала между маршрутизатором и местной центральной АТС?
284 Часть V. Прокладка автомагистрали между штатами... 9. Что означает аббревиатура CIR? 10. Определите значение термина "DLCI." 11. Объясните, почему термин "виртуальный канал" используется для обозначения процесса передачи данных посредством технологии Frame Relay между двумя маршрутизаторами. 12. Объясните потребность в протоколе IP ARP для каналов PVC при использовании технологии Frame Relay
Что вам предлагается освоить После прочтения этой главы вы должны уметь: s объяснить, почему подключение к Internet обеспечивает возможность для IP-пакетов быть посланными практически куда угодно; S описать, как модем может передавать данные по аналоговой телефонной линии; s описать, как телефонная компания создает цифровую абонентскую линию при использовании части вашей местной телефонной линии; S объяснить основную концепцию передачи данных по телевизионному кабелю
Глава 16 Выезд на международную (Internet) трассу Имея набор подробных дорожных карт, вы можете найти множество способов проехать в любую точку страны, где хотели бы провести отпуск. Некоторые пути короче, другие длиннее, одни дороги хороши, другие похуже. Но по крайней мере к большинству мест всех 48-ми штатов США ведет какая-то дорога, которая соединяется с другими дорогами. Вы можете разъезжать по дорогам страны, как вам заблагорассудится, каждый раз выбирая один из множества вариантов. Точно так же существует большая IP-сеть, которая охватывает весь земной шар — Internet. Сеть Internet — это комбинация множества различных отдельных объединенных IP-сетей, связанных друг с другом так, чтобы каждое устройство имело один или несколько маршрутов для отправки пакетов другим хостам. Точно так же, как вы можете выехать на дорогу, проходящую мимо вашего дома, и добраться почти до любого места в стране на своем автомобиле, IP-пакет может быть передан в Internet и отправлен почти на любой IP-хост планеты. В этой главе мы расскажем о том, как использовать Internet для получения IP- пакетов, адресованных устройствам корпоративной сети, и их отправки. Затем вы познакомитесь с тремя устройствами, которые можно использовать для получения доступа к Internet из своего дома, а именно: модемами, цифровыми абонентскими линиями и кабельными модемами. И, как мы это уже делали в главах 14 и 15, в этой главе мы рассмотрим стандарты и протоколы уровней 1 и 2 модели OSI, с напоминаниями о том, как маршрутизаторы могут отправлять пакеты их получателям. Выехав на автомагистраль между штатами (Internet), можно добраться куда угодно В главах 14 и 15 глобальные сети несколько раз сравнивались с автомагистралями между штатами. Министерство транспорта США (DOT) прокладывает автомагистрали между штатами, и компании могут перевозить по ним товары; вы можете навестить бабушку или кого захотите — если, конечно, соблюдаете правила движения. Но фирмы, которые используют дороги, не занимаются их строительством. Та же идея применима к глобальным сетям и телефонной компании. Отдельная фирма не может прокладывать кабель между двумя зданиями; на это есть юридические и экономические причины. Но телефонная компания может позволить вам подключиться к ее сети и передавать данные через свою сеть в другое здание. Однако при использовании каналов глобальной сети телефонная компания позволяет общаться между собой только двум площадкам. Благодаря технологии Frame Relay между собой могут общаться много площадок, но все они должны использовать службу Frame Relay одной телефонной компании.
288 Часть V. Прокладка автомагистрали между штатами... Теперь возьмем ту же концепцию наличия поставщика услуг глобальной сети — телефонной компании — и применим ее к Internet. Компания может подключиться к Internet через канал глобальной сети или с использованием технологии Frame Relay. Через это одно физическое подключение компания получает доступ к огромному числу людей (буквально миллиардам людей), также имеющим доступ к Internet. Основная идея проиллюстрирована на рис. 16.1. Клиент компании Fredsco Модем, кабель DSL Рис. 16.1. Связь со всем миром через одно подключение к Internet На этом рисунке аббревиатурой ISP обозначен поставщик услуг (провайдер) Internet (Internet service provider). Internet-провайдер создает сеть, по которой могут быть отправлены IP-пакеты, подобно тому, как телефонная компания создает сеть, через которую могут быть отправлены биты (для каналов глобальной сети) и фреймы (при использовании технологии Frame Relay). Некоторые поставщики услуг Internet — это также телефонные компании. Internet состоит из трех главных компонентов: ■ IP-сети, созданные Internet-провайдерами; ■ IP-сети предприятий, которые подключены к серверам одного или более поставщиков услуг Internet; ■ компьютеры отдельных личностей, подключенные к серверам Internet- провайдеров. Как можно видеть на рис. 16.1, головной офис компании Fredsco теперь подключен к Internet. Чтобы соединяться с ISP1, Fredsco использует канал типа "точка- точка" глобальной сети. В главе 14 мы рассматривали пример, в котором каналы глобальной сети подключались к маршрутизаторам, установленным во внутренней сети компании Fredsco. Теперь кабель глобальной сети соединяет маршрутизатор FredsCo с маршрутизатором провайдера ISP1. IP-маршрутизация — ключ к пониманию того, что именно Internet обеспечивает для компании Fredsco. Поскольку маршрутизатор компании Fredsco соединяется с
Глава 16. Выезд на международную (Internet) трассу 289 маршрутизатором провайдера ISP1, он может отправлять пакеты маршрутизатору компании и получать их от него. А поскольку остальная часть Internet связана с рассматриваемой, IP-хосты, находящиеся в сети компании Fredsco, могут обмениваться данными со всеми остальными IP-хостами Internet. Например, на рис. 16.1 Fredsco может обмениваться данными со своим поставщиком, компанией GeorgeCo, которая связана с ISP2 посредством постоянного виртуального канала (PVC) сети Frame Relay. Кроме того, клиенты могут соединяться с местными поставщиками услуг Internet, используя технологии, описанные далее в этой главе. Следовательно, клиенты могут заказывать изделия компании Fredsco через Web-сайт Fredsco, посылать электронные письма отделу обслуживания клиентов компании Fredsco и т.д. Обратите внимание на то, что фактически связь между Fredsco и ISP1 и между GeorgeCo и ISP2 обеспечивают уже знакомые вам службы телефонной компании (канал глобальной сети и канал Frame Relay, соответственно). Поскольку мы уже говорили об этих технологиях, в оставшихся разделах этой главы мы сосредоточимся на других технологиях глобальной сети, главным образом на тех, которые используются для предоставления доступа к Internet из дома. В табл. 16.1 перечислены три варианта соединения с глобальной сетью, о которых вы узнали в этой части книги. Таблица 16.1. Сравнение каналов WAN, Frame Relay и Internet Тип WAN Общее название провайдера Физическое соединение Описание сервиса Канал WAN (выделенная линия) Frame Relay Internet Телефонная компания Провайдер Frame Relay Провайдер Internet 4-проводной кабель от каждой площадки клиента до АТС 4-проводной кабель от каждой площадки клиента до АТС Канал WAN или Frame Relay между клиентом и провайдером Телефонная компания передает биты между двумя площадками Провайдер пересылает фреймы, используя протокол DLCI, на одну из многих возможных площадок Провайдер маршрутизирует IP-пакеты на любой 1Р-хост Internet Остальная часть этой главы посвящена трем популярным технологиям, которые чаще всего используются для соединения с поставщиком услуг Internet. Большей частью эти технологии используются в домах. Одно из основных отличий заключается в том, что эти три технологии используют в своих интересах кабели, которое обычно уже проведены к дому, — телефонную линию или кабель сети кабельного телевидения. При использовании кабелей, которые уже установлены в доме, поставщик услуг Internet тратит меньше средств, делая свое обслуживание более дешевым для клиента. Кроме того, уменьшается время, необходимое для подключения клиента, и объем работ. Использование телефонной линии для передачи данных Первоначально телефонные компании создавались для того, чтобы их абоненты могли говорить друг с другом, используя телефон. Для этого почти к каждому дому в
290 Часть V. Прокладка автомагистрали между штатами... США провели местную телефонную линию. Эта телефонная линия прокладывается от дома (обычно под землей) к центральной АТС местной телефонной компании. Вы можете позвонить по телефону почти в любую точку мира, и ваша речь будет передана через телефонную линию, называемую абонентский шлейф или абонентская линия {local loop) в центральную АТС, а затем, через телефонную сеть, на другой телефон. Когда вы делаете звонок, телефонная компания создает новую линию передачи речи для ваших потребностей. Линия передани речевых сигналов {voice circuit) — это всего лишь термин, описывающий возможность передавать и принимать речевые сигналы между двумя телефонами. Другой термин, который вы должны знать, — коммутируемая телефонная сеть общего пользования {Public Switched Telephone Network, PSTN), который относится к объединенным сетям телефонных компаний. Хотя местная телефонная линия была первоначально предназначена для передачи речи, она может также обеспечивать передачу данных. Ниже мы расскажем немного о том, как работает эта технология, и о том, как вы можете использовать местную телефонную линию, чтобы отправлять данные Internet-провайдеру и получать их от него. Как сделать данные похожими на речь Сначала поговорим о том, что такое речь и как ее можно передавать по телефонной линии. Потом мы расскажем о том, как по той же телефонной линии можно пересылать данные. Звуковые волны распространяются через воздух, заставляя его вибрировать. Человеческое ухо воспринимает звук, потому что барабанная перепонка вибрирует в результате перемещения воздуха в ухе, этот сигнал воспринимается мозгом и обрабатывается им. Телефонная компания, однако, не может передать вибрации воздуха через свою сеть. Чтобы передать речь по телефонной линии, нужно преобразовать звук (вибрации воздуха) в электрический сигнал, потому что абонентский шлейф — телефонная линия между вашим домом и центральной АТС) — может передавать только электрические сигналы. Чтобы преобразовывать звуки в электричество, в состав телефона включают микрофон. На случай, если вы теперь день и ночь будете думать об этом, сообщим, что микрофон просто преобразует звуковые волны в аналоговый электрический сигнал. Телефонная компания может послать электрический сигнал с одного телефона на другой. На приемной стороне телефон преобразует электрический сигнал снова в звуковые волны, используя динамик, который вы подносите к уху. Впрочем, хватит говорить о передаче речи — наша цель состоит в передаче по телефонной линии данных. Чтобы понять, как это делается, давайте посмотрим, что происходит, когда телефон посылает по телефонной линии электрический сигнал (рис. 16.2). Из графика следует, что уровень напряжения в проводе непрерывно изменяется в течение долгого времени. Такой сигнал называют аналоговым электрическим сигналом {analog electrical signal). Вы могли бы вспомнить, как в главе 4 мы описывали цифровой электрический сигнал, используемый для передачи данных в Ethernet. Цифровой сигнал имеет дискретное значение в течение какого-то периода времени, затем оно изменяется на другое дискретное значение, что на графике отображается связкой прямых углов. Цифровая передача удобна для передачи данных, потому что передаваемые данные представлены в виде цифр — нулей и единиц, — которые также являются дискретными значениями.
Глава 16. Выезд на международную (Internet) трассу 291 Напряжение Время Длина волны ' 1 секунда 3 цикла колебаний = частота 3 герца Рис. 16.2. Аналоговый электрический сигнал: частота и амплитуда Телефонные компании прокладывали абонентские шлейфы для передачи речи, вот почему по ним передаются аналоговые электрические сигналы. Звуки речи представляют собой непрерывно изменяющиеся звуковые волны, поэтому аналоговые электрические сигналы, также непрерывно изменяющиеся, хорошо подходят для передачи речи. Короче говоря, термин аналоговый (analog) относится к непрерывно изменяющемуся сигналу, а термин цифровой (digital) — к сигналу, который принимает дискретные, или точные значения. Аналоговый сигнал имеет несколько характеристик, которые мы сейчас кратко определим, а затем поговорим о том, как, используя такой сигнал, можно передать данные. ■ Частота. Определяется тем, сколько раз сигнал повторяет сам себя в течение одной секунды (в предположении, что тон голоса человека не изменяется в течение целой секунды). На рис. 16.2 показан сигнал с частотой 3 герца (Гц), т.е. повторяющий сам себя 3 раза в секунду. Чем больше частота электрического сигнала, тем выше тон представляемого им звука. ■ Амплитуда. Представляет, насколько велика сила сигнала, более высокое значение амплитуды соответствует более громкому звуку. Первоначальная цель телефонной компании состояла в том, чтобы создать линию передачи между двумя телефонами. Каждая линия представляла собой электрический провод, позволяющий передавать аналоговый электрический сигнал в обоих направлениях, благодаря чему люди на концах провода могли разговаривать. Вспомните: первые телефонные компании появились раньше первых компьютеров на электронных лампах, поэтому поддержка передачи данных между компьютерами не была предметом рассмотрения первых телефонных компаний. Они хотели только передать аналоговые электрические сигналы, представляющие звуки, из одного места в другое. Что телефоны делают для речи, модемы делают для данных Когда вы звоните по телефону и что-то говорите, телефонная компания передает звуки вашей речи на телефон, находящийся на другом конце линии. Вы и другой человек можете говорить, создавая звуковые волны, и слушать, воспринимая звуковые
292 Часть V. Прокладка автомагистрали между штатами... волны. Телефон преобразует то, что человек может создать (звуковые волны) в то, что телефонная компания может передать через свою сеть (аналоговые электрические сигналы). Чтобы использовать те же самые телефонные линии для отправки данных, нужно устройство, в каком-то смысле аналогичное телефону. Как и телефон, это устройство должно уметь генерировать и получать аналоговые электрические сигналы. Однако вместо того, чтобы преобразовывать звуковые волны в аналоговые электрические сигналы и обратно, это устройство должно преобразовать двоичные нули и единицы. Общая идея представлена на рис. 16.3. Речь Абонентский шлейф Дом Фреда Телефонный коммутатор в АТОАхланть!^ Другой телебонный комлдугатор bjVi С Атланты Дом Барни Данные с помощью модемов Абонентский Д шлейф Сеть телефонной компании в^ ПК с модемом в доме Фреда Телефонный коммутатор Другой телефонный в АТб'Атяантьч^ коммщатор^^АТС Атланты Рис. 16.3. Сравнение телефона и модема Абонентский шлейф 4#~~*>***< Маршрутизатор ISP с модемом, протокол POP В верхней части рисунка телефоны генерируют и получают аналоговые электрические сигналы. Оборудование, установленное в центральной АТС телефонной компании, называют телефонным коммутатором, потому что устройство в центральной АТС предназначено для поддержки телефонного трафика, и предполагается, что на другом конце абонентского шлейфа также находится телефон. Чтобы обеспечить разговор, телефонная компания передает аналоговые электрические сигналы с одной стороны сети на другую. Модемы {modems) позволяют двум компьютерам посылать и получать последовательный поток битов по аналоговой телефонной линии, при этом на обычном абонентском шлейфе между местом установки модема и центральной АТС телефонной компании не нужно проводить никаких физических изменений. Поскольку телефонный коммутатор в центральной АТС готов посылать и получать аналоговые сигналы (соответствующие речи, передаваемой через абонентский шлейф), модемы просто посылают в телефонную коммутируемую сеть общего пользования (PSTN) аналоговый сигнал и ожидают получать аналоговый сигнал из PSTN. Однако вместо речи этот аналоговый сигнал представляет биты, которые один компьютер должен переслать на другой. Подобно тому как телефон преобразует звуковые волны в ана-
Глава 16. Выезд на международную (Internet) трассу 293 логовый электрический сигнал, модем преобразует двоичные цифры компьютера в представляющий их аналоговый электрический сигнал. Хотя большинство людей использует просто термин "модем", вы можете также назвать эти устройства аналоговыми модемами {analog modems), потому что они создают и интерпретируют аналоговые электрические сигналы. Модемы кодируют двоичные 0 или 1 аналоговым сигналом, изменяя какой- нибудь параметр аналогового сигнала, например его частоту или амплитуду. Изменение подобных характеристик аналогового сигнала известно как модуляция {modulation). Например, в одном из самых первых стандартов на модемы использовался аналоговый сигнал частотой 2250 Гц для передачи двоичных 1 и сигнал частотой 2100 Гц для передачи двоичных 0. (Вспомните: частота измеряется в герцах.) Модем способен модулировать, или изменять, частоту, придавая ей одно из двух значений, представляющих двоичную 1 или двоичный 0. Основы того, как модем может передавать данные, схематично представлены на рис. 16.4. Чтобы передать 0101, я посылаю сигнал 30 Гц, потом 10, потом 30 и снова 10 Гц! Маршрутизатор с модемом 0,1 с 0,1 с 0,1с 0,1 с 0 1 0 1 Рис. 16.4. Основная операция, выполняемая модемами Модемы соглашаются на какую-то одну схему кодирования передаваемых и принимаемых битов. На рис. 16.4 ПК2 использует более высокую частоту, которая показана как волна, которая поднимается и опускается быстрее, чем вторая, для обозначения двоичного 0. ПК2 использует более низкую частоту (меньше перемещений вверх и вниз), чтобы обозначить двоичную 1. Получатель — в данном случае маршрутизатор с модемом — использует те же правила для интерпретации значений сигнала. Телефонная компания без труда передает такой сигнал, потому что это — аналоговый электрический сигнал, а это именно то, что телефонная компания готова получать через абонентский шлейф. На рис. 16.4 модем модулирует (изменяет) частоту сигнала со значения 10 Гц на значение 30 Гц, чтобы закодировать двоичный 0 или двоичную 1, соответственно. Процесс, в ходе которого получатель интерпретирует аналоговый сигнал, преобразуя его вновь в двоичные знаки и используя те же правила, называют демодуляцией {demodulation). Термин модем {modem) — сокращенная версия комбинации этих двух слов — модуляция и демодуляция. Как быстро вы можете говорить? Чтобы обеспечить конкретную скорость передачи, модемы должны посылать и получать сигнал, который может изменяться с такой скоростью. Например, на
294 Часть V. Прокладка автомагистрали между штатами... рис. 16.4 подразумевалось, что частота изменяется каждую 0,1 секунды. Это означает, что ПК может посылать 10 битов каждую секунду. Это смехотворно низкая скорость, но для того, чтобы показать на рисунке более высокую скорость, потребовалось бы намного больше бумаги! Первые модемы передавали данные со скоростью 9600 бит в секунду; таким образом, такой модем изменял бы частоту сигнала (по мере необходимости) каждую 1/9600 секунды. Точно так же модем, принимающий сигнал, должен определять значение его частоты каждую 1/9600 секунды, интерпретируя сигнал как двоичную 1 или двоичный 0. Современные модемы передают данные со скоростями, приблизительно равными 56 кбит/с. Вызываю Internet! Вызываю Internet! Давайте осознаем это: фактически каждый житель планеты знает об Internet. Но каждый из нас, вероятно, имеет собственное мнение относительно того, чем является Internet. Одно из определений Internet таково: это служба пересылки IP- пакетов. Internet — это всего лишь набор сетевых устройств, кабелей и программного обеспечения, которые вместе обеспечивают отправку IP-пакетов получателю. Как уже говорилось, Internet включает сети предприятий, домашних пользователей, поставщиков услуг Internet и их сети, а также все соединения между ними. Если вы будете рассматривать Internet как службу пересылки IP-пакетов, то каждое предприятие захочет иметь по крайней мере один маршрутизатор, который сможет отправлять пакеты маршрутизатору провайдера Internet и получать от него пакеты. Например, при использовании каналов глобальной сети типа "точка-точка" между маршрутизатором, установленным в сети предприятия, и маршрутизатором, находящимся в сети поставщика услуг Internet, эти два маршрутизатора смогут пересылать IP-пакеты в обоих направлениях. В конечном счете, канал глобальной сети позволяет маршрутизаторам всего лишь передавать пакеты. И если корпоративная сеть будет иметь канал глобальной сети того или иного вида между своей сетью и провайдером Internet, такое предприятие сможет общаться с Internet. В оставшихся разделах этой главы мы будем рассматривать способы подключения к Internet из дома. После того как вы установите соединение, все, что должен будет делать ваш ПК, — это посылать и получать IP-пакеты так, чтобы ваши приложения работали. По существу, как только ваш ПК сможет обмениваться IP-пакетами с провайдером Internet, он станет частью глобальной сети Internet. Теперь я знаю, как говорить, но кому позвонить? Вы можете снять трубку домашнего телефона и позвонить почти в любой уголок планеты. Хотя стоимость междугородных звонков намного снизилась за последние 10 или сколько-то там лет, она все еще значительна, если звонить приходится далеко. Однако большинство местных телефонных компаний позволяют делать местные телефонные звонки — по крайней мере, звонки, которые они определяют как "местные" — без дополнительной оплаты сверх абонентской. Многие провайдеры Internet позволяют вам соединяться с их сетями, используя модемы, но существует уловка, позволяющая снизить стоимость услуг. Чтобы сни-
Глава 16. Выезд на международную (Internet) трассу 295 зить затраты, Internet-провайдеры пробуют добиться того, чтобы как можно больше людей могли делать местные бесплатные телефонные звонки и связываться таким образом с одним из их маршрутизаторов. Поставщики услуг Internet стратегически определяют местонахождение маршрутизаторов в различных частях мира так, чтобы вы могли сделать внутригородской звонок из вашего дома по телефонной линии, которая ведет в здание, где Internet-провайдер разместил свое оборудование. Здание такого типа и аппаратуру в нем называют точка присутствия {Point Of Presence, POP), рис. 16.5. Фред (Атланта) Барни (Цинциннати) ISP1 Атланта POP IMF ISP1 Цинциннати POP Web-сервер www.bowling.com Рис. 16.5. Звонок в точку присутствия местного Internet-провайдера Как видите, Фред может сделать внутригородской звонок и соединиться с точкой присутствия в Атланте, и Барни может сделать внутригородской звонок, чтобы установить соединение с POP, расположенной в Цинциннати. Оба звонка будут бесплатными, потому что предполагаемый поставщик услуг Internet расположил свои точи присутствия поблизости от Фреда и Барни. Все, что Фред и Барни должны сделать, — это позвонить по местному телефону. Поставщик услуг Internet взимает небольшую плату за свой сервис, которая в большинстве районов США составляет на сегодняшний день от $10 до $20 в месяц. Теперь, когда я знаю, кому звонить, что я должен сказать? Пока мы изложили лишь часть концепции, на основе которой два модема, находящиеся на разных концах телефонной линии, могут передавать и получать данные. Эти вопросы главным образом касаются уровня 1 модели OSI, ее физического уровня. Подобно всем остальным сетевым устройствам, ПК, связываясь по телефонной линии с Internet-провайдером, обычно нуждается в отправке IP-пакетов в Internet и получении таких пакетов из Сети. В большинстве случаев современные ПК и маршрутизаторы используют в качестве протокола канального уровня протокол РРР. (РРР был описан нами в главе 14.) Протокол РРР позволяет Фреду посылать и получать пакеты по коммутируемой телефонной линии.
296 Часть V. Прокладка автомагистрали между штатами... Например, представьте, что Фред заходит на Web-сайт www.bowling, com, чтобы узнать последние новости о соревнованиях по боулингу (рис. 16.5). Вы знаете из главы 13, что Фред должен будет послать IP-пакет DNS-серверу, чтобы преобразовать имя www.bowling.com в соответствующий IP-адрес. Затем он должен будет послать несколько IP-пакетов Web-серверу, чтобы установить с ним ТСР- соединение. После этого Фред может послать пакет этому серверу с просьбой прислать домашнюю страницу www.bowling.com. Маршрутизация осуществляется как обычно. На линии между маршрутизатором Internet-провайдера и ПК Фреда для пересылки фреймов используется протокол РРР. Использование телефонной линии для передачи данных — путь DSL Модемы пользуются большим успехом в мире сетей. Почти повсюду, где вы могли бы установить ПК, поблизости, вероятно, уже есть телефонная линия. Благодаря использованию ПК с модемом почти каждый пользователь имеет возможность подключиться к Internet. Однако модемам свойственны и недостатки. Один из самых главных проявляется, когда в семье есть болтливые подростки или другие родственники, любящие поговорить по телефону. Модемы используют телефонную линию, чтобы сделать то, что для телефонной компании представляется телефонным звонком. Но в то время, когда вы занимаетесь серфингом в Internet, никто другой не может звонить по телефону, и наоборот, когда подросток говорит по телефону, ваш модем не может получить доступ к Internet. Другой большой недостаток — низкая скорость. Хотя скорость 56 кбит/с для какого-то пользователя могла бы показаться достаточно высокой, для некоторых людей это уже недостаточно быстро. Сегодня к электронным письмам часто присоединяют объемные файлы; загрузка таких писем на компьютер может занять очень много времени. Кроме того, современные Web-сайты часто содержат множество графики и анимации, для отображения которых требуется высокая пропускная способность. Что было очень нужно миру, — это способ быстро посылать и получать данные, используя все ту же старую вездесущую телефонную линию, причем при сохранении возможности одновременно говорить по телефону. И мир получил цифровую абонентскую линию (Digital Subscriber Line, DSL). Цифровая абонентская линия — альтернативная технология, используемая для передачи данных Internet-провайдеру и получения их от него. Она использует все ту же, старую телефонную линию, но работает с намного более высокой скоростью. Кроме того, вы можете одновременно звонить по телефону и просматривать ресурсы Internet (пересылать IP-пакеты). Но, конечно, стоит все это несколько дороже. Д-р Аналог Голос и м-р Скрытый Цифровой Доктор Джекил и мистер Хайд встали пред серьезной проблемой раздвоения личности в классической книге Роберта Луиса Стивенсона.1 Доктор Джекил, чтобы добиться 1 Имеется в виду психологический роман "Странная история д-ра Джекила и м-ра Хайда". — Прим. ред.
Глава 16. Выезд на международную (Internet) трассу 297 раздвоения, использовал химические препараты. Цифровая абонентская линия создает раздвоение личности местной телефонной линии (абонентского шлейфа), используя новейшую технологию. Технология DSL позволяет передавать по телефонной линии добрый старый аналоговый сигнал, соответствующий речи; в то же время DSL позволяет пропускать через ту же самую телефонную линию цифровой сигнал. Телефон генерирует аналоговые сигналы в частотном диапазоне от 0 до 4000 Гц. Большая часть речевых сигналов лежит в частотном диапазоне от 300 Гц до 3300 Гц. Разработчики технологии DSL определили стандарты так, чтобы цифровой сигнал DSL использовал частоты выше 4000 Гц. Это означает, что они не создают помех передаче человеческой речи. Чтобы понять, что при этом получается, посмотрите на рис. 16.6. Дом Энди АТС Мэйберри Рис. 16.6. DSL-соединение, осуществляемое из дома На рисунке показаны аналоговый телефон и модем DSL, подключенные к одному настенному блоку с двумя розетками. (Домашние телефоны большинства людей подключаются к настенному блоку, содержащему только одну розетку; чтобы использовать цифровую абонентскую линию, вы можете купить небольшое пластмассовое устройство, которое содержит две розетки, розничная цена его составляет приблизительно $5 в большинстве магазинов товаров для офиса.) Вы включаете DSL-модем в настенную розетку точно так же, как любой из телефонов в вашем доме. Вы можете снять трубку своего старого телефона и позвонить точно так же, как вы делали раньше. Но в то же время DSL-модем может отправлять данные по той же самой телефонной линии на маршрутизатор, расположенный в сети поставщика услуг Internet, как показано на рисунке. Цифровая абонентская линия использует тот же абонентский шлейф, кабель которого уже проложен между центральной АТС и вашим домом, но теперь централь-
298 Часть V. Прокладка автомагистрали между штатами... ная АТС соединяет провода абонентского шлейфа с устройством, названным мультиплексор доступа к цифровой абонентской линии (DSL Access Multiplexer, DSLAM). DSLAM разделяет аналоговый и цифровой сигналы, пришедшие через абонентский шлейф. DSLAM передает сигнал, получившийся в результате телефонного разговора — лежащий в частотном диапазоне 0-4000 Гц — на телефонный коммутатор. Этот коммутатор обрабатывает сигнал точно так же, как любая другая аналоговая линия передачи речи. Наоборот, DSLAM не подает цифровой электрический сигнал на телефонный коммутатор. DSLAM пересылает трафик данных на маршрутизатор, принадлежащий Internet-провайдеру, крторый обеспечивает обслуживание такого рода (по крайней мере, на нашем рисунке). Обратите внимание на то, что маршрутизатор Internet-провайдера фактически изображен на территории местной телефонной компании, что справедливо в очень многих случаях. Чтобы поддерживать DSL, Internet-провайдер сотрудничает с местной телефонной компанией, устанавливая часть своего оборудования на территории АТС, этот процесс называется сосредоточение {co-location, или, кратко, со-lo). Мультиплексор доступа к цифровой абонентской линии (DSLAM) местной телефонной компании пересылает IP-пакеты маршрутизатору Internet-провайдера и получает их от него, в то время как телефонная компания обеспечивает все телефонные разговоры. Если вы можете получать двоичные знаки от ПК, передаваемые через DSL-модем к DSLAM и, наконец, на маршрутизатор Internet-провайдера, вы сможете обмениваться и IP-пакетами с этим маршрутизатором. Кстати, цифровая абонентская линия использует в качестве уровня 2 протокол РРР. Аналогично, поскольку DSL может получать аналоговый электрический сигнал от телефона, передавать его через абонентский шлейф к DSLAM, а затем к коммутатору телефонной компании, вы можете звонить по телефону. При использовании DSL в роли Internet-провайдера часто выступает не та компания, которая обеспечивает местное телефонное обслуживание. Как правило, потребитель запрашивает высокоскоростной доступ к Internet с использованием технологии DSL у Internet-провайдера, поставщик услуг Internet взимает с клиента плату за обслуживание, а затем отдает местной телефонной компании некоторую часть этой платы. Вы по-прежнему должны платить за местный телефон. Вы пользуетесь двумя услугами — телефоном и Internet — и оплачиваете два счета, предполагая, что получаете услуги Internet не от местной телефонной компании. Быстрее — значит, лучше Для всех типов физических сетевых стандартов, описанных в этой книге, были варианты их использования на различных скоростях. Даже Ethernet имеет несколько вариантов. Если говорить о вариантах для глобальной сети, то для скорости передачи есть еще больше вариантов, и DSL не является в этом смысле исключением. Стандарты DSL имеют множество разновидностей, позволяя тем самым удовлетворить различные потребности. (Большинство стандартов было разработано Международным союзом телекоммуникаций, который разработал также большинство стандартов на модемы.) Например, цифровая абонентская линия имеет ограничение на длину абонентского шлейфа. (Длина абонентского шлейфа — это просто суммарная длина всех кабелей, которые проложены от дома до центральной АТС). Не-
Глава 16. Выезд на международную (Internet) трассу 299 которые варианты DSL позволяют абонентскому шлейфу быть намного длиннее, тогда как другие — позволяют использовать лишь короткий шлейф. Допустимые расстояния могут составлять от мили до 4-5 миль. Для стандартов с более коротким локальным абонентским шлейфом скорости передачи, как правило, намного выше. Скорости для DSL могут достигать 50 Мбит/с, но при этом вы должны иметь короткий абонентский шлейф; более низкие скорости, обеспечиваемые технологией DSL, составляют приблизительно 384 кбит/с, но зато вы можете иметь намного более длинный абонентский шлейф. Скорость, с какой данные передаются от Internet до дома, выше, чем скорость в противоположном направлении. Это называется асимметричные скорости передачи (asymmetric transmission rates). Как правило, намного больше данных передается к домашнему ПК, чем в обратном направлении, это справедливо для большинства приложений TCP/IP. Например, когда вы хотите просмотреть Web-страницу, объем HTTP- запроса мог бы составлять несколько сотен байтов, но Web-страница могла бы иметь объем, измеряемый миллионами байтов. Поэтому, вместо того чтобы обеспечивать одну и ту же скорость передачи в обоих направлениях, лучше иметь большую пропускную способность в направлении к дому, где это действительно необходимо. Отправка данных без использования телефонной линии Есть и другая популярная альтернатива аналоговым модемам и технологии DSL, вы должны знать хотя бы основы этой технологии. Многие дома в Соединенных Штатах подключены к сетям кабельного телевидения (абонентское телевидение). Аналогично топологии DSL, кабельные модемы обеспечивают постоянный доступ к Internet, используя для передачи данных кабель абонентского телевидения. Вы можете заняться серфингом в Internete через этот кабель и одновременно звонить по телефону, но в то же самое время можете смотреть телевизор. Кабельные модемы используют частоты, которые в противном случае использовались бы для организации дополнительных телевизионных каналов. Это немного похоже на использование канала Internet, наряду с каналами CNN, TBS, ESPN, Cartoon Network и всеми другими кабельными каналами. Хотя детали очень отличны, общие идеи — такие же, как при использовании технологии DSL. ■ Кабель может быть "раздвоен" и связан как с кабельным модемом, так и с телевизорами, установленными в доме. ■ Компания абонентского телевидения отделяет данные от телевизионных сигналов в местном офисе. ■ Компания абонентского телевидения передает полученные данные маршрутизатору, принадлежащему Internet-провайдеру. ■ Если Internet-провайдер и компания кабельного телевидения — разные фирмы, вы платите ежемесячную плату Internet-провайдеру и отдельно — компании кабельного телевидения, обеспечивающей основное телевизионное обслуживание. ■ Используются различные скорости, обычно до 40 Мбит/с в направлении к дому, но пропускная способность делится среди многих абонентов.
300 Часть V. Прокладка автомагистрали между штатами... Резюме Модемы позволяют пересылать данные через телефонную коммутируемую сеть общего пользования (PSTN). Чтобы реализовать эту возможность, один модем звонит по номеру телефона другого модема. После того как телефонная компания обеспечит "разговор", модем может отправить данные, передавая через телефонную линию аналоговые сигналы, один из которых означает двоичный 0, другой двоичную 1. Часто модемы используются для обмена данными с маршрутизатором Internet- провайдера. Благодаря этому домашний ПК может подключиться к Internet и посылать либо получать IP-пакеты, обмениваясь ими почти с каждым IP-хостом в мире. Чтобы такой сервис был недорогим, Internet-провайдеры стараются установить маршрутизаторы в точках присутствия (POP) в каждой зоне, где можно звонить оп телефону, пользуясь местным тарифом. Цифровая абонентская линия (DSL) позволяет пересылать данные, используя цифровые сигналы, по телефонной линии, уже протянутой к дому. Благодаря ей можно получать доступ к Internet и одновременно говорить по телефону. Чтобы обеспечить работоспособность этой службы, телефонная компания подключает абонентский шлейф к DSLAM, размещенному в центральной АТС. Мультиплексор доступа к цифровой абонентской линии (DSLAM) отделяет аналоговый сигнал, соответствующий речи, и подает его на телефонный коммутатор, а данные направляет на маршрутизатор, принадлежащий Internet-провайдеру. Кабельные модемы используют ту же модель, что и цифровая абонентская линия. Особое устройство, установленное в офисе компании кабельного телевидения, отделяет данные от телевизионного трафика. Кабельные модемы используют кабель абонентского телевидения для передачи данных, работая на частотах, которые иначе использовались бы для организации большего количества телевизионных каналов. Кабельные модемы позволяют одновременно звонить по телефону, смотреть телевизор и работать с ресурсами Internet. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Что является тремя главными компонентами Internet (согласно нашей книге)? 2. Выделенные каналы обеспечивают работу службы передачи битов, тогда как Frame Relay обеспечивает работу службы передачи фреймов. Работу какой службы Internet обеспечивает для хостов. 3. Чем отличаются электрические сигналы, посылаемые по абонентскому шлейфу телефоном, от сигналов модема? 4. Чем отличаются электрические сигналы, посылаемые по абонентскому шлейфу телефоном, от сигналов DSL-модема? 5. Какие два параметра аналоговых электрических сигналов, упомянутые в этой книге, модем может изменять, чтобы закодировать двоичные 0 или 1? 6. Приблизительно какая скорость является максимальной скоростью передачи для модемов?
Глава 16. Выезд на международную (Internet) трассу 301 7. Приблизительно какая скорость является максимальной скоростью передачи для DSL-модемов, когда расстояние от дома до центральной АТС относительно велико? 8. Для того чтобы технология DSL могла работать, с помощью какого устройства телефонная компания разделяет данные и сигнал, соответствующий речи? 9. Что означает аббревиатура DSL? 10. Что означает термин "модем"? 11. Какая из трех технологий доступа в Internet, описанных в этой главе, не позволяет говорить по телефону при использовании служб Internet? 12. Какой протокол уровня 2 обычно используются в случае применения модема или цифровой абонентской линии для соединения с Internet-провайдером?
ЧАСТЬ VI Обеспечение безопасности сетей В части VI вы узнаете о концепциях и продуктах, предназначенных для защиты сетей, обеспечиваемой за счет ограничения прав пользователей и возможности передачи пакетов. В главе 17 описывается, как удостовериться в том, что пользователям разрешают использовать сеть, и рассказывается о процессе идентификации, авторизации и учета (AAA). Глава 18 посвящена описанию того, как обеспечить подключение компании к Internet и удержать любопытных либо злонамеренных личностей из общедоступного сектора Internet от причинения вреда устройствам, находящимся в корпоративной сети. Глава 17. Прием "правильных" людей и ограничения для "неправильных" Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим (сетевым) соседям
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S перечислить три компонента механизма защиты AAA; S описать основные процессы, используемые для идентификации, авторизации и учета; s объяснить, как осуществляется базовый процесс обработки имен пользователей и паролей Internet-провайдером; S объяснить выгоды от использования VPN для соединения с сетью предприятия через Internet ':^':>^^Щ%?^ '**'***% 'У*'<: -'',//, *- :»Г'№Я!?к1"&'..<- '"""*''''''?''>%, /.;';*'*'%"У.'''*\'.,, V''S ,'''''' t ''-Щ А. еш%
Глава 17 Прием "правильных" людей и ограничения для "неправильных" Если вы читали эту книгу, начиная с первой страницы, поздравляем! Вы дошли до финальной части книги. Вы уже узнали основы того, как создаются сети, способные отправлять IP-пакеты туда, куда нужно. Далее мы расскажем о механизмах безопасности, помогающих защитить вашу сеть. В данной главе рассматриваются способы предоставления доступа к сети только устройствам определенных пользователей. Эти устройства обычно бывают подключены или к локальной сети, или к сети Internet-провайдера. После того как эти устройства подключены, пользователи могут обращаться к приложениям, расположенным на серверах. В этой главе вы изучите основы того, как серверы используют имена пользователей и пароли, чтобы удостовериться в том, что они "знают" человека, который собирается использовать ресурсы сервера. Попутно вы узнаете о двух типах проблем безопасности, связанных с использованием Internet. Безопасная езда при использовании AAA В США Автомобильная Ассоциация Америки (AAA) — одна из самых известных компаний, которая обеспечивает обслуживание, связанное с автомобильными поездками. Первоначально AAA помогала людям в таких вопросах, как экстренная помощь в случае, если во время поездки их транспортные средства ломались. Когда автор этой книги был ребенком, все люди, предпринимающие автомобильные поездки, старались стать членами AAA. Тогда они могли получить техническую помощь, скидки при устройстве в гостиницы, расположенные вблизи от автомагистралей, скидки в различных фирмах и многие другие услуги, полезные при поездках. Можно сказать, что членство в AAA гарантировало более высокую степень безопасности при автомобильных путешествиях. Чтобы обеспечить безопасную работу сетей, в большинстве из них также используется некоторая разновидность AAA, но в этом случае аббревиатура AAA расшифровывается как "идентификация, авторизация и учет". Под аббревиатурой AAA (произносится как "три А") понимаются три механизма защиты; на самом деле их больше, но эти три касаются проблем, связанных с устройствами или пользователями. Точно так же, как человек мог бы воспользоваться услугами дорожного клуба AAA во время автомобильного путешествия, вы, вероятно, используете сервер AAA, когда ваш ПК "путешествует" по сети, посылая и получая данные.
306 Часть VI. Обеспечение безопасности сетей Проверка лицензий на предмет выявления незаконных водителей (пользователей) В большинстве стран дороги строит правительство. Неудивительно, что потом правительство определяет (это должно делать именно правительство, не так ли?), кому можно ездить по дорогам, требуя наличия водительских прав. Точно так же, прежде чем вы сможете обратиться к большинству серверов, вы должны получить лицензию на право пользования этим сервером. Вместо водительских прав вы должны "предъявить" имя пользователя и пароль. Имя пользователя {username ) по существу является вашим именем в сети, а пароль {password) — это секретная строка текста, который должны знать только вы. Процесс базовой аутентификации осуществляется примерно так, как показано на рис. 17.1. 'J) Мой список пользователей включает имя "Фред", с паролем "bOWIing". Все правильно! Фред Рис. 17.1. Базовая аутентификация проводится с использованием имени пользователя и пароля На рисунке показан пятиэтапный процесс проверки сервером подлинности (аутентифиция) Фреда. Аутентификация {authentication), первая "А" в аббревиатуре AAA, — это процесс определения того, является ли пользователь тем, за кого он себя выдает. Этапы, показанные на рисунке, таковы. 1. Фред запрашивает Web-страницу. 2. Web-сервер отвечает, спрашивая у ПК Фреда имя пользователя и пароль. 3. Фред вводит в форме свои имя пользователя и пароль и посылает ее обратно Web-серверу. 4. Web-сервер проверяет свой список имен пользователей и проверяет, правилен ли пароль. 5. Если имя пользователя и пароль правильны, Web-сервер пересылает содержимое Web-страницы.
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 307 Пока что Фред счастлив, получив понадобившуюся ему Web-страницу. Однако позже он захочет послать электронную почту, и ему вновь придется вводить имя пользователя и пароль, чтобы воспользоваться услугами сервера РОРЗ. Чтобы передать файлы, используя протокол FTP, ему вновь придется вводить имя пользователя и пароль. Но Фред по-прежнему остается добрым старым Фредом, и нет необходимости иметь три набора имен пользователя и паролей, по одному для каждого сервера приложений. Чтобы решить эту проблему, имена пользователей и пароли могут быть сохранены на сервере, названном сервером аутентификации (authentication server), тогда различные серверы приложений могут направлять запросы серверу аутентификации. В зависимости от того, какие операционные системы установлены на серверах приложений и как эти серверы сконфигурированы, они могут использовать различные программные продукты и протоколы, обеспечивающие взаимодействие между серверами приложений и сервером аутентификации. Например, при использовании продуктов Microsoft сервер аутентификации можно было бы назвать контроллером домена, или сервером Active Directory. При работе в среде UNIX мог бы использоваться протокол Kerberos. Независимо от того, какие сервер аутентификации и протоколы используются, основная работа выполняется так, как показано на рис. 17.2. C) Мой список пользователей включает имя "Фред", с паролем "bOWling". Все правильно! FTP (Поток протокола Kerberos) (Потоки протокола, встроенного в протокол приложения) Фред Рис. 17.2. Базовая аутентификация, основанная на использовании имени пользователя и пароля Каждый из серверов приложений запрашивает имя пользователя и пароль, а затем обращается за помощью к серверу аутентификации. Этапы этого процесса, показанные на рисунке, таковы.
308 Часть VI. Обеспечение безопасности сетей 1. После того как Фреду направляется запрос относительно его имени пользователя и пароля, он вводит свои имя пользователя и пароль и посылает их на Web-сервер. 2. Web-сервер посылает запрос серверу аутентификации. 3. Сервер аутентификации проверяет имя пользователя и пароль. 4. Сервер аутентификации посылает сообщение назад Web-серверу с сообщением о том, прошел ли пользователь проверку на предмет аутентификации. (В данном примере предполагается, что имя пользователя и пароль — правильные). 5. Web-сервер пересылает Web-страницу Фреду. При обмене данными между ПК Фреда и серверами приложений протокол каждой прикладной программы запрашивает имя пользователя и пароль пользователя. Индивидуальные протоколы уровня приложений обмениваются с клиентской программой именем пользователя и паролем. Между серверами приложений и сервером аутентификации может использоваться несколько различных протоколов для обмена информацией относительно пароля и имени пользователя. Примером такого протокола может служить Kerberos, стандарт TCP/IP. Как вы сюда попали? В рисунках, использованных до сих пор в этой главе, клиент (Фред) иногда использует ПК, включенный в локальную сеть, входящую в корпоративную сеть компании Fredsco. Приложения предлагают Фреду ввести пароль, прежде чем он может использовать их, но ПК Фреда может пользоваться сетью без проверки его идентичности. Многие из нас не задумываются об этом, но в большинстве мест принимаются меры по обеспечению физической безопасности локальной сети. Если компания развернула локальную сеть в здании офиса и не обеспечила ее физическую безопасность, сеть становится доступной посторонним людям, входящим в здание, подключающимся к локальной сети и пытающимся получить доступ к ее серверам. Если физическая безопасность обеспечивается на должном уровне, было бы разумным позволить любому человеку, находящемуся в здании, включить свой компьютер в розетку RJ-45 в стене и подключиться к локальной сети. Хотя на сегодняшний день большинство сетей позволяют любому ПК корпоративной сети соединяться с ее серверами, на многих предприятиях добавляется еще один этап: в целях безопасности должна быть проведена аутентификация устройств, прежде чем они могут послать серверу хотя бы один пакет. Проверка прав: а может ли он управлять таким транспортным средством? Водительские права обычно дают вам право управлять самыми популярными пассажирскими транспортными средствами при езде по правительственным дорогам, построенным на налоги с ваших, трудом заработанных денег. Однако чтобы управлять некоторыми транспортными средствами, нужны особые водительские права. Например, чтобы управлять большим 18-колесным грузовиком, вы должны иметь особые права водителя грузовиков (commercial driver's license). И прежде чем вам разрешат рисковать жизнью, разъезжая на мотоцикле, также придется получить особые водительские права.
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 309 Подобное происходит и с безопасностью сетей, и это имеет отношение ко второй букве "А" в аббревиатуре AAA — к авторизации. Авторизация {authorization) — это процесс выяснения того, что конкретному пользователю разрешается делать. На рис. 17.3 показана сеть, в которой используется относительно простой способ авторизации. Web-сервер отдела зарплаты Пользователь Отдел Фред Продаж Барни Зарплаты Расчётка Фреда Зарплата: 100,00 Налог: 99,90 К выплате: 0,10 / Фред Барни \ Ведомость по зарплате Фред 0,10 Вильма 999,34 Бетти 42 311,18 Рис. 17.3. Фреду недоступна информация из платежной ведомости других сотрудников В данном примере Фред, просматривая страницу Web-сервера отдела заработной платы, может видеть данные только о собственной зарплате, а вот Барни может видеть информацию о зарплате всех сотрудников. Как следует из записи для Фреда в конфигурации сервера аутентификации, Фред находится в отделе продаж компании, а Барни находится в отделе заработной платы. Поскольку Фред находится в отделе продаж и получает комиссионные, он имеет законное право знакомиться с данными, касающимися зарплаты, которую он получит на следующей неделе. Поскольку Барни работает в отделе заработной платы, он должен быть в состоянии выявлять проблемы с чьей-то зарплатой, поэтому нуждается в полном доступе. В данном случае Web-сервер может свериться с сервером AAA, чтобы узнать, в каком отделе работает каждый пользователь. Тогда Web-сервер может решить, к каким Web-страницам каждый пользователь имеет право обратиться. Отслеживание нарушений водителей (пользователей) Лично я не могу припомнить, чтобы полицейский проверял мои водительские права в последние 10 лет. Я уверен в этом не потому, что никогда не превышал скорость за последние 10 лет; просто меня ни разу не поймали. Честное слово. Поэтому я могу только умозрительно говорить о том, что, когда полицейские засекают водителя, делающего что-то не так на дороге, они делают запись об этом. В наши дни эта информация поступает в базу данных, чтобы полицейский отдел мог отслеживать тенденции. Например, полиция могла бы остановить чей-то автомобиль за превышение скорости. Полицейский записывает номер водительских прав и проверяет, делал ли этот человек другие нарушения. Это действительно помогает парням, стоящим на страже закона: "Как выясняется, г. Джоунс, вы превышали скорость по утрам каждую пятницу, в течение всего прошлого месяца. Я думаю, пора забрать у вас водительские права!"
310 Часть VI. Обеспечение безопасности сетей Последняя буква "А" в аббревиатуре AAA означает учет (accounting). Те же самые серверы, которые выполняют аутентификацию и обеспечивают авторизацию, могут вести учет каждого запроса относительно аутентификации или авторизации пользователя. Наиболее очевидная и, вероятно, самая важная функция системы учета состоит втом, чтобы сделать запись и сообщить, когда пользователи вводят неправильный пароль. Хотя возможны и случайные ошибки, обнаружив, что Фред последовательно делает несколько попыток подключиться к серверу и каждый раз вводит недопустимый пароль, система могла бы сообщить о том, что кто-то пробует угадать пароль Фреда. Обязанностью системы учета является запись отдельных попыток, генерация отчетов и уведомление персонала в случае, если за короткий период происходит слишком много ошибочных попыток. Проверка того, что все (Internet-) водители имеют должные права Прежде чем получить законную возможность ездить по общественным дорогам, вы должны получить водительские права. В правах указывается ваше имя, номер удостоверения, размещается фотография. Точно так же при использовании ресурсов сети вас можно было бы попросить удостоверить вашу идентичность, чтобы сеть могла подтвердить, что вы имеете право ее использовать. Например, если вы уже когда-либо работали в сети, то, вероятно, отвечали на вопрос относительно вашего пользовательского имени и пароля (аутентификация). Большинство людей, которые использовали Web-браузеры, знают, что они не могут просматривать Web-страницы, которые не являются необходимыми для выполнения их служебных обязанностей, или проверять электронную почту других сотрудников (авторизация). И хотя пользователи никогда не видят отчеты об их неудачных попытках ввести пароль, вы должны догадываться о том, что хорошая политика безопасности включает меры предосторожности, принимаемые при повторении таких попыток (учет). В примерах этой главы предполагалось, что ПК подключен к локальной сети в физически безопасном здании офиса. Но люди, которые пользуются модемами или цифровой абонентской линией (DSL), чтобы получить доступ к Internet из дома, должны пройти дополнительный этап аутентификации. Internet-провайдеры хотят знать, что пользователь, который соединяется с ними, оплатил их услуги, и они хотят быть уверенными в том, что знают, кем является пользователь, на случай нарушения им правил, юридически позволяющих ему подключаться к сети Internet- провайдера. В следующих двух разделах будет рассказано о том, как Internet- провайдеры проводят аутентификацию пользователей, прежде чем последние могут использовать их сеть, и как протоколы не позволяют узнать чужой пароль. Используйте РАР и CHAP Ранее в этой главе мы кратко рассказали о том, что серверы спрашивают у пользователя его имя пользователя и пароль. Протоколы, которые обмениваются именем пользователя и паролем, встроены в большинство протоколов уровня приложений. Например, ранее, в главе 8, вы читали о протоколе РОРЗ и сообщениях, которые РОРЗ-сервер использует, чтобы запросить у РОРЗ-клиента имя пользователя и пароль.
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 311 Internet-провайдеры хотят аутентифицировать пользователя, но будет лучше, если они могут подтвердить его подлинность прежде, чем пользователь попробует использовать хотя бы одно приложение. Internet-провайдеры не могут рассчитывать на то, что каждый из их клиентов будет запускать свой Web-браузер (некоторые могут использовать только электронную почту), или, наоборот, что клиенты могут использовать только Web-браузер, но не электронную почту. Все, что Internet-провайдер хочет сделать, — это удостовериться, разрешено ли данному пользователю устанавливать соединение и внес ли он ежемесячную плату за услугу. Следовательно, Internet- провайдер имеет две проблемы, связанные с аутентификацией пользователя. ■ Internet-провайдер хочет аутентифицировать пользователя/клиента. ■ Internet-провайдер не хочет, чтобы клиент проходил процесс аутентификации при использовании протокола каждого конкретного приложения. Чтобы решить эти проблемы, Internet-провайдеры используют часть протокола соединения "точка-точка" (РРР), которая определяет две опции для обмена информацией относительно пароля и имени пользователя. Имена, появившиеся в заголовке этого раздела — РАР и CHAP. Протокол аутентификации по паролю {Password Authentication Protocol, PAP) и протокол взаимной аутентификации {Challenge Handshake Authentication Protocol, CHAP) — оба являются частью протокола РРР. Вы знаете из предыдущих глав, что РРР — это протокол канального уровня, который часто используется для соединений с глобальной сетью, особенно при использовании в качестве средства подключения к Internet модемов или DSL. И РАР, и CHAP предоставляют протокол для обмена именем пользователя и паролем. На рис. 17.4 представлен процесс обмена паролем и именем пользователя. (З) Мой список пользователей включает имя "Фред", с паролем "bOWling". Все правильно! Фред Рис. 17.4. Основы работы РАР Это процесс столь же прост, как показано на рисунке. Протокол РАР использует двухсторонний поток сообщений на фоне других сообщений и событий.
312 Часть VI. Обеспечение безопасности сетей 1. Фред использует РАР, чтобы послать имя пользователя (Фред) и пароль (bOWling). 2. Маршрутизатор посылает запрос серверу аутентификации, используя сообщения протокола RADIUS. 3. Сервер аутентификации проверяет список имен пользователя и паролей. 4. Сервер аутентификации подтверждает, что Фред — аутентичен в смысле использования сервера RADIUS. 5. Маршрутизатор использует РАР, чтобы подтвердить: Фреду разрешают использовать Internet. В этом примере, когда Фред набирает номер, чтобы подключиться к Internet через модем, между компьютером Фреда и маршрутизатором Internet-провайдера используется протокол РАР. Однако между маршрутизатором и сервером AAA, чтобы подтвердить подлинность имени пользователя Фреда и пароля, используется протокол RADIUS (запрос на комментарии 2865). Хотя на рис. 17.4 указаны протоколы РАР и RADIUS, могут использоваться и другие протоколы. Например, TACACS + — популярный патентованный протокол, который компания Cisco разработала до того, как появился RADIUS. Он может использоваться вместо протокола RADIUS. Кроме того, между устройством конечного пользователя и маршрутизатором Internet-провайдера вместо РАР может использоваться протокол CHAP. В следующем разделе вы узнаете, в чем отличие протоколов CHAP и РАР. Как помешать постороннему использовать ваши права (пароль) Хотя абсолютное большинство читателей этой книги, вероятно, имеют вполне законные водительские права, некоторые люди используют фальшивые, незаконные водительские права. Один из способов сделать поддельные водительские права почти неотличимыми от настоящих состоит в том, чтобы использовать имя и номер водительских прав кого-то, кто имеет законные водительские права. Пересылка вашего пароля с помощью протокола РАР подобна разрешению каждому знать номер ваших водительских прав. Маловероятно, что кто-то сразу же сделает поддельные водительские права, используя ваш номер, но такая возможность существует. Протокол РАР посылает имя пользователя и пароль открытым текстом {clear text). Это означает, что любой, воспользовавшись должными программными средствами, может прочитать ваше имя пользователя и пароль, и они будут для него столь же хорошо различимы, как слова на этой странице. Вспомните: поток пакетов передается между вашим домом и центральной АТС по кабелю. Нетрудно вообразить, что кто-то может получить физический доступ к вашей телефонной линии и узнать данные, которые вы посылаете по ее проводам. Все, что некто должен был бы сделать, — это приблизиться к вашему дому и воспользоваться должными средствами; в результате этот "некто" будет знать, какие биты вы посылаете в Internet и получаете из Сети. Люди могут использовать программные средства, чтобы получать фреймы, которые вы передаете через локальную сеть. Вы можете подключить к локальной сети устройство, называемое средство анализа сети или программа наблюдения (network analysis tool), на сленге ее называют сниффер (от англ. sniffer — вынюхиватель), чтобы фиксировать фреймы, передаваемые через локальную сеть. Если бы протоколы, которые передают имена пользователей и пароли, работали как РАР и пересылали паро-
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 313 ли в виде открытого текста, то посторонние люди могли бы узнать ваши пароли, используя сниффер. Автор этой книги множество раз видел чужие пароли, когда использовал программу наблюдения (не пробуя воспользоваться ими). Это легко. (Sniffer — это торговая марка компании Network Associates Corp.; слово "вынюхиватель" несколько синонимично с этим средством, применяемым для анализа и перехвата пакетов.) Вы можете загрузить бесплатные инструментальные средства анализа с сайтов Internet и заставить любой ПК работать в качестве сниффера. Чтобы обеспечить защиту от воровства паролей, протокол CHAP не посылает пароль в виде открытого текста. Многие протоколы приложений работают аналогично CHAP, не посылая пароли открытым текстом. Поэтому, когда вам предлагают ввести имя пользователя и пароль во время подключения к Internet, или когда вы вводите пароль, чтобы получить доступ к Web-серверу, протоколы часто не посылают пароль в виде открытого текста. Процесс использования CHAP начинается, когда клиент соединяется с Internet- провайдером. При использовании модема это происходит, когда клиент щелкает на кнопке, в результате чего модем набирает номер телефона Internet-провайдера. При использовании DSL это случается, как только DSL-модем включается. В любом случае у пользователя запрашивают его имя пользователя (Фред) и пароль (bOWling). (Некоторые пользователи конфигурируют свое программное обеспечение так, чтобы приходилось вводить имя пользователя и пароль лишь однажды, после чего они сохраняются. Таким образом, им не приходится вводить эти данные каждый раз, когда они подключаются к Internet.) Если имя пользователя и пароль правильны и учетная запись является действующей/оплачена, Internet-провайдер одобряет подключение. Если имя пользователя или пароль неправильны, Internet-провайдер обычно дает отбой в случае модемного подключения; если это подключение DSL, Internet-провайдер просто не позволяет протоколу канального уровня РРР продолжать работу. Независимо от деталей, как и в случае других задач аутентификации, пользователь может продолжить работу только в том случае, если имя пользователя и пароль правильны. Протокол CHAP имеет много полезных особенностей, в том числе он препятствует паролю быть узнанным кем-то, использующим сниффер. На рис. 17.5 показано несколько этапов того, что происходит "за кулисами" при использовании CHAP, включая те, которые относятся к защите пароля от посторонних глаз. На рисунке представлены шесть этапов, которые используются, чтобы подтвердить подлинность пользователя, но пароль никогда не передается по сети. Поэтому, даже если кто-то перехватит все пакеты, это не позволит ему воспользоваться личными параметрами Фреда. Пароль в виде открытого текста находится у Internet- провайдера, обычно на его сервере AAA. Пользователь знает пароль и вводит его. Однако, вместо того чтобы послать пароль, ПК посылает свертку (иногда говорят — профиль) сообщения {message digest). Свертка сообщения — результат выполнения математической функции, которая имеет два вводимых параметра: пароль и случайное число. Чтобы понять, как это работает, сравните нижеприведенные пункты с аналогичными пунктами на рис. 17.5. 1. Маршрутизатор генерирует случайное число и посьщает его в сообщении CHAP на ПК. 2. ПК вычисляет математическую функцию на основе случайного числа и пароля, введенного пользователем.
314 Часть VI. Обеспечение безопасности сетей Выполняю те же вычисления, что и Фред и сравниваю результаты со сверткой сообщения (Потоки TACACS+ или RADIUS) Р(случ. число, bOWIing) = свертка сообщения © Рис. 17.5. Хеширование паролей для создания дайджеста сообщений 3. ПК посылает результаты вычисления функции, названные сверткой сообщения, обратно маршрутизатору. 4. Маршрутизатор посылает имя пользователя, случайное число и свертку сообщения на сервер AAA. 5. Сервер AAA выполняет те же математические действия, которые клиент использовал в пункте 2, с тем же самым случайным числом и паролем, связанным с данным именем пользователя и хранящимся в пользовательской базе данных AAA. Результат — вторая свертка сообщения. Если свертка сообщения, вычисленная сервером AAA, соответствует той, которая была вычислена ПК, считается, что пароль, введенный пользователем, правилен. 6. Сервер AAA сообщает маршрутизатору, что пользователь является подлинным (аутентичным); маршрутизатор сообщает это ПК, и жизнь продолжается. Этот процесс кажется трудоемким, но он работает быстро, и работает хорошо. Обратите внимание на то, что пароль никогда не передается через сетевое соединение. Эта схема работает хорошо, потому что, даже если кто-то воспользуется программой наблюдения или другим средством и перехватит пакеты, он ничего не сможет сделать. Математическая функция, используемая для создания свертки сообщения, специально выбрана так, чтобы исходный пароль было трудно вычислить, даже если злоумышленник знает и математическую функцию, и случайное число. А в следующий раз, когда ПК снова должен будет провести процесс аутентификации, маршрутизатор пошлет новое случайное число, в результате чего будет вычислено новое значение свертки сообщения. Вы носите номер своей кредитной карточки на футболке В недавнем прошлом была телевизионная реклама, в ходе которой на экранах показывали людей, носящих футболки с надписями типа "Номер моей карточки со-
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 315 циального страхования 123-45-6789" или "Номер моей кредитной карточки 1234- 4321-5544-110". В наши дни вы должны очень аккуратно обращаться с информацией о кредитной карточке и другой персональной информацией, чтобы воспрепятствовать людям подменять вас, получать ваши деньги и вмешиваться в ваш бизнес. Когда вы подключаетесь к Internet, соединяетесь с сервером в корпоративной сети и просматриваете жизненно важные для вас данные, это эквивалентно ношению футболки с номером вашей кредитной карточки. Потому что все пакеты проходят через сеть вашего Internet-провайдера и, возможно, через несколько других. Кабели глобальной сети прокладываются вне помещений, где любой, кто желает нарушать закон, может физически подключиться к ним. Таким образом, ваша сугубо личная информация выставляется на всеобщее обозрение, но, к счастью, с этим кое- что можно сделать. Есть много кинофильмов про шпионов или грабителей банка, в которых плохие парни, захватив то, за чем они долго охотились, вдруг узнают, что на самом деле это ничего не стоит. При работе с сетями вы можете посылать пакеты, зная, что другие люди могут получить их копии, но вы можете обесценить эти копии, применив кодирование. Шифрование {encryption) позволяет компьютеру применять по отношению к данным математическую формулу, результаты вычисления по этой математической формуле посылают по сети. Компьютер, получающий данные, может затем восстановить исходные данные, расшифровывая {decrypting) их. Любой, кто смотрит на зашифрованные данные, не сможет прочитать их. Данные похожи на связку случайных битов и байтов. Единственный способ понять, что представляют собой данные, состоит в их расшифровке. А чтобы расшифровать данные, нужен секретный пароль — ключ шифрования {encryption key). Конечно, вы не должны никому сообщать ключ шифрования, если хотите, чтобы ваши данные оставались конфиденциальными. В наше время шифрование данных перед отправкой их через Internet — обычная процедура. Однако большинство людей не называет это шифрованием; они называют это виртуальной частной сетью {virtualprivate network, VPN). Корпоративная сеть компании Барни — частная сеть, все ее компоненты находятся в офисе, принадлежащем частному лицу. Internet — общедоступная сеть. Виртуальные частные сети позволяют использовать Internet как частную сеть, в которой исключена опасность того, что кто-то еще сможет ознакомиться с содержимым пакетов. Поскольку пакеты на самом деле передаются через Internet, физически это — все еще общедоступная сеть. Виртуальные частные сети создаются логически, или если хотите, виртуально. Пример VPN показан на рис. 17.6. Для того чтобы Барни мог использовать VPN, он должен зашифровать пакет во время его создания. Чтобы сделать это, Барни должен установить на своем компьютере программное обеспечение VPN. Клиентское программное обеспечение VPN {VPN client software) выполняет шифрование перед отправкой пакетов, и оно же выполняет расшифровку полученных пакетов. Барни должен знать, какой ключ шифрования следует использовать. Барни посылает свой пакет устройству VPN в корпоративной сети, называемому концентратором VPN {VPNconcentrator), который расшифровывает пакеты, полученные от Барни и других сотрудников компании, а также шифрует пакеты, которые нужно отослать Барни. Шаги, показанные на рис. 17.6, следующие. 1. Барни создает новый пакет и зашифровывает его. Исходный пакет имеет IP- адрес получателя, указывающий на Web-сервер, но новый IP-заголовок, по-
316 Часть VI. Обеспечение безопасности сетей мещенный перед зашифрованным пакетом, указывает в качестве получателя IP-адрес концентратора VPN. Web-сервер © VPN- 0Ш концентратор ^^ Новый IP-заголовок Зашифрованный пакет ft) Дешифрование [ Новый 1Р-заголовок| Зашифрованный пакет | - J IP-заголовок! Данные I _ ' /^Шифрование 1 - ' ' IP-адрес получателя: ^ t Т VPN-концентратор | |П ' IP-заголовок IP-адрес получателя: I Web-сервер ^ Данные Барни _ IP-адрес получателя: Web-сервер Рис. 17.6. Шифрование IP-пакетов для передачи их через VPN 2. Барни пересылает пакет, IP-адрес получателя которого — концентратор VPN, в Internet. 3. Пакет проходит через общедоступную сеть Internet. Однако единственный элемент пакета, имеющий какой-то смысл, — это IP-заголовок. Остальное содержимое пакета зашифровано. Если кто-то перехватит пакет, он обнаружит в нем только связку перепутанных битов. 4. Концентратор VPN получает пакет, извлекает зашифрованный исходный пакет и расшифровывает его. Под расшифровкой понимается процесс, обратный шифрованию, когда зашифрованные данные преобразуются обратно в исходные — в данном случае, в IP-пакет, который Барни создал на первом этапе. 5. Концентратор VPN пересылает пакет исходному получателю, которым в данном случае является Web-сервер. В этих шагах перечислены действия (а также некоторые из их следствий), проводимые при использовании VPN. Фактически в этом примере показан только один тип виртуальной частной сети (она называется IPSec VPN); существует много других типов. Однако в общем случае все VPN заставляют сеть общего пользования, типа Internet, выполнять функции частной сети, и довольно часто, чтобы защитить ваши данные, в VPN используется шифрование. Резюме Практика обеспечения безопасности для пользователей базируется на выполнении функций аутентификации, авторизации и учета. Хотя устройство, подключенное к корпоративной локальной сети, могло бы считаться безопасным, пользовате-
Глава 17. Прием "правильных" людей и ограничения для "неправильных" 317 ли, которые используют это устройство, все же проверяются на предмет того, что им разрешен доступ к службам сети. Пользователи, которые соединяются с Internet-провайдером, также должны быть аутентифицированы, прежде чем им позволят посылать пакеты в Internet. Internet- провайдер, перед тем как разрешить человеку установить соединение, выясняет, кем он является и, главное, оплатил ли он услуги Internet-провайдера. Когда служащий подключается к Internet из дома, он рискует раскрыть корпоративные тайны, если при этом использует приложения, выполняемые на серверах корпоративной сети. Любопытные или злонамеренные люди, пользующиеся Internet, могут перехватить пакеты. Чтобы воспрепятствовать кому-то знакомиться с важными корпоративными данными, служащие компаний могут использовать VPN для соединения с корпоративной сетью из дома. В этом случае данные шифруются и, если кто-то перехватит пакеты, он не сможет прочитать их. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Что означает аббревиатура AAA — по крайней мере ее сетевая версия? 2. Какую информацию пользователь обычно предоставляет, чтобы выполнить авторизацию? 3. В чем состоит главный факт из числа упомянутых в этой книге, относящийся к полезной информации, предоставляемой при использовании функции учета AAA? 4. В чем различие между авторизацией и аутентификацией? 5. Если сравнивать пользователя, работающего в локальной сети компании, с корпоративным служащим, работающим дома через Internet, то какой дополнительный этап в обеспечение безопасности должен проходить домашний пользователь? 6. Какие два протокола, являющиеся частью РРР, используются для аутентификации? 7. Какой из двух протоколов РРР, используемых для аутентификации, передает пароль открытым текстом? 8. Как протокол CHAP препятствует использованию программного средства типа сниффер для просмотра пакетов, переданных по сети, и получения пароля? 9. Какая особенность VPN мешает злоумышленнику использовать перехваченные пакеты? 10. Какие два термина, один из которых совпадает с названием особенно популярного продукта, относятся к инструментальным средствам, способным перехватывать пакеты, передаваемые по локальной сети?
Что вам предлагается освоить После прочтения этой главы вы должны уметь: S перечислить типичные типы трафика, который должен и не должен передаваться между сетью предприятия и Internet; S объяснить, как брандмауэр может определить, какой хост пробует установить новое ТСР-соединение; s объяснить, как брандмауэр решает допустить пересылку через него некоторых пакетов и не пропускает другие; s описать общую идею, на которой основано использование демилитаризованной зоны; S описать основные функции, выполняемые системами обнаружения сетевых атак (IDC) и антивирусным программным обеспечением. ■ж* % Ш | ' ^J'A ' , Pi- t'iZii s?« yV- 4- / V' <*/4 i Jr jit 4*. ||f Же
Глава 18 Тщательное наблюдение за теми, кто приезжает к вашим (сетевым) соседям Во многих американских городах люди, живущие по соседству, часто обращают внимание на то, что кто-то незнакомый проезжает или проходит через территорию соседа. Следует хорошо относиться к соседям, даже к тем, с которыми вы не поддерживаете дружеских отношений, это помогает выявлять тех, кто не принадлежит к числу соседей и мог бы появиться на соседнем участке, чтобы ворваться в дом или создать какие-то другие проблемы. Фактически некоторые соседи имеют формальную программу наблюдения за соседними участками, чтобы отслеживать подозрительную деятельность. Хотя те, кто наблюдают за перемещениями, происходящими у соседей, могли бы показаться чересчур любопытными, они могут предотвратить преступление. Точно так же, когда корпоративная сеть предприятия или домашний ПК подключаются к Internet, вы должны внимательно отслеживать сетевой трафик. Хотя Internet предоставляет замечательные возможности, в ней таится немало опасностей и опасных людей. Поэтому, чтобы обеспечить безопасность, вы должны быть внимательными и отслеживать события, происходящие в вашей сети, которые выглядят подозрительными. В этой главе мы рассмотрим несколько инструментальных средств, используемых для безопасного подключения к Internet и предотвращения или снижения степени воздействия опасных вещей и опасных людей на сеть. Определение основных правил Когда вы соединяете сеть предприятия с Internet, первое, о чем вы должны задуматься, — это что вы хотите позволить передавать в Internet и получать из Сети, а что не хотите. Точно так же, как вы имеете представление о том, кто живет по соседству, и, возможно, даже об автомобилях, на которых ездят соседи, вы должны иметь представление о том, какому трафику, проходящему через ваше Internet- соединение, можно доверять. После того как вы определите, для чего будет использоваться Internet-соединение, а для чего оно использоваться не будет, можно принять меры для того, чтобы через него передавался трафик только таких типов, которым вы доверяете. Хотя это кажется трудной задачей — выяснить, что должно пересылаться между корпоративной сетью и Internet, а какому трафику следует воспрепятствовать, некоторые из первых шагов, которые нужно сделать в этом направлении, довольно просты для понимания. На рис. 18.1 показана типичная сеть, которая поможет нам объяснить основы.
320 Часть VI. Обеспечение безопасности сетей www.example.com ПК2 Рис. 18.1. Соединение корпоративной сети с Internet Слева — сеть предприятия, отмеченная на рисунке как "Внутренняя IP-сеть". Во внутренней сети находятся клиентские ПК пользователей, один из них отмечен какС2. Пользователь С2 использует почтовый сервер и внутренний Web-сервер, с именами mail. f redsco. com и int. f redsco. com, соответственно. Внутренний Web-сервер имеет материалы, предназначенные для использования только служащими компании Fredsco. Наконец, Web-сервер с именем www. f redsco. com предназначается для внешних пользователей, но внутренние клиенты, типа С2, также хотели бы просматривать страницы этого Web-сервера. На стороне Internet этого рисунка (справа) вы видите типичный Web-сервер Internet (www.example.com) и типичный почтовый сервер, созданный на основе технологий Internet (mail.ispl.net). ПК клиента, обозначенный как СЗ, представляет обычного пользователя Internet. Первая задача обеспечения безопасности сети Fredsco состоит в определении того, что в ней позволяется делать и что не позволяется. При рассмотрении этой дилеммы вы должны задаться двумя вопросами. ■ Между какими двумя хостами будут передаваться пакеты? ■ Какой хост начинает этот обмен? После того как вы поймете, какие два хоста вовлечены в обмен и который из них инициирует процесс, можно будет определить, передачу каких данных между этими хостами следует разрешить. Например, на рис. 18.2 показаны потоки, передачу которых, мы полагаем, нужно разрешить в сети, показанной на рис. 18.1. Чтобы не усложнять рисунок, мы удалили некоторые из обозначений, теперь вы можете сосредоточиться именно на потоках, передаваемых между парами хостов. (Термин поток (flow) относится к пакетам, которые пересылают от одного хоста другому, и наоборот. Например, когда вы просматриваете Web-страницу, пакеты передаются между вашим ПК и содержащим ее Web-сервером, и наоборот) Обратите внимание на компьютер С2, находящийся во внутренней сети компании Fredsco. На рисунке показаны лини, соединяющие этого клиента почти с каждым сервером. Компьютер С2 должен использовать протокол РОРЗ, чтобы получать
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 321 почту, и SMTP, чтобы отправлять почту; оба используются для связи с сервером mail.fredsco.com. С2 должен иметь возможность просматривать внутренние и внешние Web-серверы компании Fredsco; вы также хотите позволить С2 знакомиться с содержимым всех Web-сайтов Internet. www.example.com Рис. 18.2. Типичные типы трафика, дозволенного для передачи между корпоративной сетью и Internet Конечно, потоки трафика С2 не передаются через Internet. Что можно сказать о потоках, которые проходят через Internet? В этом случае позволяются потоки нескольких типов. Владельцу СЗ, который является просто компьютером какого-то пользователя Internet, позволяют просматривать Web-сайт компании Fredsco, предназначенный для внешних пользователей (www.fredsco.com). Кроме того, показанные на рисунке два почтовых сервера посылают пакеты друг другу, поскольку они должны обмениваться почтой. Линии, показанные между хостами, представляют потоки, но они также указывают, кто инициирует поток. Эти линии означают, что пакеты могут передаваться между хостами в обоих направлениях, в противном случае никакая полезная работа выполнена быть не может. Однако линия без стрелки на одном конце означает, что именно этот хост инициировал поток. Например, рядом с С2 начинаются только линии без стрелки. Это означает, что именно С2 инициирует все потоки. Линия между двумя почтовыми серверами имеет стрелки на обоих концах; это означает, что вы хотите позволить любому почтовому серверу инициировать поток. На рис. 18.2 показано то, что позволяется делать. Теперь давайте рассмотрим то, что делать не позволяется (рис. 18.3). Обратите внимание на то, концы каких линий не имеют стрелок; другими словами, сосредоточитесь на IP-хосте, который инициирует потоки. В данном случае все IP-хосты, которые инициируют потоки, находятся в Internet. Многое из того, что Фред хочет предотвратить, — это то, что инициируется хостами в Internet и о чем не следует забывать, — например, о плохих парнях, которые могут попробовать войти в вашу сеть. По определению, вы не должны позволять Internet-пользователям просматривать внутренние Web-сайты. Кроме того, никто не должен пробовать инициировать TCP-соединение с компьютером С2. По определению, клиенты — это
322 Часть VI. Обеспечение безопасности сетей хосты пользователей, которые обычно должны инициировать потоки, их не следует принимать. www.example.com mail.fredsco.com Внутр. Почт, сервер Внешн int.fredsco.com ПК2 mail.isp1.net Рис. 18.3. Показанные здесь трафики обычно не разрешаются В табл. 18.1 просуммировано и охарактеризовано то, что Фред хочет получить от системы безопасности. Таблица 18.1. Что позволяемо, а что — нет Инициализирует поток Внутренний клиент (такой как С2) Внутренний клиент (такой как С2) Внутренний клиент (такой как С2) Внутренний почтовый сервер Внешний почтовый сервер Любой внутренний хост Internet- клиенты Internet- клиенты Получает поток Любой внутренний сервер Web-сервер www.fredsco.com Серверы на основе Internet Внешний почтовый сервер Внутренний почтовый сервер Любой Internet- хост Web-сервер www.fredsco.com Любой хост внутри сети компании Fredsco Протокол (ы) РОРЗ, SMTP, HTTP, FTP, и т.д. HTTP HTTP и FTP SMTP SMTP Любые протоколы, которые не были определены для использования HTTP Любые протоколы, которые не были определены для использования Разрешается? Да Да Да Да Да Нет Да Нет
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 323 Если вы не помните протоколы, упомянутые в таблице, можете обратиться к главе 8. Чтобы понять материал этой главы, вам достаточно знать, что почтовые клиенты используют протокол РОРЗ для получения почты, почтовые серверы используют SMTP, чтобы передать почту на другие серверы, HTTP используется для передачи Web-трафика, а протокол FTP применяется для передачи файлов. Навязывание основных правил Родители все время пытаются навязать детям основные правила поведения. Представьте, что ребенок хочет получить от родителей разрешение пойти куда-то или поиграть с кем-то. "Я могу пойти к Билли, чтобы поиграть?" — спрашивает ребенок. Его родитель отвечает: "Нет, папа Билли разбрасывает свои видеокассеты, предназначенные только для взрослых, по всему дому; я не хочу, чтобы вы с Билли смотрели их, когда его родителей нет дома. Но Билли может прийти к нам, и вы сможете поиграть здесь." Родитель знает, что безопасно, а что — нет, и устанавливает правила. Теперь, когда Фред знает, что можно делать и чего не должно случаться в его сети, он может установить правила с помощью брандмауэра {firewall). Сетевой инженер конфигурирует брандмауэр с учетом набора правил, которые указывают, что является легитимным, а что не является. Брандмауэр, следуя правилам, некоторым пакетам позволяет проходить через него, а от других отказывается. Чтобы выполнить правила, брандмауэр должен быть установлен на пути, который используется для отправки пакетов в Internet и получения их из Сети. На рис. 18.4 показана одна из типичных топологий. www.example.com mail.fredsco.com Внутр. Почт, сервер Внешн. int.fredsco.com mail.isp1.net ПК2 Рис. 18.4. Возводим стену между опасными людьми и вашей сетью Единственный новый значок на рисунке — это значок, который использует компания Cisco для обозначения брандмауэра, названного PIX Firewall. Независимо от модели или поставщика брандмауэра, последний пересылает пакеты, которые проходят через Internet-соединение в ту или иную сторону. Брандмауэр ведет себя как маршрутизатор в том смысле, что он пересылает IP-пакеты. Но, поскольку брандмауэр "видит" все пакеты, передаваемые через Internet-соединение, он может ре-
324 Часть VI. Обеспечение безопасности сетей шить, можно или нельзя позволить передачу того или иного пакета, руководствуясь правилами, установленными для сети. Сетевой инженер должен сконфигурировать брандмауэр, т.е. сообщить ему информацию, включенную в табл. 18.1. Брандмауэр просто передает то, что позволяется, и отбрасывает то, что передавать не разрешено. Способы наблюдения за (сетевыми) соседями Наблюдая за незнакомцами, появляющимися по соседству, некоторые родители (особенно мамы) могут получить репутацию знающих обо всем, что происходит с детьми. Ребята во всем мире часто задаются вопросом, как их мамы могут знать обо всем, чем они занимаются, даже когда родители не смотрят на них. Это похоже на то, как если бы мамы имели на затылке еще одну пару глаз. Конечно, на самом деле мамы просто знают человеческую природу, поэтому они могут замечать признаки того, что кто-то может быть причастен кое к чему, когда обычно резвый маленький мальчик внезапно становится тихим. Брандмауэр несколько напоминает маму, которая живет в начале квартала. Мало того что брандмауэр просматривает трафик, поступающий в сеть, он также знает природу трафика, которому нужно позволить проходить через сеть. Одна из более важных обязанностей брандмауэра такова: он должен распознать, когда хост инициирует новый поток. Например, Фред позволяет клиентам в его сети инициировать новый поток на Web-сервер Internet, но Internet-клиенты не могут инициировать поток на внутренние серверы компании Фреда или на внутренние хосты пользователей, находящихся в сети Fredsco. Поэтому очень важно, чтобы брандмауэр был в состоянии выяснить, кто инициирует новый поток. Брандмауэр знает, что можно ожидать от многих сетевых потоков, особенно от тех, которые используют TCP. В случае применения TCP брандмауэр может легко идентифицировать того, кто инициирует поток. На жаргоне TCP поток — это эквивалент TCP-соединения {TCP connection). Хост, который инициирует TCP-соединение, посылает первый TCP-сегмент, и есть кое-что уникальное в этом первом сегменте. Все, что брандмауэр должен сделать, — это отыскать TCP-сегменты, которые имеют уникальную характеристику, позволяющую выяснить, когда создается новое ТСР-соединение, или поток. На рис. 18.5 представлены три сегмента TCP, которые используются для создания ТСР-соединения. www.fredsco.com Internet-клиент 1.1.1.1 9.9.9.9 SYN,DESTPORT = 80 Вн^Гн. SYN,ACK,SRCPORT = 80 > — к ACK,DESTPORT = 80 Рис. 18.5. ТСР-соединения и стандартные порты Прежде чем приложение сможет использовать TCP, чтобы отправить данные, протокол TCP должен создать ТСР-соединение. Первый сегмент TCP, который используется для создания ТСР-соединения, устанавливает флаговый бит SYN (SYNflag bit) (короткий, для синхронизации), присваивая ему значение, равное двоичной 1. Заголовки TCP включают ряд флаговых битов, таких как флаг SYN, и эти флаги используются для выполнения функций, подобных этому трехэтапному установлению соединения. Напри-
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 325 мер, второй сегмент имеет набор битов и SYN, и АСК, их протоколы TCP определяют как правильные флаги, которые должны быть установлены во втором сегменте TCP трехсегментного потока, используемого для создания соединения TCP. На рис. 18.5 показан клиент Internet (C3), посылающий сегмент с установленным битом SYN на сервер http://www.fredsco.com. Брандмауэр, обнаружив этот сегмент, догадывается, что СЗ инициирует соединение. Как? Дело в том, что единственным сегментом TCP, в котором может быть установлен бит SYN, и только бит SYN, является первый из сегментов, посылаемый между парой хостов. Так, первый сегмент на рисунке — действительно первый сегмент нового TCP-соединения. Чтобы идентифицировать того, кто послал пакет, все, что брандмауэр должен сделать, — это посмотреть на IP-адрес отправителя пакета. Брандмауэр может также посмотреть на IP-адрес получателя, чтобы выяснить, кто является получателем в устанавливаемом TCP-соединении, в данном случае его адрес 1.1.1.1. Брандмауэры также должны знать, какой протокол уровня приложения используется. Ранее, в главе 9, мы рассказывали о том, как каждый сервер использует стандартный номер TCP- или UDP-порта. Таким образом, когда клиент, например СЗ, хочет просмотреть Web-сайт http://www.fredsco.com, он может использовать номер порта адресата 80 — стандартный номер порта для HTTP. Принятие решения об остановке трафика Итак, на основе фактов, изложенных в предыдущем коротком разделе, можно сказать следующее. Брандмауэр способен, посмотрев на пакет, выяснять, кто является инициатором (клиентом) соединения, и определить, какой протокол (стандартный порт) используется. Зная это, брандмауэр может применить правила, определяющие, что позволяется и что не позволяется. На рис. 18.6 показан пример того, что делает брандмауэр, когда видит первый пакет нового соединения. Фактически это то же самое TCP-соединение, которое было показано на рис. 18.5. Когда СЗ сначала посылает IP-пакет с инициирующим сегментом TCP, брандмауэр замечает, что бит SYN этого сегмента установлен равным 1. Затем брандмауэр определяет интерфейс, через который прибыл пакет, — в данном случае это интерфейс, соединяющий брандмауэр с Internet. На жаргоне брандмауэра это называется внешний интерфейс {outside interface), потому что он ведет наружу, за пределы сети, которую брандмауэр пробует защитить. Брандмауэр также обращает внимание на то, что в сегменте был указан порт получателя 80, который используется протоколом HTTP. Затем брандмауэр смотрит на правила, которые установил для него сетевой инженер. Выясняется, что HTTP-трафик (порт 80) из Internet (т.е. с "внешней стороны") на этот Web-сервер (с IP-адресом 1.1.1.1 на внутреннем интерфейсе (inside in- terface)) пропускать позволяется. Другими словами, клиентам Internet нужно разрешить посещение сайта www.fredsco.com, потому что этот сервер предназначен для обслуживания клиентов. Поэтому брандмауэр передает этот пакет и все последующие пакеты, которые пересылаются через данное ТСР-соединение. Брандмауэр использует подобную логику, чтобы остановить пакеты, которые нельзя пересылать. Представьте, что СЗ пробует открыть браузер, чтобы посетить int. f redsco. com, один из внутренних Web-серверов компании Fredsco, IP-адрес которого 1.1.1.2. Логика действий брандмауэра представлена на рис. 18.7.
326 Часть VI. Обеспечение безопасности сетей Внутренняя Конфигурация брандмауэра - Разрешать инициировать TCP в направлении изнутри наружу - Не разрешать TCP снаружи внутрь, за исключением: - К порту 80, IP-адрес получателя 1.1.1.1 - К порту 25, IP-адрес получателя 1.1.1.2 Рис. 18.6. Разрешение установления TCP-соединения, показанного на рис. 18.5 Внутренняя Конфигурация брандмауэра - Разрешать инициировать TCP в направлении изнутри наружу - Не разрешать TCP снаружи внутрь, за исключением: - К порту 80, IP-адрес получателя 1.1.1.1 - К порту 25, IP-адрес получателя 1.1.1.2 Рис. 18.7. Запрет установления ТСР-соединения с внутренним Web-сервером
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 327 Правила брандмауэра, которые показаны в нижней части рисунка, допускают два типа соединений, которые могут быть инициированы с внешней стороны к внутренней части сети. Новое соединение не соответствует ни одному из этих правил. Поэтому брандмауэр отказывается от IP-пакета, вследствие чего ТСР-соединение не может быть установлено. Поскольку, прежде чем можно будет посылать какие-либо данные прикладной программы, должно быть установлено ТСР-соединение, между сервером и клиентом не будет передано никаких сообщений приложения HTTP; фактически, даже этот начальный TCP-сегмент не достигнет сервера 1.1.1.2. Этот сервер ничего не будет знать о том, что СЗ пробовал ознакомиться с его страницами. Безопасные места вне вашего соседства (сети) Возможно, вы живете около парка и, как большинство родителей, живущих по соседству, позволяете детям там играть. Это место не столь безопасно, как дом, но все же здесь достаточно безопасно. Аналогично, многие сети с их системами сетевой защиты создают эквивалент безопасного общественного парка. Брандмауэры в них действуют как маршрутизаторы, они отправляют пакеты, основываясь на IP-адресе получателя. Как и маршрутизатор, брандмауэр обычно имеет два или больше физических интерфейса. Внешние интерфейсы подключаются к Internet, который считается относительно опасным. Внутренний интерфейс соединяется с внутренней сетью, которая является относительно безопасной. На жаргоне брандмауэра, третий интерфейс мог бы быть связан с другой локальной сетью, названной демилитаризированной зоной (demilitarizedzone, (DMZ), которая с точки зрения системы безопасности находится где-то между внутренними и внешними интерфейсами. На рис. 18.8 представлена общая идея. При использовании демилитаризованной зоны потоки, которые разрешается передавать, те же самые, но местоположение серверов, которые доступны через Internet, изменилось. Доступные для Internet серверы помещены в разные локальные сети. Благодаря этому на брандмауэре может быть сконфигурировано правило: никакие TCP-соединения не могут быть инициированы извне (Internet) к внутренней части сети. Единственные потоки, которые могут быть инициированы во внутреннюю сеть компании Фреда, — это потоки, направленные серверам демилитаризованной зоны. При организации демилитаризованной зоны брандмауэр создает более безопасный набор правил.
328 Часть VI. Обеспечение безопасности сетей DMZ Внутренняя - Разрешать ВНУТРЕННИМ хостам ИНИЦИИРОВАТЬ соединения НАРУЖУ или в DMZ - Разрешать ВНЕШНИМ хостам ИНИЦИИРОВАТЬ соединения к DMZ-серверам, но ТОЛЬКО на порт 80 (Web), адрес получателя 1.1.1.2, на порт 25 (SMTP), адрес получателя 1.1.1.2 - НИКОГДА не позволять СНАРУЖИ инициировать соединения к ВНУТРЕННИМ ресурсам Рис. 18.8. Безопасное, но потенциально опасное место: демилитаризованная зона Использование полиции для присмотра за плохими парнями Даже при наличии программ наблюдения за соседними участками сообщества людей все же содержат полицию. Хотя полиция не может оставаться по соседству с вами целый день, она может принять меры для предотвращения преступлений, а также воспрепятствовать повторению преступлений. Полицейские могут арестовать подозреваемых и подвергнуть их допросу, изучить их досье и, в случае необходимости, преследовать в судебном порядке. Полиция может предпринять усилия для предотвращения будущих преступлений, например, анализируя прошлые преступления и стараясь исключить возможность подобных преступлений в будущем. Брандмауэры предотвращают потоки, о которых известно, что они являются потенциально вредными. Однако брандмауэры все же должны передавать пакеты в сеть предприятия и из нее. Поэтому в дополнение к брандмауэрам сети нуждаются в других программных средствах безопасности. Эти инструментальные средства по уже известным образцам выявляют незаконную сетевую деятельность, которая пытается быть похожий на нормальную деятельность, чтобы соответствующие пакеты могли пройти через брандмауэр. В следующих двух разделах мы опишем несколько инструментальных средств, которые отслеживают потоки информации, сравнивают их с уже известной незаконной сетевой деятельностью и пытаются предотвратить проблемы, возникающие в результате такой деятельности.
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 329 Присмотр за волками овечьей шкуре Допустим, в кино про шпионов герой должен проникнуть в большой офисный кампус. Он мог бы повредить телефонные линии, ведущие к комплексу зданий, и затем появиться на ремонтном грузовичке телефонной компании: "Привет, наша служба обнаружила, что телефонная линия повреждена. Вы не могли бы пропустить меня, чтобы я мог устранить повреждение?" Охранник пропустит его, потому что знает — телефоны не работают. Теперь плохой парень может свободно передвигаться по кампусу и шпионить! При работе с сетями системы обнаружения сетевых атак {Intrusion Detection System, IDSs) высматривают эквивалент шпиона, который исполняет роль законного пользователя. Системы IDS просматривают пакеты, которые пропускает брандмауэр, и пытаются отыскать в них вещи, которые могли бы означать, что кто-то пробует обмануть брандмауэр, передать через него свои пакеты и нанести вред серверам и хостам вашей сети. Со шпионом в кинофильме, изображающем служащего телефонной компании, все ясно; труднее понять, как взломщик мог бы сделать свои пакеты похожими на пакеты, посланные законным пользователем, и использовать их для причинения вреда. (Термин взломщик (компьютерных систем) относится к тому, кто, кто целеустремленно пытается создать проблемы для устройств сети. Иногда его называют крекер (от англ. cracker)\ термин хакер (hacker) относится к тому, кто мог бы проникнуть в сеть, но не с целью создания проблем.) В некоторых случаях взломщик может сделать что-нибудь такое, из-за чего сервер выйдет из строя; это называется атака типа "отказ в обслуживании'' (denial of service (DoS) attack). В других случаях взломщик ухитряется установить на компьютер свои программы, надеясь нанести вред компьютеру или, возможно, заполучить находящуюся на нем информацию. В таких случаях программы, которые взломщик устанавливает на сервер, называют вирусами (viruses). Хотя большинство людей хорошо понимают, как делаются такие трюки, это все равно время от времени происходит. Компания Microsoft предлагает награды в сотни тысяч долларов для тех, кто может помочь полиции найти и арестовать взломщиков, которые создают особенно опасные вирусы. Некоторые устройства системы IDS устанавливаются в сети и просматривают пакеты, которые передают по локальной сети, другие представляют собой программное обеспечение, которое находится на серверах. Системы обнаружения сетевых атак, устанавливаемые в сети, называют сетевыми IDS (network-based IDSs), а те, которые устанавливаются на хосте, называют хостовыми IDS (host-based IDSs) . На рис. 18.9 показано обычное местоположение сетевой системы обнаружения сетевых атак. Для того чтобы сетевая IDS работала правильно, коммутатор сети должен быть сконфигурирован так, чтобы весь трафик брандмауэра копировался и посылался системе IDS. Таким образом система IDS может делать обзор пакетов, ища отклонения, которые могли бы быть похожи на действия взломщика, пробующего новый способ атаки. Это походит на различие между охранником, просто пропустившим ремонтный грузовичок телефонной компании на территорию кампуса, и охранником, который, пропустив грузовик, посылает кого-то, кто контролировал бы работу ремонтника и повсюду следовал за ним.
330 Часть VI. Обеспечение безопасности сетей Брандмауэр пропустил этот трафик. Посмотрим, не проводится ли с его помощью атака! IDS mail.isp1.net Рис. 18.9. Сетевая IDS наблюдает за пакетами Как уберечь компьютер от простуды Компьютеры могут заразиться вирусами, почти как люди. Как уже было упомянуто ранее, компьютерный вирус {computer virus) — это файл, обычно содержащий программу, которая может вызвать проблемы после того, как копия вируса попадет на ваш компьютер. Файл часто оказывается на вашем компьютере в ходе просмотра Web-сайтов или при получении электронной почты. Как и реальные вирусы, компьютерный вирус может сделать ваш компьютер очень больным, немного больным, или вы можете даже не знать, что подцепили вирус. Очень часто, как и в случае реальных вирусов, после того как на ваш компьютер попадет вирус, он может стать источником заражения других компьютеров. Для борьбы с вирусами на компьютерах конечных пользователей, а также на серверах устанавливают антивирусное программное обеспечение {anti-virus software). Это программное обеспечение просматривает файлы, копируемые на компьютер, проверяя, не содержится ли в них какой-либо уже известный вирус. Например, некоторые электронные письма содержат вложенные файлы. Антивирусное программное обеспечение просматривает эти файлы, сравнивая их содержимое со списком известных вирусов. Если файл содержит вирус, антивирусное программное обеспечение или удаляет файл, или помещает его в какое-нибудь безопасное (для компьютера) место. Профилирование действий плохих парней Когда полицейские патрулируют квартал, они знают, на какие вещи нужно обращать внимание, потому что их учили этому. Например, если за последнее время произошло несколько ограблений банка и каждый раз преступники уезжали на зеленом фургоне, полиция, в частности, будет искать зеленые фургоны. В реальном мире полицейские обычно называют это профилирование (profiling). Системы IDS и антивирусное программное обеспечение выполняют разновидность профилирования, но при работе с сетями используется термин сигнатура {signature). Всякий раз, когда появляется новый способ проникновения в сеть, или всякий раз, когда обнаруживается но- mail.fredsco.com Почтовый www.fredsco.com Внешн. www.example.com Брандмауэр
Глава 18. Тщательное наблюдение за теми, кто приезжает к вашим... 331 вый вирус, производители систем обнаружения сетевых атак и антивирусного программного обеспечения создают сигнатуру для вновь возникшей проблемы. Сигнатура сообщает системе IDS или антивирусному программному обеспечению, что нужно искать, чтобы идентифицировать проблему. Если сетевой инженер регулярно обновляет систему IDS, чтобы она "знала" о последних сигнатурах, эта система будет готова во всеоружии противостоять всем известным опасностям. Точно так же на большинстве ПК с надлежащей системой защиты регулярно обновляется их антивирусное программное обеспечение, в которое вводят сигнатуры новых вирусов. Резюме Фактически каждая корпоративная сеть ныне подключается к Internet, но это соединение создает для нее некоторые риски. Брандмауэры могут просматривать пакеты, входящие в корпоративную сеть и выходящие из нее, проверять их на соответствие правилам безопасности, принятым в компании, и разрешать передачу трафика только тех типов, которые, по мнению компании, ей необходимы. Брандмауэры справляются с большим количеством проблем, связанных с безопасностью, но в любом случае они должны пропускать через сеть какой-то трафик, иначе Internet-соединение вообще не нужно. Однако хакеры могут воспользоваться этим и, сделав свои пакеты похожими на пакеты, которые брандмауэр должен пропустить через сеть, проникнуть в нее и, возможно, причинить какой-то вред. Системы обнаружения сетевых атак (IDS) просматривают пакеты, которые передает брандмауэр, отыскивая в них сигнатуры, которые идентифицируют уже известные способы создания проблем с использованием пакетов, проходящих через брандмауэр. Антивирусное программное обеспечение просматривает файлы, которые поступают на хост-компьютер, обычно это происходит при получении электронной почты или использовании Web-браузера. Как и IDS, антивирусное программное обеспечение использует сигнатуры, помогающие идентифицировать уже известные вирусы. Контрольные вопросы Вы можете найти ответы на следующие вопросы в приложении А. 1. Какие ограничения обычно вводятся для клиентов корпоративной сети т.е. какие серверы Internet им позволяют посещать? 2. Какие ограничения обычно вводятся для клиентов Internet, которые хотят установить соединения с серверами корпоративной сети, в предположении, что корпорация использует брандмауэр? 3. Как брандмауэр выясняет IP-адрес хоста, который пробует инициировать новое ТСР-соединение? 4. Как брандмауэр выясняет, какой протокол прикладной программы используется? 5. Какой термин обычно используется по отношению к корпоративной сети, защищенной брандмауэром? 6. Какой термин обычно используется по отношению к небольшой локальной сети, которая менее безопасна, чем внутренняя корпоративная сеть, но более безопасна, чем Internet-соединение?
332 Часть VI. Обеспечение безопасности сетей 7. Рассмотрите следующее утверждение: "Брандмауэры позволяют пересылать пакеты из корпоративной сети в Internet, но они не позволяют пересылать пакеты из Internet в корпоративную сеть." Скажите, согласны или нет вы с этим утверждением, и объясните, почему. 8. Что такое система IDS? 9. Если говорить о сетевых IDS-устройствах и брандмауэрах, то какое из них обычно устанавливается на пути следования пакетов? 10. Определите термин "сигнатура" по отношению к системам IDS и антивирусному программному обеспечению. 11. Какие два приложения TCP/IP чаще всего способствуют передаче на компьютер файлов, которые, возможно, содержат компьютерные вирусы?
ЧАСТЬ VII Приложения
Приложение А Ответы на контрольные вопросы Глава 1 1. Основываясь на определении сети, данном в этой главе, скажите, какие три основных компонента используются при ее создании? Ответ: Программное обеспечение, аппаратные средства и кабельная система. 2. Какова ключевая функция сети? Ответ: Обеспечение взаимодействия многих компьютеров между собой. 3. Имея в виду три основных компонента сети, скажите, с каким компонентом работает в основном служащий, поддерживающий сервер? Ответ: С программным обеспечением, установленным на сервере. 4. С каким компонентом сети по преимуществу имеет дело сетевой инженер? Ответ: Сетевой инженер работает с программным обеспечением, аппаратными средствами и кабельной системой, но больше всего внимания он уделяет программному обеспечению, выполняемому на устройствах сети. 5. Что собой представляет корпоративная сеть? Ответ: Это сеть, созданная одной компанией или организацией. 6. Дайте основное определение термину "Internet". Ответ: Это глобальная сеть, к которой подключены почти все компании и организации. Internet позволяет связываться между собой огромному количеству компьютеров планеты. 7. Сравните и противопоставьте термины "корпоративная сеть" и "Internet", пользуясь общеупотребительными словами. Ответ: Корпоративная сеть — это сеть, созданная в расчете на использование одним предприятием, компанией или организацией. Internet — это сеть, состоящая из огромного количества сетей, соединенных между собой и позволяющих осуществлять коммуникации в масштабах всей планеты. 8. Опишите концепцию сетевой службы. Ответ: Концепция такова: сетевая служба рассматривается аналогично другим основным службам — электросети, водопроводу и т.д. Пользователь ожидает, что, подключив кабель к настенной розетке, он сможет сразу же работать в се-
338 Часть VII. Приложения ти, точно так же, как это происходит с другими устройствами, для использования которых достаточно вставить вилку электропитания в розетку. Глава 2 1. Перечислите пять типов сетевых приложений, упомянутых в этой главе. Ответ: Служба работы с файлами, служба печати, служба Web, электронная почта и служба передачи файлов. 2. Какие приложения эффективно скрывают существование сети от пользователя? Ответ: Служба работы с файлами и служба печати. 3. Какие приложения используют серверы, чтобы хранить на них данные, в ожидании, пока другой пользователь не появится в сети? Ответ: Почтовые клиенты посылают сообщения на почтовые серверы, которые хранят их до тех пор, пока получатель не проверит свою почту. 4. Какая служба позволяет серверу предоставлять клиенту текст, графику, изображения, аудио и видео? Ответ: Служба Web. 5. Сравните и противопоставьте корпоративную сеть и Internet. Ответ: Корпоративная сеть — это сеть, созданная в расчете на использование одним предприятием, компанией или организацией. Internet включает почти все корпоративные сети, а также сети Internet-провайдеров. 6. Включает ли Internet корпоративные сети, домашних пользователей, которые соединяются с Internet, тех и других или никого из названных? Объясните ваш ответ. Ответ: Internet включает как корпоративные сети, так и компьютеры отдельных пользователей, поскольку она включает все компьютеры, которые могут достичь Internet. 7. Объясните основное различие между Web-страницей и Web-сайтом. Ответ: Под Web-страницей обычно понимается одна страница, иными словами, то, что можно видеть в окне браузера в данный момент времени. Web- сайт — это все Web-страницы, созданные компанией, организацией или отдельным пользователем. Эти Web-страницы обычно связаны между собой, благодаря чему пользователь может легко переходить с одной страницы на другую, щелкая на соответствующих ссылках. 8. Что такое сетевое облако? Ответ: Сетевое облако — это напоминающий облако значок, представляющий часть сети, подробности строения которой не важны для понимания того, что изображено на рисунке. Оно просто означает следующее: "Здесь на рисунке должна быть сеть, и это все, что вам нужно знать". 9. Сравните и противопоставьте сети предприятий и сети Internet-провайдера; ограничьтесь несколькими предложениями. Ответ: Корпоративная сеть состоит из аппаратных средств и программного обеспечения, приобретенных одной компанией или организацией. Сеть
Приложение А. Ответы на контрольные вопросы 339 Internet-провайдера также состоит из аппаратных средств и программного обеспечения, приобретенных Internet-провайдером. Основная разница между ними состоит в назначении: корпоративная сеть обеспечивает возможность использования сетевых служб для служащих компании, в то .время как сети Internet-провайдеров обслуживают отдельных пользователей, подключающихся к Internet. Сети Internet-провайдеров обеспечивают также соединения для корпоративных сетей. 10. Какой термин, состоящий из четырех слов, относится к тексту, который вы должны ввести в Web-браузере, чтобы открыть страницу конкретного Web- сайта? Какой популярный жаргонный термин мог бы использоваться вместо этого термина? Ответ: Формальный термин — унифицированный указатель информационного ресурса (Uniform Resource Locator, URL). Однако многие пользователи называют URL Web-адресом. 11. Вообразите, что Фред подключается к Internet, пользуясь услугами провайдера ISP1, а Барни пользуется услугами ISP2. Когда Фред посылает Барни сообщение, на какой компьютер Фред посылает его? Если сообщение не посылают непосредственно на компьютер Барни, объясните, почему. Ответ: Фред посылает электронное письмо на почтовый сервер, обычно это компьютер, находящийся в сети Internet-провайдера (в данном случае провайдера ISP1). Почтовый сервер пересылает письмо на почтовый сервер провайдера ISP2. Позднее, когда Барни проверяет свою электронную почту, он получает данное письмо. Этот процесс позволяет Фреду отправлять письмо независимо от того, имеет ли он в данный момент соединение с компьютером Барни. Глава 3 1. Опишите общими словами преимущества использования стандартов. Ответ: Стандарты обеспечивают совместную работу; во всяком случае это относится к устройствам, которые в принципе способны работать совместно. Например, лампа, купленная вами в магазине электротоваров, если ее производитель следовал стандартам, может быть включена в электросеть и будет работать. 2. Как назывались две первые популярные патентованные сетевые модели? Ответ: Systems Network Architecture (SNA) компании IBM и DECnet компании DEC 3. Определите термин "сетевая модель" и сравните его с термином "сетевой стандарт". Ответ: Сетевой стандарт определяет конкретные параметры. Сетевая модель представляет собой комбинацию различных стандартов. По определению, если сеть применяет многие стандарты одной модели, сеть будет работать хорошо и позволит осуществлять полезные коммуникации. 4. Перечислите две общедоступные сетевые модели, описанные в этой главе, и расшифруйте соответствующие аббревиатуры.
340 Часть VII. Приложения Ответ: Transmission Control Protocol/Internet Protocol (TCP/IP) и Open Systems Interconnection (OSI) 5. Перечислите названия четырех уровней сетевой модели TCP/IP, начиная с верхнего: Ответ: Уровень приложений, транспортный, межсетевой и сетевой интерфейс. 6. Перечислите названия семи уровней сетевой модели OSI, начиная с верхнего. Ответ: Уровень приложений, представления данных, сеансовый, транспортный, сетевой, канальный и физический. 7. Перечислите две организации стандартизации, разрабатывающие стандарты на LAN и WAN, на которые ссылается TCP/IP. Какая из них определяет стандарты LAN? Ответ: ШЕЕ и ITU. IEEE определяет стандарты на LAN, a ITU определяет стандарты на WAN. 8. Где маршрутизатор хранит информацию, которая подсказывает ему, куда следует отправлять пакеты? Ответ: В таблице маршрутизации 9. Сетевики используют терминологию OSI, чтобы в общих чертах описывать сетевые протоколы. Перечислите два термина OSI, которые могли бы описать протокол IP. Ответ: "IP — это протокол уровня 3" и "IP — это протокол сетевого уровня". 10. Определите термин "пакет." Ответ: Группа битов, которые подготовлены для передачи через сеть. 11. В данной главе используются термины "стандарт" и "протокол," между которыми есть одно существенное различие. В чем оно состоит? Ответ: Протокол обычно определяет процесс, в то время как стандарт чаще определяет нечто статическое. Например, размеры и форму соединителя, закрепляемого на концах кабеля, определяет стандарт, но процесс, в ходе которого компьютер обнаруживает пакеты с ошибками и запрашивает их повторную передачу, определяется протоколом. 12. Какой термин относится к битам, которые добавляются к данным пользователя, чтобы протокол имел место для хранения информации, важной для выполнения протоколом своей функции? Ответ: Заголовок. Глава 4 1. Приведите пример того, как компьютер мог бы передавать двоичные нули и единицы, используя изменения напряжения. Ответ: Передающее устройство могло бы подавать на провод напряжение одного уровня для представления двоичного 0 и напряжение другого уровня для представления двоичной 1.
Приложение А. Ответы на контрольные вопросы 341 2. Представьте, что два компьютера посылают и получают данные по проводу. Как часто приемное устройство должно было бы осуществлять выборку значений сигнала, если бы стандарт регламентировал скорость передачи 20 бит/с? Ответ: приемное устройство должно осуществлять выборку сигнала 20 раз в секунду, интерпретируя полученный сигнал как 0 или 1. Осуществляя это, оно могло бы получать 20 бит в секунду. Интервал времени между сменами уровня напряжения составлял бы 1/20 секунды. 3. Компьютеры обычно передают данные по тем же самым проводам, которые они используют для приема данных? Почему да или почему нет? Ответ: Компьютеры используют различные провода для приема и передачи данных, чтобы избежать наложения электрических сигналов. Наложение электрических сигналов вызывает путаницу, ошибочную интерпретацию сигналов как имеющих неправильные двоичные значения или полную невозможность выяснения, какое двоичное значение должно соответствовать принятому электрическому сигналу. 4. Компьютеры обычно передают данные по одному проводу или используют два провода? Ответ: Компьютеры используют для передачи пару проводов, свитых между собой. Витая пара проводов снижает влияние электромагнитных помех. 5. Сколько проводов можно подключить к соединителю RJ-45? Ответ: Восемь. 6. Сколько проводов нужно ПК, чтобы успешно послать данные на другой ПК и получить их от него, используя кабель локальной сети Ethernet с соединителями RJ-45? Ответ: Четыре. Хотя соединитель RJ-45 рассчитан на 8 проводов, Ethernet использует только провода, разведенные на контакты 1, 2, 3 и 6 для организации передачи и приема информации. 7. Объясните, почему кабель с прямыми соединениями контактов локальной сети не работает при непосредственном соединении с его помощью двух ПК. Ответ: Плата интерфейса сети каждого компьютера передает данные по проводам, разведенным на контакты 1 и 2. Кабель с прямыми соединениями контактов выводит эти провода на штырьки 1 и 2 соединителя, находящегося на другом конце кабеля. В результате обе платы интерфейса сети передают данные по проводам 1 и 2, и ни одна из них не принимает электрические сигналы, которые могли бы передаваться по проводам 3 и 6. 8. Объясните, почему кабель с перекрестными соединениями контактов локальной сети работает при непосредственном соединении с его помощью двух ПК. Ответ: Плата интерфейса сети каждого компьютера передает данные по проводам, разведенным на контакты 1 и 2. Кабель с перекрестными соединениями контактов выводит эти провода на штырьки 3 и 6 соединителя, находящегося на другом конце кабеля. Когда одно устройство передает сигнал через провода 1 и 2, другое принимает этот сигнал через провода 3 и 6, где оно и ожидает входящий сигнал. То же самое происходит, когда второе устройство передает сигнал через свои контакты 1 и 2.
342 Часть VII. Приложения 9. Объясните, почему кабель с прямыми соединениями контактов локальной сети работает при подключении ПК к концентратору. Ответ: Логика работы концентратора инверсна по отношению к логике платы интерфейса сети (в смысле контактов, которые используются для передачи и приема сигналов). ПК передает сигналы через контакты 1 и 2, а концентратор ожидает получения данных через контакты 1 и 2, поэтому кабель с прямыми соединениями контактов оказывается вполне работоспособным. Аналогично, концентратор осуществляет передачу через штырьки 3 и 6 соединителя, поэтому платы интерфейса сети, которые осуществляют прием через контакты 3 и 6, успешно получают данные. 10. Какова основная разница между кабелями типов UTP и STP? Ответ: Кабели с неэкранированными витыми парами (типа UTP) не имеют экранирующих оплеток, препятствующих электромагнитным помехам, которыми снабжаются кабели типа STP. Наиболее популярны в настоящее время кабели типа UTP. 11. Перечислите основные преимущества использования структурированной кабельной системы. Ответ: Структурированная кабельная система помогает минимизировать необходимость в прокладке новых кабелей, потому что можно определить расстояние от каждой настенной розетки до монтажной панели. Благодаря этому электрики могут проложить кабели между каждой настенной розеткой и распределительным шкафом, а другие служащие с помощью коммутационных кабелей могут завершить выполнение физических соединений. 12. Допустим, имеются физические порты и кабели, соединяющие каждый порт с девятью различными ПК. Концентратор принимает электрический сигнал от ПК на порт 1. Куда концентратор передаст электрический сигнал? Ответ: Концентратор передаст электрический сигнал на порты 2-10. Он не подаст сигнал на порт 1, потому что именно через этот порт сигнал был принят. 13. Что означает термин "штырек" по отношению к соединителю RJ-45? Ответ: Штырек — это физическое местоположение на конце соединителя, где находится медная часть провода. Глава 5 1. Закончите предложение: "Перед отправкой данных пользователя по локальной сети Ethernet отправитель должен эти данные во ,_ Ethernet". Ответ: "Перед отправкой данных конечного пользователя по локальной сети Ethernet отправитель должен инкапсулировать эти данные во фрейм Ethernet". 2. Назовите три главные части фрейма Ethernet. Ответ: Фрейм Ethernet состоит из Ethernet-заголовка, концевика Ethernet и данных пользователя.
Приложение А. Ответы на контрольные вопросы 343 3. Вообразите, что ПК1 подготовил фрейм Ethernet и желает его отправить. Что должен сделать ПК1 перед отправкой фрейма? Ответ: ПК1 должен прослушивать сеть, чтобы выяснить, не передает ли в это время фрейм еще кто-нибудь. Если передает, ПК1 должен дождаться, пока сеть не перейдет в режим молчания. 4. За что отвечает часть "CD" технологии CSMA/CD? Ответ: Часть "CD" отвечает за обнаружение коллизий (Collision Detection). 5. Представьте, что ПК1 и ПК2 одновременно посылают фреймы, и происходит коллизия. Кто из них посылает сигнал затора? Ответ: Оба ПК посылают сигнал затора. 6. Представьте, что ПК1 и ПК2 одновременно посылают фреймы, и происходит коллизия. Как алгоритм CSMA/CD минимизирует вероятность того, что фреймы ПК1 и ПК2 вновь вступят в коллизию, когда компьютеры попытаются вновь послать фреймы? Ответ: Обе платы интерфейса сети запускают таймеры, основанные на случайных числах. Чаще всего один из этих таймеров срабатывает раньше другого, в результате эта станция первой отправляет фрейм. 7. Сколько байтов занимает Ethernet-адрес отправителя? Сколько — Ethernet- адрес получателя? Ответ: И адрес отправителя, и адрес получателя имеют размер 6 байт. 8. Представьте, что ПК1 посылает фрейм Ethernet компьютеру ПК2, при этом ПКЗ и ПК4 также получают копию как побочный эффект того, что в сети есть концентратор. Как ПКЗ определяет, что данные фрейма нужно проигнорировать? Ответ: Все ПК, включая ПКЗ, смотрят на адрес получателя. Если он не соответствует адресу его платы интерфейса сети, то ПКЗ отбрасывает фрейм. 9. Назовите комитет IEEE, который стандартизировал специфичные для Ethernet детали Ethernet. Используйте и числовое наименование, и текстовое, состоящее из трех слов. Ответ: Комитет IEEE 802.3, также известный как MAC (Media Access Control), определяет детали Ethernet, специфичные именно для Ethernet. 10. Назовите комитет IEEE, который стандартизировал детали Ethernet, являющиеся общими с другими типами локальных сетей. Используйте и числовое наименование, и текстовое, состоящее из трех слов. Ответ: Комитет IEEE 802.2 также известный как LLC (Logical Link Control), определяет детали Ethernet, которые являются общими с другими типами локальных сетей. 11. Если бы вы использовали сетевое устройство компании Cisco Systems и видели результат выполнения команды, которая приводит к отображению МАС- адреса, то как он был бы отформатирован? Приведите пример, предполагая, что все цифры в фактическом МАС-адресе являются единицами. Ответ: Продукты Cisco представляют МАС-адреса в виде групп шестнадцате- ричных чисел, разделенных точками. Примером Ethernet-адреса может служить следующий: 1111.1111.1111.
344 Часть VII. Приложения 12. Что означает аббревиатура FCS? Ответ: FCS (Frame Check Sequence) — это контрольная последовательность фрейма. 13. Вообразите, что ПК1 посылает фрейм компьютеру ПК2, и ПК2 замечает, что FCS, посланная с фреймом, отличается от значения, вычисленного ПК2. Что должен делать ПК2? Ответ: ПК2 должен отбросить фрейм, потому что указанная разница в значениях означает, что во время передачи фрейма произошли ошибки. 14. Объясните различие между обнаружением ошибок и устранением ошибок. Что из названного выполняет Ethernet? Ответ: Обнаружение ошибок — это когда устройство замечает, что при передаче фрейма произошла ошибка; выяснив это, устройство отбрасывает фрейм. Под устранением ошибок подразумевается следующее: после того как фрейм был отвергнут, приемник запрашивает у отправителя повторную передачу данных, и отправитель выполняет эту просьбу. Ethernet выполняет устранение ошибок. Глава 6 1. Сколько фреймов одновременно может пройти через концентратор с 24-мя портами без появления коллизий? Ответ: Один. 2. Сколько фреймов одновременно может пройти через коммутатор с 24-мя портами без появления коллизий и в дуплексном режиме, используемом на всех портах? Ответ: 24. Устройства, подключенные ко всем портам, могут посылать фреймы одновременно, потому что используется дуплексный режим. 3. ПК1, ПК2 и ПКЗ подключены к одному коммутатору. Допустим, ПК1 и ПК2 посылают фрейм компьютеру ПКЗ, примерно в одно и то же время. Коммутатор отправит оба фрейма? Коллизия произойдет? Почему да или почему нет? Ответ: Коммутатор будет одновременно пересылать оба фрейма на ПКЗ, и коллизий не будет. Коммутатор просто буферизирует один из фреймов на время передачи другого. 4. ПК1, ПК2 и ПКЗ подключены к одному и тому же коммутатору. ПК1 и ПК2 используют дуплексный режим, ПКЗ — полудуплексный. Может ли ПК1 послать фрейм ПК2, если в это же время ПК2 посылает фрейм ПКЗ? Почему да или почему нет? Ответ: Да. ПКЗ может или передавать фрейм, или принимать, но не одновременно, поскольку он работает в полудуплексном режиме. В данном случае ПКЗ должен лишь принять фрейм. Только ПК2 должен одновременно передавать и принимать данные, поскольку он работает в полнодуплексном режиме, то вполне может делать это. 5. ПК1, ПК2 и ПКЗ подключены к одному коммутатору, но он выключен. После включения коммутатора ПК1 посылает фрейм ПК2. Сколько МАС-адресов находится в таблице адресов коммутатора? Почему?
Приложение А. Ответы на контрольные вопросы 345 Ответ: В таблице адресов коммутатора содержится один МАС-адрес. Коммутатор узнает МАС-адреса, глядя на МАС-адрес отправителя в поступающих на него фреймах. Поскольку ПК1 был единственным ПК, который послал фрейм, лишь МАС-адрес ПК1 будет показан в таблице адресов. 6. Представьте, что три ПК (ПК1, ПК2 и ПКЗ) связаны с коммутатором. ПК2 и ПКЗ имеют платы интерфейса сети 10/100, а ПК1 оборудован только платой интерфейса сети на 10 Мбит/с. Может ли какой-нибудь ПК использовать стандарт 802. Зи? Ответ: Стандарт 802.3и — это стандарт ШЕЕ на Fast Ethernet. Обладающие платами интерфейса сети 10/100 ПК2 и ПКЗ могли бы использовать Fast Ethernet. 7. Представьте, что три ПК (ПК1, ПК2 и ПКЗ) связаны с коммутатором. ПК2 и ПКЗ имеют платы интерфейса сети 10/100, а ПК1 оборудован только платой интерфейса сети на 10 Мбит/с. Что должно произойти, прежде чем ПК2 сможет осуществлять передачу со скоростью 100 Мбит/с? Ответ: Должно быть осуществлено автоматическое согласование между платой интерфейса сети ПК2 и коммутатором для определения скорости, которая может быть использована на этом участке. 8. Если фрейм с МАС-адресом места получателя 0200.6666.6666 достигает коммутатора, а коммутатор имеет только две нижеследующие записи в таблице коммутации, то что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6 Ответ: Коммутатор должен переслать этот фрейм на порт Е6 и не должен пересылать его на какие-то иные порты. 9. Если фрейм с МАС-адресом места получателя 0200.7777.7777 достигает коммутатора, а коммутатор имеет только две нижеследующие записи в его таблице коммутации, что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6 Ответ: Коммутатор должен переслать этот фрейм на все порты, за исключением порта, через который фрейм прибыл. 10. Если фрейм с МАС-адресом места получателя FFFF.FFFF.FFFF достигает коммутатора, а коммутатор имеет только две нижеследующие записи в таблице коммутации, что сделает коммутатор? На какие порты коммутатор мог бы переслать фрейм? На какие порты коммутатор не переслал бы фрейм? 0200.5555.5555 Е5 0200.6666.6666 Е6 Ответ: Коммутатор должен переслать этот фрейм на все порты, за исключением того, через который фрейм прибыл.
346 Часть VII. Приложения 11. Что означает термин "лавинная адресация" в контексте работы коммутатора локальной сети? Ответ: Коммутатор получает фрейм и пересылает его на все порты, за исключением того, через который фрейм прибыл. 12. В чем состоит наибольшее различие между Ethernet и Fast Ethernet? Ответ: Fast Ethernet быстрее; эта технология обеспечивает скорость передачи 100 Мбит/с против 10 Мбит/с, характерной для Ethernet. 13. На сколько больше байтов IEEE добавил в поле адреса в заголовке Fast Ethernet по сравнению с Ethernet, когда создавал стандарты на Fast Ethernet? Ответ: Ethernet и Fast Ethernet используют поле адреса одинакового размера, его размер не был увеличен. 14. На сколько больше байтов IEEE добавил в поле адреса в заголовке Gigabit Ethernet по сравнению с Ethernet, когда создавал стандарты на Gigabit Ethernet? Ответ: Ethernet и Gigabit Ethernet используют поле адреса одинакового размера, его размер не был увеличен 15. Перечислите различия в логике пересылки и механизме изучения, используемыми коммутатором Ethernet на 10 Мбит/с и коммутатором Gigabit Ethernet. Ответ: Процессы пересылки и изучения идентичны. Единственное отличие состоит в том, что данные передаются с различными скоростями. Глава 7 1. Сравните и противопоставьте термины "физическая локальная сеть" и "широковещательный домен." Ответ: Устройства физической локальной сети находятся в одном и том же широковещательном домене. Физическая локальная сеть состоит из кабельной системы, коммутаторов и плат интерфейса сети. 2. Определите термин "широковещательный домен". Ответ: Группа устройств, для которых действует следующее правило: широковещательный фрейм, посланный одним устройством, получают все остальные устройства группы. 3. Что происходит с широковещательным фреймом, когда его получает концентратор или коммутатор? Ответ: Оба устройства пересылают фрейм на все порты, за исключением того, через который фрейм был получен. 4. Представьте, что сконфигурирован автономный коммутатор в сети, не содержащей VLAN, с 24 физическими портами, каждый из которых связан с различным ПК. Сколько широковещательных доменов образуется? Ответ: Поскольку каждый из портов пересылает фреймы в широковещательном режиме на все остальные порты, широковещательный фрейм, посланный любым из 24-х устройств, будет передан остальным 23-м, т.е. все они входят в один широковещательный домен.
Приложение А. Ответы на контрольные вопросы 347 5. Представьте, что И ПК подключены к коммутатору с 12-ю портами, его двенадцатый порт связан с концентратором. К концентратору также подключены четыре ПК. Коммутатор не сконфигурирован так, чтобы образовались виртуальные локальные сети. Сколько широковещательных доменов образуется в такой сети? Ответ: Только один широковещательный домен. Поскольку и концентраторы, и коммутаторы осуществляют широковещание на все порты, широковещательные фреймы, посланные любым из устройств, будут приняты всеми остальными ПК. 6. Определите термин "VLAN". Ответ: Виртуальная локальная сеть — это широковещательный домен, который создается с помощью коммутатора с использованием поднабора его физических портов. 7. В чем, согласно этой главе, состоит главное различие между физической локальной сетью и виртуальной локальной сетью? Ответ: Физическая локальная сеть включает все порты коммутатора. Виртуальная локальная сеть включает поднабор портов коммутатора, сконфигурированный на этом коммутаторе. 8. Представьте, что три виртуальных локальных сети были созданы с помощью одного коммутатора. Коммутатор получает широковещательный фрейм через порт сети VLAN1. Будут ли устройства сети VLAN2 получать этот широковещательный фрейм? Ответ: Нет. Этот коммутатор не будет пересылать широковещательные фреймы в сеть VLAN2 или VLAN3, поскольку считает VLAN1 отдельной локальной сетью. 9. Представьте, что три виртуальных локальных сети созданы с помощью одного коммутатора. Коммутатор через порт VLAN1 получил одноадресатный фрейм, посланный по МАС-адресу 0200.5555.555. Таблица адресов сети VLAN1 в коммутаторе не имеет записи для этого МАС-адреса. Что коммутатор сделает с этим фреймом? Ответ: Коммутатор сделает то, что он всегда делает с одноадресатными фреймами, получатель которых неизвестен: осуществит лавинную адресацию этого фрейма на все порты. Однако этот коммутатор осуществит лавинную адресацию фреймов на все порты лишь локальной сети VLAN1, потому что фрейм был получен из этой сети. Коммутатор не станет пересылать фрейм на порты других локальных сетей. 10. Представьте, что три виртуальных локальных сети созданы с помощью одного коммутатора. Одноадресатный фрейм, посланный по МАС-адресу 0200.5555.555, был получен коммутатором через порт сети VLAN1. Таблица МАС-адресов VLAN2 содержит запись с МАС-адресом 0200.5555.5555, указывающую на порт 18. Что коммутатор сделает с этим фреймом? Ответ: В предположении, что 0200.5555.555 не указан в таблице адресов VLAN1, как и должно быть, коммутатор сделает то, что он всегда делает с одноадресатными фреймами, получатель которых неизвестен: осуществит лавинную адресацию этого фрейма на все порты. Однако этот коммутатор осу-
348 Часть VII. Приложения ществит лавинную адресацию фреймов на все порты лишь локальной сети VLAN1, потому что фрейм был получен из этой сети. 11. Перечислите две причины, по которым сетевой инженер использует виртуальные локальные сети. Ответ: В этой главе были перечислены четыре причины: — Для снижения размеров широковещательных доменов. — По политическим причинам или с учетом деловых правил, это называется проблемы уровня 8. — Из-за проблем, связанных с уровнем 3, потому что все устройства одной виртуальной локальной сети должны принадлежать одной и той же IP- подсети. — Из соображений экономии; независимо от того, по каким причинам вы хотите сконфигурировать больше виртуальных локальных сетей, за счет их использования вы сможете создать больше локальных сетей, не приобретая дополнительных коммутаторов. 12. Представьте одну локальную сеть со 100 устройствами, а другую с 1000 устройствами. В чем сходство и в чем различие воздействия широковещания на каждую локальную сеть? Ответ: Устройства конечных пользователей, находящиеся в локальной сети, должны обрабатывать все полученные ими широковещательные фреймы, чтобы узнать, а не предназначены ли они данному устройству. Следовательно, широковещание оказывает воздействие на устройства конечных пользователей. Чем больше устройств входит в состав локальной сети, тем больше широковещательных фреймов получает каждое из них. Отрицательным последствием этого является непроизводительная загрузка центрального процессора (ЦП) каждого устройства. Устройства, входящие в состав больших локальная сетей, будут тратить больше тактов ЦП на обработку широковещательных фреймов, предназначенных не для них, а для других устройств. 13. Сравните и противопоставьте физические локальные сети и виртуальные локальные сети. Ответ: Обе определяют один широковещательный домен. Виртуальная локальная сеть требует, чтобы коммутатор не считал все физические порты принадлежащими одной локальной сети. За счет конфигурирования коммутатора, одни порты должны рассматриваться как принадлежащие одной виртуальной локальной сети, другие — иным локальным сетям. В физических локальных сетях коммутатор считает все порты принадлежащими одному широковещательному домену. 14. Представьте, что два коммутатора связаны кабелем Ethernet. На каждом коммутаторе сконфигурированы три виртуальных локальных сети — VLAN1, VLAN2 и VLAN3. Назовите два транкинговых протокола, которые могли использоваться на сегменте между коммутаторами, и объясните их основную функцию. Ответ: Транкинг виртуальной локальной сети мог бы быть организован между этими двумя коммутаторами или с помощью протокола ISL, или IEEE 802.1Q. Каждый протокол заставляет коммутаторы вставлять перед фреймом Ethernet заголовок, а уж потом отправлять фрейм. Поэтому приемник может посмот-
Приложение А. Ответы на контрольные вопросы 349 реть на заголовок и решить, какой виртуальной локальной сети принадлежит данный фрейм. 15. Представьте, что два коммутатора связаны кабелем Ethernet. Никакие виртуальные локальные сети не сконфигурированы. Опишите значение термина "транк" и скажите, необходим ли транк и используется ли он в этой маленькой сети. Ответ: В зависимости от того, кто использует этот термин, "транк" может означать просто кабель Ethernet, или сегмент кабеля, соединяющий два коммутатора. При таком употреблении данного термина кабель между коммутаторами — это транк. Другие используют этот термин только по отношению к виртуальным локальным сетям; перед фреймами, прежде чем они будут переданы по кабелю между коммутаторами, вставляются транкинговые заголовки. 16. Назовите два транкинговых протокола VLAN и укажите, который из них является патентованным протоколом Cisco. Ответ: Протокол ISL (Inter-Switch Link) разработан компанией Cisco, альтернативный протокол IEEE 802.1Q был определен IEEE. Глава 8 1. Какие два протокола TCP/IP регламентируют передачу по сети электронной почты? Перечислите аббревиатуры и полные названия. Ответ: Простой протокол доставки сообщений (Simple Messaging Transport Protocol, SMTP) и почтовый протокол версии 3 (Post Office Protocol, POP3). 2. И Фред, и Барни используют ПК. Они подключаются к Internet, пользуясь услугами различных Internet-провайдеров. Опишите процесс, в соответствии с которым электронная почта Фреда через Internet передается Барни, с указанием, для чего и как используются почтовые серверы. Ответ: Фред посылает электронное письмо почтовому серверу своего Internet- провайдера. Этот почтовый сервер пересылает письмо на почтовый сервер Internet-провайдера Барни. Наконец, Барни получает письмо с почтового сервера своего Internet-провайдера. 3. Какой протокол электронной почты использует клиент в типичной сети, чтобы получить сообщения с сервера? Ответ: Протокол РОРЗ. 4. Опишите две части типичного почтового адреса и скажите, что определяет каждая часть. Ответ: Формат почтового адреса таков: имя_пользователя@имя_сервера где часть адреса имя_сервера идентифицирует почтовый сервер, обслуживающий данного пользователя. Часть адреса имя_пользователя идентифицирует конкретного пользователя данного почтового сервера. 5. На каком уровне сетевой модели TCP/IP работают почтовые протоколы, описанные в данной главе? Ответ: Уровень приложений модели TCP/IP определяет эти протоколы.
350 Часть VII. Приложения 6. Что означает аббревиатура FTP и какова основная цель этого протокола? Ответ: File Transfer Protocol (FTP) — это протокол уровня приложений из набора TCP/IP, основная задача которого — обеспечить передачу файлов от клиента серверу, и наоборот. 7. Каковы названия операций FTP, выполняемых при перемещении файла на сервер и получении файла клиентом? Ответ: Команда FTP PUT выполняется для копирования файла на сервер, а команда FTP GET — для получения файла с сервера. 8. Объясните, как применяются FTP-серверы для того, чтобы передать файл от пользователя userl, который пользуется услугами провайдера ISP1, пользователю user2, который связан с ISP2. В частности, укажите, на какие серверы каждый клиент перемещает файл. Ответ: В отличие от почтовых серверов, необходим только один FTP-сервер. Как пользователь userl, так и пользователь user2 должны для получения доступа к этому серверу указывать рабочие имена пользователя и пароли. Итак, пользователь userl мог бы поместить файл на сервер, а позднее пользователь user2 мог бы установить соединение с этим сервером и получить файл. 9. Рассматривая две основных команды FTP, служащие для перемещения файлов на сервер FTP и с него, скажите, какие команды одновременно и перемещают файл, и удаляют оригинальный файл с диска, с которого он был скопирован? (Например, если userl перемещает файл filel.doc на FTP-сервер, удаляется ли filel.doc с компьютера пользователя userl?) Ответ: Ни команда PUT, ни команда GET не удаляет исходный файл. 10. Как называется процесс проверки того факта, что пользователь является тем, за кого он себя выдает, перед выдачей ему разрешения использовать сервер? Ответ: Аутентификация. 11. Что означает аббревиатура HTTP и какова основная цель этого протокола? Ответ: Протокол передачи гипертекста (Hypertext Transfer Protocol, HTTP) — это протокол уровня приложений из набора TCP/IP, основная задача которого — передача файлов с Web-сервера на Web-браузер и обратно. 12. Из какого другого стандарта HTTP позаимствовал первые две буквы названия? Ответ: Язык разметки гипертекста (Hypertext Markup Language, HTML) определяет содержимое Web-сайта, информацию относительно форматирования и другие инструкции. Поскольку протокол HTTP изначально был рассчитан на передачу HTML-файлов, первые две буквы в его аббревиатуре соответствуют термину "гипертекст". 13. Какую операцию HTTP использует браузер, чтобы запросить получение конкретного файла с сервера сети? Ответ: Команду HTTP GET. 14. Что означает аббревиатура URL и как это используется?
Приложение А. Ответы на контрольные вопросы 351 Ответ: Унифицированный указатель информационного ресурса (URL) определяет протокол, который будет использоваться, имя сервера, имя файла на этом сервере, а зачастую — каталог сервера, в котором размещен файл. Глава 9 1. Перечислите три основные особенности TCP. Ответ: Три основные особенности TCP — это сегментация, устранение ошибок и использование номеров портов для доставки пакетов непосредственно нуждающейся в них программе. Кроме того, TCP позволяет снизить сложность приложений за счет сокрытия от них механизма распределения данных, а также обеспечения инкапсуляции для передачи данных через сеть. 2. Представьте, что вы посещаете Web-сайт и загружаете графическое изображение, названное logo.gif. Это логотип, размер его файла 4000 байт. Сколько сегментов сервер пошлет вашему браузеру, чтобы вы могли увидеть логотип? Примите mss равным 1480 байт. Объясните ваш ответ. Ответ: TCP сегментирует данные, разбивая из на части, объем каждой из которых обычно не превышает 1460 байт. (При mss, равном 1480 байт, минус 20 байт на TCP-заголовок, для данных остается как раз 1460 байт.) Для того чтобы передать 4000 байт, понадобится 3 сегмента. 3. Представьте, что Web-сервер послал 3 сегмента TCP браузеру на ПК Кейта, каждый 1000 байт длиной, с порядковыми номерами 4304, 5304 и 6304. При передаче никаких ошибок не произошло. Объясните, как ПК Кейта мог бы подтвердить получение данных. Ответ: В следующем ТС-сегменте, который Кейт пошлет Web-серверу, его программное обеспечение TCP укажет в поле подтверждения значение 6304, номер следующего байта, который он ожидает получить с сервера. 4. Представьте, что Web-сервер послал 3 сегмента TCP браузеру на ПК Кейта, каждый 1000 байт длиной, с порядковыми номерами 4304, 5304 и 6304. Предполагая, что третий сегмент передан с ошибками, объясните, как данные могут быть восстановлены. Ответ: В следующем ТС-сегменте, который Кейт пошлет Web-серверу, его программное обеспечение TCP укажет в поле подтверждения значение 6304, номер следующего байта, которое оно ожидает получить с сервера. Это даст знать серверу, что третий сегмент, посланный Кейту, — тот, у которого в поле порядкового номера значилось 6304 — не был получен. Поэтому сервер перешлет третий сегмент повторно. 5. Определите термин " инкапсуляция", используя как пример инкапсуляцию TCP. Ответ: Когда TCP получает данные от протокола уровня приложений, установленного на том же компьютере, TCP добавляет к данным ТСР-заголовок. Этот процесс называется "инкапсуляция". 6. Представьте, что Кейт запускает на своем ПК браузер и просматривает Web- сайт. Потом он запускает другой браузер, чтобы просмотреть второй Webcam. Когда Кейт получает следующий сегмент TCP, как его ПК определяет, какому браузеру нужно передать данные?
352 Часть VII. Приложения Ответ: TCP на компьютере Кейта смотрит на поле с номером порта получателя в заголовках полученных TCP-сегментов. Каждый браузер использует отличный от других номер порта, поэтому Кейт может определить, какому из них нужно передать данные. 7. Сколько TCP-сегментов должно быть передано между двумя компьютерами, чтобы они могли установить ТСР-соединение? Ответ: Три. 8. Каково название второго протокола транспортного уровня TCP/IP? Ответ: Протокол дейтаграмм пользователя (User Datagram Protocol, UDP)/ 9. Заголовок TCP, наряду с данными приложения, называют... как? Ответ: ТСР-сегмент. 10. Определите термин "прогнозное подтверждение". Ответ: Термин "прогнозное подтверждение" относится к процессу подтверждения приема данных путем указания в поле подтверждения следующего байта данных, который должен быть получен, в противоположность указанию в поле подтверждения последнего уже полученного байта. 11. Определите термин "стандартный порт". Ответ: Стандартный порт — это номер порта, который сервер намеренно использует при работе с конкретным приложением, так что, когда клиентские компьютеры захотят воспользоваться этой службой, они будут знать, какой номер порта нужно указывать в поле порта получателя. Глава 10 1. Представьте, что маршрутизатор получает пакет через сеть Ethernet. Что ищет маршрутизатор в IP-пакете, чтобы решить, что сделать с этим пакетом? Ответ: IP-адрес получателя. 2. ПК1 находится в Ethernet, a Web-сервер расположен в другой сети Ethernet. Маршрутизатор R1 связан с обеими Ethernet. Как ПК1 может сделать HTTP- запрос Web-серверу? Ответ: ПК1 посылает пакет на маршрутизатор, который затем перенаправляет пакет на Web-сервер. 3. ПК1 находится в сети Ethernet, вместе с маршрутизатором R1, маршрутизаторы R1 и R2 связаны со второй сетью Ethernet. Кроме того, маршрутизатор R2 связан с третьей сетью Ethernet, а также с Web-сервером. IP-адрес ПК1 — 5.5.5.5, сервера — 6.6.6.6. Какой IP-адрес указывается в поле IP-адреса получателя пакета, посланного с ПК1 на Web-сервер? Ответ: 6.6.6.6. 4. ПК1 находится в сети Ethernet, вместе с маршрутизатором R1. Маршрутизаторы R1 и R2 связаны со второй сетью Ethernet. Кроме того, маршрутизатор R2 связан с третьей сетью Ethernet, а также с Web-сервером. IP-адрес ПК1 — 5.5.5.5, сервера — 6.6.6.6. Когда Web-сервер отправляет пакет для ПК1, какой IP-адрес указывается в поле IP-адреса отправителя пакета? Ответ: 6.6.6.6.
Приложение А. Ответы на контрольные вопросы 353 5. Числа какого диапазона разрешено использовать в первом октете сетей класса В? Ответ: Со 128 по 191, включительно. 6. Числа какого диапазона разрешено использовать в первом октете сетей класса С? Ответ: Со 192 по 223, включительно. 7. Сколько IP-адресов существует в сети класса А с номером 7.0.0.0? Ответ: 224 - 2, или 16 777 214. (Если вы ответили, допустим, "более 16 миллионов", этот ответ также принимается.) 8. Сколько IP-адресов существует в сети класса В с номером 166.5.0.0? Ответ: 216 - 2, или 65 534. (Если вы ответили, допустим, "более 65 тысяч", этот ответ также принимается.) 9. Сколько IP-адресов существует в сети класса С с номером 192.55.0.0? Ответ: 254. 10. Опишите структуру IP-адреса сети класса А. Ответ: Адреса класса А состоят из двух частей: сетевой и хостовой. Сетевая часть адреса занимает 1 октет, хостовая часть — 3 октета. 11. Опишите структуру IP-адреса сети класса С. Ответ: Адреса класса С состоят из двух частей: сетевой и хостовой. Сетевая часть адреса занимает 3 октета, хостовая часть — 1 октет. 12. Что такое октет! Ответ: Октет представляет собой строку длиной 8 бит, обычно это часть IP- адреса. IP-адрес состоит из 4 октетов. 13. Определите термин IP-сеть. Приведите пример адреса сети, с указанием допустимых первого и последнего IP-адресов. Ответ: IP-сеть — это набор IP-адресов, имеющих одно и то же значение в сетевой части адреса. Например, сеть класса А с номером 1.0.0.0 может иметь адреса, начиная с 1.0.0.1 (это первый допустимый адрес) и кончая 1.255.255.254. 14. Все хосты сегмента конкретной локальной сети используют IP-адреса, которые начинаются с цифр 150.1.1. Какой номер имеет сеть, которой принадлежат устройства с этими адресами? Ответ: Поскольку 150 лежит в диапазоне, отведенном для адресов класса С, номер сети 150.1.0.0. Он сформирован из первых двух октетов реального адреса, дополненных нулями. 15. Все хосты сегмента конкретной локальной сети используют IP-адреса, которые начинаются с цифр 150.1.1. Было произведено разбиение на подсети, устройства с первыми 3 октетами адреса считались принадлежащими этой подсети. Какой номер у этой подсети? Ответ: 150.1.1.0. При использовании подсетей номер подсети включает то же самое значение, что и отдельные IP-адреса, для сетевой части адреса и части адреса, указывающей на подсеть, и нули в хостовой части адреса.
354 Часть VII. Приложения 16. Каков основной мотив разбиения IP-сетей на подсети? Ответ: Если не использовать подсети, каждая физическая сеть потребует отдельной IP-сети класса А, В или С. Сети классов А и В располагают слишком большим количеством IP-адресов по сравнению с реальной потребностью. Благодаря разбиению на подсети снижается расточительность использования адресного пространства. 17. Опишите, как выполняется разбиение на подсети, обращая внимание на то, как при этом изменяются или ослабляются некоторые правила структурирования IP-адресов. Ответ: Если подсети не используются, правила, действующие для сетей классов А, В или С определяют, что должно выполняться для того, чтобы адреса рассматривались как принадлежащие одной и той же группе. При разбиении на подсети большая часть адреса должна быть общей для адресов, чтобы их можно было считать принадлежащими одной и той же группе. Использование большей часть адреса для идентификации такой группы позволяет определить больше групп меньших размеров. 18. Представьте, что сеть класса В с номером 128.1.0.0 разбита на подсети в предположении, что первые 3 октета являются номером сети. Структура сети требует наличия четырех подсетей. Опишите решение, позволяющее достигнуть этого результата, и скажите, какими могут адреса устройств каждой подсети. Ответ: В данном случае первые 3 октета адреса каждой подсети должны быть одинаковы. Поэтому в первой подсети все адреса должны начинаться со 128.1.1, во второй — со 128.1.2, в третьей — со 128.1.3 и в четвертой — со 128.1.4. 19. Какие две основные функции выполняет протокол IP? Ответ: Логическая IP-адресация и сквозная маршрутизация пакетов. Глава 11 1. ПК1 находится в сети Ethernet и использует IP-адрес 130.1.1.1. ПК1 должен послать пакет FTP-серверу, IP-адрес которого 19.1.1.1. По какому IP-адресу ПК1 должен отправить IP-пакет? Ответ: ПК1 должен отправить IP-пакет по IP-адресу своего шлюза, назначенного по умолчанию. 2. Представьте, что ПК1 с IP-адресом 130.1.1.1 должен послать пакет. ПК1 решает послать пакет своему маршрутизатору, назначенному по умолчанию, с IP- адресом 130.1.1.2. ПК1 никогда не посылал пакет этому маршрутизатору. Два сообщения должны быть переданы по сети, прежде чем ПК1 сможет переслать пакет. Какая аббревиатура используется для протокола, который регламентирует эти два сообщения, и как она расшифровывается? Ответ: Протокол преобразования адресов (Address Resolution Protocol, ARP) определяет средства, с помощью которых устройства локальной сети могут узнавать МАС-адреса других IP-хостов, находящихся в той же локальной сети.
Приложение А. Ответы на контрольные вопросы 355 3. Представьте, что ПК1 с IP-адресом 130.1.1.1 должен послать пакет своему маршрутизатору, назначенному по умолчанию, с IP-адресом 130.1.1.2. И ПК1, и маршрутизатор подключены к одному и тому же коммутатору Ethernet, наряду с ПК Ларри, Моу и Кэли. ПК1 не знает МАС-адрес маршрутизатора Ethernet. Какое сообщение должен послать ПК1, чтобы узнать МАС-адрес маршрутизатора? Какое из устройств локальной сети получит это сообщение? Ответ: ПК1 посылает широковещательный запрос ARP, предлагая устройству с IP-адресом 130.1.1.2 ответить сообщением, содержащим его МАС-адрес. Широковещательное сообщение ARP указывает в качестве получателя МАС- адрес локальной сети. Поэтому коммутатор пересылает широковещательное сообщение ARP маршрутизатору, а также Ларри, Моу и Кэли. 4. ПК1 с IP-адресом 130.1.1.1 должен послать пакет Кэли, IP-адрес которого 130.1.1.3. Маршрутизатор, назначенный по умолчанию для ПК1 — маршрутизатор с IP-адресом 130.1.1.2. Оба ПК и маршрутизатор подключены к одному коммутатору Ethernet и находятся в одной подсети. Опишите роль маршрутизатора, назначенного по умолчанию, при отправке этого пакета с компьютера ПК1 компьютеру Кэли. Ответ: ПК1 вначале замечает, что получатель, 130.1.1.3, находится в той же подсети, которой принадлежит и его собственный IP-адрес A30.1.1.1). Следовательно, ПК1 знает, что может послать пакет напрямую Кэли. ПК1 посылает пакет непосредственно Кэли, игнорируя маршрутизатор, назначенный по умолчанию. 5. ПК1 A30.1.1.1) подключен к коммутатору Ethernet. Он должен послать пакет Web- серверу A9.1.1.1). IP-пакет находится в памяти ПК1. Опишите процесс инкапсуляции, которую требуется выполнить, прежде чем ПК1 сможет передать биты. Ответ: Только Ethernet-фреймы могут быт переданы через локальную сеть Ethernet. Поскольку канальный уровень TCP/IP расположен ниже межсетевого уровня, хост вполне резонно может ожидать, что IP-пакет межсетевого уровня будет инкапсулирован во фрейм канального уровня (в данном случае — во фрейм Ethernet). ПК1 добавляет заголовок и концевик Ethernet к IP-пакету, создавая тем самым фрейм Ethernet. Этот фрейм может быть затем передан через Ethernet. 6. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Скажите, чьи IP- и МАС-адреса содержались бы во фрейме Ethernet, который передается от ПК1 маршрутизатору R1. Ответ: Этот фрейм мог бы содержать IP-адрес отправителя A50.1.1.1), IP- адрес получателя A50.1.3.3), МАС-адрес отправителя (МАС-адрес ПК1) и МАС-адрес получателя (МАС-адрес интерфейса Е1 маршрутизатора R1). ПК1 ПК2 150.1.1.1 150.1.3.3 Шлюз поумолч. Подсеть 150.1.1.0 Подсеть 150.1.2.0 Подсеть 150.1.3.0 150.1.1.250 Первый: 150.1.1.1 Первый: 150.1.2.1 Первый: 150.1.3.1 Последний: 150.1.1.254 Последний: 150.1.2.254 Последний: 150.1.3.254 Рис. 11.15. Объединенная сеть, которая упоминается в вопросах к главе 11
356 Часть VII. Приложения 7. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Скажите, чьи IP- и МАС-адреса содержались бы во фрейме Ethernet, который передается от R2 компьютеру ПК2. Ответ: Он мог бы содержать IP-адрес отправителя A50.1.1.1), IP-адрес получателя A50.1.3.3), МАС-адрес отправителя (МАС-адрес интерфейса Е2 маршрутизатора R2) и МАС-адрес получателя (МАС-адрес ПК2). 8. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Опишите содержимое записи таблицы маршрутизации R1, которая необходима маршрутизатору R1, чтобы правильно переслать пакет. Ответ: Таблица маршрутизации могла бы содержать перечень подсетей получателей — в данном случае подсеть 150.1.3.0. В той же самой записи таблицы маршрутизации инструкция по пересылке должна указывать на исходящий интерфейс (в данном случае Е2), а также на маршрутизатор следующего перехода, в данном случае 150.1.2.2. 9. В показанном на рис. 11.15 примере сети ПК1 посылает пакет компьютеру ПК2. Опишите содержимое записи таблицы маршрутизации R2, которая необходима маршрутизатору R2, чтобы правильно переслать пакет. Ответ: Таблица маршрутизации могла бы содержать перечень подсетей получателей — в данном случае подсеть 150.1.3.0. В той же самой записи таблицы маршрутизации инструкция по пересылке должна указывать на исходящий интерфейс (в данном случае Ethernet2), но никаких данных о маршрутизаторе следующего перехода, поскольку R2 не должен пересылать пакеты другому маршрутизатору. 10. Определите термин "маршрутизация." Ответ: Маршрутизация — это процесс получения пакетов и сравнения IP- адреса получателя с перечнем, называемым таблицей маршрутизации, которая содержит адреса возможных получателей. Совпадение с записью определяет, куда в следующий раз будет переслан пакет, чтобы он достиг адресата. 11. Определите термин "шлюз по умолчанию". Ответ: Для хост-компьютера шлюз по умолчанию — это IP-адрес, по которому хост может пересылать пакеты, надеясь, что этот шлюз (маршрутизатор) знает, куда нужно пересылать пакет, чтобы он попал к получателю. 12. Опишите различия между процессами маршрутизации для случаев, когда используются подсети и когда они не используются. Ответ: Процесс маршрутизации осуществляется одинаково независимо от того, используете вы подсети или нет. В таблице маршрутизации перечисляются группы IP-адресов, по которым могут быть доставлены пакеты, независимо от того, принадлежат эти адреса IP-сетям или IP-подсетям. 13. Опишите логику, которой руководствуется хост-компьютер, решая, должен ли он послать пакет своему шлюзу, назначенному по умолчанию, или непосредственно хосту получателя. Ответ: Хост, отправляющий данные, смотрит на адрес получателя пакета и сравнивает его с адресом сети или подсети, в состав которой входит отправи-
Приложение А. Ответы на контрольные вопросы 357 тель. Если получатель принадлежит той же сети/подсети, что и отправитель, последний посылает пакет непосредственно хосту-получателю, в противном случае — шлюзу, назначенному по умолчанию. 14. В промежуток времени между отправкой компьютером ПК1 пакета и получением его компьютером ПК2 (см. рис. 11.15), возможно, многое изменится. Опишите, что остается прежним и что изменяется в передаваемых данных. Сравните то, что отправляет ПК1, с тем, что получает ПК2. Ответ: ПК1 создает заголовок и концевик Ethernet, чтобы поместить между ними IP-пакет, но маршрутизатор R1 удаляет эти заголовок и концевик. Маршрутизатор R1 создает новые заголовок и концевик Ethernet, но маршрутизатор R2 удаляет их. В неприкосновенности через всю объединенную сеть от ПК1 до ПК2 передается только IP-пакет. 15. В этой главе предполагается, что вы найдете три элемента в одной записи таблицы маршрутизации. Что это за элементы и какой (какие) из них необходим для того, чтобы маршрутизатор знал, куда послать пакет? Ответ: Хотя в реальной жизни одна запись в таблице маршрутизации может содержать много информации, в данной главе внимание было сосредоточено на сети или подсети получателя, исходящем интерфейсе и маршрутизаторе следующего перехода. Последние два из названных сообщают маршрутизатору, куда переслать пакет. 16. Какой из трех элементов записи таблицы маршрутизации (см. предыдущий вопрос) не всегда является необходимым? Используя R2 (см. рис. 11.15) в качестве примера, опишите одну запись таблицы маршрутизации, в которой какое-то поле не являлось бы необходимым. Ответ: Поле маршрутизатора следующего перехода не всегда является необходимым. Например, R2 не должен пересылать пакеты другому маршрутизатору для того, чтобы они попали в подсеть 150.1.3.0, потому что он непосредственно связан с этой подсетью. Запись в таблице маршрутизации R2 для подсети 150.1.3.0 может не иметь поля, в котором указывается маршрутизатор следующего перехода. Глава 12 1. Маршрутизатор R4 имеет два рабочих интерфейса Ethernet, и каждый интерфейс сконфигурирован со своим IP-адресом. Какое наименьшее количество маршрутов R4 должен иметь в своей таблице маршрутизации и почему? Ответ: Маршрутизатор R4 должен иметь два маршрута, по одному для каждой связанной с ним подсети. 2. Маршрутизатор R4 имеет работающий интерфейс Ethernet 1, IP-адрес которого 10.10.10.10. Номер подсети, к которой подключен этот интерфейс — 10.10.10.0, все ее хосты совместно используют первые 3 октета A0.10.10) адреса этой подсети. Какую запись R4 поместит в свою таблицу маршрутизации? Укажите содержимое полей получателя, исходящего интерфейса и маршрутизатора следующего перехода.
358 Часть VII. Приложения Ответ: Маршрут будет указывать 10.10.10.0 в качестве подсети, Ethernetl — в качестве исходящего интерфейса и ничего — в качестве маршрутизатора следующего перехода. Для непосредственно достигаемых маршрутов не нужен другой маршрутизатор, чтобы доставить пакеты в такую подсеть, поэтому маршрутизатор следующего перехода не нужен. 3. Перечислите три части IP-маршрута, который мог быть статически добавлен к конфигурации маршрутизатора R1 (рис. 12.8) так, чтобы он мог пересылать пакеты Web-серверу. Укажите получателя, исходящий интерфейс и маршрутизатор следующего перехода. Ответ: Маршрут должен указывать 173.18.13.0 в качестве сети получателя, Ethernet2 — в качестве исходящего интерфейса и 173.18.12.43 (R2) — в качестве маршрутизатора следующего перехода. Подсеть 173.18.11.0 Подсеть 173.18.12.0 Подсеть 173.18.13.0 Рис. 12.8. Рисунок, на который ссылаются некоторые вопросы к главе 12 4. Глядя на рис. 12.8, перечислите три части IP-маршрута, о котором R1 мог бы узнать от R2, используя протокол маршрутизации. Укажите получателя, исходящий интерфейс и соответствующий маршрутизатор следующего перехода. Ответ: Данный маршрут мог бы быть идентичным маршруту, статически определенному в ответе на вопрос 3. Этот маршрут должен указывать 173.18.13.0 в качестве сети получателя, Ethernet2 — в качестве исходящего интерфейса и 173.18.12.43 (R2) — в качестве маршрутизатора следующего перехода. 5. Глядя на рис. 12.8, перечислите три части IP-маршрута, который R2 мог бы узнать от R1. Укажите получателя, исходящий интерфейс и соответствующий маршрутизатор следующего перехода. Ответ: Этот маршрут должен указывать 173.18.11.0 в качестве сети получателя, Ethernetl — в качестве исходящего интерфейса и 173.18.12.42 (R1) — в качестве маршрутизатора следующего перехода. 6. Какова главная цель, достигаемая за счет использования протокола маршрутизации? Ответ: Протоколы маршрутизации позволяют маршрутизаторам изучить маршруты ко всем сетям и подсетям объединенной сети. 7. Что такое обновление маршрутной информации? Ответ: Обновление маршрутной информации — это сообщение, определенное протоколом маршрутизации и информирующее другой маршрутизатор об имеющихся маршрутах. 8. Какие два протокола маршрутизации чаще всего используются на сегодняшний день в одной компании? Ответ: EIGRP и OSPF.
Приложение А. Ответы на контрольные вопросы 359 9. Какой протокол маршрутизации чаще всего используется для обмена информацией относительно маршрутизации между Internet-провайдером и его клиентами (внешний протокол маршрутизации)? Ответ: BGP. Глава 13 1. В чем состоит альтернативный метод преобразования имен в IP-адреса, не использующий доменную систему имен? Ответ: Вы могли бы поддерживать локальный хост-файл на каждом TCP/IP хосте. 2. Что означает аббревиатура DNS? Ответ: Доменная система имен. 3. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http: //www. f redsco. com. Его ПК сконфигурирован на использование доменной системы имен. Сколько DNS-запросов пошлет ПК Ленни, прежде чем получит ответ на запрос об адресе хоста www. f redsco. com? Ответ: ПК Ленни пошлет один запрос DNS-серверу, на использование которого он сконфигурирован. 4. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http: //www. example. com. Его ПК сконфигурирован на использование доменной системы имен. Сколько DNS- запросов пошлет ПК Ленни, прежде чем он получит ответ на запрос об адресе хоста www. example . com? Ответ: ПК Ленни пошлет один запрос DNS-серверу, на использование которого он сконфигурирован, и будет ожидать ответа от этого DNS-сервера. ПК Ленни не будет посылать запрос на DNS-сервер домена example.com, всю остальную работу будет выполнять DNS-сервер Ленни. 5. Представьте, что Ленни использует ПК в домене f redsco. com. Ленни открывает браузер и пробует просмотреть страницы сайта http://www.example.com. Представьте, что его ПК получает DNS-ответ, сообщающий, что IP-адрес www.example.com—192.0.33.166. Когда ПК Ленни посылает пакет этому Web-серверу, ПК включает в заголовок IP-пакета IP-адрес получателя 192.0.33.166 или имя получателя www. example . com, или то и другое? Ответ: Заголовок IP-пакета не предоставляет места для указания имени хоста. ПК Ленни вводит в заголовок IP-адрес получателя, поэтому его хост, наряду с промежуточными маршрутизаторами, перешлет пакет на нужный Ленни Web- сервер. 6. Согласитесь ли вы со следующим утверждением и, если да или нет, то почему: "Каждый хост TCP/IP обращается к DNS-серверу, используя стандартный IP- адрес 0.4.1.1."
360 Часть VII. Приложения Ответ: Не согласимся. Каждый хост TCP/IP должен знать IP-адрес своего DNS-сервера, но он должен знать реальный IP-адрес этого сервера. Адрес 0.4.1.1 не является законным IP-адресом, а DNS-сервер в каждом домене имеет IP-адрес, отличный от IP-адресов других DNS-серверов. Не существует одного стандартного IP-адреса для DNS-серверов. 7. Для имени www. example . com идентифицируйте вероятное имя домена, и на основе этого примера определите термин "имя домена." Ответ: Доменное имя будет таким: example.com. Все имена, заканчивающиеся на example . com, преобразуются в IP-адреса уполномоченным сервером поддержки домена, управляемым той же компанией, которой принадлежит доменное имя example.com. Доменное имя просто идентифицирует владельца, организацию или компанию, которая контролирует все имена, заканчивающиеся суффиксом example . com. 8. Когда клиент из одной компании пробует просмотреть Web-сервер другой компании, используя его имя, опишите в общих словах, как может быть найден уполномоченный сервер имен для Web-сервера с указанным именем. Ответ: Хост пользователя просит преобразовать имя в IP-адрес свой DNS- сервер. Локальный DNS-сервер не знает это имя, потому что оно относится к другому домену. Локальный DNS-сервер запрашивает помощь у корневого сервера имен. Корневой сервер сообщает локальному адрес другого DNS- сервера, который может быть уполномоченным для домена, которому соответствует нужное пользователю имя. Локальный DNS-сервер запрашивает помощь у этого, нового для него DNS-сервера. Последний должен сообщить правильный IP-адрес хосту пользователя. 9. Согласитесь ли вы со следующим утверждением и, если да или нет, то почему: "Когда пользователь, который сконфигурирован на использование DNS, открывает Web-браузер и вводит http://www.example.com, следующий IP- пакет, который он пошлет, пойдет на Web-сервер," Ответ: Не согласимся. Первый пакет должен содержать запрос на преобразование имен и направляться DNS-серверу. После того как хост узняет IP-адрес Web-сервера, он пошлет пакеты уже ему. Глава 14 1. Сколько витых пар проводов обычно используется в выделенном канале между двумя маршрутизаторами? Ответ: Обычно используются две витые пары, по одной для передачи в каждом направлении. 2. Представьте, что вы хотели проложить кабель глобальной сети между двумя маршрутизаторами (маршрутизатор А и маршрутизатор Б), расположенными в городах, отстоящих один от другого на 1000 миль. Кабель какой длины должна проложить телефонная компания? Ответ: Возможно, телефонной компании понадобится проложить кабель только от центральной АТС до здания, в котором располагается офис, в каждом из го-
Приложение А. Ответы на контрольные вопросы 361 родов, где расположены указанные маршрутизаторы. Длина этих кабелей может составить несколько миль. Телефонной компании не придется прокладывать кабель между городами, потому что она уже давно проложила его. 3. Что собой представляет канал глобальной сети? Ответ: Канал глобальной сети — это физическая среда передачи между двумя конечными точками, его предоставляет телефонная компания. Каналы глобальной сети обычно соединяют между собой устройства, не находящиеся в одном здании или группе зданий (кампусе). 4. Как иначе называются каналы глобальной сети? Ответ: Выделенная линия, выделенный канал, канал типа "точка-точка", последовательный канал, 4-проводная линия связи. 5. Объясните, нуждаются ли каналы типа "точка-точка" глобальной сети в чем- то вроде технологии CSMA/CD, применяемой в Ethernet. Ответ: Для каналов типа "точка-точка" глобальной сети не нужен алгоритм, похожий на CSMA/CD. Маршрутизатор, подключенный к каналу глобальной сети, может передавать данные в любое время. 6. Какой физический интерфейс использует маршрутизатор, чтобы подключиться к каналу глобальной сети? Ответ: Последовательный интерфейс. 7. Представьте, что был создан канал глобальной сети между маршрутизаторами А и Б. Кабель, предоставленный телефонной компанией, подсоединен непосредственно к последовательным интерфейсам маршрутизаторов. Какой особенностью должны обладать платы последовательного интерфейса на этих маршрутизаторах, чтобы кабель мог быть связан непосредственно с маршрутизаторами? Ответ: Плата должна быть снабжена внутренним модулем CSU/DSU. Инженер, заказывающий маршрутизатор, должен сделать соответствующий выбор при его заказе. 8. Какова основная функция модуля CSU/DSU, описанная в этой главе? Ответ: Контроль скорости передачи в канале. 9. Какая базовая скорость передачи данных обычно используется в каналах глобальной сети, которые работают на относительно низких скоростях (до 1,5 Мбит/с)? Ответ: Каналы глобальной сети обычно передают данные со скоростью 64 кбит/с или с кратной ей, например со скоростью 24 х 64 кбит/с, что составляет примерно 1,5 Мбит/с. 10. Каковы два самых популярных протокола канала связи, используемые для передачи данных через каналы глобальной сети? Ответ: HDLC и РРР. 11. Что делает протокол HDLC, чтобы предупредить маршрутизатор, получающий фрейм, о том, что произошла ошибка? Ответ: HDLC, как и РРР, включает в концевик поле FCS.
362 Часть VII. Приложения 12. Какой из двух наиболее популярных протоколов канального уровня глобальной сети разработан позже и обеспечивает больше возможностей? Ответ: РРР 13. Объясните, необходим ли протокол ARP IP в каналах глобальной сети. Почему да или почему нет? Ответ: Для каналов глобальной сети протокол ARP IP не нужен. В полях адреса протоколов HDLC и РРР не содержатся имеющие практический смысл значения, потому что все, что посылается по каналу типа "точка-точка" глобальной сети, всегда попадает в одно и то же место. Нет необходимости идентифицировать получателя. Глава 15 1. Какие уровни модели OSI реализует технология Frame Relay? Ответ: Только уровень 2. Технология Frame Relay использует те же спецификации уровня 1, что и каналы типа "точка-точка" глобальной сети. 2. Каково название поля в заголовке Frame Relay, которое идентифицирует PVC? Какова его аббревиатура и каково полное название? Ответ: DLCI — идентификатор канала связи. 3. Представьте, что компания имеет маршрутизатор А, в головном офисе. Маршрутизатор будет использовать каналы глобальной сети типа "точка-точка", чтобы посылать трафик к пяти отдаленным площадкам и получить его от них. Сколько кабелей с 4-мя проводами должно быть проложено от маршрутизатора до центральной АТС телефонной компании, ближайшей к маршрутизатору А? Ответ: Для каждого канала глобальной сети нужен один 4-проводной кабель, т.е. всего 5 кабелей. 4. Представьте, что компания имеет маршрутизатор А, в головном офисе. Маршрутизатор будет использовать технологию Frame Relay, чтобы посылать трафик к пяти отдаленным площадкам и получить его от них. Сколько кабелей с 4-мя проводами должно быть проложено от маршрутизатора до центральной АТС телефонной компании, ближайшей к маршрутизатору А? Ответ: Только один 4-проводной кабель. 5. Какой термин используется для обозначения кабеля, прокладываемого от маршрутизатора до центральной АТС, когда маршрутизатор использует Frame Relay? Ответ: Канал доступа. 6. Определите термин "PVC". Ответ: Термин "PVC" означает способность передавать фреймы Frame Relay между двумя устройствами, подключенными к одной сети Frame Relay, если провайдер заранее предусмотрел такую возможность. Аббревиатура "PVC" расшифровывается как "постоянный виртуальный канал". 7. Скорость доступа или CIR определяет, сколько битов в секунду должна передавать телефонная компания, чтобы передать данные по одному PVC?
Приложение А. Ответы на контрольные вопросы 363 Ответ: CIR. 8. Скорость доступа или CIR определяет тактовую частоту физического канала между маршрутизатором и местной центральной АТС? Ответ: Скорость доступа. 9. Что означает аббревиатура CIR? Ответ: Гарантированная скорость передачи (Committed Information Rate). 10. Определите значение термина "DLCI." Ответ: Идентификатор канала связи (Data-Link Connection Identifier) — это 10-разрядное число, обычно записываемое в десятичной форме (оно принадлежит диапазону 0-1023), которое идентифицирует отдельный постоянный виртуальный канал (PVC) Frame Relay. 11. Объясните, почему термин "виртуальный канал" используется для обозначения процесса передачи данных посредством технологии Frame Relay между двумя маршрутизаторами. Ответ: Одним из терминов, применяемых по отношению к каналу глобальной сети, функционирующему между двумя маршрутизаторами, является "выделенный канал", или просто "канал". Технология Frame Relay позволяет двум маршрутизаторам обмениваться данными. Однако нет реального физического кабеля или линии связи, ассоциирующегося с каждым виртуальным каналом, поэтому определение "виртуальный" относится к тому факту, что линия связи не является физическим объектом. Термин "канал" указывает на тот факт, что в некоторых случаях эта виртуальная линия связи действует как выделенный канал. 12. Объясните потребность в протоколе IP ARP для каналов PVC при использовании технологии Frame Relay. Ответ: Нужно что-то вроде ARP — чтобы после того, как маршрутизатор узнает IP-адрес, по которому он должен переслать пакет, он смог выяснить адрес нужного канала передачи данных и поместить его в заголовок фрейма. В технологии Frame Relay не используется протокол ARP, вместо него применяется инверсный ARP. Глава 16 1. Что является тремя главными компонентами Internet (согласно нашей книге)? Ответ: Сети, созданные Internet-провайдерами, корпоративные сети, построенные отдельными организациями, и отдельные пользователи, чьи компьютеры подключены к сетям Internet-провайдеров. 2. Вьщеленные каналы обеспечивают работу службы передачи битов, тогда как Frame Relay обеспечивает работу службы передачи фреймов Frame Relay. С той же самой точки зрения объясните, работу какой службы Internet обеспечивает для хостов. Ответ: Internet обеспечивает работу службы передачи IP-пакетов.
364 Часть VII. Приложения 3. Чем отличаются электрические сигналы, посылаемые по абонентскому шлейфу телефоном, от сигналов модема? Ответ: Между ними нет разницы. И телефоны, и модемы передают аналоговые электрические сигналы. 4. Чем отличаются электрические сигналы, посылаемые по абонентскому шлейфу телефоном, от сигналов DSL-модема? Ответ: DSL-модем посылает цифровые электрические сигналы, в то время как телефон передает аналоговые электрические сигналы. 5. Какие два параметра аналоговых электрических сигналов, упомянутые в этой книге, модем может изменять, чтобы закодировать двоичные 0 или 1? Ответ: Модем может модулировать частоту и амплитуду. 6. Приблизительно какая скорость является максимальной скоростью передачи для модемов? Ответ: 56 кбит/с. 7. Приблизительно какая скорость является максимальной скоростью передачи для DSL-модемов, когда расстояние от дома до центральной АТС относительно велико? Ответ: 384 кбит/с. 8. Для того чтобы технология DSL могла работать, с помощью какого устройства телефонная компания разделяет данные и сигнал, соответствующий речи? Ответ: С помощью мультиплексора доступа к цифровой абонентской линии (DSL access multiplexer, DSLAM). 9. Что означает аббревиатура DSL? Ответ: Цифровая абонентская линия (digital subscriber line). 10. Что означает термин "модем"? Ответ: Этот термин образован за счет сокращения и комбинирования слов модулировать и демодулироватъ. 11. Какая из трех технологий доступа в Internet, описанных в этой главе, не позволяет вам говорить по телефону при одновременном использовании служб Internet? Ответ: Модемы. 12. Какой протокол уровня 2 обычно используются в случае применения модема или цифровой абонентской линии для соединения с Internet-провайдером? Ответ: РРР. Глава 17 1. Что означает аббревиатура AAA — по крайней мере ее сетевая версия? Ответ: Аутентификация, авторизация и учет (authentication, authorization, accounting).
Приложение А. Ответы на контрольные вопросы 365 2. Какую информацию пользователь обычно предоставляет, чтобы выполнить авторизацию? Ответ: Имя пользователя и пароль. 3. В чем состоит главный факт из числа упомянутых в этой книге, относящийся к полезной информации, предоставляемой при использовании функции учета AAA? Ответ: В сообщении о повторении ошибочных попыток пройти аутентификацию, совершаемых для одного и того же имени пользователя. 4. В чем различие между авторизацией и аутентификацией? Ответ: Авторизация определяет, к каким ресурсам вы можете получить доступ. Аутентификация позволяет подтвердить, что человек, пытающийся получить доступ, именно тот, за кого он себя выдает. 5. Если сравнивать пользователя, работающего в локальной сети компании, с корпоративным служащим, работающим дома через Internet, то какой дополнительный этап в обеспечение безопасности должен проходить домашний пользователь? Ответ: Пользователи Internet, устанавливая соединение, должны проходить аутентификацию у Internet-провайдера, прежде чем получить доступ к его сети. Предполагается, что пользователи локальных сетей, принадлежащих корпорациям, имеют право доступа к ним, поэтому процедуру аутентификации они не проходят. Интересно то, что в ближайшие годы многие корпорации скорее всего заставят своих служащих проходит процедуру аутентификации, прежде чем они смогут получать доступ к сети. 6. Какие два протокола, являющиеся частью РРР, используются для аутентификации? Ответ: РАР и CHAP. 7. Какой из двух протоколов РРР, используемых для аутентификации, передает пароль открытым текстом? Ответ: РАР 8. Как протокол CHAP препятствует использованию программного средства типа сниффер для просмотра пакетов, переданных по сети, и получения пароля? Ответ: Протокол CHAP посылает свертку сообщения, которая представляет собой значение математической функции, вычисленное на основе случайного числа и пароля. Свертка сообщения использует математическую функцию, которая специально разработана так, чтобы воспрепятствовать восстановлению пароля кем-то посторонним. 9. Какая особенность VPN мешает злоумышленнику использовать перехваченные пакеты? Ответ: Пакеты, пересылаемые через VPN-соединение, шифруются. 10. Какие два термина, один из которых совпадает с названием особенно популярного продукта, относятся к инструментальным средствам, способным перехватывать пакеты, передаваемые по локальной сети? Ответ: Средство анализа сети и сниффер (Sniffer).
366 Часть VII. Приложения Глава 18 1. Какие ограничения обычно вводятся для клиентов корпоративной сети, т.е. какие серверы Internet им позволяют посещать? Ответ: Хотя ответ будет несколько субъективным, все же скажем, что по большей части клиенты корпоративной сети могут соединяться со всеми серверами Internet, с какими они захотят. 2. Какие ограничения обычно вводятся для клиентов Internet, которые хотят установить соединения с серверами корпоративной сети, в предположении, что корпорация использует брандмауэр? Ответ: Корпоративный брандмауэр обычно препятствует клиентам Internet устанавливать соединения с серверами корпоративной сети, за исключением тех из них, которые специально предназначены для широкой публики. 3. Как брандмауэр выясняет IP-адрес хоста, который пробует инициировать новое ТСР-соединение? Ответ: Брандмауэр смотрит на TCP-сегменты, которые имеют установленный флаг TCP SYN. Этот сегмент является первым сегментом нового ТСР- соединения. Затем брандмауэр просто смотрит на IP-адрес отправителя пакета. 4. Как брандмауэр выясняет, какой протокол прикладной программы используется? Ответ: Брандмауэр смотрит на TCP-сегменты, которые имеют установленный флаг TCP SYN, и только этот флаг. Этот сегмент является первым сегментом нового TCP-соединения. Брандмауэр смотрит на номер порта получателя, который является стандартным портом, используемым конкретным приложением. 5. Какой термин обычно используется по отношению к корпоративной сети, защищенной брандмауэром? Ответ: Внутренняя сеть. 6. Какой термин обычно используется по отношению к небольшой локальной сети, которая менее безопасна, чем внутренняя корпоративная сеть, но более безопасна, чем Internet-соединение? Ответ: Демилитаризованная зона (DMZ). 7. Рассмотрите следующее утверждение: "Брандмауэры позволяют пересылать пакеты из корпоративной сети в Internet, но они не позволяют пересылать пакеты из Internet в корпоративную сеть". Укажите, согласны или нет вы с этим утверждением и объясните, почему. Ответ: Не согласны. Брандмауэры позволяют пересылать пакеты в обоих направлениях, потому что для использования любого приложения необходимо, чтобы потоки пакетов проходили в обоих направлениях. Брандмауэр позволяет пересылать пакеты в обоих направлениях, но только те из них, которые соответствуют правилам, установленным для данного брандмауэра. 8. Что такое система IDS? Ответ: Система обнаружения сетевых атак.
Приложение А. Ответы на контрольные вопросы 367 9. Если говорить о сетевых IDS-устройствах и брандмауэрах, то какое из них обычно устанавливается на пути следования пакетов? Ответ: Брандмауэр. 10. Определите термин "сигнатура" по отношению к системам IDS и антивирусному программному обеспечению. Ответ: Слово "сигнатура" относится к такому набору признаков, каким обычно обладают пакеты и файлы, похожие на попытки взломщика провести атаку типа "отказ в обслуживании" или установить на компьютер программу-вирус. 11. Какие два приложения TCP/IP чаще всего способствуют передаче на компьютер файлов, которые могут содержать компьютерные вирусы? Ответ: Web (HTTP) и электронная почта (РОРЗ).
Приложение Б Преобразование IP-адресов из десятичной системы в двоичную и обратно Как уже говорилось в главе 10, IP-адреса — это 32-разрядные двоичные числа, но они также часто записываются и выглядят как десятичные числа. Хотя вы могли читать главу 10, не думая о представлении IP-адресов в двоичном формате, если вы хотите получить больше знаний об IP-адресации, вам следует разобраться в том, как записываются числа в двоичной и как — в десятичной системе счисления, и как преобразовать число из одного формата в другой. Во многих книгах, подробно рассказывающих об IP-адресации и подсетях, ничего не говорится о том, как преобразовать числа из одной системы в другую. Чаще всего предлагают использовать для этого калькулятор или переводную таблицу, похожую на ту, что приведена в конце приложении. Оба из этих вариантов вполне разумны. Однако, чтобы подготовить вас более углубленному изучению IP, мы приводим в этом приложении основы представления чисел в десятичной и двоичной формах, включая преобразование IP-адресов из одного типа чисел в другой. Это приложение состоит из трех разделов. В первом разделе описываются десятичная и двоичная системы счисления. Во втором разделе рассказывается, как преобразовать десятичные числа в двоичные и наоборот. Наконец, в третьем разделе рассматриваются подробности преобразования десятичных и двоичных IP-адресов в другую систему счисления. Десятичные и двоичные системы счисления Этот раздел начинаются с описания десятичной системы счисления, затем описывается двоичная система счисления. Десятичная система счисления Десятичная система счисления знакома каждому, читающему эту книгу, потому что ее изучают в школе и даже раньше. Однако, если вы не любите математику, есть несколько деталей, касающихся десятичных чисел, которые вы, возможно, забыли. В этом разделе мы напомним о них, чтобы вам было проще разобраться с двоичной системой счисления. Рассмотрим, например, число 235. Оно состоит из трех цифр — 2, 3 и 5. Цифры (numerals) — это просто сршволы, которые представляют число; в английском языке вместо слова numeral часто используется слово digit, что является сокращением термина decimal digit (десятичный разряд). Например, 3 — второй десятичный разряд в числе 235.
370 Часть VII. Приложения Что означает число 235? Попробуем назвать его медленно: "две-сти три-дцать пять". "Сти" — это редуцированная форма слова "сто" (сотня), "дцать" образовано от слова "десять", пять означает "пять единиц". То есть это число состоит из двух сотен, трех десятков и пяти единиц. Это можно обозначить так: Две 100 (сотни), три 10 (десятка) и 5 единиц. Математически это можно записать так: B*100) + C*10) + E*1) = 235 И словесное выражение, и математическая формула описывают суть многозначного десятичного числа. Каждый десятичный разряд представляет свое собственное значение, умноженное на значение, связанное с позицией этого разряда в числе. Это станет более очевидным при рассмотрении табл. Б. 1 Таблица Б.1. Десятичная система счисления: разряды единиц, десятков и сотен Значение, связанное с этим разрядом или столбцом 100 10 1 Десятичные разряды 2 3 5 При использовании десятичной системы счисления крайний справа десятичный разряд в числе представляет значение этого разряда, умноженное на 1; второй справа десятичный разряд представляет свое значение, умноженное на 10; и третий справа представляет значение десятичного разряда, умноженное на 100. Эта логика распространяется и на большие числа, каждый следующий десятичный разряд, расположенный левее, имеет значение, в 10 раз большее по сравнению с десятичным разрядом, находящимся справа от него. В этом примере 5 означает 5, умноженное на 1, потому что эта цифра находится в первом столбце. Точно так же одна цифра в столбце десятков представляет число 3, умноженное на 10. Наконец, 2 в столбце сотен означает 2, умноженное на 100. При использовании десятичных чисел каждый десятичный разряд числа, при рассмотрении его справа налево, представляет собой значение, умноженное на десять в степени, соответствующей позиции десятичного разряда в числе. Самый правый десятичный разряд представляет число единиц, потому что 10° = 1. Этот десятичный разряд называется разряд единиц (Is digit). Второй десятичный разряд справа представляет число десятков, его называют разряд десятков A0s digit), потому что 101 = 10; третий справа десятичный разряд — разряд сотен A00s digit), потому что 102 = 100; и т.д. Поскольку вы пользовались десятичными числами всю вашу жизнь, их математика, вероятно, стала настолько интуитивно понятной, что вы никогда не задумывались о ее глубине. Однако рассмотрение десятичных чисел под таким углом зрения поможет вам разобраться в двоичной системе счисления. Например, десятичная система счисления работает с единицами, десятками, сотнями и т.д., потому что в нашем распоряжении имеется только 10 цифр — 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Если вы начнете отсчет с 0, то после того, как достигнете 9, у вас не окажется никакого символа, или цифры, которая представляла бы число 10. Поэтому, чтобы записать число, большее, чем 9, вы нуждаетесь по крайней мере в двух десятичных разрядах — один из них будет представлять число, кратное 10, а второй — число, кратное 1. Далее вы увидите, что двоичная система счисления основывается на той же предпосылке, но при этом используются только две цифры или два разряда.
Приложение Б. Преобразование IP-адресов из десятичной системы... 371 Двоичная система счисления Двоичная система счисления — всего лишь способ представления чисел, отличный от такового, используемого десятичной системой счисления. И десятичная и двоичная система счисления используют цифры и разряды, чтобы представить конкретное число. Однако в двоичной системе используются только две цифры — 0 и 1. Двоичная система счисления использует те же принципы, на которых основана десятичная система счисления, но с небольшими отличиями. Наилучший способ разобраться в подобии и различии состоит в том, чтобы рассмотреть типичное двоичное число. Двоичное число — это просто другой способ записи числа. Каждое десятичное число можно записать в виде двоичного числа. Например, следующее двоичное число — эквивалент десятичного числа 235: 11101011 Если вам приходится много работать с числами, вероятно, было бы удобнее использовать трехразрядное десятичное число вместо этого восьмиразрядного двоичного числа. Однако иногда удобнее работать с двоичными числами. В частности, компьютеры обрабатывают информацию, используя двоичные числа, поэтому при изучении очень многих тем, связанных с вычислениями, необходимо, чтобы вы могли понимать, что такое двоичные числа, и уметь работать с ними. Кроме того, когда вы планируете использование IP-подсетей и работаете с ними, вы должны уметь работать с двоичными числами. Как и в случае десятичных чисел, многозначное двоичное число определяет собственное значение для каждого разряда числа — в зависимости от занимаемой им позиции. Например, в табл. Б.2 показано число 11101011 и значения, связанные с каждым его разрядом. Таблица Б.2. Двоичная система счисления: разряды единиц, двоек, четверок, восьмерок и т.д. Значение, связанное с данным разрядом или столбцом Собственно одноразрядное значение 128 1 64 1 32 1 16 0 8 1 4 0 2 0 1 1 При использовании десятичной системы счисления цифры в многозначном десятичном числе представляют степени числа 10. То же самое относится к двоичной системе счисления. В этом случае крайняя справа цифра также означает количество единиц B°, но их может быть только две — 0 и 1), вторая цифра справа представляет количество двоек B1), третья справа цифра представляет количество четверок B2), и т.д. В табл. Б.2 показаны значения, связанные с каждым разрядом (или столбцом), каждое из них является последовательной степенью числа 2, возрастающей справа налево. Итак, что это в действительности означает? Все просто: точно так же, как десятичное число 235 означает B*100) + C*10) + E*1) = 235, двоичное число 11101011 означает следующее: A*128) + A*64) + A*32) + @*16) + A*8) + @*4) + A*2) + A*1) = 235 в десятичной системе счисления. Если вы используете числа, вы фактически оперируете с числом, допустим, 235 в его десятичном представлении. Число 235 (десятичное) и 11101011 (двоичное) — оба представляют одно и то же число; просто они записаны в различных форматах.
372 Часть VII. Приложения Преобразование двоичных чисел в десятичные и обратно Ранее мы говорили о том, что двоичное число — это просто иной способ записи десятичного числа. В некоторых случаях проще работать с одним форматом, чем с другим. Однако иногда в вашем распоряжении бывает только десятичная версия числа, в то время как вы должны работать с его двоичной версией. Возможна и противоположная ситуация. Именно поэтому нужно уметь преобразовывать число из одного формата в другой. В оставшейся части этого приложения используются только примеры с двоичными числами, которые требуют восьми или меньшего количества разрядов. Преобразование двоичного числа в десятичное Преобразование из двоичной системы счисления в десятичную осуществляется довольно просто, по крайней мере по сравнению с преобразованием десятичного числа в двоичное. Фактически, вы уже видели соответствующие математические формулы в тексте, следовавшем после табл. Б.2. Чтобы преобразовать двоичное число в десятичное, вы должны представить двоичное число в виде таблицы типа табл. Б.З. Таблица Б.З. Пример двоично-десятичного преобразования Значение, связанное с этим разрядом или столбцом Собственно одноразрядное значение 128 1 64 0 32 1 16 0 8 1 4 1 2 0 1 1 Табл. Б.З выглядит точно так же, как табл. Б.2, кроме двоичного числа, которое несколько отлично от предыдущего. Чтобы преобразовать его в десятичное число, нужно просто перемножить каждую пару чисел, которые находятся в одном столбце таблицы, и затем сложить их. В табл. Б.4 представлена та же информация, но теперь с произведениями, о которых только что шла речь. Таблица Б.4. Преобразование числа 10101101 в десятичное: перемножение чисел, находящихся в каждом столбце, с последующим сложением Значение, связанное с этим разрядом 128 64 32 16 8 4 2 1 или столбцом Собственно одноразрядное значение 10 10 1 10 1 Произведение двух чисел, находящих- 128 0 32 0 8 4 0 1 ся в одном столбце Сумма всех чисел третьей строки 173 Процесс очень прост, — если только вы помните все числа в степени 2! Когда вы работаете с IP-адресацией, то должны помнить все числа в степени 2 до 28, или до 256. (Самые низкие степени 2 перечислены в табл. Б.5 далее в этом приложении.) т
Приложение Б. Преобразование IP-адресов из десятичной системы... 373 Основной алгоритм преобразования чисел из двоичной системы счисления в десятичную может быть представлен в виде следующих шагов. ■ Шаг 1. Записать степени числа 2 в виде десятичных чисел в верхней строке таблицы, аналогичной табл. Б.4. ■ Шаг 2. Во второй строке записать двоичное число, подлежащее преобразованию, указывая каждый двбичный знак под соответствующей степенью 2. ■ Шаг 3. Перемножить каждую пару чисел (находящихся в одном столбце) и затем сложить полученные произведения. Преобразование десятичного числа в двоичное Преобразование десятичного числа в двоичное не требует сложной математики, но соответствующий алгоритм несколько длиннее. В этом разделе мы расскажем об общем алгоритме преобразования десятичного числа в двоичное и приведем несколько примеров. Общий алгоритм следующий. ■ Шаг 1. Находим десятичное число, равное степени числа 2, которое является самым близким к десятичному числу, подлежащему преобразованию, но не превышает его. ■ Шаг 2. Записываем двоичную 1 как крайний левый двоичный знак нового двоичного числа. ■ Шаг 3. Вычитаем эту степень числа 2 из исходного десятичного числа. (Получающееся при использовании данного алгоритма число будем называть остатком {remainder).) ■ Шаг 4. Повторяем перечисленные ниже шаги до тех пор, пока они не будут закончены на этапе, когда степень числа 2 равна 1 B°). В результате неоднократного повторения этих шагов очередной двоичный разряд — со значением О или 1 — будет добавляться с правой стороны двоичного числа при каждом выполнении этого шага: — если следующая более низкая степень числа 2 (по сравнению с предыдущим шагом) больше остатка, записываем в качестве следующего двоичного знака 0; — в противном случае записываем в качестве следующего двоичного знака 1; кроме того, вычитаем текущую степень числа 2 из остатка, и остаток используем для выполнения следующего шага 4. Чтобы использовать этот алгоритм, вы должны или помнить степени числа 2, или иметь их где-нибудь под рукой. В табл. Б.5 перечислены степени числа 2, которые будут использоваться в этом приложении. Первым примером будет преобразование десятичного числа 235 в двоичное 11101011. Чтобы осуществить это преобразование, нужно для начала выполнить первые 3 шага алгоритма, описанные ниже. 1. Самая близкая степень 2, не превышающая числа 235 — это 128. 2. Первый двоичный знак будет равен 1. 3. Вычисляем остаток: 235 - 128 = 107. При первом выполнении шага 4 алгоритма будем использовать это значение остатка.
374 Часть VII. Приложения Таблица Б.5. Степени числа 2 в десятичном виде Степень числа 2 Десятичное значение 2° 2' 22 25 24 2s 26 27 28 1 2 4 8 16 32 64 128 256 Хотя описание этих первых трех шагов весьма полезно, еще большую помощь может оказать таблица, содержащая ту же информацию. Поскольку в этом примере итоговое двоичное число будет двоичным числом с восемью разрядами, таблица будет рассчитана на восемь цифр. (Используя этот алгоритм, вы можете и не знать, из сколь- ки разрядов будет состоять новое двоичное число, так что оставляйте побольше места с правой стороны листа бумаги.) В табл. Б.6 подробно представлены первые три шага. Таблица Б.6. Первые три шага преобразования десятичного числа 235 в двоичное Десятичное число, которое будет преобразовано в двоичное 2х, ближайшее к числу, не большее преобразуемого числа Двоичное число Остаток 235 128 1 107 Далее вы повторяете шаг 4 для каждой последовательно меньшей степени числа 2, пока не закончите шагом 4 для двоичного разряда 2°, или разряда единиц. Поскольку первые 3 шага выполнялись по отношению к числу 27 A28), первое прохождение шага 4 будет выполнено по отношению к числу 26 F4), являющемуся более низкой степенью 2 (табл. Б.7). Таблица Б.7. Первое выполнение шага 4 алгоритма преобразования по отношению к степени числа 2, равной 26 F4) Десятичное число, которое будет преобразовано в двоичное 235 Остаток (из предыдущего шага/столбца) — 107 Следующее значение 2х, где х на 1 меньше по сравнению с — 64 предыдущим шагом Двоичное число 1 1 Остаток 107 43 В результате первого выполнения шага 4 к преобразуемому двоичному числу добавляется вторая цифра — в данном случае двоичная 1. Следующая более низкая степень 2 в этом случае — 64. Остаток от предыдущего шага был равен 107, поэтому,
Приложение Б. Преобразование IP-адресов из десятичной системы... 375 в соответствии с исходным алгоритмом, шаг 4А не используется, потому что 64 не больше 107. Шаг 4Б используется, таким образом, значение следующего разряда — двоичная 1, и получен новый остаток A07 - 64 = 43). Теперь шаг 4 повторяется для следующей, более низкой степени числа 2, 25 C2), как показано в табл. Б.8. Таблица Б.8. Второе выполнение шага 4 для числа 25 C2) Десятичное число, которое будет преобразовано 235 в двоичное Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше по сравнению с предыдущим шагом Двоичное число Остаток Как в табл. Б.7, в результате выполнения шага 4, показанного в табл. Б.8, к двоичному числу добавляется еще одна двоичная 1, и повторно вычисляется остаток. В следующем шаге для 24 A6) степень числа 2 превышает остаток, поэтому в следующем разряде двоичного числа будет 0. Эти значения показаны в табл. Б.9. Таблица Б.9. Третье выполнение шага 4 для числа 24 A6) — — 1 107 107 64 1 43 43 32 1 11 Десятичное число, которое будет преобразовано 235 в двоичное Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше по сравнению с предыдущим шагом Двоичное число Остаток — — 1 107 107 64 1 43 43 32 1 11 11 16 0 11 Теперь мы на полпути выполнения примера и надеемся, что общая идея относительно того, как выполняется шаг 4, становится более понятной. В табл. Б. 10 приведены результаты выполнения сразу трех шагов 4. Таблица Б. 10. Четвертое, пятое и шестое выполнения шага 4 Десятичное число, которое будет преобразова- 235 но в двоичное Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше по — сравнению с предыдущим шагом Двоичное число Остаток — — 1 107 107 64 1 43 43 32 1 11 11 16 0 11 11 8 1 3 3 4 0 3 3 2 1 1
376 Часть VII. Приложения При переходе к степени 2, равной 23, к двоичному числу добавлена еще одна двоичная 1. Для числа 22 D), 4 больше, чем остаток 3, поэтому к числу добавлен двоичный знак 0. Наконец, в третьем из 3-х столбцов, значения в которых выделены полужирным шрифтом, для числа 21 B) значение 2 меньше, чем остаток, равный 3, поэтому добавляется двоичная 1 и еще раз вычисляется остаток, получающийся равным 1. Результаты финального выполнения шага 4 показаны в табл. Б. 11. Логика ничем не отличается от использованной при предыдущих прохождениях шага 4. Это последнее выполнение шага 4, потому что следующая более низкая степень 2, 2° A), является последним возможным разрядом двоичного числа. Таблица Б. 11. Последнее выполнение шага 4, для 2° Десятичное число, которое будет преобразовано в двоичное Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше по сравнению с предыдущим шагом Двоичное число , Остаток 235 — 1 107 107 64 1 43 43 32 1 11 11 16 0 11 11 8 1 3 3 4 0 3 3 2 1 1 1 1 1 0 С завершением этого шага завершается и процесс преобразования десятичного числа в двоичное. Двоичное число 11101011 —двоичный эквивалент десятичного числа 235. В следующем примере показано, как преобразовать десятичное число 100 в двоичное число. В табл. Б. 12 показаны шаги 1-3. В табл. Б. 13 показаны результаты последовательного выполнения шага 4, за исключением конечного прохода. В табл. Б. 14 показан результат конечного выполнения шага 4. Таблица Б. 12. Первые три шага преобразования десятичного числа 100 в двоичное Десятичное число, подлежащее преобразованию 100 Ближайшее к числу значение 2х, не большее, чем... 64 Двоичное число 1 Остаток 36 Таблица Б. 13. Прохождение шага 4 для значений 2х, равных 32, 16, 8, 4 и 2 в ходе преобразования десятичного числа 100 в двоичное Десятичное число, подлежащее преобразованию 100 Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше по сравнению с предыдущим шагом Двоичное число Остаток — — 1 36 36 32 1 4 4 16 0 4 4 8 0 4 4 4 1 0 0 2 0 0
Приложение Б. Преобразование IP-адресов из десятичной системы... 377 — — 1 36 36 32 1 4 4 16 0 4 4 8 0 4 4 4 1 0 0 2 0 0 0 1 0 0 Таблица Б. 14. Последнее выполнение шага 4 в ходе преобразования десятичного числа 100 в двоичное Десятичное число, подлежащее преобразо- 100 ванию Остаток (из предыдущего шага/столбца) Следующее значение 2х, где х на 1 меньше — по сравнению с предыдущим шагом Двоичное число Остаток Как видно из конечного результата, представленного в табл. Б. 14, десятичное число 100 имеет двоичный эквивалент, состоящий из 7 цифр, — число 1100100. Теперь, когда мы рассказали, как преобразовывать десятичные числа в двоичные, и наоборот, пора разобраться с тем, как преобразовывать десятичные IP-адреса в двоичные варианты, и наоборот. Преобразование IP-адресов IP-адреса — это 32-разрядные двоичные числа, но, поскольку людям неудобно записывать 32-разрядные числа, они записывают адреса в виде десятичных чисел. Формат десятичных IP-адресов часто называют каноническим (canonical) форматом, иногда его называют десятинным форматом с точками (dotted decimal format). Например, в следующих двух строках показана двоичная версия IP-адреса, сопровождаемая тем же самым IP-адресом, записанным в виде десятичного числа с точками. После их сравнения становится вполне очевидно, что, при наличии выбора, намного проще работать с десятичной версией: 00001000 00000100 00000010 000000001 8.4.2.1 В следующих двух разделах описан процесс преобразования IP-адресов, сначала из десятичного варианта в двоичный, затем наоборот. Преобразование десятичных IP-адресов в двоичные Вы уже знакомы с математикой, на которой основан процесс преобразования десятичных чисел в двоичные. Чтобы преобразовывать IP-адреса, вы просто должны выполнять несколько дополнительных правил. 1. При преобразовании десятичного IP-адреса в двоичный каждое из 4-х десятичных чисел, из которых состоит десятичный IP-адрес, преобразуется в 8- разрядное двоичное число, что в общей сложности дает 32 бита. 2. Если десятичное число преобразовывается в двоичное число, которое имеет меньше 8 разрядов, нужно поместить перед этим числом двоичные нули, чтобы получилось двоичное число с 8 цифрами. 3. 32-разрядный двоичный IP-адрес формируется просто путем последовательной записи каждого из 4 наборов по 8 битов в каждом.
378 Часть VII, Приложения Другими словами, чтобы преобразовать десятичный IP-адрес в его 32-разрядный двоичный эквивалент, нужно преобразовать каждое из 4-х десятичных чисел, из которых состоит десятичный IP-адрес, в соответствующее ему двоичное число. Вы могли бы вспомнить, заглянув в главу 10, что каждое из этих 4 чисел, составляющих десятичный IP-адрес, отделенное от других точкой, называют октетом. По существу, вы преобразуете каждый из 4-х десятичных октетов в 8-разрядное двоичное число. Для любого из двоичных чисел, которые после преобразования оказываются менее чем 8-разрядными, нужно поместить слева столько двоичных нулей, чтобы число превратилось в 8-разрядное. Наконец, только представьте эти 4 октета в виде одного длинного 32-разрядного числа, и дело сделано! В табл. Б.15 показан пример преобразования IP-адреса 100.235.2.2. в двоичную форму. Таблица Б. 15. Преобразование десятичного IP-адреса 100.235.2.2 в двоичный Первый октет Второй октет Третий октет Четвертый октет Десятичный октет 100 235 2 2 Каждый октет преоб- 1100100 11101011 10 10 разуется в двоичное число (шаг 1) Двоичные октеты, по- 01100100 11101011 00000010 00000010 еле помещения нулей впереди (шаг 2) Получающееся 32- 01100100111010110000001000000010 разрядное число (шаг 3) Табл. Б. 15 начинается с десятичного IP-адреса в первой строке, а в следующих трех строках показаны результаты каждого из трех шагов преобразования. Математика преобразования десятичных чисел (шаг 1) не показана, но вы можете обратиться к предыдущему разделу и рассмотреть примеры преобразования десятичных чисел 100 и 235. Для первого, третьего и четвертого октетов полученные в результате преобразования двоичные числа имели длину менее 8 битов, поэтому на шаге 2 к ним слева были приписаны нули, чтобы длина всех чисел составляла 8 битов. На шаге 3 все 32 бита просто записываются последовательно. В действительности нет необходимости выполнять шаг 3; можно просто 4 набора по 8 битов в каждом, записанных в одной строке, считать 32-разрядным числом. Преобразование двоичных IP-адресов в десятичные Чтобы преобразовать двоичный IP-адрес в его десятичный эквивалент, вы должны знать 32-разрядный IP-адрес. По сравнению с преобразованием десятичного числа в двоичное новый процесс довольно прост. ■ Шаг 1. Делим 32 бита на 4 группы 8 битов в каждой D октета). ■ Шаг 2. Преобразуем каждый двоичной октет в десятичное число. ■ Шаг 3. Помещаем точки между полученными четырьмя десятичными числами.
Приложение Б. Преобразование IP-адресов из десятичной системы... 379 Этот алгоритм можно показать на примере типичного двоичного значения — 01100100111010110000000100000001. В табл. Б.16 представлены разряды этого числа, разделенные на октеты, по 8 битов в каждом. Таблица Б.16. Преобразование двоичного IP-адреса в десятичный Первый октет Второй октет Третий октет Четвертый октет Двоичное значение, 01100100 11101011 00000001 00000001 разделенное на 4 октета (шаг 1) Каждый октет преоб- 100 235 1 1 разуется в десятичное число (Шаг 2) Десятичный IP-адрес 100.235.1.1 в десятичном формате с точками (шаг 3) Получающийся IP-адрес, с добавленными к нему точками, будет таким: 100.235.1.1. Математика, используемая для преобразования, была описана в разделе "Преобразование двоичного числа в десятичное" этого приложения. Процесс преобразования не представляет собой ничего сложного. Начиная преобразование 32- разрядного числа, важно правильно разбить его на 4 набора по 8 битов D двоичных октета), тогда можно применить математику и преобразовать каждое 8-разрядное число из двоичной системы счисления в десятичную. Однако если при разбиении будет допущена оплошность и вы преобразуете из двоичной системы счисления в десятичную 9-разрядное число, а затем 7-разрядное, то преобразование в целом будет выполнено неправильно. Использование переводной таблицы Теперь вы понимаете, как осуществляется преобразование десятичных чисел в двоичные, и наоборот. Вы также знаете несколько правил, которым вы должны следовать, выполняя преобразование IP-адреса из одного формата в другой. Вы можете воспользоваться калькулятором, чтобы выполнить математические действия для преобразования десятичного числа в двоичное, или наоборот. Поскольку IP-адреса используют только десятичные числа, заключенные в диапазоне между 0 и 255, можете также использовать двоично/десятичную переводную таблицу. Двоично/десятичная переводная таблица просто содержит десятичные числа наряду с их двоичными эквивалентами. Таким образом, вы можете найти в таблице нужные числа, не используя математику, описанную ранее в этом приложении. Например, чтобы преобразовать 100.235.1.1 в двоичное число, вы могли найти в таблице десятичное число 100. Рядом с ним вы обнаружили бы 8-разрядное двоичное число 01100100. Вы просто записали бы эти цифры как первые 8 двоичных знаков. Затем вы нашли бы в таблице число 235 и обнаружили рядом его двоичное значение, а именно 11101011, и также записали бы его. Вы можете также использовать эту таблицу для преобразования двоичных IP- адресов в десятичные. Вы должны следовать тем же самым алгоритмам, но вместо
380 Часть VII. Приложения того, чтобы выполнять математические вычисления, просто найти 8-разрядное двоичное число в таблице и записать указанное рядом с ним десятичное число в качестве значения данного октета IP-адреса. В качестве справочной можно использовать табл. Б. 17. Обратите внимание на то, что все двоичные числа представлены в виде 8-разрядных, потому что, когда они используются для преобразования IP-адреса, вам нужны будут для каждого октета полные 8 бит. Таблица Б. 17. Двоично/десятичная переводная таблица Десятичное значение Двоичное значение Десятичное значение Двоичное значение 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 46 47 0000 0000 0000 0001 0000 0010 0000 0011 0000 0100 0000 0101 0000 0110 0000 0111 0000 1000 0000 1001 0000 1010 0000 1011 0000 1100 0000 1101 0000 1110 0000 1111 0001 0000 0001 0001 0001 0010 00010011 0001 0100 0001 0101 00010110 0010 1110 0010 1111 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 70 71 00010111 0001 1000 0001 1001 0001 1010 0001 1011 0001 1100 0001 1101 0001 1110 0001 1111 0010 0000 0010 0001 0010 0010 0010 0011 0010 0100 0010 0101 00100110 00100111 0010 1000 0010 1001 0010 1010 0010 1011 0010 1100 010 1101 01000110 01000111
Приложение Б. Преобразование IP-адресов из десятичной системы... 381 Продолжение табл. Б. 17 Десятичное значение Двоичное значение Десятичное значение Двоичное значение 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 94 95 96 97 98 99 100 101 102 00110000 00110001 00110010 00110011 00110100 00110101 00110110 00110111 ООП 1000 ООП 1001 ООП 1010 ООП 1011 ООП 1100 ООП 1101 ООП 1110 ООП 1111 0100 0000 0100 0001 0100 0010 0100 0011 0100 0100 0100 0101 0101 1110 0101 1111 0110 0000 0110 0001 0110 0010 01100011 0110 0100 01100101 01100110 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 118 119 120 121 122 123 124 125 126 0100 1000 0100 1001 0100 1010 0100 1011 0100 1100 0100 1101 0100 1110 0100 1111 0101 0000 0101 0001 01010010 01010011 01010100 01010101 01010110 01010111 0101 1000 0101 1001 0101 1010 0101 1011 0101 1100 0101 1101 01110110 01110111 0111 1000 0111 1001 0111 1010 0111 1011 0111 1100 0111 1101 01111110
382 Часть VII. Приложения Продолжение табл. Б. 17 Десятичное значение Двоичное значение Десятичное значение Двоичное значение 103 104 105 106 107 108 109 ПО 111 112 113 114 115 116 117 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 01100111 0110 1000 0110 1001 0110 1010 0110 1011 0110 1100 0110 1101 01101110 01101111 01110000 01110001 01110010 01110011 01110100 01110101 1000 1110 1000 1111 10010000 10010001 1001 0010 10010011 1001 0100 10010101 10010110 10010111 1001 1000 1001 1001 1001 1010 1001 1011 1001 1100 1001 1101 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 0111 1111 1000 0000 1000 0001 1000 0010 1000 0011 1000 0100 1000 0101 1000 0110 1000 0111 1000 1000 1000 1001 1000 1010 1000 1011 1000 1100 1000 1101 10100110 10100111 1010 1000 1010 1001 1010 1010 1010 1011 1010 1100 1010 1101 1010 1110 1010 1111 10110000 10110001 10110010 10110011 10110100 10110101
Приложение Б. Преобразование IP-адресов из десятичной системы... 383 Продолжение табл. Б. 17 Десятичное значение Двоичное значение Десятичное значение Двоичное значение 158 159 160 161 162 163 164 165 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 1001 1110 1001 1111 1010 0000 1010 0001 1010 0010 10100011 1010 0100 1010 0101 1011 1110 1011 1111 1100 0000 1100 0001 1100 0010 1100 0011 1100 0100 1100 0101 11000110 11000111 1100 1000 1100 1001 1100 1010 1100 1011 1100 1100 1100 1101 1100 1110 1100 1111 11010000 11010001 11010010 11010011 11010100 182 183 184 185 186 187 188 189 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 10110110 10110111 1011 1000 1011 1001 1011 1010 1011 1011 1011 1100 1011 1101 11010110 11010111 1101 1000 1101 1001 1101 1010 1101 1011 1101 1100 1101 1101 1101 1110 1101 1111 1110 0000 1110 0001 11100010 11100011 11100100 11100101 11100110 11100111 1110 1000 1110 1001 1110 1010 1110 1011 1110 1100
384 Часть VII. Приложения Окончание табл. Б. 17 Десятичное значение Двоичное значение Десятичное значение Двоичное значение 213 1 238 1 239 1 240 1 241 1 242 1 243 1 244 1 245 1 246 1 1010101 110 1110 1101111 1110000 1110001 1110010 1110011 1110100 1110101 1110110 237 1 247 1 248 1 249 1 250 1 251 1 252 1 253 1 254 1 255 1 1101101 L11 0111 111 1000 111 1001 111 1010 111 1011 111 1100 111 1101 ill 1110 111 1111 Резюме При чтении этой книги вы могли игнорировать двоичные версии IP-адресов. Однако, если вы хотите узнать больше о протоколе IP, то, конечно, должны научиться работать с IP-адресами в двоичном формате. В этом приложении приведены основы двоичной системы счисления, рассказано, как осуществлять преобразование чисел из десятичной системы счисления в двоичную и обратно, а также о преобразовании форматов IP-адресов из десятичного в двоичный и обратно. Если вы хотите получить больше практики или узнать больше о системах счисления, рекомендуем посетить следующие Web-сайты. ■ Для получения основной информации относительно основания 10, основания 2 (двоичная система) и практики преобразования рекомендуем посетить Web-узел http://www.ibilce.unesp.br/courseware/datas/numbers.htm#mark2. ■ Описание процесса преобразования можно найти на сайте http://www.doit.ort.org/ course/inforep/135.htm. ■ Еще одно описание процесса преобразования находится здесь: http://www.goshen.edu/compsci/mis2 00/decbinary.htm.
Глоссарий Is digit — разряд единиц. В математике — крайняя справа цифра в числе, состоящем из многих разрядов или цифр. Она представляет значение данного разряда, умноженное на 1. 4-wire circui — 4-проводная линия. Указывает на тот факт, что выделенный канал обычно использует две пары проводов. 10 GigE. Сокращение от 10 Gigabit Ethernet. 10 Gigabit Ethernet. Стандарт Ethernet, регламентирующий передачу данных со скоростью 10 миллионов бит в секунду, или 10 гигабит в секунду. 10/100 NIC. Плата интерфейса сети Ethernet, способная передавать данные со скоростью 10 или 100 Мбит/с, а также обеспечивающая автоматическое согласование и дуплексный режим. lOBaseT. Название стандарта Ethernet на 10 Мбит/с, рассчитанного на использование кабелей с витыми парами проводов. 10s digit — разряд десятков. В математике — цифра, вторая справа в числе, состоящем из многих разрядов или цифр. Эта цифра представляет значение данного разряда, умноженное на 10. 100s digit — разряд сотен. В математике — цифра, третья справа в числе, состоящем из многих разрядов или цифр. Эта цифра представляет значение данного разряда, умноженное на 100. 100BaseT. Название стандарта Ethernet на 100 Мбит/с, рассчитанного на использование кабелей с витыми парами проводов. 802.2. Комитет IEEE, которые определяет общие характеристики нескольких типов локальных сетей, включая Ethernet. Также известен как Logical Link Control (LLC). 802.3. Комитет IEEE, который определяет общие характеристики, специфичные для Ethernet. Также известен как Media Access Control (MAC). AAA. Процесс аутентификации, авторизации и учета. Произносится как "тройное A" (triple А). AAA server — AAA-сервер. Сервер аутентификации, авторизации и учета. Этот термин обычно используется при выполнении ААА-функций, когда пользователи получают доступ к сети Internet-провайдера (ISP). Access link — канал доступа. Выделенный канал между площадкой пользователя и местной АТС, соединяющей маршрутизатор со службой Frame Relay. Access rate — скорость доступа. Скорость, определяемая тактовой частотой сигналов в канале доступа. Ее выбор определяет плату за соединение Frame Relay.
386 Глоссарий Accounting — учет. В контексте безопасности сети — процесс записи и сообщения о событиях, которые происходят в ходе аутентификации и авторизации. Acknowledgment number — номер подтверждения. Поле в заголовке TCP, идентифицирующее номер следующего байта, который компьютер, пославший этот ТСР- сегмент, ожидает получить. Является частью процесса исправления ошибок. Address Resolution Protocol. См. ARP. Addressing — адресация. Процесс помещения в заголовок числа, которое определяет, куда следует направить данные этого пакета. Amplitude — амплитуда. Расстояние на графике между осью X и наивысшей точкой кривой, соответствующей сигналу. Analog electrical signal — аналоговый электрический сигнал. Электрический сигнал, уровень напряжения которого изменяется непрерывно. При изображении в виде функции времени кривая плавно изменяется между максимальным и минимальным уровнями напряжения, оставаясь непрерывной. Такой сигнал хорошо использовать для передачи речи. Analog modem — аналоговый модем. См. modem. Anti-virus software — антивирусное программное обеспечение. Программное обеспечение, устанавливаемое на компьютерах пользователей, которое проверяет все файлы, копируемые на компьютер, обычно получаемые через программу электронной почты или Web-браузер, и удаляет файлы, которые содержат компьютерные вирусы. ARP (Address Resolution Protocol) — протокол преобразования адресов, ARP. Протокол, с помощью которого IP-хост может, зная IP-адрес другого IP-хоста, находящегося в той же локальной подсети, выяснить его МАС-адрес. ARP broadcast — широковещание по протоколу ARP. Широковещательный фрейм локальной сети, который содержит ARP-запрос. Запрос содержит IP-адрес; если хост, которому принадлежит этот IP-адрес, получает запрос, он должен ответить, указав в сообщении с ARP-ответом свой МАС-адрес локальной сети. ARP cache — ARP-кэш. Таблица, имеющаяся на каждом IP-хосте, включая маршрутизаторы, которая содержит IP- и соответствующие им МАС-адреса, полученные в результате их изучения с помощью протокола ARP. (Обратите внимание на то, что слово "cache" произносится как слово "cash.) ARP reply — ARP-ответ. Одноадресатный фрейм, передаваемый в локальной сети и содержащий ARP-ответ. Ответ содержит IP-адрес и МАС-адрес, используемые интерфейсом локальной сети. Он посылается в ответ на широковещательный ARP-зпрос. Asymmetric transmission rates — асимметричные скорости передачи. Использование различных скоростей передачи в зависимости от направления передачи трафика. Authentication — аутентификация. Процесс проверки идентичности пользователя, обычно путем сообщения им имени пользователя и пароля. Authentication server — сервер аутентификации. Север, который содержит перечень имен пользователей и паролей с целью обеспечения возможности для других серверов делать запросы к серверу аутентификации и проверять, действительна ли введенная пользователем комбинация. 1 В переводе с англ. cache тайник и сверхоперативная память, cash — наличные деньги. — Прим. ред.
Глоссарий 387 Authoritative DNS server — уполномоченный DNS-сервер. DNS-сервер, который знает имена и IP-адреса хостов конкретного домена. Authorization — авторизация. Процесс определения, к каким ресурсам можно допустить данного пользователя. Autonegotiation — автоматическое согласование. Процесс, в ходе которого плата интерфейса сети и порт коммутатора могут выбрать скорость Ethernet, которая будет использована, а также определить, можно ли использовать дуплексный режим. Bandwidth — пропускная способность. Жаргонный термин, обычно обозначающий скорость, с которой биты могут передаваться через физическую сеть. BGP (Border Gateway Protocol) — протокол граничного шлюза. Протокол маршрутизации, определенный RFC, что делает его общедоступным протоколом. Протокол BGP используется для обмена информацией о маршрутизации между различными компаниями, в том числе между Internet-провайдерами и их клиентами. Binary digit — двоичная цифра. В математике — разряд или цифра, являющаяся частью числа, основанного на двоичной системе счисления. Binary numbering system — двоичная система счисления. В математике — соглашение относительно счета, в котором используются два отдельных числа, а именно 0 и 1. Bit (binary digit) — бит (двоичная цифра). Двоичное число, 0 или 1, хранящееся в памяти компьютера. Bits per second (bps) — битов в секунду. См. bps. Border Gateway Protocol (BGP) — протокол граничного шлюза. См. BGP. Bps (bits per second) — бит/с (битов в секунду). Единица измерения, используемая для описания скорости, с которой данные передаются через среду связи; определяется количеством битов, переданных в течение одной секунды. Broadcast address —• широковещательный адрес. МАС-адрес Ethernet, который представляет все устройства локальной сети. Broadcast domain — широковещательный домен. Набор устройств, для которых широковещательный фрейм, посланный одним устройством, будет принят всеми устройствами, входящими в тот же широковещательный домен. Buffer — 1. Буфер. Область памяти коммутатора, в которой могут храниться фреймы, пока коммутатор ожидает освобождения порта вывода. 2. Буферизация. Процесс хранения фреймов в памяти. Bunch of bits — связка битов. Жаргонный термин, используемый в этой книге для описания информации, представленной в двоичном виде, которая поступает на компьютер. Byte — байт. 8 упорядоченных битов, хранящихся на компьютере. Cable — кабель. Один или несколько проводов, заключенных в пластиковую трубку. Canonical — канонический. Сокращенный вариант термина canonical format. Canonical format — канонический формат. Термин, обозначающий формат TCP/IP-адреса, записанного в виде десятичного числа с разделительными точками. Carrier sense multiple access collision detect (CSMA/CD) — множественный доступ с контролем несущей и обнаружением коллизий. См. CSMA/CD. Challenge Handshake Authentication Protocol (CHAP) — протокол взаимной аутентификации. См. CHAP.
388 Глоссарий Channel service unit/data service unit (CSU/DSU) — модуль обслуживания канала и данных. См. CSU/DSU. CHAP (Challenge Handshake Authentication Protocol) — протокол взаимной аутентификации, CHAP. Компонент протокола РРР, который используется для пересылки информации относительно имени пользователя и пароля, причем пароль пересылается в виде свертки сообщения, а не открытым текстом. CIR (committed information rate) — гарантированная скорость передачи, CIR. Скорость, с которой маршрутизатор может пересылать данные через отдельный постоянный виртуальный канал (РУС) Frame Relay, для которого провайдер гарантирует доставку определенного количества данных. Провайдер пересылает часть данных со скоростью, превышающей оговоренную для данного РУС, если это в данный момент позволяет пропускная способность. Выбор CIR обычно влияет на плату, взимаемую за использование каждого РУС. Class of network — класс сети. По отношению к IP-адресации этот термин указывает, относится ли данная IP-сеть к классу А, В или С. Clear text — открытый текст. Информация, представленная в своей изначальной форме, до того как она будет закодирована, зашифрована или изменена перед передачей. Client — клиент. Обобщающий термин, используемый по отношению к программному обеспечению на компьютере пользователя или самому этому компьютеру. Этот термин указывает на тот факт, что пользователь обычно желает использовать одну или несколько сетевых служб, поэтому он является клиентом или покупателем этих служб. Clock rate — тактовая частота. Термин, обозначающий скорость, с которой биты передаются через физический канал. Часто используется для указания скорости, установленной для модуля CSU/DSU. Clocking — тактовая синхронизация. Действие, вынуждающее канал глобальной сети работать со скоростью, согласованной с требованиями телефонной компании. СО (central office) — центральная автоматическая телефонная станция (АТС). Офис или здание, где установлено оборудование телефонной компании. Collision — коллизия. В технологии Ethernet условие, при котором два (или более) фрейма одновременно передаются через пару проводов. Co-lo (co-location) — сосредоточение, близкое местоположение. Практика, при которой телефонная компания кооперируется с Internet-провайдером, позволяя последнему устанавливать свое оборудование на территории АТС. Co-location (co-lo) — сосредоточение, близкое местоположение. См. со-1о. Committed information rate (CIR) — гарантированная скорость передачи, CIR. См. CIR. Computer virus — компьютерный вирус. См. virus. Configuring a router — конфигурирование маршрутизатора. Процесс, посредством которого вводят команды, сообщающие маршрутизатору, что делать. Например, инженер мог бы сконфигурировать маршрутизатор, указав ему, какие IP-адреса следует использовать для каждого интерфейса. Content (web content) — содержимое (Web-содержимое, на сленге — контент). Термин, относящийся к тексту, графике, изображениям, видео- и аудиофайлам, предоставляемым Web-страницей. Cracker — взломщик. Человек, который пытается создать проблемы для сетей и компьютеров.
Глоссарий 389 Cross-over cable — кабель с перекрестными соединениями контактов. Кабель локальной сети Ethernet, в котором провод, соединенный со штырьком 1 на одном конце кабеля, соединен со штырьком 3 на другом конце кабеля. Провод, соединенный со штырьком 2 на одном конце кабеля, соединен со штырьком 6, штырек 3 соединен со штырьком 1 и штырек 6 соединен со штырьком 2. Чтобы добиться этого, витая пара, соединенная с контактами 1 и 2, соединяется со штырьками 3 и 6 на другом конце кабеля, а витая пара, разведенная на контакты 3 и 6, соединяется с контактами 1 и 2 на другом конце кабеля. CSMA/CD (carrier sense multiple access collision detect) — множественный доступ с контролем несущей и обнаружением коллизий (CSMA/CD). Алгоритм, определяющий, как включенные в сеть Ethernet компьютеры должны себя вести для уменьшения количества коллизий и ликвидации их последствий. CSU/DSU (channel service unit/data service unit) — модуль обслуживания канала и данных (CSU/DSU). Устройство (или компонент) последовательного интерфейса маршрутизатора, которое может выполнять много функций, включая настройку последовательного канала на нужную скорость передачи. Data-link connection identifier (DLCI) — идентификатора канала связи. См. DLCI. Decimal digit — десятичная цифра. В математике — разряд или цифра, являющаяся частью числа, основанного на десятичной системе счисления, а именно 0, 1,2, 3, 4, 5, 6, 7, 8 и 9. Decimal numbering system — десятичная система счисления. В математике — соглашение относительно нумерации предметов, при котором используется десять цифр. DECnet. Патентованная сетевая модель корпорации Digital Equipment. Decrypting — дешифрование. Процесс восстановления исходных данных, которые переданы через сеть, после шифрования отправителем. Default gateway — шлюз, назначенный по умолчанию. См. default router. Default router — маршрутизатор, назначенный по умолчанию. Параметр TCP/IP- хоста, указывающий на IP-адрес маршрутизатора. Этот хост посылает пакеты маршрутизатору по умолчанию, ожидая, что последний окажется в состоянии переслать их получателю. Default web page — Web-страница, назначенная по умолчанию. См. home page. Demodulation — демодуляция. Интерпретация полученного аналогового электрического сигнала с целью декодирования двоичных 0 и 1. Denial of service attack — атака типа "отказ в обслуживании". Акция, посредством которой взломщик создает проблемы для службы или сервера, или добивается выхода их из строя, вследствие чего легитимные пользователи не могут воспользоваться данной службой. Destination Address field — поле адреса получателя. Часть заголовка Ethernet длиною 6 байт, в которой плата интерфейса сети помещает Ethernet-адрес получателя перед отправкой фрейма. Destination IP address — IP-адрес получателя. Поле IP-заголовка, в котором указывается IP-адрес получателя пакета. Digit — одноразрядное число. В математике — один символ, который может быть использован для представления части числа. Например, одноразрядное число " является частью числа 21". Аналог термина "цифра" (numeral). Digital subscriber line (DSL) — цифровая абонентская линия. См. DSL.
390 Глоссарий Directly connected route — непосредственно связанный маршрут. Маршрут, который относится к сети или подсети, соединенной с интерфейсом маршрутизатора. Directly connected subnet — непосредственно связанная подсеть. Подсеть, для которой маршрутизатор имеет рабочий физический интерфейс, соединенный с сетью, частью которой является подсеть. Directory assistance — справочный стол. Служба телефонной компании, позволяющая позвонить по стандартному номеру и узнать чей-то номер телефона. Disk drive — накопитель на дисках (в контексте книги — жесткий диск). Компонент компьютера, который постоянно хранит содержимое компьютерных файлов. DIX Ethernet. Термин, означающий исходный стандарт Ethernet, разработанный сотрудниками компаний Digital Equipment, Intel и Xerox. DLCI (data-link connection identifier) — идентификатор канала связи. Адрес Frame Relay, используемый в заголовках Frame Relay для идентификации PVC. DMZ — демилитаризованная зона. Локальная сеть, серверы которой размещены в корпоративной сети; некоторые из них доступны для пользователей Internet. Демилитаризованная зона позволяет отделить серверы, предназначенные только для внутреннего использования (т.е. закрытые для внешних пользователей), от общедоступных серверов (входящих в DMZ). DMZ interface — DMZ-интерфейс. Интерфейс брандмауэра, соединенный с DMZ локальной сети. Последняя считается боле защищенной, чем внешняя, но менее защищенной, чем внутренняя сеть. DNS (Domain Name System) — доменная система имен (DNS). Протоколы и соглашения, определяющие всемирную базу имен ТСРДР-хостов, которая позволяет клиентскому компьютеру использовать имя хоста (а не его IP-адрес), запрашивать преобразование имен и получать корректный ответ, содержащий IP-адрес, соответствующий данному имени. DNS resolution request — запрос на преобразование имени. Сообщение DNS- протокола, посылаемое пользователем на DNS-сервер, которое содержит TCP/IP- имя хоста и запрашивает соответствующий IP-адрес. DNS resolver — DNS-распознаватель. TCP/IP-хост, который отвечает на запросы относительно преобразования имен DNS, отвечая на запросы относительно преобразования имени хоста в соответствующий IP-адрес. DNS server — DNS-сервер. Компьютер, предоставляющий услуги по преобразованию имен в IP-адреса; на нем выполняется программное обеспечение DNS-сервера. Domain — домен. Набор компьютеров, имена которых заканчиваются тем же именем домена. Domain name — имя домена. Термин, относящийся к суффиксу имени хоста, идентифицирующий владельца, организацию или компанию, которая контролирует все имена, заканчивающиеся этим суффиксом. Domain Name System (DNS) — доменная система имен (DNS). См. DNS. Dot 1 Q. Жаргонный термин, используемый по отношению к стандарту IEEE 802.1Q на транкинг в виртуальной локальной сети. Dot-com — дотком. Жаргонный термин, обозначающий компании, использующие для развития бизнеса Internet-технологии. Происхождение этого термина связано с доменом верхнего уровня (. com), используемого в доменных именах этих компаний.
Глоссарий 391 Dotted decimal format — десятичный формат с разделительными точками. Термин, обозначающий формат TCP/IP-адресов, записанных в виде десятичных чисел. Download — загрузка. Передача файла, вследствие которой компьютер получает файл, копии которого у него не было. DSL (digital subscriber line) — цифровая абонентская линия. Общедоступная сетевая технология, обеспечивающая высокую пропускную способность при передаче данных по обычным медным проводам на небольшие расстояния. Наиболее распространенными DSL являются ADSL, HDSL, SDSL, VDSL. Поскольку в большинстве DSL-технологий не используется вся пропускная способность витой пары, остается возможность для передачи речи. DSL access multiplexer (DSLAM) —- мультиплексор доступа к цифровой абонентской линии. См. DSLAM. DSL modem — DSL-модем. Устройство, которое обеспечивает передачу и прием данных через местную телефонную линию. DSLAM (DSL access multiplexer) — мультиплексор доступа к цифровой абонентской линии. Устройство, обычно расположенное на территории АТС, которое разделяет цифровые и речевые сигналы, посланные DSL-модемами, подавая первые на маршрутизатор, а вторые — на телефонный коммутатор. Dynamically assigned port — динамически назначаемый порт. Номер порта, который выбирается на компьютере ТСР-клиента. Этот компьютер просто выбирает номер порта, не используемый в данный момент. EIGRP (Enhanced Interior Gateway Routing Protocol) — расширенный внутренний протокол маршрутизации (EIGRP). Патентованный протокол 1Р-маршрутизации, принадлежащий компании Cisco. Является расширенной версией протокола IGRP. Electrical cabling — прокладка электрических кабелей. Прокладка кабелей, содержащих медные провода, по которым могут передаваться электрические сигналы. Electromagnetic interference (EMI) — электромагнитные помехи (EMI). См. EMI. Electronic mail (e-mail) — электронная почта (e-mail). См. e-mail. e-mail (electronic mail) — электронная почта. Процесс создания, отправки и приема электронных сообщений. e-mail address —- адрес электронной почты. Текстовая строка, идентифицирующая отдельного пользователя электронной почты. Этот адрес состоит из двух частей — имени пользователя и имени компьютера, — разделенных символом @. Например, так: userl@ispl. net. e-mail client — e-mail-клиент. Программное обеспечение, выполняемое на компьютере пользователя, обеспечивающее пользовательский интерфейс для создания и чтения сообщений электронной почты. Оно также предлагает протокол для передачи и приема электронных сообщений. e-mail server — почтовый сервер. Программное обеспечение, выполняемое на аппаратных средствах серверного компьютера, которое принимает электронные сообщения и пересылает их через сеть. Это очень похоже на то, как традиционная почта пересылает обычные письма. EMI (electromagnetic interference) — электромагнитные помехи (EMI). Эффект, вследствие которого электрический ток, протекающий по проводам, индуцирует вокруг них магнитное поле, которое, в свою очередь, индуцирует электрический ток в соседних проводах. Вследствие взаимодействия этого тока с тем, который протекает
392 Глоссарий в соседних проводах, могут возникнуть ошибки при передаче данных через этот соседний провод. Encapsulation — инкапсуляция. Процесс получения данных от протокола более высокого уровня и добавления к нему заголовка и, возможно, концевика. Encode — кодирование. Процесс изменения характеристик электрического сигнала для передачи двоичных значений по кабелю. Encoding standard — стандарт кодирования. Специфический стандарт, определяющий, какие электрические характеристики означают 0 или 1. Encryption — шифрование. Процесс выполнения математических вычислений над данными с целью сокрытия исходных данных. Encryption key — ключ шифрования. Секретный набор символов, используемый для шифрования и дешифрования данных. Enhanced Interior Gateway Routing Protocol (EIGRP) — расширенный внутренний протокол маршрутизации (EIGRP). См. EIGRP. Enterprise network — корпоративная сеть. Сеть, созданная для использования в одной компании или организации. Enterprise WAN — корпоративная глобальная сеть. Глобальная сеть, используемая одной компанией или предприятием для соединения локальных сетей, расположенных на разных площадках. Ephemeral port — эфемерный порт. См. dynamically assigned port. Error detection — обнаружение ошибок. Процесс выявления того факта, что принятый фрейм имеет некоторые биты, изменившиеся в результате передачи их через сеть. Error recovery — исправление ошибок. Процесс, вызванный необходимостью повторной передачи утерянных или принятых с ошибками данных. Ethernet. Широко используемый стандарт передачи информации в локальных сетях. Ethernet address — Ethernet-адрес. 6-байтовый шестнадцатеричный номер, используемый для идентификации платы интерфейса сети, подключенной к Ethernet. Ethernet hub — концентратор Ethernet. Сетевое устройство, позволяющее подключить к нему другие устройства. Концентратор передает входные электрические сигналы на другие физические порты, вследствие чего для каждого устройства требуется только один кабель, хотя все устройства могут связываться между собой. Ethernet version 2 — Ethernet версии 2. Другое название для DIX Ethernet. Exterior Routing Protocol — внешний протокол маршрутизации. Протокол маршрутизации, предназначенный для использования между компаниями и организациями. External CSU/DSU — внешний CSU/DSU. Модуль CSU/DSU, который устанавливается вне маршрутизатора, с кабелем, соединяющим последовательный интерфейс маршрутизатора и модуль CSU/DSU. Fast Ethernet (FE). См. FE. FCS (frame check sequence) — контрольная последовательность фрейма. Поле в хвостовике протокола канального уровня, позволяющее получателю фрейма определить, произошли ли ошибки при передаче фрейма. FE (Fast Ethernet). Определенный стандартом IEEE 802.3u, FE специфицирует Ethernet со скоростью 100 Мбит/с. Field — поле. Отдельная часть заголовка или концевика, в которой передается специфическая часть информации. Например, поле Ethernet-адреса получателя в заголовке Ethernet является полем заголовка.
Глоссарий 393 File read — чтение файла. Процесс, который компьютер использует для поиска файла, нахождения его и получения данных, содержащихся в нем, для использования их прикладной программой. File server — файловый сервер. Компьютер, который выполняет файловые службы (си. file services). File services — файловые службы. Процесс, в ходе которого один компьютер, называемый файловым сервером, хранит на своем жестком диске и позволяет другим компьютерам считывать и записывать файлы с помощью сети. File transfer — передача файлов. Сетевое приложение, позволяющее пользователю копировать файлы с одного компьютера на другой. В то время как загрузка (download) обычно означает копирование файла на компьютер, передача файлов обычно означает, что файл может быть скопирован между двумя компьютерами в обоих направлениях. File Transfer Protocol (FTP) — протокол передачи файлов. См. FTP. File write — запись файла. Процесс, который компьютер использует для записи файла на какой-то носитель (например, жесткий диск компьютера). Firewall — брандмауэр. Сетевое устройство, устанавливаемое на пути, по которому пересылаются пакеты, проверяющее их и пропускающее только пакеты, которые разрешено принимать в соответствии с политикой безопасности сети. Flooding — лавинная маршрутизация. Процесс, в ходе которого коммутатор пересылает фрейм на все порты, за исключением того, через который он поступил на коммутатор. Flow — поток. Серия IP-пакетов, которые идут с одного IP-хоста на другой, и наоборот. Иногда используется как обобщающий термин для ТСР-соединения. Forward acknowledgment — упреждающее подтверждение. Процесс подтверждения получения данных путем помещения в поле подтверждения номера следующего байта, который должен быть получен, в противоположность помещению в поле подтверждения номера последнего полученного байта. Forward versus filter — решение о пересылке в зависимости от решения о фильтрации. Термин, относящийся к решению коммутатора переслать какой-то фрейм на определенный порт или не пересылать. Forwarding — пересылка. Когда этот термин используется в контексте IP- маршрутизации, он является вариантом термина "маршрутизация". См. также routing. Forwarding decision — решение о пересылке. Когда этот термин используется в контексте IP-маршрутизации, он означает процесс сопоставления адреса получателя с таблицей маршрутизации и принятия решения, куда пересылать пакет. Frame — фрейм. Связка битов, которая содержит в середине некоторые данные, с заголовком перед ними и концевиком после них. Этот термин относится к заголовкам и концевикам, определенным протоколами канального уровня модели OSI. Frame check sequence (FCS) — контрольная последовательность фрейма. См. FCS. Frame Relay. Протокол канального уровня, определенный совместно организациями Frame Relay Forum, ANSI и ITU. Эти протоколы определяют, как маршрутизаторы и поставщики услуг должны создавать сети Frame Relay. Frame Relay Forum — форум Frame Relay. Консорциум производителей, который определял изначальные протоколы Frame Relay, до того как ANSI и ITU создали стандарты Frame Relay.
394 Глоссарий Frame Relay network — сеть Frame Relay. Кабельная система и оборудование, совместно обеспечивающие возможность передачи пакетов Frame Relay между двумя устройствами. Frame Relay service — служба Frame Relay. Предлагаемая телефонными компаниями служба, позволяющая создавать постоянные виртуальные каналы (PVCs) между парами площадок клиента. Frame Relay service provider — поставщик услуг (провайдер) Frame Relay. Фирма, обычно телефонная компания, предлагающая услуги Frame Relay. Frame Relay switch — коммутатор Frame Relay. Обобщающий термин для оборудования, размещаемого на территории АТС провайдерами Frame Relay, которое может быть сконфигурировано для пересылки фреймов Frame Relay. Frequency — частота. Количество повторений за одну секунду повторяющимся сигналом самого себя.2 FTP (File Transfer Protocol) — протокол передачи файлов (FTP). Спецификация протокола TCP/IP, применяемая в обеспечение совместного использования файлов путем копирования их на сервер и затем с сервера. FTP client — FTP-клиент. Программное обеспечение, выполняемое на компьютере конечного пользователя, предоставляющее последнему пользовательский интерфейс для того, чтобы он мог загружать файлы с FTP-сервера и выгружать их на него. FTP Control Connection — управляющее FTP-соеднинение. Соединение между FTP-клиентом и сервером, через которое клиент передает управляющую информацию, такую как изменение каталога, в котором ищется файл, наименование файла и запрос на выполнение операций GET или PUT. FTP data connection — информационное FTP-соединение. Соединение между FTP- клиентом и сервером, через которое передаются данные. FTP GET. См. GET. FTP PUT. См. PUT. FTP server — FTP-сервер. Программное обеспечение, выполняемое аппаратными средствами серверного компьютера, которое позволяет FTP-клиенту соединяться с сервером с целью получения с него файлов и размещения файлов на сервере, чтобы они стали доступны другим пользователям. Full duplex — дуплекс. Процесс одновременного получения и передачи данных через физический интерфейс. Full mesh — полносвязанная сеть. В технологии Frame Relay — сеть, в которой все пары устройств, соединенных посредством Frame Relay, имеют каналы PVC между собой. Gateway — шлюз. Этим термином обозначаются мириады сетевых устройств, в общем случае осуществляющих преобразование из одного стандарта в другой. Gbps — Гбит/с. Сокращение единицы измерения "гигабит в секунду". GE (Gigabit Ethernet). Разработанные рабочими группами IEEE 802.3z и IEEE 802.3ab стандарты, определяющие Ethernet со скоростью передачи 1000 Мбит/с, или 1 Гбит/с. GET. Термин FTP, означающий, что FTP-клиент перемещает файл с сервера на свой компьютер, иными словами, получает файл с сервера. Gigabit Ethernet (GigE). См. GigE/GE. Gigabit per second (Gbps). См. Gbps. 2 Это определение, как и многие другие, встречающиеся в этой книге, крайне узко и справедливо только в контексте данной книги. — Прим. ред.
Глоссарий 395 GigE (Gigabit Ethernet). Разработанные рабочими группами IEEE 802.3z и IEEE 802.3ab стандарты, определяющие Ethernet со скоростью передачи 1000 Мбит/с, или 1 Гбит/с. Hacker — хакер. Человек, который пытается получить доступ к компьютерным сетям и системам, но без злого умысла. Half duplex — полудуплекс. Логика, используемая устройством локальной сети, по которой оно выбирает, следует ли получить либо передать фрейм в данный момент времени, но не способно делать то и другое одновременно. Технология CSMA/CD предусматривает применение платами интерфейса сети полудуплексной логики. HDLC (high-level data link control) — высокоуровневый протокол управления каналом (HDLC). Протокол канального уровня, используемый в каналах глобальных сетей. Header — заголовок. Связка битов, помещаемая перед данными накануне их передачи. Эти биты позволяют протоколу получить место для размещения, наряду с пользовательскими данными, информации, необходимой для функционирования протокола. High-level data link control (HDLC) — высокоуровневый протокол управления каналом. См. HDLC. Home page — домашняя страница. Когда Web-браузер запрашивает Web-страницу с Web-сервера, если URL не содержит какого-либо текста после имени сервера, последний возвращает Web-страницу по умолчанию. Эта Web-страница, назначенная по умолчанию, называется домашней. Host name — имя хоста. Имя, представляющее TCP/IP хост-компьютер. Host part — хостовая часть. Часть IP-адреса, имеющая уникальное значение по отношению ко всем остальным хостам данной сети. Сети классов А, В и С имеют, соответственно, хостовую часть адреса длиной 3, 2 и 1 октет. Host-based IDS — хостовая IDS. Программное обеспечение IDS, устанавливаемое на компьютере, обычно на сервере. HTML (Hypertext Markup Language) — язык разметки гипертекста (HTML). Стандарт, не являющийся частью модели TCP/IP, определяющий формат и типы объектов, используемых для построения Web-страниц. HTTP (Hypertext Transfer Protocol) — протокол передачи гипертекста (HTTP). Протокол TCP/IP, описанный в RFC 2616, определяющий протоколы, посредством которых Web-браузер идентифицирует Web-страницы и Web-объекты, подлежащие загрузке, а также процессы, посредством которых браузер загружает эти страницы и объекты. Hypertext Markup Language (HTML) — язык разметки гипертекста. См. HTML. Hypertext Transfer Protocol (HTTP) -— протокол передачи гипертекста. См. HTTP. IDS (intrusion detection system) — система обнаружения сетевых атак (IDS). Устройство или программное обеспечение, проверяющее пакеты, пропущенные брандмауэром, и старающееся отыскать в них признаки того, что взломщик пытается провести атаку или установить на компьютер вирус. IDS signature — сигнатура IDS. Набор характеристик типов пакетов, которые взломщики использовали ранее для проведения атак или установки на компьютер вирусов. IEEE (Institute of Electrical and Electronics Engineers) — Институт инженеров по электротехнике и радиоэлектронике (США). Организация по стандартизации, разрабатывающая стандарты, в т.ч. на компьютерные сети (http: //www. ieee . org). IEEE 802.1Q. Определенный IEEE стандарт на протокол транкинга в виртуальных локальных сетях.
396 Глоссарий IEEE 802.3ab. Название комитета IEEE, а также набора стандартов, относящихся к Gigabit Ethernet. Определяет стандарт на Gigabit Ethernet, работающий с использованием медных проводов. IEEE 802.3ae. Название комитета IEEE, а также набора стандартов, относящихся к 10 Gigabit Ethernet. Определяет стандарт на 10 Gigabit Ethernet, работающий с использованием оптических кабелей. IEEE 802.3z. Название комитета IEEE, а также набора стандартов, относящихся к Gigabit Ethernet. Определяет стандарт на Gigabit Ethernet, работающий с использованием оптических кабелей. IEEE Ethernet. Жаргонный термин, относящийся к стандартам Ethernet, определенным организацией IEEE. IETF (Internet Engineering Task Force) — целевая группа инженерной поддержки Internet (IETF). Организация по стандартизации, которая разрабатывает стандарты TCP/IP и управляет ими. Организация IETF, согласно ее Web-сайту (http://www.ietf.org), является "большим, открытым международным сообществом проектировщиков сетей, операторов, поставщиков и исследователей, заинтересованных в развитии архитектуры Internet и ее бесперебойной работе. Она открыта для любого заинтересованного человека" IGRP (Interior Gateway Routing Protocol) — расширенный внутренний протокол маршрутизации. Протокол маршрутизации IP, разработанный компанией Cisco; является ее собственностью. Information — информация. В контексте услуг, предлагаемых телефонной компанией, это то же самое, что и справочный стол. См. также directory assistance. Inside interface — внутренний интерфейс. Интерфейс брандмауэра, подключенный к локальной сети, которая считается наиболее защищенной из числа локальных сетей, подключенных к брандмауэру. Institute of Electrical and Electronics Engineers (IEEE) — Институт инженеров по электротехнике и радиоэлектронике (США). См. IEEE. Interconnected networks — объединенные сети. См. internetwork. Interior Gateway Routing Protocol (IGRP) — расширенный внутренний протокол маршрутизации. См. IGRP. Interior Routing Protocol — внутренний протокол маршрутизации. Протокол маршрутизации, разработанный для использования внутри компании или организации.. Internal CSU/DSU — внутренний модуль CSU/DSU. Модуль CSU/DSU, интегрированный с платой последовательного интерфейса маршрутизатора, которая затем устанавливается в маршрутизаторе. International Organization for Standardization (ISO) — Международная организация по стандартизации. См. ISO. International Telecommunication Union (ITU) — международный союз телекоммуникаций. См. ITU. Internet. Глобальная TCP/IP-сеть, к которой подключены почти все компании или организации мира. Internet обеспечивает взаимодействие огромного числа компьютеров планеты. Internet draft — Internet-проект. Документ, описывающий разрабатываемый, но еще не утвержденный протокол или стандарт. Internet Engineering Task Force (IETF) — целевая группа инженерной поддержки Internet. См. IETF.
Глоссарий 397 Internet Explorer. Название популярного программного продукта, Web-браузера, разработанного корпорацией Microsoft. Internet Message Format RFC. Протокол TCP/IP, содержащийся в RFC 2282, определяющий заголовки, помещаемые в сообщения электронной почты, передаваемые через сеть. Internet Protocol (IP) — протокол Internet. См. IP. Internet service provider (ISP) — Internet-провайдер. См. ISP. Internetwork (interconnected networks) ■— объединенная сеть. Несколько сетей, соединенных при посредстве маршрутизаторов. Inter-Switch Link (ISL) — межкоммутаторный канал. См. ISL. Intrusion detection system (IDS) — система обнаружения сетевых атак. См. IDS. Inverse ARP — инверсный ARP. Процесс и протокол, позволяющие маршрутизатору объявить свой IP-адрес в сообщении, посылаемом через постоянный виртуальный канал (PVC) Frame Relay. IP (Internet Protocol) — протокол Internet. Протокол TCP/IP, содержащийся в RFC 791 и определяющий логику IP-адресации и маршрутизации. IP address — IP-адрес. 32-разрядное число, обычно записываемое в десятичном формате. Идентифицирует для протокола IP сетевой интерфейс компьютера, чтобы он мог передавать и получать пакеты. IP header — IP-заголовок. Информация, которую протокол IP добавляет перед сегментом транспортного уровня для создания IP-пакета. Длина заголовка обычно составляет 20 байт; он включает IP-адреса отправителя и получателя. IP host — IP-хост. Любой компьютер, имеющий хотя бы один IP-адрес. IP network — IP-сеть. Группа IP-адресов, для которых начальная часть значения их IP-адреса является общей. IP network number — номер IP-сети. Десятичное число с разделительными точками, представляющее одну сеть. Это число имеет такое же значение, как IP-адреса в сетевой части номера и десятичные нули в хостовой части этого номера. IP packet — IP-пакет. IP-заголовок и инкапсулированные данные, следующие после него. IP routing table — таблица IP-маршрутизации. См. routing table. ISL (Inter-Switch Link) — межкоммутаторный канал. Патентованный транкинго- вый протокол компании Cisco для виртуальных локальных сетей. ISO (International Organization for Standardization) — Международная организация по стандартизации. Организация, разработавшая модель OSI и продолжающая работать над стандартами. Согласно ее Web-сайту (http: //www. iso. ch), ISO является "сетью национальных организаций по стандартизации из 147 стран, работающих в партнерстве с международными организациями, правительствами, промышленностью, деловыми кругами и представителями потребителей. Является мостом между общественным и частным секторами". ISP (Internet service provider) — Internet-провайдер. Компания, предоставляющая услуги по соединению сетей с Internet. Internet-провайдеры поддерживают как отдельных пользователей, так и корпорации. ITU (International Telecommunication Union) — Международный союз телекоммуникаций. Организация по стандартизации, объединяющая телекоммуникационные компании всего мира. ITU определяет разнообразные стандарты, в т.ч. по телефонии и глобальным сетям (http: //www. itu. org).
398 Глоссарий Jamming signal — сигнал затора. Электрический сигнал, регламентированный стандартами Ethernet, который посылается при возникновении коллизии, чтобы все устройства знали, что она произошла. kbps (kilobits per second) — килобитов в секунду (кбит/с). Единица измерения, указывающая на скорость, с которой данные пересылаются через среду передачи. 1 кбит/с соответствует 1000 битов в секунду; например, значение 2 кбит/с соответствует скорости 2000 битов в секунду.3 Kerberos. Стандартный протокол TCP/IP, используемый для обмена ААА- информацией между серверами приложений и серверами аутентификации. Key — ключ. См. encryption key. kilobits per second (kbps) — килобитов в секунду. См. kbps. LAN (local-area network) — локальная сеть (LAN). Сеть, которая по определению включает компоненты, расположенные относительно близко один от другого, обычно в одном помещении. LAN legal — законность локальной сети. Термин, использованный только в этой книге, по аналогии с автомобилем, имеющим разрешение на езду в городе. LAN switch — коммутатор локальной сети. Сетевое устройство, пересылающее фреймы в соответствии с адресом их получателя. Layer — уровень. Поднабор протоколов одной сетевой модели. Протоколы одного уровня выполняют одни и те же или взаимосвязанные задачи. LAYER 8 — уровень 8. Саркастический термин, относящийся к проблемам бизнеса, политики или другим нетехническим проблемам, которые могут повлиять на выбор сетевой технологии. Термин относится к несуществующему уровню модели OSI, который мог бы располагаться над ее наивысшим уровнем. Learning — изучение. По отношению к коммутаторам локальных сетей термин "изучение" обозначает процесс проверки МАС-адреса отправителя в получаемых коммутатором фреймах и добавления новых записей в таблицу МАС-адресов. Коммутатор добавляет в нее запись, содержащую МАС-адрес отправителя фрейма и номер порта, через который получен этот фрейм. Leased circuit — выделенный канал. См. WAN link. Leased line — выделенная линия. Услуга, предоставляемая телефонной компанией, которая обеспечивает линию связи между двумя площадками. Lightning bolt — стрела молнии. Стиль изображения линии, когда она становится похожей на молнию. Каналы глобальных сетей часто изображают в виде стрелы молнии на схемах сетей. LLC (Logical Link Control) — управление логическим соединением. Другое название стандарта 802.2. Local-area network (LAN) — локальная сеть. См. LAN. Local host file — локальный хост-файл. Файл на отдельном компьютере, содержащий перечень имен хостов и соответствующих им IP-адресов. Хост-компьютер может руководствоваться содержимым этого локального хост-файла для преобразования адресов. Local loop — абонентский шлейф. Кабель, протягиваемый от помещения абонента до АТС телефонной компании. 3 Обычно скорость 1000 бит/с обозначается как 1 кбит/с (с маленькой буквы). 1 Кбит (с большой буквы) соответствует 1024 бит/с. — Прим. ред.
Глоссарий 399 Logical Link Control (LLC) — управление логическим соединением. См. LLC. Loopback circuit -— цепь кольцевой проверки. По отношению к платам интерфейса сети — аппаратное средство, которое обеспечивает прием переданного платой интерфейса сети электрического сигнала самой этой платой, без прохождения его через кабель MAC (Media Access Control) — протокол управления доступом к (передающей) среде. Другое название для стандарта 802.3. MAC address — МАС-адрес. Другое название для адреса Ethernet. MAC address table — таблица МАС-адресов. Таблица, содержащая перечень МАС- адресов и физических портов коммутатора, через которые последний мог бы пересылать фреймы, предназначенные для каждого МАС-адреса. Коммутаторы локальной сети используют таблицу МАС-адресов для принятия решений относительно пересылки и фильтрации. Maximum segment size (mss) — максимальный размер сегмента. См. mss. Mbps (megabits per second) — Мбит/с (мегабитов в секунду). Единица измерения, описывающая скорость, с какой данные передаются через коммуникационную среду. 1 Мбит/с соответствует 1 000 000 битов в секунду; например, 2 Мбит/с — это 2000 кбит/с, или 2 0000 000 битов в секунду. Media Access Control (MAC) — протокол управления доступом к (передающей) среде. См. MAC. Megabits per second (Mbps) — мегабитов в секунду (Мбит/с). См. Mbps. Message digest — свертка сообщения. Результат математических вычислений, который используется для сокрытия пароля во время передачи через сеть. Metric — метрика. Число, которое говорит о том, насколько хорош данный маршрут к указанному получателю. Маршруты с низкими значениями метрики лучше, чем таковые с высокими значениями метрики. Microphone — микрофон. Устройство, преобразующее звук в аналоговый электрический сигнал. Modem (modulator-demodulator) — модем (модулятор-демодулятор). Устройство, преобразующее цифровые и аналоговые сигналы с целью обеспечения связи компьютеров через аналоговую телефонную линию. Modulation — модуляция. Процесс изменения аналогового электрического сигнала с целью кодирования им двоичных 0 или 1. Modulator-demodulator (modem) — модулятор-демодулятор (модем). См. modem. mss (maximum segment size) — максимальный размер сегмента (mss). Максимальный TCP-сегмент, который позволено передавать компьютеру. Name resolution — преобразование имен в IP-адреса. Процесс поиска IP-адреса, соответствующего известному имени. Netscape. Название программного продукта, Web-браузера, полное название которого — Netscape Navigator. Этот продукт разработан компанией Netscape, сейчас является собственностью AOL, Inc. Network analysis tool — средство анализа сети, или программа наблюдения. Устройство, подключенное к сети, которое получает копии фреймов, проходящих через сеть, и позволяет пользователю анализировать фреймы и извлекать их содержимое. Network-based IDS — сетевая система обнаружения сетевых атак. IDS, устанавливаемая в сети и отслеживающая пакеты, проходящие через локальную сеть.
400 Глоссарий Network cloud — облако сети. Способ изображения схем, когда в виде облака представляется сеть или ее часть. Network interface — сетевой интерфейс. Самый нижний уровень модели TCP/IP, соответствующий уровням 1 и 2 модели OSI. Network interface card (NIC) — плата интерфейса сети. См. NIC. Network part — сетевая часть. Часть IP-адреса, которая имеет одно и то же значение для всех адресов сети. Сети классов А, В и С имеют, соответственно, хостовую часть адреса длиной 1, 2 и 3 октета. Network utility — служба сети. Термин, характеризующий отношение к возможности установления связи между двумя компьютерами как отношение к другим бытовым службам — телефонной связи, электричеству, водопроводу и т.п. Networking protocol — сетевой протокол. Четко определенный набор правил, требующих определенного "поведения" от сетевых устройств, сетевых кабелей и сетевого программного обеспечения. Часто используется в качестве синонима термина сетевой стандарт {networking standard)', этот термин, в отличие от последнего, относится к процессу. Networking rulebook — инструкция по применению для сетей. Этот термин используется только в этой книге. Согласно принятой в ней концепции, инструкция по применению перечисляет набор стандартов и протоколов, которым должны соответствовать все устройства сети, чтобы она работала. Networking standard — сетевой стандарт. Четко определенный набор требований, предъявляемых к характеристикам сетевых устройств, сетевых кабелей и сетевому программному обеспечению. Next-hop router — маршрутизатор следующего перехода. Поле в таблице IP- маршрутизации, идентифицирующее IP-адрес следующего маршрутизатора, который должен получить пакет, чтобы последний мог быть доставлен получателю. NIC (network interface card) — плата интерфейса сети. Компьютерная плата, наделяющая компьютер способностью передавать и принимать данные через физическую сеть. Появление термина обусловлено тем, что эта плата является интерфейсом ПК по отношению к сети. Numeral — цифра. В математике — один символ, который может представлять часть числа; например, цифра " является частью числа 21". Синоним слова "одноразрядное число" {digit). Object — объект. В контексте WWW объектом является один файл, который может быть передан с помощью протокола HTTP. Web-страницы содержат один или более объектов, более сложные Web-страницы содержат сотни объектов. Octet — октет. Другой общий термин, который может быть использован вместо слова "байт" {byte). Часто применяется по отношению к каждому из байтов IP-адреса. Open Shortest Path First (OSPF) — протокол поиска первого кратчайшего пути. См. OSPF. Open Systems Interconnection (OSI) — взаимодействие открытых систем. См. OSI. Operating system (OS) — операционная система. См. OS. Optical cabling — оптическая кабельная система. Кабельная система, в которой вместо медных проводов используются оптические волокна, по которым передаются световые, а не электрические сигналы.
Глоссарий 401 OS (operating system) — операционная система (ОС). Программное обеспечение, заботой которого является управление работой компьютера. Для ПК наиболее популярными ОС являются разновидности Microsoft Windows. OSI (Open Systems Interconnection) — взаимодействие открытых систем, эталонная модель OSI. Общедоступная сетевая модель. Немногие компьютеры сейчас используют OSI. Протоколами OSI занимается Международная организация по стандартизации (International Organization for Standardization, ISO). OSPF (Open Shortest Path First) — протокол поиска первого кратчайшего пути. Протокол IP-марщрутизации, определенный в документах RFC, что делает его общедоступным протоколом. Outgoing interface — исходящий интерфейс. Поле в таблице 1Р-маршрутизации, идентифицирующее интерфейс маршрутизатора, через который должен быть отправлен пакет, чтобы он мог быть доставлен получателю. Outside interface — внешний интерфейс. Интерфейс брандмауэра, соединенный с Internet. Последняя рассматривается как наименее защищенная по сравнению с локальными сетями, соединенными с брандмауэром. Packet — пакет. Группа битов, подготовленных для передачи через сеть. Этот термин относится к заголовку и данным, определенным протоколами уровня 3 (сетевого) модели OSI. PAP (Password Authentication Protocol) — протокол аутентификации по паролю (РАР). Компонент протокола РРР, используемый для пересылки имени пользователя и пароля открытым текстом. Partial mesh — частично связанная сеть. В технологии Frame Relay — сеть, в которой не все пары связанных при посредстве Frame Relay устройств имеют PVC между ними. Password — пароль. Строка символов, хранимая в тайне от других людей, используемая в качестве доказательства того, что пользователь — именно тот человек, за которого он себя выдает. Password Authentication Protocol (PAP) — протокол аутентификации по паролю. См. РАР. Patch cable — коммутационный кабель. Короткий кабель локальной сети, используемый как один из нескольких кабелей структурированной кабельной системы. Например, это кабель, соединяющий ПК с настенной розеткой. Patch panel — коммутационная панель. Удобное место для соединения проводов кабелей, заканчивающихся в распределительном шкафу. Эти провода подключаются с одной стороны панели. Панель обеспечивает электрические соединения для штепсельных вилок или розеток, похожих на те, которые устанавливаются в рабочих отсеках офисов. Коммутационная панель позволяет электрикам или сетевым инженерам использовать короткие коммутационные кабели для соединения парами их проводов сетевых устройств. PC (personal computer) — персональный компьютер (ПК). Компьютер, которым обычно пользуется только один человек. Обычно снабжается клавиатурой, дисплеем и мышью. Permanent virtual circuit (PVC) — постоянный виртуальный канал. См. PVC. Personal computer (PC) — персональный компьютер (ПК). См. PC. Phone switch — телефонный коммутатор. См. telco switch. Physical connectivity — физическая возможность соединения. Общий термин, относящийся к комбинации кабелей, сетевых устройств и плат интерфейса сети компью-
402 Глоссарий теров, которые все вместе обеспечивают физическую возможность передачи и приема данных через сеть. Physical LAN — физическая локальная сеть. Широковещательный домен, созданный путем комбинирования компьютеров, кабелей и сетевых устройств. Physical medium — физическая среда. Кабель с медными проводами или оптическими волокнами, через который может передаваться электрическая (провод) или световая (волокно) энергия. Через такую среду могут быть переданы двоичные данные, если принято соглашение о кодировании, определяющее, какая электрическая или световая энергия представляет двоичные 0 и 1. Pin — контакт (зачастую выполненный в виде штырька). Физическое местоположение на конце соединителя, где находится медная часть провода. PIX Firewall — брандмауэр PIX. Название, используемое компанией Cisco для линейки ее брандмауэров. Point of presence (POP) — точка присутствие. См. POP. Point-to-point link — канал типа "точка-точка". См. WAN link. Point-to-Point Protocol (PPP) — протокол соединения "точка-точка". См. РРР. POP (point of presence) — точка присутствия. Здание, в котором располагается оборудование Internet-провайдера. РОРЗ (Post Office Protocol, Version 3) —почтовый протокол версии 3. Протокол TCP/IP, представленный в RFC 1939, который определяет формат сообщений, управляющих электронной почтой. Протокол РОРЗ обычно используется только клиентами и только для получения почты с сервера РОРЗ. РОРЗ Server — РОРЗ-сервер. Другое название для РОРЗ Server Software. РОРЗ Server Software — программное обеспечение РОРЗ-сервера. Программное обеспечение, предоставляющее возможности РОРЗ-сервера. Post Office Protocol, Version 3 (РОРЗ) — почтовый протокол версии 3. См. РОРЗ. Postal code — почтовый индекс. Общий термин, которому в США соответствует термин zip-код. См. также zip code. РРР (Point-to-Point Protocol) — протокол соединения "точка-точка". Протокол канального уровня, используемый в каналах глобальных сетей. Preamble — преамбула. В Ethernet — серия попеременно повторяющихся 0 и 1 в начале нового фрейма. Print server — сервер печати. Компьютер, который обеспечивает работу службы печати (print services). Print services — служба печати. Процесс, в ходе которого один компьютер, обычно называемый сервером печати (print server), позволяет другим компьютерам посылать ему файлы, которые он затем печатает на принтере. Profiling — профилирование. В деятельности правоохранительных органов — накопление информации о методах и приемах криминальных элементов, что позволяет блюстителям закона успешнее противодействовать им. PSTN (Public Switched Telephone Network) — коммутируемая телефонная сеть общего пользования. Общий термин, относящийся к телефонным сетям и службам. Иногда его заменяют термином "обычная телефонная сеть " (Plain Old Telephone Service, POTS). Public networking model — общедоступная сетевая модель. Сетевая модель, для которой ни один производитель самостоятельно не устанавливает стандарты и протоколы; в их разработке участвуют представители многих компаний и организаций.
Глоссарий 403 Public Switched Telephone Network (PSTN) — коммутируемая телефонная сеть общего пользования. См. PSTN. PUT. Термин FTP, означающий, что FTP-клиент перемещает файл со своего компьютера на сервер. PVC (permanent virtual circuit) — постоянный виртуальный канал. Предопределенный виртуальный канал Frame Relay. Концепцию канала PVC можно приравнять к концепции выделенной линии. RADIUS. Протокол TCP/IP, который маршрутизаторы и AAA-серверы используют для обмена ААА-информацией. Remainder — остаток. В алгоритме, описанном в приложении Б, этот термин представляет результат вычитания одного числа из другого. Request for Comments (RFC) — запрос на комментарии. См. RFC. Resolver — распознаватель. Термин, употребляемый по отношению к хосту TCP/IP, к которому обращаются за помощью в преобразовании имени хоста в соответствующий ему IP-адрес. RFC (Request for Comments) — запрос на комментарии. Каждый документ RFC определяет протокол или стандарт, важный для модели TCP/IP. Каждый RFC бывает несколько раз пересмотрен целевой группой инженерной поддержки Internet (IETF). Появление термина RFC обусловлено тем фактом, что любой желающий может прокомментировать протокол, прежде чем он будет пересмотрен. Этот документ размещают в Internet, так что любой может ознакомиться с ним и дать свои комментарии, прежде чем он превратится в RFC. Right-of-way —- право прохода/проезда через чужую землю. Юридический термин, означающий право нарушить обычный доступ к какому-нибудь месту на время проведения работ. Например, телефонная компания может перекопать улицу, чтобы проложить новые кабели, потому что она обладает правом прохода через чужую землю. RIP (Routing Information Protocol) — протокол маршрутной информации. Протокол IP-маршрутизации, определенный в документах RFC. Root DNS server — корневой DNS-сервер. Сервер, содержащий имена доменов и IP- адреса соответствующих этим доменам DNS-серверов. Корневые серверы используются для направления DNS-запросов уполномоченным DNS-серверам доменов. Router — маршрутизатор. Сетевое устройство с несколькими сетевыми интерфейсами, назначение которого — пересылать пакеты из одной физической сети в другую. Маршрутизаторы выполняют важную функцию пересылки пакетов на межсетевом уровне модели TCP/IP, обеспечивая сквозную доставку пакетов. Routing — маршрутизация. Процесс получения IP-пакета, принятия решения о том, куда этот пакет должен быть отправлен, и пересылки пакета. Routing Information Protocol (RIP) — протокол маршрутной информации. См. RIP. Routing protocol — протокол маршрутизации. Тип сетевого протокола, разработанного для того, чтобы маршрутизаторы могли обмениваться маршрутной информацией друг с другом; конечная цель этого обмена — снабдить маршрутизаторы достаточным количеством информации относительно маршрутов ко всем IP-подсетям и сетям объединенной сети. Routing table — таблица маршрутизации. Таблица, которую маршрутизаторы используют для того, чтобы знать, куда доставлять пакеты.
404 Глоссарий Routing update — обновление маршрутной информации. Сообщение, определенное протоколом маршрутизации, содержащее маршрутную информацию, которой маршрутизатор хотел бы поделиться с другими маршрутизаторами. Sales engineer (SE) — продавец-консультант. См. SE. SE (sales engineer) — продавец-консультант. Агент по продаже сложной технической продукции, являющийся специалистом в этой области; консультирует покупателя до и после совершения покупки. Segment — сегмент. См. TCP segment. Segmentation — сегментация. Процесс, в соответствии с которым приложение передает TCP некоторые данные, которые TCP разбивает на меньшие части, называемые сегментами, для передачи их через сеть. Sequence number — порядковый номер. Значение в TCP-заголовке, которое используется для нумерации пакетов, с целью уведомления об утерянных или пропущенных пакетах, чтобы их можно было передать повторно. Serial interface — последовательный интерфейс. Тип физического интерфейса, который маршрутизатор использует для соединения с каналом глобальной сети. Serial link — последовательный канал. См. WAN link. Shielded twisted-pair (STP) — экранированная витая пара. См. STP. Signature — сигнатура. См. IDS signature. Simple Mail Transfer Protocol (SMTP) — простой протокол доставки сообщений. См. SMTP. SMTP (Simple Mail Transfer Protocol) — простой протокол доставки сообщений. Протокол TCP/IP, содержащийся в RFC 2821, который определяет формат сообщений, используемых для управления передачей электронной почты. SMTP Server — SMTP-сервер. Другое название для SMTP Server Software. SMTP Server Software — программное обеспечение SMTP-сервера. Программное обеспечение, обеспечивающее реализацию возможностей SMTP-сервера. SNA (Systems Network Architecture) — архитектура сетевых систем. Патентованная сетевая модель корпорации IBM. Snail mail — "улиточная почта". Жаргонный термин, употребляемый по отношению к обычной почте, доставляющей бумажные письма за несколько дней, в противоположность электронной почте, доставляющей их за несколько секунд. Sneakernet — "кроссонет". Саркастический термин, относящийся к ситуации, когда не используют компьютерную сеть, бегая от одного компьютера к другому с дискетами или компакт-дисками и перенося файлы. Для этого нужны очень хорошие кроссовки! Sniffer. Торговая марка поставщика средств для анализа сети (Sniffer является торговой маркой Network Associates Corporation.) Source Address field — поле адреса отправителя. Часть Ethernet-заголовка длиной 6 байт, в которой плата интерфейса сети помещает свой адрес Ethernet перед отправкой фрейма. Source IP address IP — IP-адрес отправителя. Поле в IP-заголовке, содержащее IP- адрес отправителя пакета. Static IP route — статический ^маршрут. Запись в таблице маршрутизации, сделанная сетевым инженером, когда он снабжал маршрутизатор маршрутной информацией.
Глоссарий 405 STP (shielded twisted-pair) — экранированная витая пара. Тип кабеля, содержащего витые пары проводов, снабженные экранирующей оплеткой с целью снижения электромагнитных помех. Straight-through cable — кабель с прямыми соединениями контактов. Кабель локальной сети Ethernet, в котором провод, подсоединенный к штырьку 1 на одном конце кабеля, соединен с контактом 1 на другом конце кабеля; провод, подсоединенный к штырьку 2 на одном конце кабеля, соединен с контактом 2 на другом конце кабеля, и т.д. Structured wiring — структурированная электропроводка. Метод прокладки кабелей в здании, позволяющий избежать излишней суматохи, сэкономить время при прокладке кабелей под полом или в потолке и сделать удобным подключение к сети новых устройств. Subnet — подсеть. Подразделение сети класса А, В или С. Subnet number —номер подсети. Десятичное число с точками, представляющее одну подсеть. Этот номер подсети имеет то же значение, что и подсетевая часть адреса отдельных хостов сети, и двоичные нули в хостовой части адреса. Subnetting — разбиение на подсети. Процесс разбиения IP-сети на несколько подсетей. Switch — коммутатор. Сетевые аппаратное средство и программное обеспечение, которые пересылают трафик сети между различными устройствами. Switch port — порт коммутатора. Физическая розетка на стенке коммутатора, в которую может быть включен кабель Ethernet. Switching table — таблица коммутации. См. MAC address table. SYN bit — бит SYN. См. TCP SYN flag. SYN Hag — флаг SYN. См. TCP SYN flag. Systems Network Architecture (SNA) — архитектура сетевых систем. См. SNA. Tl circuit — линия Т-1. См. Т1 line. Tl line — линия Т-1. Четырехпроводная линия, работающая со скоростью 1544 Мбит/с и объединяющая 24 канала по 64 кбит/с каждый, а также канал 8 кбит/с для служебных данных. TACACS+. Патентованный протокол Cisco, используемый для обмена информацией маршрутизаторами и ААА-серверами. TCP ACK flag — флаг TCP ACK. Один бит в заголовке TCP, сигнализирующий о том, является ли принятый сегмент первым сегментом нового ТСР-соединения. TCP connection — TCP-соединение. Соглашение между процессами приложений, выполняемых на двух компьютерах, об использовании TCP для передачи данных. Это соединение создается посредством обмена компьютерами тремя служебными сообщениями, которые инициализируют значения полей в ТСР-заголовке. TCP connection establishment — установление ТСР-соединения. Процесс, в ходе которого два компьютера обмениваются тремя TCP-сегментами, чтобы инициализировать поля в ТСР-заголовке, позволяя тем самым прикладной программе на одном компьютере взаимодействовать с прикладной программой на другом компьютере с помощью TCP. TCP destination port — TCP-порт получателя. Поле в ТСР-заголовке, идентифицирующее конкретную прикладную программу, выполняемую на принимающем информацию компьютере, которая в конечном счете должна получить данные, содержащиеся в сегменте.
406 Глоссарий TCP port — TCP-порт. Число, идентифицирующее процесс приложения, выполняемого на компьютере. TCP использует порт отправителя и порт получателя, поэтому компьютер, принимающий TCP-сегмент, может по номеру порта получателя определить, какому именно приложению следует передать полученные данные. TCP segment — TCP-сегмент. TCP-заголовок и инкапсулированные данные, созданные TCP по требованию приложения. TCP source port — TCP-порт отправителя. Поле в TCP-заголовке, идентифицирующее прикладную программу, выполняемую на компьютере, передающем информацию, которая подготовила данные, содержащиеся в сегменте. TCP SYN flag — флаг TCP SYN. Один бит в TCP-заголовке, сигнализирующий о том, является ли сегмент первым или последующим сегментом нового ТСР- соединения. Первый сегмент нового соединения имеет значение флага SYN, равное 1; значения остальных флагов не устанавливаются. TCP/IP (Transmission Control Protocol/Internet Protocol) — протокол управления передачей/межсетевой протокол, протокол TCP/IP. Общедоступная сетевая модель, получившая широкое распространение. Создает стандарты, включенные в TCP/IP; управляет ими целевая группа инженерной поддержки (Internet Engineering Task Force, IETF). TCP/IP host name — имя TCP/IP-хоста. См. host name. Telco. Жаргонное название телефонной компании4. Telco switch — телефонный коммутатор. Оборудование, принадлежащее телефонной компании и установленное на территории АТС. Telephone company (telco) — телефонная компания. См. telco. Top-level domain — домен верхнего уровня. Последний суффикс в имени ТСР/1Р-хоста, идентифицирующий или специализацию домена (например, суффикс . com характерен для коммерческих компаний), или страну, в которой находится организация. Trailer — концевик. Связка битов, помещаемая после данных перед их передачей через сеть. Эти биты позволяют протоколу получить место для включения, наряду с пользовательскими данными, информации, обеспечивающей функционирование протокола. Transmission Control Protocol/Internet Protocol (TCP/IP) — протокол управления передачей/межсетевой протокол, протокол TCP/IP. См. TCP/IP. Transmission speed — скорость передачи. Скорость, с которой биты передаются через канал глобальной сети, измеряется в битах в секунду, килобитах в секунду, мегабитах в секунду или гигабитах в секунду. Trunk — транк. Или транк виртуальной локальной сети, или Ethernet-сегмент между двумя коммутаторами. Twisted pair — витая пара. Пара проводов, скрученных между собой с целью снижения влияния электромагнитных помех. UDP (User Datagram Protocol) — протокол дейтаграмм пользователя (UDP). Протокол транспортного уровня из набора TCP/IP, обеспечивающий базовые услуги по пересылке данных, но не исправляющий ошибки. Unicast address — индивидуальный адрес. МАС-адрес Ethernet, представляющий одну плату интерфейса сети. 4 Обычно (и в контексте данной книги) telco — это телефонная компания, предоставляющая Internet-услуги. — Прим. ред.
Глоссарий 407 Uniform resource locator (URL) — унифицированный указатель информационного ресурса. См. URL. Unshielded twisted-pair (UTP) — неэкранированная витая пара. См. UTP. Upload — выгрузка. Передача файла, в ходе которой компьютер предоставляет его другому компьютеру. URL (uniform resource locator) — унифицированный указатель информационного ресурса. Строка символов, которая может быть использована для однозначной идентификации конкретной Web-страницы. Также известен как Web-адрес (web address). User Datagram Protocol (UDP) — протокол дейтаграмм пользователя. См. UDP. Username — имя пользователя. Строка символов, представляющая пользователя сети. UTP (unshielded twisted-pair) — неэкранированная витая пара. Тип кабеля, содержащего витые пары проводов, но без экранирующей оплетки. На сегодняшний день кабели типа UTP наиболее широко используются в локальных сетях. VC (virtual circuit) — виртуальный канал. Логическая концепция, используемая для представления пути, по которому фреймы проходят между терминалами (DTE) Frame Relay. Виртуальные каналы Frame Relay экономически более выгодны, чем выделенные физические каналы. Vendor consortium — консорциум поставщиков. Организация поставщиков, преследующих одинаковые цели и сотрудничающих с целью обеспечения совместной работы их продуктов, обычно в ожидании завершения работы над соответствующими стандартами организациями по стандартизации. Примером такого консорциума может служить Frame Relay Forum. Virtual circuit (VC) — виртуальный канал. См. VC. Virtual LAN — виртуальная локальная сеть. Широковещательный домен, созданный за счет конфигурирования коммутатора и сообщения: ему, какие порты должны рассматриваться как принадлежащие одному и тому же широковещательному домену. Virtual private network (VPN) — виртуальная частная сеть. См. VPN. Virus — вирус. Файл, обычно содержащий программу и помещаемый в компьютерную систему методом обхода устройств защиты с целью создания проблем. VLAN trunk — транк виртуальной локальной сети. Сегмент Ethernet между двумя коммутаторами, перед передачей данных через который коммутаторы добавляют к фреймам VLAN-заголовок. Транкинговый заголовок VLAN указывает, какой виртуальной локальной сети принадлежит фрейм. VLAN trunking — транкинг в виртуальной локальной сети. Процесс добавления и удаления транкинговых заголовков VLAN при использовании транка виртуальной локальной сети. VLAN trunking header — транкинговый заголовок VLAN. Заголовок, добавляемый к фрейму Ethernet перед передачей его через транк виртуальной локальной сети. Voice circuit — линия передачи речевых сигналов. Физический путь, создаваемый телефонной компанией для передачи аналоговых речевых сигналов в обеспечение речевой телефонной связи. VPN (virtual private network) — виртуальная частная сеть. Виртуальные частные сети позволяют пользователям общедоступных сетей, таких как Internet, защищать свои данные путем шифрования, превращая тем самым свое сетевое соединение в виртуально-частное.
408 Глоссарий VPN client software — клиентское программное обеспечение VPN. Программное обеспечение, устанавливаемое на компьютере пользователя, обеспечивающее шифрование и дешифрование, необходимые для создания VPN. VPN concentrator — концентратор виртуальной частной сети. Устройство и программное обеспечение, установленные на корпоративном сайте, находящемся в корпоративной сети, которые выполняют шифрование и дешифрование, необходимые для создания VPN. Wall plate — настенная розетка. Прямоугольная пластмассовая пластина, закрывающая отверстие в стене. Настенная розетка имеет электрические контакты, к которым может быть подсоединен сетевой кабель. С внутренней стороны розетки к ее электрическим контактам также подключается кабель, соединяющий розетку с остальной сетью. WAN (wide-area network) — глобальная сеть. Сеть, которая по определению включает компоненты, расположенные далеко друг от друга и требующие для соединения услуг телефонной компании. WAN link — канал глобальной сети. Термин, относящийся к услуге, предоставляемой телефонной компанией, благодаря которой два устройства могут обмениваться данными, пересылая их через сеть телефонной компании. WAN switch — коммутатор глобальной сети. См. telco switch. Waveform-—форма сигнала. График зависимости напряжения электрического сигнала от времени. Для передачи цифровой информации используется сигнал прямоугольной формы. Web address — Web-адрес. Строка символов, которая может быть использована для однозначной идентификации отдельной Web-страницы. Также известен как унифицированный указатель информационного ресурса (uniform resource locator, URL). Web browser — Web-браузер. Программное обеспечение, устанавливаемое на компьютере пользователя. Браузер запрашивает Web-страницу у Web-сервера и, после того как сервер ответит, отображает на дисплее информацию, которую посылает ему Web-сервер. Web client — Web-клиент. Программное обеспечение, выполняемое на компьютере конечного пользователя, предоставляющее ему пользовательский интерфейс для отображения на дисплее Web-страниц, хранящихся на Web-серверах. Web content — Web-содержимое. См. content. Web object — Web-объект. См. object. Web page -— Web-страница. Термин, относящийся к содержимому, передаваемому Web-сервером Web-браузеру. Обычно относится к тому, что отображается в данный момент времени в окне Web-браузера. Web server — Web-сервер. Программное обеспечение, выполняемое на аппаратных средствах серверного компьютера, которое позволяет Web-браузеру соединяться с ним с целью получения Web-страниц. Website — Web-сайт. Термин, относящийся к Web-страницам и Web-серверу, компонующему Web-содержимое, принадлежащее организации или отдельному пользователю. Под этим термином обычно понимаются все Web-страницы, созданные компанией или персоной, которой принадлежит Web-сайт. Well-known port — стандартный порт. Номер порта, который сервер обычно использует для конкретного приложения, поэтому, когда клиентские компьютеры пы-
Глоссарий 409 таются воспользоваться данной службой, они знают, какой порт адресата нужно указать в соответствующем поле ТСР-заголовка. Wide-area network (WAN) — глобальная сеть. См. WAN. Wiring — провод. Тонкий, длинный, как правило, круглый кусок металла, используемый для передачи данных. Провод обычно покрывается пластиковой оболочкой с целью повышения его прочности. Wiring closet — распределительный шкаф. Обычно это небольшая комната (отсюда слово шкаф), в которой сходятся кабели от всех компьютеров. Wiring panel — коммутационная панель. См. patch panel. World Wide Web (WWW). См. WWW. WWW (World Wide Web) "Всемирная паутина". Все Web-сайты мира. Зачастую термин WWW используется для обозначения Internet, особенно в контексте всех Web- сайтов, доступных через Internet. zip code — zip-код. Применительно к США — почтовый индекс. Представляет собой пяти- или девятиразрядное число, которое почтовая служба США использует для быстрой и легкой сортировки почты.
Предметный указатель 1 10 Gbps Ethernet, 116 10/100 card, 118 100BaseT, 115 100s digit, 346 lOBaseT, 115 lOGigE, 116 10s digit, 346 Is digit, 346 4 4-wire circuit, 244; 246 8 802.2 committee, 98 802.3 committee, 98 802.3z, 115 A Access link Frame Relay, 258 Access rate, 264 Accounting, 292 Acknowledgment number, 62; 165 Address resolution protocol, 201 Analog, 274 Analog electrical signal, 274 Anti-virus software, 312 ARP, 201; 204 broadcast, 204 cache, 206 reply, 205 Asymmetric transmission rate, 283 Authentication, 144; 288 Authentication server, 289 Authoritative DNS, 238 Authorization, 291 Autonegotiation, 117 В Bandwidth, 248 BGP, 228 Binary digit, 54 Bit, 54 Border Gateway Protocol, 228 Bps, 76 Broadcast address, 112 Broadcast domain, 122 Buffer, 106 Byte, 55; 181 С Canonical, 180 Canonical format, 354 Carrier sense multiple access collision detect, 91 Central office, 244 Challenge Handshake Authentication Protocol, 293 Channel Service Unit/Data Service Unit, 249 CHAP, 293 CIR, 264 Class of network, 188 Clear text, 295 Client, 46 Clockrate, 248 Cloud, 28 CO, 244 Collision, 90 Co-lo, 282 Co-location, 282 Commercial driver's license, 290 Committed information rate, 264 Computer virus, 312 Configuring a router, 219 Connector, 53 Content, 151 Cracker, 311 Cross-over cable, 81 CSMA/CD, 91 CSU/DSU, 249 внешний, 249 внутренний, 249 D Data Link Connection Identifier, 259 DEC, 59 Decimal digit, 346 DECnet, 59 Decrypting, 298 Default gateway, 200 Default router, 200 Default web page, 153 Demilitarizedzone, 310 Demodulation, 277
Предметный указатель 411 Denial of service attack, 311 Destination address field, 94 DHCP, 204 Digit, 345 Digital, 274 Digital Subscriber Line, 280 Digital transmission, 75 Directly connected subnet, 220 Directory assistance, 233 DIX Ethernet, 98 DLCI, 259 DMZ, 310 DNS, 233 authoritative, 238 resolution request, 234 server, 233 DNS-сервер, 141; 233 корневой, 238 Domain, 238 Domain name, 238 Domain Name System, 140; 233 DoS, 311 attack, 311 Dotted decimal, 180 Dotted decimal format, 354 Download, 47 DSL, 280 Access Multiplexer, 281 DSLAM, 281 Dynamic host configuration protocol, 204 Dynamically assigned port, 172 E EHLO, 144 EIA, 80 Electrical interference, 56 Electromagnetic interference, 78 E-Mail, 44 address, 45; 139 client, 46; 142 server, 46 EMI, 78 Encapsulation, 89; 162 Encoding, 55 standard, 75 Encryption, 298 key, 298 Enterprise network, 33; 40 Enterprise WAN, 33 Ephemeral port, 172 Error detection, 97 recovery, 57; 97 Ethernet, 89 address, 93 frame, 89 ■Wo, 83 version 2, 98 Ethernet-адрес, 93 Extended hello, 144 Exterior Routing Protocol, 228 External CSU/DSU, 249 F Fast Ethernet, 114 FCS, 96 FE, 115 File read, 37 server, 38 transfer, 47 write, 37 File Transfer Protocol, 147 Filtering decision, 111 Firewall, 305 Flooding, 111 Flow, 303 Forward acknowledgment, 62; 166 Forward versus filter decision, 111 Forwarding decision, 104; 111; 209 Frame, 90 Frame check sequence, 96 Frame Relay Forum, 258 network, 258 service, 257 service provider, 257 switch, 257 FTP, 147 Full duplex, 108; 250 Full mesh, 261 G Gateway, 60 GET, 149 Gigabit Ethernet, 115 GigE, 115 Glass fiber, 115 H Hacker, 311 Half duple, 108 Hard disk, 39 Header, 62; 90 Hex, 94 Hexadecimal, 94 High-level Data Link Control, HDLC, 253
412 Предметный указатель Home page, 153 Host, 180 Host name, 233 Host portion of the address, 188 Host-based IDS, 312 HTML, 153 HTTP, 153 Hypertext, 153 HyperText Markup Language, 153 HyperText Transfer Protocol, 153 I IBM, 59 IDS, 311 IEEE, 64 IETF, 60; 141 Inside interface, 308 Institute of electrical and electronics engineers, 64 Interior Routing Protocol, 228 Internal CSU/DSU, 249 International organization for standardization, 67 International telecommunications union, 65 Internet, 33; 40 Internet engineering task force, 60 Internet Explorer, 42 Internet message format, 144 Internet service provider, 33; 271 Internetwork, 179 Internetwork layer, 68 Internet-провайдер, 33 Inter-switch link, 134 Intrusion Detection System, 311 Inverse ARP, 268 IP, 180 header, 63 network, 187 network number, 187 packet, 181 routing table, 208 IPSec VPN, 299 IP-заголовок, 63 IP-маршрут статический, 221 IP-пакет, 181 IP-сеть, 187 ISL, 134 ISO, 67 ISP, 33 ITU, 65 J Jamming signal, 93 К Kerberos, 290 L LAN, 32 legal, 89 Layer, 65 %,129 Learning, 110 Leased line, 65 LLC, 98 Local area network, 32 Local host file, 232 Local loop, 273 Logical link control, 98 Loopback circuit, 92 M MAC, 98 MAC address table, 104 MAC addresses, 98 МАС-адрес, 98 для одноадресатной передачи, 112 Maximum segment size, 167 Media access control, 98 Message digest, 296 Metric, 226 Microsoft Outlook, 46 Modem, 41; 276 analog, 276 Modulation, 276 mss, 167 N Name resolution, 183 Napster, 47 Netscape, 42 Network, 27 analysis tool, 295 cloud, 39 interface, 180 interface cards, 53 layer, 68 layer protocol, 68 number, 187 portion of the address, 188 Network-based IDS, 312 Networking standard, 51 Next-hop router, 209
NIC, 53 Numeral, 345 О Object, 154 Octet, 181 Operating system, 159 Optical cabling, 115 OS, 159 Outside interface, 308 P Packet, 56 PAP, 293 Partial mesh, 261 Password, 288 Password Authentication Protocol, 293 Patch cable, 85 Patch panel, 85 PC, 28 Permanent virtual circuits, 261 Personal computer, 28 Phone switches, 245 Physical connectivity, 53 Physical medium, 242 Pin, 79 PIX Firewall, 306 Point Of Presence, 278 Point to Point Protocol, PPP, 253 POP, 144; 278 POP3 server, 146 server software, 146 Post Office Protocol, 144 Postal code, 184 Preamble, 90 Print server, 38; 39 Print services, 39 Profiling, 313 Protocol, 57 PSTN, 273 Public networking model, 60 Public Switched Telephone Network, 273 PUT, 149 PVC, 261 R Remainder, 349 Requests for comments, 61 RFC, 61 Right-of-way, 244 RJ-45 connector, 80 Root DNS server, 238 Предметный указатель 413 Router, 178 Routing, 178; 208 Routing protocol, 222 Routing table, 64; 207 Routing update, 223 s Sales engineer, 244 SE, 244 Segment, 163; 167 Segmentation, 167 Sequence number, 62; 165 Serial interface, 244 Shielded twisted pair, 78 Signature, 313 Simple Mail Transfer Protocol, 143 SMTP, 143 server, 146 server software, 146 SNA, 59 Snail mail, 44 Sneakernet, 38 Sniffer, 295 Source address, 95 Source address field, 94 Starting delimiter, 99 Static IP route, 221 STP, 78 Straight-through cable, 81 Street legal, 88 Structured wiring, 85 Subnet, 193 number, 194 Subnetting, 191; 193 Switch, 29 Switch port, 32; 104 Switching table, 104 SYN flag bit, 307 Systems network architecture, 59 T Tl circuit, 248 line, 248 TCP, 61; 161 connection, 150; 173; 307 connection establishment, 173 destination port, 770 port, 171 segment, 163 установление соединения, 173 TCP/IP, 60 host, 180
414 Предметный указатель TCP-сегмент, 163 TCP-соединение, 150; 173; 307 Telco switch, 245 TIA, 80 Trailer, 90 Transmission control protocol, 161 Transmission control protocol/internet protocol, 60 Transmission speed, 248 Transport layer, 67 Trunk, 131; 133 Trunking, 133 Trunking header, 133 Trunking VLAN, 7J2 Twistedpair, 78 и UDP, 161 Unicast MAC addresses, 112 Uniform resource locator, 153 Universal Resource Locator, 43 Unshielded twisted pair, 79 Upload, 47 URL, 43; 153 User datagram protocol, 161 Username, 288 UTP, 79 V VC, 261 Vendor consortium, 258 Virtual circuit, 261 Virtual LAN, 126 Virtual private network, 298 Virus, 311 VLAN trunk, 133 VLANs, 126 Voice circuit, 273 Voltage, 55 VPN, 298 client software, 299 concentrator, 299 w Wall plate, 31 WAN, 32; 64 link, 246 switch, 245 Waveform, 76 Web, 43 browser, 42 content, 151 page, 42 Website, 42; 151 Web-адрес, 43 Web-браузер, 42 Web-клиент, 151 Web-сайт, 42; 151 Web-сер вер, 42 Web-содержимое, 151 Web-страница, 42 открываемая по умолчанию, 153 Web-узел, 42 Well-known ports, 172 Wide-area network, 32; 64 Wiring closet, 29 Wiring panel, 31; 85 z Zip code, 184 Zip-код, 184 A Абонентский шлейф, 273 Автоматическая телефонная станция, 244 Автоматическое согласование, 117 Авторизация, 291 Адрес отправителя, 95 широковещательный, 112 электронной почты, 139 электронный, 45 Адресация лавинная, 111 Амплитуда, 275 Антивирусное профаммное обеспечение, 312 Архитектура сетевых систем, 59 Атака типа отказ в обслуживании, 311 Аутентификация, 144; 288 Б Байт, 55; 181 Бит, 54 Бит/с, 76 Брандмауэр, 305 Буфер, 106 В Взломщик (компьютерных систем), 311 Виртуальная локальная сеть, 126 Виртуальная частная сеть, 298 Виртуальный канал, 261 Вирус, 311 компьютерный, 312 Витая пара, 78
Предметный указатель 415 Внешний интерфейс, 308 Выгрузка, 47 Выделенная линия, 246 Выделенный канал, 65; 246 г Гипертекст, 153 д Двоичная система счисления, 347 Двоичный знак, 54 Демилитаризированная зона, 310 Демодуляция, 277 Десятичная система счисления, 345 Десятичный разряд, 346 Домашняя страница, 152 Домен, 238 имя, 238 широковещательный, 122 Доменная система имен, 140; 233 Дуплексный режим, 250 Дешифрование, 298 ж Жесткий диск, 39 з Заголовок, 62 Ethernet, 90 Frame Relay, 259 транкинговый, 133 Загрузка, 47 Законность локальной сети, 89 Запись файла, 37 Запрос на преобразование имен, 234 Запросы на комментарии, 61 Знак двоичный, 54 и Идентификатор DLCI, 259 канала связи, 259 Изучение МАС-адресов, ПО ИИЭР, 64 Имя пользователя, 288 хоста, 233 Инверсный протокол ARP, 268 Инженер по сбыту, 244 Инкапсуляция, 89; 162 Институт инженеров по электротехнике и радиоэлектронике, 64 Интерфейс внешний, 308 внутренний, 308 исходящий, 209 сетевой, 180 К Кабель коммутационный, 85 с неэкранированными витыми парами, 79 с перекрестными соединениями контактов, 81 с прямыми соединениями контактов, 81 с экранированными витыми парами, 78 Канал виртуальный, 261 виртуальный постоянный, 261 выделенный, 65 глобальной сети, 246 доступа Frame Relay, 258 связи между коммутаторами, 134 типа точка-точка, 246 Класс сети, 188 Клиент, 46 электронной почты, 46 Ключ шифрования, 298 Кодирование, 55 Коллизия, 90 Команда EHLO, 144 FTP PASS, 149; 150 FTP PUT, 149 FTP .USER, 149; 150 GET, 149; 150 MAIL, 144 RCPT, 144 Комитет 802.2, 98 802.3, 98 Коммутатор, 29 Frame Relay, 257; 258 WAN, 245 телефонной компании, 245 телефонный, 245 Коммутационная панель, 85 Коммутационный кабель, 85 Коммутируемая телефонная сеть общего пользования, 273 Компьютерный вирус, 312 Консорциум поставщиков, 258 Контакт штыревой, 79 Контрольная последовательность фрейма. 96
416 Предметный указатель Конфигурирование маршрутизатора, 219 Концевик Ethernet, 90 Концентратор, 702 Ethernet, 83 VPN, 299 Крекер, 311 Кроссонет, 38 КэшАЯР,20б Л Лавинная адресация, 111 Линия Т1, 248 абонентская, 273 передачи речевых сигналов, 273 связи четырехпроводная, 244 Локальный хост-файл, 232 м Максимальный размер сегмента, 167 Маршрутизатор, 178 конфигурирование, 219 по умолчанию, 200 следующего перехода, 209 Маршрутизация, 178; 208 лавинная, 111 Международная организация по стандартизации, 67 Международный телекоммуникационный союз, Ъ5 Межсетевой протокол, 63 Метрика, 226 Множественный доступ с контролем несущей и обнаружением коллизий, 91 Модель архитектуры сети, 58 сетевая, 58 структурная, 58 Модем, 41; 276 аналоговый, 276 Модуляция, 276 Модуль CSU/DSU, 249 обслуживания канала и данных, 249 Монтажная панель, 85 Мультиплексор доступа к цифровой абонентской линии, 281 н Напряжение, 55 Настенная розетка, 31 Непосредственно связанная подсеть, 220 Номер IP-подсети, 194 IP-сети, 187 подтверждения, 62 сети, 187 о Облако, 28 сетевое, 39 Обнаружение ошибок, 97 Обновление маршрутной информации, 223 Общедоступная сетевая модель, 60 Объект, 154 Ограничитель начала фрейма, 99 Октет, 181; 354 Операционная система, 159 Оптическая кабельная система, 115 Остаток, 349 Ответ ARP, 205 Открытый текст, 295 п Пакет, 56; 182 Панель коммутационная, 85 монтажная, 85 распределительная, 31 Пароль, 288 Передача данных цифровая, 75 файла, 47 Персональный компьютер, 28 ПК, 28 Плата 10/100,118 интерфейса сети, 53 Подсеть, 193 непосредственно связанная с маршрутизатором, 220 Подтверждение прогнозное, 62 Поле DLCI, 267 адреса отправителя, 94 адреса получателя, 94 контрольной последовательности фрейма, 96; 267 номера подтверждения, 165 порядкового номера, 165 Полносвязанная сеть, 261 Полный дуплекс, 108 Полудуплекс, 108 Помехи, 56
Предметный указатель 417 Порт TCP, 171 адресата TCP, 170 коммутатора, 32; 104 с динамически назначаемым номером, 172 стандартный, 172 эфемерный, 172 Последовательный канал, 246 Поставщик услуг Frame Relay, 257 Internet, 271 Постоянный виртуальный канал, 261 Поток, 303 Почта электронная, 44 Почтовый индекс, 184 Почтовый клиент, 142 Почтовый протокол, 144 Почтовый сервер, 46 Право прохода через чужую землю, 244 Преамбула, 90 Преобразование имен в адреса, 183 Провайдер Frame Relay, 257 Internet, 33 Прогнозное подтверждение, 62; 166 Программа наблюдения, 295 Программное обеспечение антивирусное, 312 клиентское VPN, 298 сервера РОРЗ, 146 сервера SMTP, 146 Проект сети, 58 Пропускная способность, 248 Простой протокол передачи почты, 143 Протокол, 57 АКР, 204 инверсный, 268 EIGRP, 228 IP, 63; 180 Kerberos, 289 OSPF, 228 RADIUS, 294 TACACS, 294 TCP, 61 TCP/IP, 60 аутентификации по паролю, 293 взаимной аутентификации, 293 граничного шлюза, 228 дейтаграмм пользователя, 161 динамического конфигурирования хоста, 204 маршрутизации, 222 внешний, 228 внутренний, 228 межсетевой, 63 передачи гипертекста, 153 передачи почты простой, 143 передачи файлов, 147 почтовый, 144 преобразования адресов, 201 сетевого уровня, 68 соединения точка-точка, 253 транспортного уровня, 67 управления каналом высокоуровневый, 253 управления передачей, 61; 161 управления передачей/межсетевой, 60 Профилирование, 313 Профиль сообщения, 296 р Рабочая группа 802.3ab, 115 802.3Z, 115 Разбиение на подсети, 191; 193 Разряд десятичный, 346 десятков, 346 единиц, 346 сотен, 346 Распределительная панель, 31 Распределительный шкаф, 29 Решение о пересылке, 104; 111; 209 о пересылке в зависимости от решения о фильтрации, 111 о фильтрации, 111 Розетка настенная, 31 с Свертка сообщения, 296 Сегмент, 163; 167; 182 TCP, 167 максимальный размер, 167 Сегментация, 167 Сервер РОРЗ, 146 SMTP, 146 аутентификации, 289 печати, 38; 39 почтовый, 46 файловый, 38 Сетевая IDS, 312 Сетевая архитектура, 58 Сетевая модель, 58 Сетевая служба, 30
418 Предметный указатель Сетевая часть адреса, 188 Сетевой интерфейс, 180 Сетевой комплекс, 179 Сетевой протокол, 57 Сетевой стандарт, 51 Сеть Frame Relay, 257; 258 Internet, 33 глобальная, 32; 64 глобальная корпоративная, 33 корпоративная, 33; 40 локальная, 32 объединенная, 179 определение, 27 полносвязанная, 261 предприятия, 33 телефонная коммутируемая общего пользования, 273 частичносвязанная, 261 Сигнал затора, 93 прямоугольной формы, 76 электрический аналоговый, 274 Сигнатура, 313 Система обнаружения сетевых атак, 311 хостовая, 312 операционная компьютера, 159 счисления двоичная, 347 десятичная, 345 шестнадцатеричная, 94 Скорость доступа, 264 передачи, 248 асимметричная, 283 гарантированная, 264 Служба Frame Relay, 257 печати, 39 сетевая, 30 файловая, 39 Сниффер, 295 Содержимое, 151 Соединитель, 53 типа RJ-45, 80 Сосредоточение, 282 Справочный стол, 233 Средство анализа сети, 295 Стандарт 10 Gbps Ethernet, 116 802.2, 98 802.3, 98 Ethernet, 89 Fast Ethernet, 114 Frame Relay, 259 ISL, 134 кодирования, 75 сетевой, 51 Стандартный номер порта, 172 Статический IP-маршрут, 221 Стек TCP/IP, 61 Страница домашняя, 152 Структурированная электропроводка, 85 Структурная модель, 58 Считывание файла, 37 т Таблица 1Р-маршрутизации, 208 МАС-адресов, 104 коммутации, 104 маршрутизации, 64; 207 Тактовая частота, 248 Текст открытый, 295 Телефонный коммутатор, 245 Технический консультант, 244 Точка присутствия, 278 Транк, 131; 133 Транкинг, 133 802.1Q, 134 виртуальной локальной сети, 132 У Указатель информационного ресурса унифицированный, 43 Унифицированный указатель информационного ресурса, 153 Управление доступом к среде передачи, 98 логическим каналом, 98 Уровень, 65 %,129 сетевой, 68 Установление соединения TCP, 173 Устранение ошибок, 57; 97 Учет, 292 Ф Файл запись, 37 передача, 47 считывание, 37 Файловая служба, 39 Файловый сервер, 38 Физическая возможность соединения, 53 Физическая среда, 242
Предметный указатель 419 Флаговый бит SYN, 307 Формат десятичный с точками, 180; 354 канонический, 180; 354 Форум Frame Relay, 258 Фрейм, 90; 182 Ethernet, 89 HDLC, 253 РРР, 253 широковещательный, 122 X Хаб, 83 Хакер, 311 Хост, 180 TCP/IP, 180 имя, 233 Хостовая IDS, 312 Хостовая часть адреса, 188 Хост-файл локальный, 232 ц Целевая группа инженерной поддержки Internet, 60; 141 Центральная АТС, 244 Цепь кольцевой проверки, 92 Цифра, 345 Цифровая абонентская линия, 280 Цифровая передача, 75 ч Частично связанная сеть, 261 Частота, 275 Четырехпроводная линия связи, 246 Преобразование, 348 ш Широковещание по протоколу ARP, 204 Широковещательный адрес, 112 Широковещательный домен, 122 Шифрование, 298 Шкаф распределительный, 29 Шлюз, 60 по умолчанию, 200 Штыревой контакт, 79 Штырек, 79 э Электрическая помеха, 56 Электромагнитная помеха, 78 Электронная почта, 44 Электронный адрес, 45 Электропроводка структурированная, 85 я Язык гипертекстовой разметки, 153
Научно-популярное издание Уэнделл Одом Компьютерные сети. Первый шаг Литературный редактор Ж.Е. Прусакова Верстка О. В, Линник Художественный редактор В.Г. Павлютин Корректор О. В. Мишу тина Издательский дом "Вильяме". 101509, Москва, ул. Лесная, д. 43, стр. 1. Подписано в печать 22.09.2005. Формат 70X100/16. Гарнитура Times. Печать офсетная. Усл. печ. л. 34,83. Уч.-изд. л. 25,5. Тираж 3000 экз. Заказ № 6754. Отпечатано в ФГУП "Печатный двор" им. А. М. Горького Федерального агентства по печати и массовым коммуникациям. 197110, Санкт-Петербург, Чкаловский пр., 15.