Назад

Купить и читать книгу за 164 руб.

Вы читаете ознакомительный отрывок. Если книга вам понравилась, вы можете купить полную версию и продолжить читать

Настройка сетей Microsoft дома и в офисе. Учебный курс

   Сети на основе технологий Microsoft давно стали распространенной средой работы. Без компьютерных сетей давно уже не обходится ни один офис. Эта книга позволит читателю разобраться в основных вопросах создания и настройки сетей Microsoft.
   Теоретический материал сопровождается практическими примерами, иллюстрациями, а также пошаговыми инструкциями, позволяющими последовательно и четко воплощать излагаемую теорию на практике. Особое внимание уделено вопросам интеграции с Интернетом, а также обеспечению безопасности.
   Книга будет полезна системным администраторам и всем пользователям, интересующимся вопросами создания и поддержания работоспособности сетей Microsoft.


Александр Петрович Сергеев Настройка сетей Microsoft дома и в офисе

Предисловие

   Достаточно трудно сказать что-то новое при рассмотрении такого предмета, как локальные вычислительные сети. Этой теме посвящены многочисленные тома стандартов, переводных и авторских книг. Эта книга создавалась как некий сборник рекомендаций, в котором вы найдете ответы на многие вопросы, возникающие при установке и поддержке в рабочем состоянии сетей Ethernet в среде Windows (от ранних Windows 98 до последних Windows XP). Здесь же вы найдете описание принципов функционирования различных аппаратных сетевых компонентов, включая такие сложные устройства, как маршрутизаторы. Будут рассмотрены сетевые топологии, методики поиска и устранения наиболее распространенных неисправностей в сетях. Теоретический материал сопровождается практическими примерами, иллюстрациями, а также пошаговыми инструкциями, позволяющими последовательно и четко воплощать излагаемую теорию на практике. Уделено внимание вопросам интеграции с Интернетом, а также обеспечению безопасности.

Структура книги

   Книга состоит из пяти частей, включающих в общей сложности одиннадцать глав. В конце ее приводится словарь распространенных сетевых терминов.
   В первую часть книги включены вводные главы, позволяющие ближе познакомиться с предметом изучения. В первой главе вы найдете краткий исторический обзор, дающий общее представление о предмете рассмотрения книги. Вторая глава содержит описание наиболее распространенных топологий локальных вычислительных сетей на физическом и логическом уровнях. Описание физических принципов функционирования ЛВС, наравне с рассмотрением новейших стандартов Gigabit Ethernet и 10 Gigabit Ethernet, можно найти в третьей главе. В ней же рассматриваются беспроводные сети. Четвертая глава посвящена описанию принципов работы протоколов TCP/IP.
   Во второй части книги рассматриваются принципы работы физических компонентов сети. Предметом рассмотрения пятой главы являются такие устройства, как сетевые карты, концентраторы, коммутаторы и маршрутизаторы. Здесь же вы найдете советы по монтажу этих устройств, а также их дальнейшему обслуживанию. В шестой главе приводится описание алгоритма проектирования локальной сети, позволяющего создавать сети на основе заданных исходных данных.
   Основным предметом рассмотрения третьей части является установка и настройка локальных вычислительных сетей на различных платформах Windows (98/2000/ХР). Пошаговые инструкции, а также большое количество иллюстраций значительно упрощают восприятие излагаемого материала.
   Четвертая часть книги включает в себя главы, посвященные обеспечению безопасности локальных вычислительных сетей, подключенных к Интернету, а также процедурам настройки удаленного доступа в Windows 2000/XP.
   Пятая часть книги носит технический характер и содержит единственную главу, посвященную поиску и устранению неисправностей в ЛВС. Здесь вы найдете описание аппаратных и программных средств, которые наиболее часто применяются в этих целях.
   Книга включает единственное приложение, представляющее собой словарь сетевых терминов.
   Автор будет благодарен за замечания и пожелания, которые вы можете отсылать на веб-сайт издательства «Питер».

От издательства

   Ваши замечания, предложения и вопросы отправляйте по адресу электронной почты comp@piter.com (издательство «Питер», компьютерная редакция).
   Мы будем рады узнать ваше мнение!
   Подробную информацию о наших книгах вы найдете на веб-сайте издательства: http://www.piter.com.

Часть I
Введение

   Четыре первых главы, входящие в эту часть, являются, главным образом, вводными. Здесь вы найдете краткий исторический обзор возникновения и развития локальных сетей, описание сетевых топологий, а также рассмотрение некоторых теоретических вопросов, связанных с локальными вычислительными сетями. Я настоятельно рекомендую ознакомиться с материалом этой части, поскольку без излагаемой здесь теории будут невозможны проектирование и монтаж локальных сетей. В третьей главе заинтересованный читатель найдет все необходимые теоретические сведения, относящиеся к физическим принципам, на основании которых базируется работа ЛВС. А теперь стоит перейти к первой главе, в которой будет изложена история возникновения и развития локальных вычислительных сетей.

Глава 1
Краткий исторический обзор

   Тем, кто живет в XXI веке, кажется, что персональные компьютеры и локальные вычислительные сети существовали всегда. Слишком уж прочно в нашу жизнь вошли эти произведения научно-технической мысли XX века. Сейчас уже трудно представить те времена, когда основным орудием бухгалтера были счеты, а локальную сеть успешно заменяли сотрудники, хаотично перемещающиеся по офису с папками документов. А ведь эти времена вряд ли можно отнести к эпохе «преданий старины глубокой».
   Но все проходит, и вот наступили девяностые годы, когда просторы СНГ захлестнула волна компьютеризации, которая, в свою очередь, породила массовое распространение локальных вычислительных сетей (ЛВС). Как только этот феномен пришел к нам, возникла потребность в специалистах, которые могли бы монтировать и обслуживать сети.
   Поначалу так оно и было. Любая уважающая себя организация включала в свой штат сетевого (системного) администратора, который и занимался подобными вопросами. Но шло время, и сейчас сети охватывают целые жилые районы или у многих установлены дома. Впрочем, забудем пока о современности и вспомним о том, как все начиналось.
   С момента появления первой универсальной ЭВМ в далеких сороковых годах прошлого века возникла проблема связи с периферийными устройствами. Изначально эта задача решалась при помощи фиксированного подключения этих устройств к центральному вычислительному блоку. Но подобное соединение вряд ли можно назвать практичным, поскольку оно не отличалось повышенной надежностью. К тому же слишком часто требовался «человек с паяльником» для изменения конфигурации подобной «первобытной» сети.
   Позднее, в шестидесятых годах появились параллельный и последовательный интерфейсы передачи данных, при помощи которых обеспечивался стандартизированный способ соединений центрального вычислительного блока и периферийных устройств. Однако «дальнобойность» этих интерфейсов не превышала нескольких метров, в связи с чем говорить о сетях было явно преждевременно.
   Но технический прогресс неумолим. Возникшие потребности непрерывно стимулировали технологические разработки, результатом чего стало появление локальных вычислительных сетей. Первой в истории коммерческой сетью, потомки которой «дожили» до сегодняшних дней, стала сеть ALOHA, развернутая на Гавайях. Первая сеть обеспечивала передачу сигналов на расстояние до одного километра со средней скоростью передачи сигналов около 3 Мбит/с между 256 станциями, установленными в корпусах Гавайского университета. Причем использовался радиоканал, а сама передача осуществлялась с помощью коммутации пакетов. Наверное в силу этого подобная сеть получила название «эфирной» сети Ethernet.
   В 1976 году появилась статья Роберта Меткальфа и Дэвида Боггса, в которой был описан стандарт, определяющий передачу сигналов в этой и подобной ей сетях. Они использовали метод произвольного доступа к сетям, так называемый CSMA (Carrier Sense Multiple Access, многостанционный доступ с контролем несущей). Чуть позднее, в 1979 году появился стандарт Ethernet II, разработанный тремя компаниями – Digital Equipment Corporation, Intel и Xerox. Ранее этот стандарт именовался DIX (по первым буквам названий этих компаний). Он предусматривал работу с «толстыми» коаксиальными кабелями, передача данных по которым осуществлялась со скоростью до 10 Мбит/с. Позднее этот стандарт получил название 10BASE-5.
   1982 год ознаменовался выпуском первой сетевой карты Ethernet для компьютера Apple Computer, a в 1984 мир увидела сетевая карта для IBM PC.
   Также развивалась теоретическая основа сетей Ethernet. В частности, в 1980 году организацией ISO была предложена модель OSI (Open System Interconnect). Именно 7 уровней этой модели традиционно рассматриваются в большинстве книг, посвященных теоретическим (да и практическим) аспектам локальных вычислительных сетей. И в этой книге я не буду отступать от традиций.
   Деятельность по разработке стандартов локальных (да и глобальных) вычислительных сетей была признана настолько важной, что в 1980 году в рамках Института IEEE был сформирован комитет IEEE 802 LAN/MAN Standards Committee. Благодаря усилиям сотрудников этого комитета в 1985 году появился стандарт 802.3 «Carrier Sense Multiple Access with Collision Detection (CSMA/CD)», в котором специфицировано целое семейство протоколов Ethernet.
   В настоящее время насчитывается больше десятка широко применяемых протоколов Ethernet. Часть из них представляет уже исторический интерес (например, тот же 10BASE-5 или появившийся чуть позже 10BASE-2), другие широко используются в офисной и домашней среде (например, 100BASE-TX или 100BASE-FX), а третьи появились сравнительно недавно и не получили до сих пор широкого распространения (например, lOGigabit Ethernet). О невероятной популярности сетей Ethernet говорит тот факт, что соответствующими адаптерами (среди них встречаются даже Gigabit Ethernet) оборудованы все современные материнские платы. И именно сетям этого типа посвящена настоящая книга.
   Разумеется, сетями типа Ethernet все не ограничивается. До сих пор встречаются сети Token Ring и FDDI, функционирующие по принципу передачи кольцевого маркера. Но их «ареал обитания» в настоящее время настолько сузился, что вряд ли имеет смысл рассматривать здесь этот предмет. Сети из этой категории – удел профессионалов, для которых предназначены книги несколько другого рода.
   В настоящее время все большую популярность приобретают беспроводные сети, которым будет посвящена отдельная глава книги. Просто обратите внимание на тот факт, что несмотря на то, что первый беспроводной стандарт был принят в начале 90-х годов прошлого века, первая коммерческая беспроводная сеть появилась на 20 лет раньше (вспомните о проекте ALOHA, упоминавшемся в начале этой главы).
   На этом можно завершить краткий обзор истории зарождения и развития локальных вычислительных сетей и перейти к рассмотрению топологии ЛВС.

Глава 2
Топологии локальных сетей

   Пришло время разобраться подробнее с сетями, а также ввести какую-то классификацию.
   Сети бывают самые разные. Придерживаясь «генеральной линии» нашей книги, мы говорим о компьютерных сетях, а конкретнее, об их подвиде, называемом локальными вычислительными сетями (ЛВС). Разумеется, рассматриваться будут не только такие сети. Будут затронуты и глобальные вычислительные сети, но лишь в той степени, в которой они связаны с локальными сетями. На их примере будет рассмотрена технология удаленного доступа. Этому важному вопросу мы уделим внимание в десятой главе. А сейчас следует рассмотреть один из основополагающих моментов – топологию локальных вычислительных сетей.
   ВНИМАНИЕ
   Существует еще одна распространенная классификация локальных вычислительных сетей, связанная со способом выполнения сетевых вычислений. Сеть называют одноранговой, когда каждый узел в сети равноправен. Иерархическая сеть предполагает выделение центрального сервера и подключаемых к нему клиентских рабочих станций. Оба типа сетей будут рассмотрены в книге.

Топологии локальных вычислительных сетей

   Те, кто изучал высшую математику в институте, наверное, знают об этом, а остальным я просто напомню, что слово «топология» имеет греческие корни и означает не что иное, как науку о путях («топос» и «логос»). Именно в этом случае название является очень удачным, так как оно точно отражает суть дела. Кажущееся хаотичным на первый взгляд переплетение кабелей на самом деле подчиняется однозначным четко определенным правилам, набор которых и образует топологию локальной сети. Ну а теперь дадим некоторые определения.
   Локальная вычислительная сеть моделируется графом, вершины которого соответствуют узлам сети, в качестве которых используются сетевые рабочие станции, концентраторы, маршрутизаторы и другие сетевые компоненты, а ребра графа моделируют физические связи между сетевыми компонентами, которые на практике обычно осуществляются с помощью кабелей или беспроводных (инфракрасные лучи и радиоволны) каналов связи.
   Помимо физической топологии, которая моделирует пути для электрических сигналов в цепи, существует так называемая логическая топология. Она определяется как совокупность маршрутов, предназначенных для передачи данных в сети. Логическая топология может отличаться от физической, поскольку поток данных может управляться соответствующими сетевыми компонентами – маршрутизаторами и коммутаторами, подробное описание принципов работы которых является предметом рассмотрения следующей главы.
   При выборе топологии сети приходится решать оптимизационные задачи на графах, одна из которых заключается в построении сильно связного графа, моделирующего соответствующую топологию.
   ПРИМЕЧАНИЕ
   Подробно эта важная и интересная тема рассматривается в пятой главе. Там же можно найти примеры применения теории для решения сугубо практических задач – проектирование оптимизированной сети Ethernet.
   Прежде чем перейти к изложению дальнейшего материала, следует уточнить, что предметной областью книги являются сети Ethernet, поскольку именно эти сети широко применяются в Windows. В этой главе будет приведен краткий обзор сетей других типов, отличных от Ethernet.
   ПРИМЕЧАНИЕ
   Термин Ethernet впервые использовался Робертом Меткальфом в его знаменитой статье, посвященной сети ALOHA (см. главу 1). Эти сети являются самыми распространенными на сегодняшний день и применяют метод CSMA/CD для контроля передачи данных.
   Теперь пришло время поговорить о различных сетевых топологиях, применяемых на практике.

Шинная топология

   Одной из наиболее распространенных до недавнего времени топологий ЛВС являлась шинная топология. Она представляет собой линейную структуру, которая моделируется графом без циклов. Физически подобная топология реализуется одним общим кабелем (шиной), к которому подключаются рабочие станции. Шина завершается терминатором, который играет роль оконечной нагрузки, а также позволяет исключить такое вредное явление, как отражение сигнала. Именно на базе этой топологии были реализованы первые сети Ethernet. На рис. 2.1 представлен пример сети, характеризующейся шинной топологией.


   Рис. 2.1. Сеть, характеризующаяся шинной топологией

   В настоящее время подобные сети практически не используются на практике, поскольку их эксплуатация сопряжена с наличием нескольких основных проблем:
   – невысокая степень надежности, поскольку в случае повреждения единственного кабеля-шины нарушается передача сигналов в сети;
   – низкое быстродействие, частично связанное с использованием механизма передачи данных (CSMA/CD, множественный доступ с контролем несущей и обнаружением конфликтов);
   – ограничения на предельный размер сети, являющиеся следствием затухания сигнала в процессе его распространения.
   ПРИМЕЧАНИЕ
   На самом деле ограниченное быстродействие связано не только с использо-4– ванием метода CSMA/CD, a скорее с использованием кабеля, обладающего недостаточной пропускной способностью. Как известно, в современных сетях Fast Ethernet также применяется именно этот метод, но их быстродействие трудно назвать «недостаточным».
   ПРИМЕЧАНИЕ Предельный размер сети может быть увеличен, если воспользоваться репитерами, позволяющими усилить сигнал. Подробнее эти устройства рассматриваются в четвертой главе.
   Существует несколько разновидностей стандартов, разработанных для описания шинных сетей.
   – 10BASE-2. Шинная сеть («тонкий» Ethernet), обеспечивающая скорость передачи данных 10 Мбит/с. Максимальная длина сетевого сегмента составляет 185 м. Подобные сети называются «тонким» Ethernet и еще в 90-х годах прошлого века являлись безусловным лидером по количеству инсталляций. Для подключений рабочих станций к шине используются байонетные коннекторы, а при их монтаже – коаксиальные кабели типа RG-58, волновое сопротивление которых составляет 58 Ом. Не стоит путать их с телевизионными кабелями, так как в данном случае сходство является только внешним. Название «тонкий» относится к толщине сетевого кабеля, который тоньше кабеля, применяемого в сетях 10BASE-5.
   – 10BASE-5. Эта тип сети появился раньше, чем 10BASE-2 (альтернативное название – «толстый» Ethernet), и обеспечивает скорость передачи 10 Мбит/с. В данном случае максимальная длина сетевого сегмента составляет 500 м. Несмотря на меньшее затухание сигналов, сети этого типа имеют крупные недостатки, один из которых связан с трудностями монтажа более толстого кабеля, а также с необходимостью использования специальных внешних транси-веров, с помощью которых осуществляется подключение к рабочим станциям.
   Несмотря на практически повсеместное «исчезновение» сетей этого типа, остаются некоторые области, где их применение целесообразно. В частности, эти сети идеальны, если используется не более пяти-шести рабочих станций, а сама сеть предназначается для обмена текстовыми данными.

Звездообразная топология

   Наиболее распространенным типом топологии в настоящее время является звездообразная топология. Ребра моделирующего ее графа сходятся в одной центральной точке, которая в данном случае выступает в качестве «центрального пульта управления». В качестве такого центрального пункта используются коммутаторы и концентраторы, подробнее рассматриваемые в пятой главе. Именно эта топология наиболее распространена в настоящее время. На ее основе реализованы современные высокоскоростные версии сетей Ethernet. На рис. 2.2 приведен пример сети со звездообразной топологией.


   Рис. 2.2. Эта топология является наиболее распространенной в настоящее время

   В сетях со сложной структурой могут устанавливаться несколько концентраторов или коммутаторов, которые подключаются каскадным образом. В этом случае топологию называют иерархической звездой. В качестве одного из уровней иерархии может использоваться шина. На рис. 2.3 приведен соответствующий пример.
   Как правило, в качестве сетевого кабеля при построении этих сетей используется витая пара, обычно неэкранированная. Потребность в специальном экране не возникает, поскольку жилы кабеля скручены таким образом, что происходит взаимное гашение электромагнитных помех.


   Рис. 2.3. Сеть, топология которой моделируется с помощью иерархической звезды

   Существует ряд стандартов, описывающих звездообразные сети, построенные на основе витой пары.
   – 10BASE-T. В названии этого стандарта используется буква Т (сокращение от слов Twisted Pair). Этот стандарт обладает всеми преимуществами, присущими звездообразной топологии. Если позволяют частотные характеристики используемого кабеля витой пары, возможна модернизация до уровня, описываемого стандартом 100BASE-T (скорость передачи данных – 100 Мбит/с).
   – 10BASE-FL. Этот стандарт можно считать устаревшим. Несмотря на то, что для передачи сигнала используется многомодовое оптоволокно (на что указывает аббревиатура FL в названии), скорость передачи данных в сети ограничена значением 10 Мбит/с.
   – 100BASE-TX. В сетях этого типа используется кабель пятой категории (впрочем, другие кабели сейчас не применяются), благодаря этому предельное расстояние между рабочей станцией и концентратором составляет 100 м. Передача данных осуществляется с помощью двух пар проводов, объединенных в одном кабеле.
   – 100BASE-T4. Эта технология представляет собой своего рода «компромиссное решение», позволяющее выполнить обновление сетей со скоростью передачи данных 10 Мбит/с, в которых используются кабели третьей категории. При этом предельное расстояние между рабочей станцией и концентратором составляет 100 м, а передача данных в сети осуществляется по четырем проводам. Два провода используются для приема данных, а остальные два – для передачи их.
   – 100BASE-FX. Аббревиатура FX означает применение волоконно-оптического кабеля (в данном случае идет речь о многомодовом оптоволокне). Для приема и передачи данных используются разные жилы кабеля, а предельное расстояние от концентратора до рабочей станции равно 412 м.
   – 1000BASE-SX. Этот стандарт определяет использование в сетях нескольких волоконно-оптических каналов, причем применяется многомодовый кабель. Литера S (short) в обозначении стандарта говорит о том, что применяется коротковолновый участок спектра видимого света (длина волны 850 нм).
   Максимальная длина кабельного сегмента, проложенного между концентратором и рабочей станцией, в данном случае составляет 550 м.
   – 1000BASE-LX. Этот стандарт описывает волоконно-оптические сети, функционирующие в одномодовом и многомодовом режиме. Символ L в названии указывает на то, что в качестве носителя информации используется длинноволновой «кусок» спектра видимого света (1270-355 нм). Максимальная длина одного сетевого сегмента в этом случае составляет 550 м (многомодо-вый режим) и до 5000 м (одномодовый режим).
   – 1000BASE-CX. Этот стандарт описывает версию сети Gigabit Ethernet, реализованную на основе медного экранированного кабеля. Здесь сказываются существенные ограничения на предельное расстояние между устройствами – всего лишь 25 м.
   – 1000BASE-T. Этот стандарт представляет собой версию стандарта 100BASE-T, адаптированного для передачи данных со скоростью до 1 Гбит/с. Как и у предшественника, максимальное расстояние между рабочей станцией и концентратором равно 100 м.
   – 10000BASE-T. Официального стандарта с таким названием пока не существует, хотя уже разработан ряд поддерживающих его устройств.
   ПРИМЕЧАНИЕ
   В настоящее время общепринятой практикой является проектирование системных компьютерных плат, снабженных встроенными сетевыми адаптерами, обеспечивающими скорость передачи данных 100 Мбит/с и даже 1 Гбит/с.
   ПРИМЕЧАНИЕ
   Подробнее стандарты высокоскоростных сетей будут рассмотрены в третьей главе.

Кольцевая топология

   Кольцевая топология, как и следует из названия, моделирует сеть, форма которой напоминает кольцо (см. рис. 2.4).


   Рис. 2.4. Пример кольцевой топологии

   Данные в подобных сетях циркулируют по кольцу, образованному совокупностью рабочих станций, а также соединяющих их кабелей. Как правило, в подобных сетях передача данных рабочими станциями осуществляется только после того, как будет получен специальный маркер, разрешающий это действие. Благодаря этому обстоятельству сети с маркерным методом доступа обладают массой преимуществ по сравнению с сетями, в которых применяется метод конкурентного доступа на основе технологии CSMA/CD.
   ПРИМЕЧАНИЕ
   Следует отметить, что метод маркерного доступа возможен не только в сетях с кольцевой топологией, но и в сетях с шинной топологией, хотя в последнем случае он используется очень редко.
   Существуют следующие практические реализации сетей с кольцевой топологией:
   – ARCnet;
   – AppleTalk;
   – TokenRing.

Полносвязная топология

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


   Рис. 2.5. Пример сети с полносвязной топологией

Гибридные топологии

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


   Рис. 2.6. Пример сети, сформированной на основе гибридной топологии

   В следующем разделе рассматривается классификация локальных вычислительных сетей в соответствии с применяемой при их формировании архитектурой.

Архитектура локальных вычислительных сетей

   В настоящее время используются локальные вычислительные сети, которые делятся на следующие разновидности (в соответствии с применяемой архитектурой):
   – ARCnet;
   – Token Ring
   – Ethernet.
   Предметом рассмотрения книги являются сети Ethernet, хотя остальные архитектурные решения также заслуживают краткого рассмотрения.

Сети ARCnet

   Трудно предположить, что современному работнику придется столкнуться с этими сетями в реальной жизни, но иметь некоторое представление о них все же полезно.
   Сети ARCnet появились в семидесятых годах прошлого века и изначально предназначались для связи между собой промышленного оборудования, а также кассовых терминалов в больших магазинах. Характеризуются высокой степенью надежности, а также устойчивостью к помехам, поэтому иногда применяются до сих пор.
   В сетях этого типа управление доступом рабочих станций к сетевому кабелю осуществляется с помощью маркера (как в сетях с кольцевой топологией), хотя фактически используется звездообразная или шинная топология.
   Скорость передачи данных в «классической» сети ARCnet составляет 2,5 Мбит/с, что на сегодняшний день не отвечает стандартным ожиданиям пользователей. Но все же существует ряд приложений, для которых скорость передачи данных совершенно не критична.
   Каждому узлу в сети ARCnet назначается адрес в восьмеричном формате от 1 до 255. Следовательно, максимальное количество компьютеров в сети ограничивается значением 255. Обход сети маркером осуществляется в порядке возрастания этих адресов, которые назначаются с помощью установки перемычек на сетевых адаптерах ARCnet. Следует уделить особое внимание процессу настройки, поскольку при этом определяется путь прохождения маркера в сети, который может быть оптимальным, а может быть и далеким от оптимального.
   Сети ARCnet допускают использование практически любых сетевых кабелей (коаксиальный кабель, витая пара, волоконно-оптический кабель), что является несомненным их преимуществом. К недостаткам можно отнести небольшую скорость передачи данных, а также «экзотичность» применяемого оборудования.

Сети Token Ring

   Архитектура сетей Token Ring была разработана компанией IBM в качестве альтернативы сетям Ethernet. Основной отличительной особенностью сетей этого типа является использование маркерного метода доступа. Этот метод исключает конфликт между циркулирующими в сети данными. При этом используется кольцевая логическая топология. Физическая же топология сети является звездообразной. Структура сети показана на рис. 2.7.


   Рис. 2.7. Пример сети Token Ring

   Эта сеть характеризуется несколькими базовыми принципами:
   – все компьютеры подключены к центральному концентратору, который в данном случае именуется модулем многостанционного доступа (MAU, Multistation Access Unit);
   – порты концентратора образуют логическое кольцо, по которому циркулирует маркер;
   – используются специальные кабели типа экранированной витой пары.
   Передача данных в сетях этого типа осуществляется с помощью маркера, который «путешествует» по сети. Как только маркер достигает рабочей станции, готовой передавать данные, производится его перехват данной станцией. При этом в маркер добавляется адрес назначения пакета. Затем маркер и пакет передаются далее по сети. После достижения компьютера, который должен получить пакет, в маркер добавляется подтверждение о получении пакета, а затем передается еще один пакет данных либо сам маркер с отметкой о том, что он не занят. После этого процесс циклически повторяется.
   К числу основных преимуществ сетей Token Ring является устойчивость к перегрузкам, при наличии которых наблюдается лишь плавное падение производительности. Поскольку применяемая в этом случае топология является активной, не требуется использование повторителей для усиления сигнала. Серьезным недостатком сетей этого типа является невысокая скорость передачи данных (не более 16 Мбит/с в новейших модификациях), а также достаточно высокие цены на оборудование.

Сети Ethernet

   Именно сети этого типа рассматриваются в данной книге. Как упоминалось ранее, таким сетям присуща звездообразная или шинная топология, а доступ рабочих станций к сетевому кабелю обеспечивается с помощью метода множественного доступа с контролем среды и обнаружением конфликтов (CSMA/CD, Carrier Sense Multiple Access Collision Detect). Ниже кратко описан алгоритм, на основе которого функционирует этот метод:
   – Проверка сетевой среды. Перед тем как начать передачу данных в сетевой среде, следует узнать, не выполняется ли подобная операция другим компьютером.
   – Выполнение множественного доступа. Это означает, что возможен одновременный доступ к сетевой среде для нескольких компьютеров.
   – Обнаружение конфликтов. Если в ходе выполнения первого этапа обнаруживается сигнал, передаваемый «чужим» компьютером, передача отменяется. Но может случиться так, что передачу сигналов начнут одновременно два или большее количество компьютеров.
   – Ожидание. Для преодоления возникших конфликтов компьютеры «выжидают» на протяжении определенного промежутка времени, заданного случайным образом, а затем повторяют передачу фреймов данных. Поскольку вероятность повторного конфликта не столь уж и велика, сохраняется приемлемая производительность при передаче данных в сети.
   Существует разновидность метода CSMA/CD, которая называется CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance, множественный доступ с контролем среды и предотвращением конфликтов). Этот метод предусматривает не только «прослушивание» сетевой среды, но и передачу специального сигнала RTS (Request to Send, запрос на передачу). Тем самым объявляется о намерении начать передачу данных. И только после этого начинается фактическая передача данных. Большим преимуществом в этом случае является принципиальная невозможность конфликта между фреймами данных, хотя остается вероятность одновременной передачи сигналов RTS. Но это уже не ведет к столь трагическим последствиям.

Протоколы локальных вычислительных сетей

   Локальные вычислительные сети делятся на типы в соответствии с применяемыми ими протоколами. Ниже перечислены основные виды протоколов, используемые в современных сетях.
   – NetBEUI. Этот протокол применяется в простых локальных сетях Microsoft Windows, не требующих маршрутизации. В настоящее время практически не используется, хотя в некоторых ситуациях его применение может быть целесообразным.
   – IPX/SPX. Этот набор протоколов применяется в сетях NetWare, но может использоваться в сетях Microsoft Windows. В последнем случае повышается степень безопасности локальной сети, поскольку обеспечивается естественная «изоляция» от Интернета.
   – TCP/IP. Этот набор протоколов универсален и применяется для обеспечения функционирования как локальных, так и глобальных сетей. Именно ему будет уделяться повышенное внимание в этой книге.
   На этом можно завершить краткое рассмотрение видов локальных вычислительных сетей. В следующей главе будут рассмотрены современные высокоскоростные локальные сети, включая их беспроводные варианты.

Глава 3
Физические принципы работы локальных вычислительных сетей

   В предыдущей главе уже рассматривались основные топологии сетей Ethernet, теперь же следует рассмотреть законы, на основе которых функционируют сети, относящиеся к этой категории. В этой же главе повышенное внимание будет уделено высокоскоростным кабельным, а также беспроводным сетям. В частности, рассматриваются физические принципы работы беспроводных сетей, а также стандарты беспроводных и кабельных высокоскоростных сетей, применяемых в настоящее время. Подобные сети переживают период бурного развития, в связи с чем представляют большой интерес.
   ПРИМЕЧАНИЕ
   Разумеется, в настоящее время находится применение и устаревшим сетям. Вряд ли целесообразно модернизировать сеть 10BASE-2, если единственная исполняемая ей функция заключается в том, чтобы передавать текстовые файлы или управляющие сигналы. Свою «нишу» в современном мире занимает и «динозавр» под названием ARCnet – объединение кассовых терминалов в торговом зале супермаркета.
   Прежде чем приступить к рассмотрению стандартов высокоскоростных и беспроводных сетей, стоит обратить внимание на организации, занимающиеся разработкой стандартов вообще, и стандартов, имеющих отношение к локальным сетям, в частности.

Законодатели мод в области стандартов

   Как известно, любая промышленная технология, получившая широкое распространение, должна быть стандартизирована. Необходимость этого диктуется тем, что производители оборудования, поддерживающего ту или иную технологию, нуждаются в выработке единого свода правил, определяющего физические характеристики устройств. Тогда любой пользователь сети может быть уверен в том, что приобретенные у различных фирм устройства будут совместимы. Естественно, что вопросами разработки стандартов занимаются специализированные международные организации. Ниже перечислены основные игроки, выступающие на этом поле:
   – IEC;
   – IEEE;
   – IETF;
   – ISO;
   – ITU.
   А теперь посмотрим, что скрывается за этими аббревиатурами.

IEC

   Полное название, скрывающееся за этой аббревиатурой, – International Electro-technical Commission. Вполне естественным выглядит перевод этого названия на русский язык – Международная электротехническая комиссия.


   Рис. 3.1. Добро пожаловать в IEC

   Эта почтенная организация была основана в фантастически далеком 1906 году, а ее специализацией является разработка и утверждение стандартов в области электротехники. До 1967 года сотрудники этой организации творили в гордом одиночестве, а затем был заключен договор о совместном сотрудничестве с организацией ISO. После этого многие стандарты разрабатываются совместно, а их название приобрело специфический вид, а именно, ISO/IEC. Желающие подробнее ознакомиться со структурой и спецификой деятельности этой организации могут посетить соответствующий веб-сайт, находящийся по адресу www.iec. ch/index.html. На рис. 3.1 показана начальная страница этого веб-сайта.

IEEE

   Эта аббревиатура известна многим читателям, имеющим дело с сетевыми технологиями. И расшифровывается она следующим образом – Institute of Electrical and Electronics Engineers (Институт инженеров по электротехнике и электронике). Эта организация имеет непосредственное отношение к разработке стандартов в области сетевых технологий. Ее деятельность началась со стандарта IEEE 802. Смысл этого названия достаточно «прозрачен» (цифра 80 означает год принятия – 1980, а 2 – месяц принятия (февраль)). Далее перечислены основные стандарты локальных сетей, разработанные IEEE.
   – 802.1. Вводные замечания. Здесь можно найти описание основ управления сетями различного уровня, описание функционирования сетевых мостов (подуровень MAC) и сведения об алгоритме обхода дерева, при помощи которого предотвращается бесконечное блуждание сигнала в сети.
   ПРИМЕЧАНИЕ
   Не пугайтесь, если некоторые термины из данного перечня покажутся вам – незнакомыми. Все они будут подробно объяснены в следующих главах книги.
   – 802.2. В этом стандарте описано разделение канального уровня модели OSI с образованием двух подуровней – LLC и MAC.
   – 802.3. Данный стандарт описывает метод CSMA/CD (Carrier Sense Multiple Access with Collision Detection, множественный доступ с контролем несущей и разрешением конфликтов). Он обеспечивает полудуплексный режим работы Ethernet. Первая версия этого стандарта предусматривала использование исключительно коаксиального кабеля, последующая редакция предусматривает применение кабеля витой пары (стандарт 10BASE-T).
   ПРИМЕЧАНИЕ
   В новейших высокоскоростных сетях 10 Gigabit Ethernet используется дуплексный режим передачи данных, поэтому необходимость в использовании метода CSMA/CD отсутствует.
   – 802.4. С помощью этого стандарта определяется практическая реализация логической и физической топологии на основе волоконно-оптического или коаксиального телевизионного кабеля (с электрическим сопротивлением 75 Ом). Подобная сеть имеет альтернативное название Token Bus, причем предусматривает маркерный метод доступа к среде передачи данных.
   – 802.5. Этот стандарт определяет физическую и логическую топологии локальных сетей, реализованных на основе Token Ring. В подобных сетях применяется маркерный метод доступа к сетевой среде, а также кабели неэкрани-рованной и экранированной витых пар.
   – 802.6. Данный стандарт описывает сети MAN (Metropolitan Area Network, городские локальные сети). Сети этого типа являются своего рода промежуточным звеном между локальными и глобальными вычислительными сетями.
   – 802.7. Под этим названием скрывается группа стандартов, описывающих широкополосные сети. Примером подобной сети является локальная сеть, организованная на основе телевизионного кабеля, когда для одновременной передачи телевизионных и сетевых сигналов применяется методика FDM (Frequency Dividing Multiplexing, мультиплексная передача с частотным разделением каналов).
   – 802.8. Данный стандарт описывает волоконно-оптические сети, сформированные на основе волоконно-оптических кабелей. Здесь же описаны сети FDDI (Fiber Distributed Data Interface, Распределенный интерфейс передачи данных по волоконно-оптическим каналам).


   Рис. 3.2. Начальная страница веб-сайта IEEE

   – 802.9. Этот документ описывает смешанную передачу голоса и данных по телефонным сетям ISDN (Integrated Services Digital Network, цифровая сеть связи с комплексными услугами).
   ПРИМЕЧАНИЕ
   Стандарты, регламентирующие функционирование сетей ISDN, разрабатываются организацией под названием CCITT.
   – 802.10. В этом стандарте описаны методы, применяемые для формирования сетей VPN (Virtual Private Network, виртуальная частная сеть).
   – 802.11. Этот документ специфицирует беспроводные сети, в которых для передачи данных вместо кабелей применяются радиоволны и инфракрасные лучи.
   – 802.12. В этом стандарте описана технология 100 VG AnyLAN, в которой предусмотрено использование методов доступа к сетевой среде на основе гибридизации существующих методов, применяемых в сетях ATM, Ethernet, Token Ring.
   Начальная страница веб-сайта IEEE (www.ieee.org/portaL/site/) показана на рис. 3.2.

IETF

   Аббревиатура IETF расшифровывается как Internet Engineering Task Force (Проблемная группа проектирования Интернета). В состав этой организации входят разбросанные по всему миру несколько десятков рабочих групп, каждая из которых специализируется на разработке тех или иных технических вопросов, имеющих отношение к функционированию сети Интернет. Все рабочие группы делятся на категории в соответствии с их специализацией. В табл. 3.1. перечислены рабочие группы, занимающиеся разработками в области протоколов Интернета (Internet Area).

   Таблица 3.1. Рабочие группы IETF


   Начальная веб-страница IETF (www.ietf.org) показана на рис. 3.3.


   Рис. 3.3. Начальная веб-страница IETF

ISO

   Название этой организации знакомо практически каждому, поскольку оно встречается на упаковке товара, если этот товар произведен легально и прошел обязательную процедуру стандартизации. Существует «сверхорганизация», объединяющая все национальные организации, занятые разработкой стандартов. Эта организация и носит имя ISO. Создана она была в 1947 году.
   Ранее Советский Союз имел свои стандарты, которые назывались ГОСТами и порой существенно отличались от более жестких международных стандартов. После распада Советского Союза бывшие республики стали активно сотрудничать с иностранными организациями, в связи с чем на повестку дня встал вопрос об использовании международных стандартов ISO.
   Естественно, эта организация имеет непосредственное отношение к разработке стандартов локальных вычислительных сетей. Эта деятельность осуществляется в сотрудничестве с такими организациями, как IEC (International Electrotechni-cal Commission, Международная электротехническая комиссия), ITU (International Telecommunications Union, Международный союз по телекоммуникациям) и WTO (World Trade Organization, Международная торговая организация).
   Желающие подробнее ознакомиться со структурой ISO, a также с выполняемыми этой организацией функциями, могут обратиться к ее веб-сайту, который находится по адресу www.iso.org/iso/en/ISOOnLine.frontpage.


   Рис. 3.4. Начальная страница веб-сайта ISO

ITU

   Основная задача этой организации заключается в осуществлении «общего руководства», суть которого заключается в финансовой поддержке международных конференций, разработке и публикации различных документов и стандартов, относящихся к телекоммуникациям. Всем, кто хочет подробнее ознакомиться со структурой этой организации, а также с выполняемыми ею задачами, стоит обратиться к соответствующему веб-сайту (www.itu.int/home), начальная страница которого приведена на рис. 3.5.


   Рис. 3.5. Начальная страница веб-сайта ITU

Физические принципы работы Ethernet

   После обзора организаций, разрабатывающих стандарты локальных вычислительных сетей, стоит перейти к рассмотрению физических принципов, на основе которых функционируют эти сети.

Сигналы, циркулирующие в локальных сетях

   Передача информации в локальных вычислительных сетях осуществляется с помощью дискретных сигналов – электрических импульсов (при использовании металлических проводников) или вспышек света (при использовании оптоволокна). Передаваемые по кабелям сигналы бывают аналоговыми или цифровыми.
   В первом случае амплитуда сигнала изменяется плавно. Подобные сигналы используются для передачи голоса по линиям обычной телефонной связи. Аналоговый сигнал характеризуется плавным изменением всех присущих ему характеристик. Как правило, на практике применяются три величины, характеризующие подобные сигналы.
   – Амплитуда. Модуль значения высоты волны, моделирующей сигнал.
   – Частота. Эта величина характеризует количество циклических изменений сигнала за единицу измерения (обычно за 1 секунду). В физике частота электромагнитных колебаний измеряется в герцах (1 Гц = 1 колебание за одну секунду).
   – Фаза. Смещение фронта волны, моделирующей электрический импульс. Обычно фаза измеряется в радианах, хотя может применяться традиционный способ измерения угловых величин (в градусах).
   ПРИМЕЧАНИЕ
   С частотой связана еще одна величина, характеризующая электромагнитные – волны – длина. Между длиной и частотой волны существует простое отношение, выражаемое формулой X = c/v. Здесь X – длина волны (в метрах), v – частота электромагнитных колебаний (в герцах), с – скорость распространения света в вакууме (3-Ю8 м/с).
   В локальных вычислительных сетях используются цифровые сигналы, изменяющиеся по дискретному закону (0 или 1). Благодаря «цифровой» природе подобные сигналы мало чувствительны к помехам, а также могут легко преобразовываться при помощи простой аппаратуры, реализованной на основе специализированных микросхем.
   ПРИМЕЧАНИЕ
   Более подробно кабели, применяемые в локальных вычислительных сетях, будут рассмотрены несколько позже.

Структура локальной вычислительной сети

   Структура типичной локальной вычислительной сети показана на рис. 3.6. Легко заметить, что ЛВС состоит из каналов связи, соединяющих между собой терминальное оборудование (Data Terminal Equipment, DTE).


   Рис. 3.6. Структура обобщенной вычислительной сети

   Канал связи, который также называется линией связи, состоит из аппаратных средств, осуществляющих усиление и преобразование электрических сигналов, а также физической среды, переносящей информацию. В качестве среды передачи данных применяется электрический кабель (традиционная среда) или электромагнитные волны (инфракрасный и радиодиапазон). В последнем случае говорят о беспроводной локальной сети, которая будет рассматриваться в следующих разделах главы.
   Наибольшее распространение в наше время получили кабельные линии связи. Это связано с целым рядом причин, среди которых чаще всего отмечаются относительная дешевизна электрических кабелей, а также их высокая помехозащищенность и пропускная способность (до 10 Гбит/с).
   ПРИМЕЧАНИЕ
   Подробнее высокоскоростные кабельные сети рассматриваются в следующих разделах этой главы.

Кабели

   В современных локальных сетях применяются медные и волоконно-оптические кабели. Названия кабелей показывают, какой материал применяется в качестве проводника, передающего данные. Конечно, помимо данных кабели неизбежно будут передавать так называемый шум (или электромагнитные помехи). На самом деле современные кабели достаточно неплохо защищены от влияния помех, а волоконно-оптические кабели вообще не подвержены влиянию подобных помех.
   Любой сетевой кабель характеризуется целым набором электрических параметров, наиболее важные из которых приводятся в следующем перечне.
   – Активное сопротивление. В данном случае рассматривается сопротивление постоянному току, присущее любой проводящей среде. Этот вид сопротивления определяется материалом кабеля, а также его геометрическими размерами (длина и диаметр). Активное сопротивление не зависит от характеристик передаваемого сигнала.
   – Емкостное (волновое) сопротивление. Этот вид сопротивления зависит от частоты передаваемого сигнала. С ростом частоты увеличивается емкостная составляющая сопротивления. Этот параметр зависит от такой важной характеристики кабеля, как собственная емкость.
   – Импеданс. Эта величина рассчитывается как сумма активного и пассивного сопротивлений. При не слишком больших значениях частоты (менее 100 МГц) величина импеданса является относительно постоянной и зависит исключительно от применяемого кабеля. Так, для коаксиальных кабелей величина импеданса составляет около 50 Ом. Для сравнения стоит отметить, что величина импеданса для телевизионного кабеля равна 75 Ом. Поэтому, несмотря на внешнюю схожесть, телевизионный кабель и коаксиальный кабель, применяемый в сетях Ethernet, не являются взаимозаменяемыми.
   – Затухание. Под затуханием понимается ослабление сигнала в процессе его передачи по кабелю. Величина затухания оценивается в децибелах на метр (дБ/м).
   – Перекрестные помехи на ближнем конце (NEXT, Near End Cross Talk). Этот показатель может варьироваться в зависимости от частоты передаваемого сигнала и измеряется в децибелах.
   Медные сетевые кабели бывают коаксиальными (рис. 3.7) и основанными на витой паре (рис. 3.8).


   Рис. 3.7. Коаксиальный кабель в разрезе


   Рис. 3.8. Структура кабеля витой пары

   Коаксиальные кабели применяются для распространения телевизионных сигналов, а также в устаревших разновидностях сетей Ethernet (10BASE-2, 10BASE-5). Недостатки подобных сетей связаны, прежде всего, с достаточно большим весом кабелей и совершенно недостаточной по современным меркам пропускной способностью.
   В следующем списке приводятся основные типы применяемых на сегодняшний день коаксиальных кабелей.
   – «Толстый» коаксиальный кабель (10BASE-5). Альтернативное обозначение – RG-8, RG-11. Импеданс кабелей этого типа равен 50 Ом, диаметр составляет около 0,5 дюйма. Благодаря достаточно большому диаметру токопроводящих жил этот кабель обладает очень небольшим затуханием (не более 18 дБ/км на частоте 100 МГц). Основной недостаток этого кабеля заключается в трудности монтажа из-за его повышенной жесткости.
   – «Тонкий» коаксиальный кабель (10BASE-2). Альтернативное обозначение – RG-58/U, RG-58 A/U и RG-58 C/U. Несомненным преимуществом кабелей этого типа является простота монтажа, а также повышенная гибкость, облегчающая его прокладку в труднодоступных местах. По сравнению с «толстым» кабелем он обладает большим импедансом, из-за чего максимальная длина сегментов составляет всего 185 метров. А у предыдущей разновидности кабеля длина сегмента может достигать 500 метров. Именно этот тип кабеля получил наибольшее распространение в сетях Ethernet, применяющих коаксиальный кабель.
   – Кабель для сетей ARCNet с импедансом 93 Ом (альтернативное обозначение – RG-62). Этот кабель практически не применяется, поскольку область распространения сетей ARCNet в настоящее время очень мала.
   Следующим шагом вперед явилось появление кабелей витой пары, которые представляют собой скрученную специальным образом пару проводов (с внешним экраном или без него). Благодаря скрутке практически устраняется эффект влияния внешних электромагнитных помех. Все кабели неэкранированных витых пар делятся на категории в зависимости от пропускной способности.
   – Первая категория. Применяется в телефонных сетях общего применения (ТСОП) исключительно для передачи речи. В настоящее время даже для этих целей используются кабели с лучшими частотными характеристиками. Его можно применять для передачи данных, но предельная пропускная способность в этом случае не превысит 20 Кбит/с.
   – Вторая категория. Эти кабели обеспечивают скорость передачи данных, не превышающую 4 Мбит/с. Они были разработаны фирмой IBM и применялись в ее собственных сетях.
   – Третья категория. Кабели этого типа появились в 1991 году и обеспечивают передачу данных с максимальной скоростью до 16 Мбит/с. Основная область их применения – передача данных и голоса.
   – Четвертая категория. Кабели этого типа представляют собой усовершенствованный вариант кабелей третьей категории и позволяют передавать данные со скоростью до 20 Мбит/с. Они обеспечивают лучшую помехозащищенность и меньшее затухание сигнала. Так, предельная длина сегмента кабеля витой пары может составлять до 135 метров вместо 100 метров, которые обеспечивают кабели третьей категории. Кабели четвертой категории применяются в сетях Token Ring.
   – Пятая категория в настоящее время является наиболее популярной. Пропускная способность кабелей пятой категории варьируется от 100 Мбит/с до 1 Гбит/с. Этот параметр зависит от производителя. Область применения подобных кабелей – сети Fast Ethernet (100 Мбит/с), FDDI, lOOVG-AnyLAN, ATM (155 Мбит/с), Gigabit Ethernet.
   – Шестая и седьмая категории. Кабели, относящиеся к этим категориям, обеспечивают скорость передачи данных от 1 Гбит/с. Область их применения – сети Gigabit Ethernet. Следует обратить внимание на то, что кабели седьмой категории выполняются в экранированном исполнении.
   Кабели экранированной витой пары (STP) отличаются от кабелей неэкраниро-ванной витой пары наличием экрана, благодаря которому в значительной степени уменьшается электромагнитное излучение во внешнюю среду. Следует обратить внимание на то обстоятельство, что экран требует качественного заземления, иначе его эффективность резко уменьшается.
   ВНИМАНИЕ
   Волновое сопротивление кабеля экранированной витой пары примерно в полтора раза превышает этот показатель для кабеля неэкранированной витой пары. Причина этого явления связана с влиянием дополнительной емкости, образуемой экраном. Именно по этой причине кабели STP и UTP не являются взаимозаменяемыми, что и следует учитывать при выполнении модернизации ЛВС.
   В настоящее время все большее количество высокоскоростных сетей реализуется на основе волоконно-оптического волокна. Во второй главе уже упоминались стандарты сетей, реализованных на основе оптического волокна (рис. 3.9). Как правило, волоконно-оптические сети обеспечивают большую скорость передачи, чем сети, созданные на основе металлических кабелей, даже если в качестве проводника применяется медь. Причина этого явления заключается в том, что световой луч, применяемый в качестве носителя данных, обладает огромной информационной емкостью.


   Рис. 3.9. Волоконно-оптический кабель в разрезе

   Благодаря использованию оптоволокна достигается следующие преимущества.
   – Возрастает степень защиты передаваемых данных, поскольку излучение света не сопровождается электромагнитными наводками, которые легко перехватить при помощи специального оборудования. Нелегальная врезка к такому кабелю тоже весьма затруднена.
   – Поскольку оптическое волокно обладает большой степенью прозрачности, то затухание сигнала происходит очень медленно. Поэтому возможна передача сигнала без дополнительного его усиления на расстояние более двух километров.
   Все волоконно-оптические кабели делятся на две большие группы. Различают одномодовые и многомодовые кабели. Кабели первого типа обычно состоят из единственного световода (оптоволокна), по которому параллельно оси этого волокна распространяется световой луч. При этом применяется волокно, диаметр которого соизмерим с длиной световой волны (5-10 мкм). Это обеспечивает большую скорость передачи данных (до 10 Гбит/с), а также позволяет использовать более короткие световые импульсы.
   В качестве источников световых импульсов, передаваемых одномодовым оптоволокном, используются полупроводниковые лазеры. Это связано с тем, что при использовании иных источников светового излучения очень трудно сфокусировать световой луч и направить его по оптоволокну столь малого диаметра. Основной недостаток одномодовых кабелей заключается в достаточно большой их стоимости, связанной с трудностями изготовления оптоволокна с малым поперечным сечением.
   Если волоконно-оптический кабель состоит из нескольких волокон, он обычно работает в многомодовом режиме. Это позволяет передавать несколько световых импульсов одновременно по каждому волокну или даже несколько импульсов по одному волокну. Волокна, образующие многомодовый кабель, обычно имеют диаметр 62,5 (125 мкм), где первый показатель характеризует центральное волокно, а второй показатель – внешнее волокно. В качестве источника света в этом случае применяется полупроводниковый лазер. Основной недостаток многомодового волоконно-оптического кабеля обусловлен меньшей полосой пропускания из-за дополнительных потерь энергии светового излучения, связанных с интерференцией, а также с отражениями.
   Передача данных по волоконно-оптическим кабелям осуществляется с использованием длин волн 0,85 мкм, 1,3 мкм и 1,55 мкм. Легко заметить, что рабочая область этих кабелей находится в ближнем и дальнем инфракрасном диапазонах. Полупроводниковые светодиоды способны излучать свет с длиной волны 0,85 и 1,3 мкм. Полупроводниковые лазеры – 1,3 и 1,55 мкм соответственно.
   ПРИМЕЧАНИЕ
   У читателя может возникнуть закономерный вопрос о том, почему использу– ются именно указанные длины волн. На самом деле этот выбор не случаен и обусловлен тем, что именно эти волны этих длин меньше всего затухают в процессе передачи по оптоволокну.

Теоретические принципы работы локальных сетей

   Как известно, именно Ethernet на сегодняшний день является наиболее распространенным типом сетей. Подобная популярность объясняется распространенностью соответствующего сетевого оборудования, а также достаточно высокой надежностью и скоростью передачи данных.
   Начать стоит с рассмотрения модели OSI, описание которой стало правилом «хорошего тона» во всех книгах, посвященных описанию сетевых технологий.

Модель 0SI

   С момента выхода на арену локальных вычислительных сетей предпринимались попытки стандартизации процесса разработки локальных сетей. Эти попытки увенчались успехом в начале восьмидесятых годов прошлого века, когда на свет появилась модель OSI (Open System Interconnection, модель взаимодействия открытых систем). В условиях этой модели взаимодействующие сетевые устройства относят к семи уровням. Различают физический, канальный, сетевой, транспортный уровни, уровни сеанса и представления и прикладной уровень (рис. 3.10).


   Рис. 3.10. Семь уровней модели 0SI
Физический уровень
   На этом уровне осуществляется фактическая передача битов и байтов данных через сетевые среды, будь то коаксиальный/волоконно-оптический кабель, витая пара или радиоканал. Именно на этом уровне рассматриваются такие характеристики сред передачи данных, как волновое сопротивление, скорость передачи данных и величина затухания сигнала и т. д.
   Присущие этому уровню функции выполняются всеми сетевыми устройствами (сетевая карта, последовательный порт, мост). Протоколы физического уровня определяют на уровне «битов и байтов» передачу сигналов по средам передачи данных. Примером такого протокола может служить Fast Ethernet (100BASE-T), определяющий использование кабеля неэкранированной витой пары категории 5 с волновым сопротивлением 100 Ом и предельной длиной одного сегмента 100 метров.
   ПРИМЕЧАНИЕ
   Подробнее физические характеристики сетевых кабелей будут рассматриваться несколько позднее.
Канальный уровень
   Как упоминалось ранее, физический уровень несет ответственность за транспортировку битов, а доступом к среде передачи данных занимается следующий, канальный уровень (Data Link Layer). Функция этого уровня заключается в обнаружении и коррекции ошибок. Биты данных организованы на этом уровне в виде фреймов, причем для контроля корректности при передаче применяется проверка соответствия контрольной суммы. Если контрольная сумма для принятого фрейма не совпадает с контрольной суммой, указанной отправителем, то этот фрейм передается повторно. К протоколам канального уровня можно отнести Ethernet, FDDI, Token Ring.
Сетевой уровень
   В обязанности сетевого уровня входит доставка данных между различными сетями. Практическая реализация этой функции относится к компетенции маршрутизаторов.
   ПРИМЕЧАНИЕ
   Подробнее маршрутизаторы рассматриваются в четвертой главе, посвященной различным сетевым компонентам.
   На этом же уровне реализуется передача данных между разнородными локальными вычислительными сетями и упрощенная схема адресации в сетях.
   Данные, имеющие отношение к этому уровню, называются пакетами. Примерами протоколов этого уровня могут служить протокол определения адресов (ARP, Address Resolution Protocol), протокол маршрутизации, а также протокол IP, являющийся основой набора протоколов TCP/IP.
Транспортный уровень
   Как и следует из его названия, этот уровень несет всю полноту ответственности за доставку данных в сети, которые на длинном пути между отправителем и получателем могут быть повреждены или вообще потеряны. Именно этот уровень создает надежное соединение, обеспечивающее передачу данных верхним уровням модели OSI (приложений и сеанса). На этом уровне определяются пять классов обслуживания. Поддерживаются обнаружение и коррекция ошибок при передаче данных, срочность предоставляемых услуг, возможность восстановления ранее прерванной связи, мультиплексирование нескольких установленных ранее соединений.
   «Прозрачным» примером протокола транспортного уровня может служить протокол TCP/IP, входящий в стек протоколов TCP/IP, а также протокол передачи пользовательских дейтаграмм (UDP, User Datagram Protocol).
Уровень сеанса
   И снова название уровня говорит само за себя. На этом уровне обеспечивается установка сеанса связи между сетевыми станциями. Данный уровень достаточно редко выделяется и обычно реализуется в составе прикладного уровня.
Уровень представления
   На этом уровне реализуется представление данных, передаваемых по локальной сети. В данном случае имеется в виду внешняя форма, а не содержание информации. Благодаря этому уровню достигается «понятность» информации, передаваемой между прикладными уровнями взаимодействующих между собой систем. Именно на уровне представления реализовано шифрование/дешифрование данных и функционируют такие протоколы, как, например, IPSec.
Прикладной уровень
   Фактически, этот уровень является набором протоколов, обеспечивающих доступ сетевым пользователям к различным совместно используемым ресурсам. Протоколы обмениваются информацией между собой при помощи рассылки различных сообщений. Подобных протоколов на сегодняшний день существует очень много. К этому семейству относятся такие протоколы, как FTP и TFTP.
   Функционирование сетей Ethernet определяется стандартом IEEE 802.3, в котором определялись модификации 10BASE-2, 10BASE-5, 10BASE-T, 10BASE-FB и 10BASE-FL. Обо всех этих разновидностях локальных сетей уже упоминалось во второй главе. В 1995 году этот стандарт был дополнен разделом (IEEE 802.3u), в котором описывается функционирование сетей Fast Ethernet (скорость передачи данных до 100 Мбит/с). В 1998 году появился стандарт (IEEE 802.3z), в котором описывается функционирование сетей Gigabit Ethernet. В сетях Ethernet, включая модификации Fast Ethernet и Gigabit Ethernet, но исключая 10 Gigabit Ethernet применяется метод доступа к общей сетевой среде, называемый CSMA/CD. Этот метод иногда шутливо называют «разделяй и властвуй». Его следует рассмотреть подробнее.

Как избежать конфликтов в сетях Ethernet?

   В сетях с общей шиной, к которым относится Ethernet, неизбежно возникают конфликты. Причина их в данном случае стара как мир – единая среда передачи данных и огромное количество рабочих станций и другого сетевого оборудования, которые пытаются получить доступ к этой среде в совершенно непредсказуемые моменты времени. Что же делать в подобной неприятной ситуации? Выход напрашивается сам собой – поставить «диспетчера», который будет управлять доступом к единой среде передачи данных. В сетях Ethernet роль подобного «диспетчера» исполняет метод CSMA/CD (Carrier Sense Multiple Access with Collision Detection, множественный доступ с контролем несущей и обнаружением конфликтов).
   Данные, циркулирующие в сетях Ethernet, помещаются во фреймы. В настоящее время применяются четыре вида фреймов Ethernet, что связано с достаточно длительной историей развития сетей этого типа. Подробнее фреймы будут рассмотрены чуть позже, а сейчас стоит остановиться подробнее на описании этапов доступа к сетевой среде передачи данных.
   1. Сначала рабочая станция, которая собирается передать сигнал, выполняет «прослушивание» сетевой среды в целях обнаружения несущей частоты, при обнаружении которой, делается пауза на некоторый период времени, после чего предпринимается повторная попытка передачи данных.
   2. Если несущая в общей сетевой среде не обнаружена, то станция начинает передачу сетевого фрейма. В начале каждого сетевого фрейма находится раздел, называемый преамбулой, длина которого составляет 64 бита (8 октетов). Этот раздел позволяет обеспечивать синхронизацию между передающей и приемными станциями.
   3. В состав фрейма включен адрес станции назначения.
   4. После получения фрейма посылается ответный фрейм, подтверждающий факт получения данных.
   В идеале все выглядит достаточно просто. Но, как известно, наш мир весьма далек от идеала, поэтому в процессе передачи данных одной станцией вполне вероятна ситуация, когда эту же операцию пытается осуществить другая станция. Или даже передача сигнала может начинаться второй станцией чуть позднее, но из-за конечной скорости распространения электрических сигналов по кабелям локальной сети может возникнуть ситуация, когда сигнал уже отправлен первой станцией, но до второй станции он просто еще не дошел. Вне зависимости от причины при «столкновении» нескольких сигналов порождается конфликт, называемый коллизией, в результате которого серьезно искажается форма сигналов, из-за чего их распознавание становится невозможным.
   Но не все так уж плохо. Ведь метод CSMA/CD предусматривает обнаружение подобных конфликтов. Суть этого метода заключается в том, что во время передачи данных рабочей станцией одновременно «прослушивается» сетевая среда для обнаружения несущей частоты, сопровождающей передачу данных другой рабочей станцией. Если подобная несущая обнаружена, передача данных немедленно прекращается и пересылается служебная последовательность, состоящая из четырех октетов. После некоторой паузы посылка данных повторяется. Если и в этот раз обнаруживается состояние конфликта, снова наступает состояние паузы, длительность которой увеличивается в два раза. И так далее, пока сигнал не будет передан.
   Используемый при этом алгоритм называется алгоритмом двойного экспоненциального отката (binary exponential backoff). Благодаря его применению обеспечивается передача. Если конфликты возникают слишком часто, следует уменьшить загрузку локальной сети, сократив величину трафика или уменьшив количество рабочих станций, подключенных к сегменту. Еще одним вариантом решения проблемы может быть переход на более скоростную версию Ethernet.
   Необходимое условие бесперебойного функционирования Ethernet заключается в однозначном обнаружении сетевых конфликтов всеми станциями, подключенными к сети. Если конфликт не будет обнаружен вовремя, то фрейм данных, переданный сетевой станцией, будет утерян безвозвратно, поскольку контрольная сумма перестанет соответствовать изначально заявленной. В этом случае за дело возьмется сетевой протокол более высокого уровня, и требуемая информация, скорее всего, будет восстановлена. Но при этом возникает неизбежная задержка, время которой будет составлять несколько секунд. А при корректном распознавании конфликтов задержка исчисляется микросекундами. Поэтому в том случае, когда конфликты не будут гарантированно определяться станциями, подключенными к сегменту сети Ethernet, произойдет серьезное снижение производительности сети в целом.
   Гарантированное распознавание конфликтов в сети возможно, только если время передачи фрейма минимальной длины превышает время, требуемое для передачи сигнала о конфликте наиболее удаленной сетевой станции. Если это условие выполняется, передающая станция в состоянии обнаружить конфликт, возникновение которого связано с передаваемым ею фреймом. Выполнение этого условия во многом зависит от длины минимального фрейма Ethernet, а также от размеров сетевых кабелей и скорости распространения электрических сигналов по кабелю. Значение этой скорости зависит от типа применяемого кабеля.
   При разработке стандарта Ethernet учитывались условия, требуемые для распознавания возникающих в локальной сети конфликтов. При этом минимальная длина раздела данных фрейма составляет 46 байт. Учитывая разделы служебных данных, можно получить значение длины фрейма, равное 64 байтам. Если добавить длину раздела преамбулы, то величина фрейма составит 72 байта. Используя это значение, можно определить предельное расстояние между сетевыми станциями.
   Предположим, что в нашем распоряжении имеется сеть 10BASE-5, скорость передачи данных в которой равна 10 Мбит/с. При этом время, затрачиваемое на передачу фрейма минимальной длины, составляет 57,5 мкс (575/10 x 106). Если применяется «толстый» коаксиальный кабель, то предельное расстояние, на которое распространяется сигнал, составляет около 13000 м. Это расстояние рассчитывается исходя из свойств материала и геометрических размеров кабеля. Поскольку в наших расчетах учитывается время, требуемое на передачу и получение сигнала, эту величину следует уменьшить в два раза, в результате чего будет получено значение, равное 6500 м. Следует отметить, что в документах, описывающих стандарт 10BASE-5, задается более серьезное ограничение. Это происходит из-за того, что необходимо учитывать предельно допустимое затухание полезного сигнала. Именно исходя из этих соображений максимальная длина сегмента кабеля 10BASE-5 выбирается равной пятистам метрам.
   Разумеется, эта величина выбрана с определенным запасом, но тут имеется в виду возможность создания составных сетей, сконструированных на основе нескольких сегментов, соединенных повторителями. Этим устройства увеличивают мощность передаваемых между сегментами сигналов, благодаря чему можно построить мультисегментную сеть, обладающую значительной длиной. Для сетей стандарта 10BASE-5 максимальное количество сегментов ограничено пятью, а поскольку длина каждого из них составляет 500 метров, общая длина сети не превышает 2500 метров. Даже в такой мультисегментной сети условие обнаружения конфликтов выполняется с большим запасом, поскольку эта величина существенно меньше ранее определенного предельного значения, равного 6500 метрам. Реальная избыточность в данном случае будет несколько меньшей, поскольку повторителями вносятся искажения, а физические параметры кабеля и прочих сетевых устройств отклоняются от идеальных физических характеристик.
   ПРИМЕЧАНИЕ
   Предельный размер сети, вычисленный на основе характеристик кабеля и скорости передачи данных по ней, называется диаметром сети. Методики, применяемые для определения этого показателя, подробно рассматриваются в пятой главе.
   В новых более скоростных версиях Ethernet (Fast Ethernet и Gigabit Ethernet) из-за большей скорости передачи фреймов уменьшается предельно допустимое расстояние между рабочими сетевыми станциями. Так, например, в сети Fast Ethernet эта величина равна 210 метрам, а в стандарте Gigabit Ethernet (по крайней мере, в его «медной» разновидности) не превышает 25 метров.

Оценка пиковой производительности Ethernet

   Иногда бывает полезным знать «идеальную» пропускную способность сети Ethernet, когда отсутствует влияние дополнительных сетевых устройств и на быстродействии не сказываются конфликты. Это полезно на практике, когда требуется оценить максимальную производительность, требуемую от устройств, приобретаемых в целях модернизации существующей или прокладки новой сети.
   Для сетевых компонентов критически важным показателем является скорость обработки сетевых фреймов, имеющих наименьшую длину. Это связано с тем, что накладные расходы, связанные с обработкой подобных фреймов, будут такими же, как и при обработке фреймов большей длины, а частота следования первых будет значительно выше.
   Используя характеристики уровня MAC Ethernet, можно рассчитать максимальную пропускную способность сегмента сети Ethernet. Ранее уже упоминалось о том, что минимальная длина фрейма Ethernet равна 576 битам. Соответственно, в сети 10BASE-5 на его передачу уходит 57,5 мкс. Промежуток между фреймами составляет 9,6 мкс, поэтому передача фрейма вместе с промежутком занимает 67,1 мкс.
   Выполнив несложные математические вычисления, можно получить максимальную пропускную способность сегмента сети Ethernet для фреймов минимальной длины, которая будет составлять 14 880 фреймов/с.
   Естественно, подключение к сегменту нескольких рабочих станций приводит к уменьшению этого показателя из-за того, что станции ожидают доступа к общей сетевой среде, а также по причине возникающих конфликтов, инициирующих повторную передачу фреймов.
   Теперь подсчитаем максимальную скорость передачи данных в случае использования фреймов максимальной длины. Известно, что длина подобных фреймов составляет 1526 байт (включая преамбулу), что составляет 12208 бит. Время, затрачиваемое на передачу такого фрейма (вместе с промежутком между фреймами), составляет 1221,9 мкс, а пропускная способность сети составляет 818 фреймов/с. Как видите, при обработке фреймов максимальной длины потенциальные возможности сети в значительной степени не используются.
   На практике также применяется показатель, называемый полезной скоростью передачи данных в сети. При его расчете используют сведения о длине раздела данных фрейма, а также показатель максимальной скорости передачи данных в сети.
   Для начала рассчитаем полезную скорость передачи данных в случае фреймов минимальной длины. В этом случае длина раздела данных составляет 46 байт, а показатель максимальной скорости передачи данных – 14 880 бит/с. Следовательно, величина полезной скорости передачи данных рассчитывается следующим образом: 14 880 -46-8, что составляет 5,476 Мбит/с.
   Полезная скорость передачи данных в случае фреймов максимальной длины рассчитывается по формуле 818 x 1500 x 8 = 9,816 Мбит/с.
   В первом случае наблюдается явная «недогрузка» локальной сети, а во втором случае полезная скорость передачи данных практически равна максимальной скорости передачи данных.
   Существует еще один важный показатель, характеризующий локальную сеть, – коэффициент утилизации сети. Он рассчитывается как отношение текущей скорости передачи данных к максимально возможной скорости передачи данных в этой сети. Чем больше значение этого показателя, тем меньше «запас прочности» сети, т. е. устойчивость к конфликтам.

Структура фреймов Ethernet

   Необходимо подробнее рассмотреть структуру единиц информации, переносимой сетями Ethernet, а именно, фреймов Ethernet.
   В документе IEEE 802.3, описывающем стандарт Ethernet, приводится структура единственного формата фрейма, относящегося к МАС-уровню. Поскольку фрейм этого уровня включает в себя фреймы, имеющие отношение к уровню LLC (описывается в стандарте IEEE 802.2), то, в соответствии со стандартами IEEE, в сетях Ethernet допускается применение фрейма канального уровня единственного типа. Причем его заголовок представляет собой своего рода симбиоз между заголовками, имеющими отношение к заголовкам на подуровнях MAC и LLC.
   Однако на практике все выглядит несколько иначе. Фактически в сетях Ethernet применяются фреймы четырех различных типов. Отчасти это объясняется тяжелым наследием длительного периода эволюции сетей Ethernet.
   Еще в 1980 году консорциум, образованный фирмами Digital, Intel и Xerox (DIX), предложил собственный вариант стандарта Ethernet, в котором был описан новый вариант формата фрейма. В свою очередь, комитет 802.3 принял собственный вариант стандарта, подразумевающий иной формат фрейма. Третий вариант фрейма был разработан фирмой Novell, a четвертый вариант появился в ходе разработки комитетом 802.2 некоего «общего знаменателя», обобщающего выполненные ранее разработки.
   Описанные различия в форматах фреймов могут привести к появлению сбоев в процессе функционирования различных сетевых аппаратных и программных средств, ориентированных на единственный стандартный фрейм Ethernet. Но это было в прошлом. В настоящее время практически все сетевые карты, повторители, коммутаторы и другие сетевые средства могут адекватно реагировать на все форматы фреймов Ethernet, поскольку идентификация фрейма выполняется в автоматическом режиме.
   Итак, в настоящее время в сетях Ethernet используются фреймы следующих четырех типов:
   – Ethernet 802.2;
   – Ethernet 802.3;
   – Ethernet II, называемый также Ethernet DIX;
   – Ethernet SNAP (версия от фирмы Novell).
   Для примера стоит рассмотреть заголовок фрейма 802.3 (рис. 3.11). Фреймы остальных четырех типов имеют схожую структуру.


   Рис. 3.11. Структура фрейма 802.3/LLC

   – Поле Preamble (преамбула). Включает семь байтов вида 10101010, которые требуются для синхронизации.
   – Поле SFD (Start of frame delimiter, начальный ограничитель фрейма). Включает один байт вида 10101011. Эта последовательность битов является указанием на то, что следующий байт будет первым байтом заголовка кадра.
   – Поле DA (Destination Address, адрес назначения). Это поле определяет адрес узла в сети, которому передается фрейм. Как правило, размер этого поля составляет 6 байт. Первый бит старшего байта в этом поле определяет тип адреса. Может использоваться как однонаправленный адрес (unicast), так и групповой (multicast). Первый тип адреса определяется нулевым битом, а для второго типа адреса этому биту присваивается единица. Групповой адрес определяет пересылку данных всем узлам сети или же определенным сетевым узлам.
   – Поле SA (Source Address, исходный адрес). В этом поле задается адрес сетевого узла, отправляющего фрейм. Для этого типа адреса первый бит всегда имеет нулевое значение.
   – Поле Length (длина). В этом двухбайтовом поле определяется длина поля данных для текущего фрейма.
   – Поле Data (данные). Размер этого поля может варьироваться от 0 до 1500 байт. В том случае, когда длина этого поля не превышает 46 байт, используется поле заполнения с тем, чтобы длина поля данных соответствовала минимально допустимому значению 46 байт.
   – Поле Padding (заполнение). Это поле позволяет дополнить поле данных до значения 46 байт. Выполнение этого условия необходимо в целях корректного функционирования механизма, ответственного за обнаружение конфликтов в сетях Ethernet. Это поле используется в том случае, когда длина поля данных меньше 46 байтов.
   – Поле FCS (Frame Check Sequence, контрольная сумма). Это поле включает 4 байта контрольной суммы, вычисляемой в соответствии с алгоритмом CRC-32. Значение контрольной суммы вычисляется повторно непосредственно после получения фрейма станцией, адрес которой указан в поле адреса назначения.
   На этом можно завершить краткое введение в теорию сетей Ethernet и перейти к рассмотрению «скоростной» версии этих сетей – 10 Gigabit Ethernet.

Сегодня в моде ускорение – 10 Gigabit Ethernet

   Наиболее интересная особенность стандарта IEEE 802.Зае, описывающего сети 10 Gigabit Ethernet, заключается в том, что его изначально предполагалось его использовать не в тесных рамках локальных сетей, а в глобальных сетях. Несмотря на это структура фрейма, циркулирующего в этих сетях, идентична структуре фрейма для обычных сетей Ethernet.
   Наиболее революционное изменение, касающееся этих сетей, заключается в полном отказе от использования метода CSMA/CD. Это достигается при помощи полнодуплексного режима, в котором работают сети 10 Gigabit Ethernet. Еще одно радикальное изменение заключается в том, что в этих скоростных сетях применяется только оптоволокно. Различные виды оптоволокна описываются стандартами 10GBASE-LR, 10GBASE-ER, 10GBASE-SR, 10GBASE-LW и 10GBASE-LX4. Отказ от использования медного кабеля связан с его плохими частотными характеристиками при работе на таких скоростях.
   Применяемые в этом случае физические интерфейсы используют два уровня: PCS (Physical Coding Sublayer, подуровень физического шифрования), отвечающий за управление передаваемыми битовыми последовательностями, и PMD (Physical Media Dependent, зависимый от физической среды). Последний уровень выполняет преобразование последовательностей битов в сигналы, передаваемые по оптоволокну. Перечисленные уровни спроектированы таким образом, что не зависят друг от друга.
   Как упоминалось ранее, для сетей Ethernet (Fast Ethrernet и Gigabit Ethernet) использовались два типа стандартизованных оптических интерфейсов, подразумевающие применение одномодового или многомодового оптоволокна. В сетях 10 Gigabit Ethernet предусматривается использование трех различных длин световых волн (850, 1310 и 1550 нм), причем каждой волне соответствует свой подуровень PMD. В свою очередь, каждому PMD соответствует два типа физических интерфейсов – для локальных (LAN PHY) и территориально распределенных (WAN PHY) сетей. В то время как другие PMD-интерфейсы преобразуют биты в световые сигналы последовательно, интерфейс 10GBASE-LX4 использует технологию спектрального уплотнения WWDM для передачи битов одновременно на четырех длинах волн. Этот интерфейс является наиболее гибким, поскольку поддерживает как многомодовое оптоволокно с диаметром сердцевины 62,5 мкм для связи на близких (до 300 м) расстояниях, так и одномодовое волокно диаметром 9 мкм в целях осуществления связи на дальних расстояниях (до 10 км).
   Изначально стандарт 10 Gigabit Ethernet предназначался для использования в региональных городских сетях (MAN, Metropolitan Area Networks). Об этом свидетельствует первая экспериментальная сеть, развернутая в 2002 году в городе Лас-Вегас (США). Но на самом деле область применения этих сетей намного шире. На их основе можно создавать корпоративные сети, охватывающие огромные территории.

   Таблица 3.2. Сравнение сетей Gigabit Ethernet и 10 Gigabit Ethernet


   Распространению любой новой технологии, как правило, мешает высокий уровень цен. Это высказывание справедливо и по отношению к 10 Gigabit Ethernet. Поэтому, если приходится выбирать между Fast Ethernet, Gigabit Ethernet и 10 Gigabit Ethernet, вполне естественно, что пользователь остановится на первых двух технологиях, несмотря на все преимущества, присущие последней технологии. Массовое снижение цен на оборудование сетей 10 Gigabit Ethernet no прогнозам произойдет не ранее 2006 года. Именно тогда и ожидается массовое распространение сетей этого типа. Стоит обратить внимание на таблицу 3.2, где сравниваются характеристики сетей Gigabit Ethernet и 10 Gigabit Ethernet.
   Теперь можно перейти к рассмотрению беспроводных сетей. Эта перспективная технология используется все чаще и чаще в современных условиях.

Беспроводные сети

   Еще совсем недавно передача данных «по воздуху» казалась бесперспективным занятием из-за низкой пропускной способности и нестабильности сетевой аппаратуры. Хотя, как известно, первая коммерческая сеть ALOHA, развернутая на Гавайях, была как раз беспроводной.
   На самом деле беспроводные сети не являются беспроводными в полном понимании этого слова. Обычно беспроводные каналы связи объединяют между собой обычные «кабельные» сети, носящие локальный характер. Поэтому фактически мы имеем дело с гибридной сетью.
   Идея развертывания беспроводной среды весьма привлекательна, поскольку ее компоненты обеспечивают временное подключение к существующей кабельной сети, позволяют организовать резервное копирование в существующую кабельную сеть, гарантируют определенный уровень мобильности и снимают ограничения на максимальную протяженность сети, связанные с применением медных или даже волоконно-оптических кабелей.
   Трудность прокладки кабелей в определенных ситуациях – фактор, который дает беспроводной среде неоспоримое преимущество. Эта среда может оказаться особенно полезной при временном развертывании сети на выставке, в приемной секретаря и в иных похожих случаях. В списке перечислены ситуации, когда использование беспроводного решения является целесообразным:
   – для пользователей, которые не привязаны к своему рабочему месту;
   – в изолированных помещениях и зданиях;
   – в помещениях, планировка которых часто меняется;
   – в строениях (например, памятниках истории или архитектуры), где прокладывать кабель просто невозможно.
   В зависимости от применяемой технологии беспроводные сети можно разделить на три типа:
   – локальные вычислительные сети;
   – расширенные локальные вычислительные сети;
   – мобильные сети (переносные компьютеры).
   Основное различие между этими типами сетей заключается в используемых параметрах передачи. Локальные и расширенные локальные вычислительные сети используют передатчики и приемники, принадлежащие той организации, в которой функционирует сеть.
   Типичная беспроводная сеть выглядит и функционирует практически так же, как обычная. Но главное отличие состоит в используемой среде передачи.
   Беспроводной сетевой адаптер с трансивером установлен в каждом компьютере, и пользователи работают точно так же, как в обычной локальной сети.
   Трансивер, называемый также точкой доступа (access point), обеспечивает обмен сигналами между компьютерами с беспроводным подключением и остальной сетью. В беспроводных сетях используются небольшие настенные трансиве-ры. Они устанавливают радиоконтакт между переносными устройствами. Такую сеть нельзя назвать полностью беспроводной именно из-за использования этих трансиверов.
   Беспроводные локальные сети используют четыре способа передачи данных:
   – инфракрасное излучение;
   – лазер;
   – радиопередачу в узком спектре (одночастотная передача);
   – радиопередачу в рассеянном спектре.
   Как и следует из названия, в инфракрасных беспроводных сетях для передачи данных применяются инфракрасные лучи. В подобных системах необходимо генерировать очень сильный сигнал, так как в противном случае значительное влияние будут оказывать другие источники, например, излучение солнца. Этот способ позволяет передавать сигналы с большой скоростью, поскольку инфракрасный свет имеет широкий диапазон частот. Инфракрасные сети способны нормально функционировать на скорости 10 Мбит/с. Существует четыре типа инфракрасных сетей:
   – Сети прямой видимости. Как говорит само название, в таких сетях передача возможна лишь в случае прямой видимости между передатчиком и приемником.
   – Сети, использующие рассеянное инфракрасное излучение. В случае применения этой технологии сигналы, отражаясь от стен и потолка, воспринимаются приемником. Диаметр сети в этом случае ограничивается примерно 30 метрами, и скорость передачи данных относительно невелика из-за большого уровня внешних помех.
   – Сети, использующие отраженное инфракрасное излучение. В этих сетях оптические трансиверы, расположенные рядом с компьютером, передают сигналы в определенную точку, из которой они перенаправляются соответствующему компьютеру.
   – Широкополосные оптические сети. Эти инфракрасные беспроводные сети предоставляют широкополосные услуги, соответствуют жестким требованиям мультимедийной среды и практически не уступают кабельным сетям.
   Хотя скорость и удобство, сопровождающие использование инфракрасных сетей, весьма привлекательны для пользователей, очень часто возникают трудности при передаче сигналов на расстояние более 30 м. К тому же такие сети подвержены помехам со стороны сильных источников света, которые есть в большинстве организаций.
   Лазерная технология похожа на инфракрасную тем, что требует прямой видимости между передатчиком и приемником. Если возникают какие-то преграды для распространения луча лазера, обмен данными в подобных сетях будет невозможен.
   Обратите внимание на рис. 3.12, где приводится структура типичной беспроводной сети.


   Рис. 3.12. Структура типичной беспроводной сети

Радиосети

   В этом разделе подробнее остановимся на описании радиосетей, начав с краткого введения.
   В радиосетях обычно применяют передачу данных либо на одной несущей частоте, либо используя рассеянный спектр радиоизлучения. Первый вариант напоминает работу обычной радиостанции. Передатчики и приемники настраиваются на заранее выбранную частоту. Хотя высокочастотный радиосигнал не проникает через металлические или железобетонные преграды, прямая видимость все же не является необходимым условием.
   Получили некоторое распространение также радиосети, использующие рассеянный спектр, когда передатчик и приемник случайным образом перестраиваются в пределах выделенного радиодиапазона. Благодаря этому обеспечиваются высокая помехозащищенность и защита передаваемых данных.
   Повсеместное распространение беспроводных сетей, развитие инфраструктуры хот-спотов, появление мобильных технологий со встроенными беспроводными решениями привело к тому, что конечные пользователи (не говоря уже о корпоративных клиентах) стали обращать все большее внимание на возможность применения беспроводных сетей. Такие решения рассматриваются прежде всего как средство развертывания мобильных и стационарных беспроводных локальных сетей и средство оперативного доступа в Интернет. Однако конечный пользователь, не являющийся сетевым администратором, как правило, не слишком хорошо разбирается в сетевых технологиях, поэтому ему трудно сделать выбор при покупке беспроводного оборудония, особенно учитывая многообразие предлагаемых сегодня продуктов. Бурное развитие технологии беспроводной связи привело к тому, что пользователи, не успев привыкнуть к одному стандарту, вынуждены переходить на другой, предлагающий еще более высокие скорости передачи.
   Семейство стандартов беспроводной связи объединено под общим названием IEEE 802.11 и включает в себя разновидности 802.11, 802.11b, 802.Ub+, 802.11a и 802.11g. Различные типы беспроводных сетей отличаются друг от друга и радиусом действия, и поддерживаемыми скоростями соединения, и технологией шифрования данных. Так, стандарт IEEE 802.11b предусматривает максимальную скорость соединения 11 Мбит/с, стандарт IEEE 802.1 lb+ – 22 Мбит/с, стандарты IEEE 802.11g и 802.11а – 54 Мбит/с.
   Блестящие перспективы имеет новый стандарт 802.11g. Основным его преимуществом является полная совместимость со стандартами 802.11b и 802.1 lb+, то есть любое устройство, поддерживающее стандарт 802.11g, будет работать (правда, на меньших скоростях соединения) и в сетях стандарта 802.1 lb/b+, a устройство, поддерживающее стандарт 802.11b/b+ – в сетях стандарта 802.11g.
   Совместимость стандартов 802.11g и 802.1 lb/b+ обусловлена тем, что они предполагают использование одного и того же частотного диапазона. Также следует принять во внимание, что все режимы, предусмотренные в стандартах 802.1 lb/b+, реализованы и в стандарте 802.11g. Поэтому стандарт 802.11b/b+ можно рассматривать как подмножество стандарта 802.11g.
   А теперь подробнее остановимся на описании физических основ стандарта 802.11.
   Стандарт 802.11, как и все остальные стандарты данного семейства, предусматривает использование частотного диапазона от 2400 до 2483,5 МГц, который разбит на несколько каналов.
   ПРИМЕЧАНИЕ
   Скорость передачи данных в современных радиосетях варьируется от 1 Мбит/с – (базовый стандарт IEEE 802.11) до 100 Мбит/с (стандарт IEEE 802.lin).
   В основе всех беспроводных протоколов семейства 802.11 лежит технология рас – пределения спектра (SS, Spread Spectrum). Эта технология позволяет узкополосный информационный сигнал в процессе передачи преобразовать таким образом, что его спектр оказывается значительно шире спектра первоначального сигнала. То есть спектр сигнала «распределяется» по частотному диапазону. Одновременно с распределением спектра сигнала происходит и перераспределение спектральной энергетической плотности сигнала, которая тоже «распределяется» по спектру. В результате максимальная мощность преобразованного сигнала оказывается значительно ниже мощности исходного сигнала. При этом уровень полезного информационного сигнала может критически «проваливаться», теряясь на фоне естественного шума.
   Именно в изменении спектральной энергетической плотности сигнала и заключается идея распределения спектра. Дело в том, что если подходить к проблеме передачи данных традиционным способом, когда каждой радиостанции отводится свой диапазон вещания, то мы неизбежно столкнемся с проблемой, что ограниченный радиодиапазон, предназначенный для совместного использования, не может «вместить» всех желающих. Поэтому необходимо найти такой способ передачи информации, при котором пользователи могли бы сосуществовать в одном частотном диапазоне и при этом не мешать друг другу. Именно эту задачу и решает технология распределения спектра.
   На практике применяется несколько различных технологий распределения спектра, но в данном случае достаточно ознакомиться лишь с технологией распределения спектра методом прямой последовательности (DSSS, Direct Sequence Spread Spectrum).
   В процессе кодирования методом потенциалов биты-носители информации интерпретируются в качестве прямоугольных импульсов напряжения. Прямоугольному импульсу соответствует спектр, ширина которого обратно пропорциональна длительности импульса. Поэтому чем меньше длительность информационного бита, тем больший спектр занимает такой сигнал.
   Для распределения спектра изначально узкополосного сигнала в технологии DSSS в каждый передаваемый информационный бит (логический 0 или 1) встраивается последовательность элементарных сигналов (chips). Если информационные биты при кодировании информации методом потенциалов можно представить в виде последовательности прямоугольных импульсов, то каждый отдельный элементарный сигнал представляет собой прямоугольный импульс. Но его длительность в несколько раз меньше длительности информационного бита.
   Последовательность чипов является серией прямоугольных импульсов, то есть нулей и единиц. Однако эти нули и единицы не являются информационными. Поскольку длительность одного элементарного импульса в несколько раз меньше длительности информационного бита, то и ширина спектра преобразованного сигнала будет в это же количество раз больше ширины спектра первоначального сигнала. При этом и амплитуда передаваемого сигнала также уменьшится в это количество раз.
   Последовательности элементарных сигналов, встраиваемые в информационные биты, называют шумообразными кодами (PN-последовательности), что подчеркивает то обстоятельство, что результирующий сигнал становится шумоподоб-ным и его трудно отличить от естественного шума. Каким образом можно распределить спектр сигнала и сделать его неотличимым от естественного шума? Для этого можно воспользоваться произвольной последовательностью элементарных сигналов.
   Однако, необходимо определиться, как такой сигнал принимать. Ведь если он становится шумообразным, то выделить из него полезный информационный сигнал не так-то просто. Оказывается, это вполне возможно, но для этого нужно соответствующим образом подобрать последовательность элементарных сигналов. Используемые для распределения спектра сигнала последовательности элементарных сигналов должны удовлетворять определенным требованиям автокорреляции. Под этим термином в математике подразумевают степень подобия функции самой себе в различные моменты времени.
   Если подобрать такую последовательность элементарных сигналов, для которой функция автокорреляции будет иметь резко выраженный пик лишь для одного момента времени, то такой информационный сигнал можно будет выделить на уровне шума. Для этого в приемнике полученный сигнал умножается на ту же последовательность элементарных сигналов, то есть вычисляется автокорреляционная функция сигнала. В результате сигнал повторно становится узкополосным, поэтому снова фильтруется в узкой полосе частот. Любая помеха, попадающая в полосу исходного широкополосного сигнала, после умножения на последовательность элементарных сигналов становится широкополосной и обрезается фильтрами. А в узкую информационную полосу попадает лишь часть помехи, по мощности значительно меньшая, чем помеха, действующая на входе приемника.
   Последовательностей элементарных сигналов, отвечающих указанным требованиям автокорреляции, существует достаточно много, но особый интерес представляют коды Баркера, поскольку именно они используются в стандарте 802.11. Коды Баркера обладают наилучшими среди известных псевдослучайных последовательностей свойствами шумоподобности, что и обусловило их широкое применение. В протоколах семейства 802.11 используется код Баркера длиной в 11 элементарных сигналов (11100010010). Для того чтобы передать сигнал, логическая единица передается прямой последовательностью Баркера, а логический нуль – обратной последовательностью.
   В стандарте 802.11 предусмотрено два режима передачи данных: со скоростями 1 и 2 Мбит/с. Для кодирования данных на физическом уровне используется метод DSSS с кодами Баркера длиной в 11 элементарных сигналов. При скорости передачи данных в 1 Мбит/с скорость следования отдельных элементарных сигналов в последовательности Баркера составляет 11 x 106 сигналов/с, а ширина спектра такого сигнала составляет 22 МГц. Учитывая, что ширина частотного диапазона составляет 83,5 МГц, можно понять, что всего в данном частотном диапазоне можно разместить до трех неперекрывающихся частотных каналов.
   Весь частотный диапазон принято делить на 11 частотных перекрывающихся каналов по 22 МГц, отстоящих друг от друга на 5 МГц. Например, первый канал занимает частотный диапазон от 2400 до 2423 МГц, причем центральная частота в данном случае составляет 2412 МГц. Для второго канала центральная частота будет 2417 МГц, а для последнего канала – 2462 МГц. При таком рассмотрении первый, шестой и одиннадцатый каналы не перекрываются друг с другом и имеют 3-мегагерцевый зазор друг относительно друга. Именно эти три канала могут использоваться независимо друг от друга.
   Для модуляции синусоидального несущего сигнала используется относительная двоичная фазовая модуляция (DBPSL, Differential Binary Phase Shift Key). При этом кодирование информации происходит за счет смещения фазы синусоидального сигнала по отношению к предыдущему состоянию сигнала. Двоичная фазовая модуляция предусматривает два возможных значения сдвига фазы – 0 и л. Тогда логический нуль может передаваться синфазным сигналом (сдвиг по фазе равен 0), а единица – сигналом, который сдвинут по фазе на л.
   Скорость передачи данных 1 Мбит/с является минимально необходимой в условиях стандарта IEEE 802.11, хотя и возможно достижение скорости 2 Мбит/с. В этом случае применяется та же технология DSSS, применяющая коды Баркера, длина которых составляет 11 элементарных сигналов, а для модуляции несущей используется относительная квадратурная фазовая модуляция (DQPS, Differential Quadrature Phase Shiftey). При относительной квадратурной фазовой модуляции сдвиг фаз может принимать четыре различных значения: 0, л/2, л и Зл/2. Используя четыре различных состояния сигнала, можно в одном дискретном состоянии закодировать последовательность двух информационных битов, благодаря чему скорость передачи информации повышается в два раза.
   Однако при скорости передачи данных 2 Мбит/с скорость следования отдельных элементарных сигналов последовательности Баркера остается прежней, то есть 11 x 106 сигналов/с, а следовательно, не изменяется ширина спектра передаваемого сигнала.
   Стандарт IEEE 802.11b, принятый в июле 1999 года, является своего рода расширением базового стандарта IEEE 802.11. Скорость передачи данных была увеличена до 5,5 и 11 Мбит/с, соответственно. Для работы на скоростях 1 и 2 Мбит/с применяется технология распределения спектра с использованием кодов Барке-ра, а для организации передачи данных со скоростью 5,5 и 11 Мбит/с – так называемые комплементарные коды (ССК, Complementary Code Keying). Комплементарные коды, или ССК-последовательности, обладают следующим свойством: сумма их автокорреляционных функций для любого циклического сдвига, отличного от нуля, всегда равна нулю.
   В стандарте IEEE 802.11b используются комплексные комплементарные последовательности из восьми элементарных сигналов, определенные на множестве комплексных чисел.
   Иногда вызывает недоумение наличие скорости передачи данных 5,5 Мбит/с, тогда как доступна величина 11 Мбит/с. Потребность в снижении скорости передачи возникает в том случае, когда возрастает «зашумленность» радиоэфира, то есть уменьшается величина соотношения сигнал/шум.
   В радиосетях применяется еще один вид кодирования данных – двоичное свер-точное кодирование пакетов (РВСС, Packet Binary Convolutional Coding). Принципы, лежащие в основе сверточного кодирования, будут следующими. Входящая последовательность информационных битов преобразуется специальным сверточным кодировщиком таким образом, чтобы каждому входному биту соответствовало более одного выходного бита. То есть сверточный кодировщик добавляет определенную избыточную информацию к исходной последовательности. Если, например, каждому входному биту соответствует три выходных бита, то говорят о сверточном кодировании со скоростью 1/3.
   При создании сверточного кодировщика используются несколько последовательно связанных запоминающих ячеек и логических элементов, связывающих эти ячейки между собой. Количество запоминающих ячеек определяет количество возможных состояний кодировщика. Если, например, в сверточном кодировщике используется пять запоминающих ячеек, то в кодере хранится информация о пяти предыдущих состояниях сигнала, а с учетом значения входящего бита будет использоваться шесть битов входной последовательности. Такой сверточный кодировщик называется кодировщиком, основанным на шести состояниях. Выходные биты, формируемые в сверточном кодировщике, определяются значениями входного бита и битами, хранимыми в запоминающих ячейках. То есть значение каждого формируемого выходного бита зависит не только от входящего информационного бита, но и от нескольких предыдущих битов.
   В технологии РВСС используются сверточные кодировщики, рассчитанные на семь состояний со скоростью преобразования R= 1/2. Основное достоинство сверточных кодировщиков заключается в том, что формируемая ими последовательность сигналов устойчива к помехам. Так происходит потому, что при избыточности кодирования даже в случае возникновения ошибок приема исходная последовательность битов может быть безошибочно возвращена к исходному состоянию. Пара битов, формируемая сверточным кодировщиком, используется в дальнейшем в качестве передаваемого символа, но предварительно к ней применяется фазовая модуляция. Причем, в зависимости от скорости передачи, используется двоичная, квадратурная или даже восьмипозиционная фазовая модуляция.
   Метод сверточного кодирования пакетов рассматривается в качестве альтернативного метода кодирования, применяемого в стандарте IEEE 802.11b. Помимо этого, именно данный режим кодирования заложен в основу стандарта 802.11b+, который является расширением стандарта 802.11b. Собственно говоря, на официальном уровне стандарта 802.1 lb+ не существует, однако это расширение поддерживается многими производителями беспроводных устройств. В стандарте 802.11b+ предусматривается скорость передачи данных 22 Мбит/с, а также применяется технология РВСС.
   При скорости передачи 5,5 Мбит/с для модуляции пары битов, формируемых сверточным кодировщиком, применяется двоичная фазовая модуляция, а при скорости 11 Мбит/с – квадратурная фазовая модуляция. При этом для скорости 11 Мбит/с в каждом символе кодируется по одному входному биту, скорость передачи битов соответствует скорости передачи символов, а при скорости 5,5 Мбит/с скорость передачи битов соответствует половине скорости передачи символов (поскольку каждому входному биту в данном случае соответствует два выходных символа). Поэтому и для скорости 5,5 Мбит/с, и для скорости 11 Мбит/с символьная скорость составляет 11 x 106 символов в секунду.
   Передача данных со скоростью 22 Мбит/с имеет две особенности. Во-первых, используется фазовая 8-позиционная фазовая модуляция (8-PSK), то есть фаза сигнала может принимать восемь различных значений, что позволяет в одном символе кодировать уже три бита. Кроме того, в схему кроме сверточного кодера добавлен пунктурный кодировщик. Смысл такого решения довольно прост. Двойная избыточность сверточного кодировщика (на каждый входной бит приходится два выходных) достаточно велика и при низком уровне помех становится излишней, поэтому можно уменьшить избыточность, чтобы, к примеру, каждым двум входным битам соответствовало три выходных бита. При этом можно, конечно, разработать соответствующий сверточный кодировщик, но лучше добавить в схему специальный пунктурный кодировщик, который будет просто убирать лишние биты.
   Предположим, что пунктурный кодировщик удаляет один бит из каждых четырех входных битов. Тогда каждым четырем входящим битам будет соответствовать три выходящих. Скорость такого кодера составляет 4/3. Если же такой кодер используется в паре со сверточным кодировщиком, имеющим скорость 1/2, общая скорость кодирования составит уже 2/3, то есть каждым двум входным битам будет соответствовать три выходных бита.
   Разобравшись с принципом работы пунктурного кодировщика, вернемся к рассмотрению кодирования РВСС на скорости 22 Мбит/с в протоколе 802.1 lb+. Сверточному кодировщику (К = 7, R = 1/2) данные передаются со скоростью 22 Мбит/с. После добавления избыточности в сверточном кодировщике биты со скоростью потока 44 Мбит/с передаются пунктурному кодировщику 4:3, в котором избыточность уменьшается так, чтобы на каждые четыре входных бита приходилось три выходных бита. Следовательно, после пунктурного кодировщика скорость потока составит уже 33 Мбит/с. Полученная в результате последовательность направляется в фазовому модулятору 8-PSK, где каждые три бита упаковываются в один символ. При этом скорость передачи составит 11 x 106 символов в секунду, а информационная скорость передачи данных 22 Мбит/с.
   На этом завершается рассмотрение теоретических основ работы набора стандартов IEEE 802.11, на основе которых функционируют радиосети.
   ПРИМЕЧАНИЕ
   Желающие подробнее ознакомиться с теорией могут обратиться на веб-сайт www.wireless.ru, на котором находится масса полезной информации по этой теме.

Новые скорости радиосетей

   Как и в случае с кабельными сетями, скорость передачи данных в беспроводных сетях постоянно растет. И доказательством этому служит разрабатываемый Европейским институтом стандартизации в области электросвязи (ETSI) стандарт HiperLAN2 (High Perfomance Radio LAN, радиосеть с высокой производительностью). Именно этот стандарт обещает стать основным конкурентом технологий беспроводных ЛВС, работающих в соответствии со стандартом IEEE 802.11. Инициаторами и активными сторонниками нового стандарта являются компании Nokia и Ericsson.
   Так же, как и 802.11а, стандарт HiperLAN2 ориентирован на работу в диапазоне 5 ГГц и способен обеспечить скорость передачи данных до 54 Мбит/с. Оба стандарта используют сходные методы модуляции сигнала на основе мультиплексирования с ортогональным разделением частот (OFDM), однако имеют различные спецификации протоколов доступа к среде MAC. Если для 802.11а он аналогичен Ethernet, то в HiperLAN2 протокол больше напоминает методы, используемые в сетях ATM. Другим отличием HiperLAN2 от 802.11а, которое может дать ему некоторое преимущество над конкурентом, является поддержка мультимедийного трафика и QoS (802.11a ориентирован в основном на передачу данных). По информации ETSI, разработка стандарта ведется с учетом совместимости оборудования с системами 802.11а. Подробнее о новом стандарте можно узнать на веб-сайте по адресу www.etsi.org/technicaLactiv/hiperLan2.htm.

Технология Bluetooth

   Термин «Bluetooth» настолько широко используется в настоящее время, что не нуждается в особом толковании. И совсем немногие задумываются о том, что Bluetooth представляет собой еще одну инкарнацию радиосети, а не усовершенствованный пульт дистанционного управления телевизором.
   Эта технология продвигается в массы консорциумом Bluetooth Special Interest Group (Bluetooth SIG). Ее альтернативное название – стандарт IEEE 802.15.1. Причем усилиями специалистов из этого консорциума были разработаны спецификации Bluetooth v 1.x, на основе которых формируются персональные беспроводные сети (WPAN, Wireless Personal Area Network).
   Почему их называют персональными сетями? Ответ весьма прост. С их помощью связь осуществляется на небольшие расстояния (несколько десятков метров) и охватывает устройства, которые обычно относят к категории «персональных» (мобильные телефоны, ноутбуки, персональные компьютеры и т. д.).
   Технология Bluetooth позволяет сформировать недорогой радиоинтерфейс, отличающийся сниженным энергопотреблением (мощность передатчика не превышает 1 мВт). Она позволяет создавать персональные сети, в которых обеспечивается передача цифровых данных и звуковых сигналов в режиме реального времени. Изначально дальность действия радиоинтерфейса не превышала десяти метров, однако в современной спецификации Bluetooth радиус действия увеличен до 100 метров. Для работы устройств Bluetooth применяется диапазон 2,45 ГГц. При этом не требуется, чтобы связываемые устройства находились в пределах прямой видимости.
   Полная пропускная способность радиоканала Bluetooth составляет 1 Мбит/с, благодаря чему возможно формирование асимметричного канала передачи данных на скоростях 723,3/57,6 Кбит/с или дуплексного канала, обеспечивающего скорость передачи данных до 433,9 Кбит/с. Можно также организовать до трех дуплексных аудиоканалов, обеспечивающих скорость передачи звука до 64 Кбит/с в каждом направлении. Возможна также комбинированная передача данных и звука. Для организации обмена данными технология Bluetooth соответствует спецификации стандарта локальных сетей IEEE 802 и использует сигналы с расширением спектра путем скачкообразной перестройки частоты (FHSS) по псевдослучайному закону со скоростью 1600 переключений в секунду в полосе частот 2400—2483,5 МГц.
   Канал Bluetooth работает как многоточечный радиоканал, управляемый, как и мобильная связь стандарта GSM, многоуровневым протоколом. В качестве мер защиты в Bluetooth предусмотрено шифрование передаваемых данных и авторизация устройств. При этом возможны три уровня защиты. На минимальном уровне данные шифруются общим ключом и могут приниматься любыми устройствами без ограничений. Защита на уровне устройств применяется, когда непосредственно в микросхеме кодируется уровень доступа, в соответствии с которым устройство может получать определенные данные от других устройств. Также используется защита на уровне сеанса связи, когда данные шифруются с применением 128-битовых случайных чисел, хранящихся в каждой паре устройств, участвующих в данном сеансе связи.
   На этом рассмотрение физических принципов работы сетей Ethernet временно приостанавливается. Некоторые дополнительные моменты будут рассматриваться в соответствующих главах. Сейчас же настало время ближе познакомиться с основными устройствами, применяемыми в сетях Ethernet.

Глава 4
Основные сетевые протоколы

   Эта глава завершает теоретическое введение в сети Microsoft. Здесь будет приведено описание базовых протоколов, определяющих функционирование сети в целом, без которых немыслимо представить современную локальную сеть.

Альфа и омега Интернета – TCP/IP

   Нелишне будет напомнить, что протокол – это набор правил, описывающих и определяющих функционирование сети. Стек протоколов TCP/IP является основой Интернета, который представляет собой суперобъединение локальных сетей. Основное преимущество TCP/IP заключается в его универсальности и независимости от применяемых аппаратных средств. Этот набор протоколов поддерживается всеми версиями Windows начиная с версии Windows 95. Именно поэтому его использование в сетях Windows является оправданным во всех отношениях.
   Аббревиатура TCP/IP расшифровывается очень просто – Transmission Control Protocol/Internet Protocol (протокол управления передачей/протокол Интернета). Помимо этих двух основных протоколов, в TCP/IP входит протокол управляющих сообщений Интернета (ICMP, Internet Control Message Protocol), а также протокол дейтаграмм пользователя (UDP, User Datagram Protocol). Все эти протоколы будут рассмотрены в настоящем разделе. А пока стоит обратить внимание на список компонентов TCP/IP.
   – Протокол IP относится к категории ненадежных протоколов, работающих без установки соединений. Основная его функция заключается в передаче сетевых пакетов между пользовательскими компьютерами, а также в обеспечении адресации сетевых станций, подключенных к локальной сети.
   – Протокол TCP относится к категории надежных протоколов, функционирующих с установкой соединения. Именно он организует проверку доставки пакетов данных, осуществляемую протоколом IP. TCP является надежным, ориентированным на установку соединений протоколом, который требует установки сеанса для управления передачей данных между двумя точками в сети. В результате обеспечивается обнаружение ошибок, а также их устранение, если это возможно.
   – Протокол UDP часто называют протоколом пользовательских дейтаграмм (User Datagram Protocol). Он используется теми приложениями, которые не требуют надежной доставки данных.
   – Протокол ARP называют протоколом разрешения адресов (Address Resolution Protocol). Он используется для определения МАС-адреса компьютера на основе исходного IP-адреса. Обычно этот протокол применяется маршрутизаторами, принимающими пакеты данных из внешних сетей.
   – Протокол RARP часто называют протоколом определения сетевого адреса по местоположению узла (Reverse Address Resolution Protocol). В противовес ARP, протокол RARP применяется для вычисления IP-адреса на базе исходного МАС-адреса. На практике эти функции реализованы протоколами ВООТР и DHCP, область применения которых постоянно сужается.
   – Система DNS (Domain Name System, система имен доменов). На практике она является иерархической системой именования узлов сети, которая применяется в Интернете, а также во многих локальных сетях. Так, если пользователь в строке веб-браузера вводит запрос http://www.my_server.ru, сервер DNS пытается найти численный IP-адрес, связанный с данной ссылкой.
   – Протокол ВООТР (Bootstrap Protocol, протокол начальной загрузки) ранее широко использовался для загрузки бездисковых рабочих станций, подключенных к сети. При разработке этого протокола основным требованием являлась компактность исходного кода. Это обуславливалось тем, что протокол жестко кодировался в ПЗУ сетевого адаптера.
   – Протокол DHCP (Dynamic Host Configuration Protocol, протокол динамической конфигурации узла) регламентирует процедуру присваивания IP-адресов и другой соответствующей конфигурационной информации сервером клиентским системам.
   – Протокол RMON (Remote Monitoring, удаленный мониторинг) предназначается для расширения возможностей администраторов по дистанционному управлению компьютерами и сетевыми устройствами.
   – Протокол SNMP (Simple Network Management Protocol, простой протокол управления сетью) изначально разрабатывался для облегчения централизованного управления сетевыми устройствами и компьютерами.
   – Протокол SMTP (Simple Mail Transfer Protocol, простой протокол электронной почты) предназначается для управления почтовыми сообщениями, передаваемыми в Интернете.
   В следующих разделах главы протоколы IP и TCP описываются подробнее. Но, прежде всего нужно рассмотреть один из базовых протоколов Интернета – протокол IP.

Становой хребет Интернета

   Трудно было не заметить, что в аббревиатуре TCP/IP основной протокол Интернета следует вторым. На самом деле причина этого заключается не в том, что этот протокол второстепенный, а в том, чтобы было удобнее запомнить название. Согласитесь, что «IP/TCP» произносится не столь просто. В следующем списке приведены основные свойства протокола IP.
   – Протокол IP не ориентирован на установку соединений. Каждый IP-пакет представляет собой отдельный объект, который не зависит от других пакетов, передающихся в сети.
   – Протокол IP функционирует без передачи подтверждений о доставке данных, включенных в состав дейтаграммы или пакета.
   – Этот протокол считается ненадежным, что следует из первых двух пунктов списка.
   – В рамках этого протокола формируется пространство иерархических уникальных IP-адресов.
   Стандартная модель функционирования протокола IP достаточно проста. Протокол принимает данные с сетевого уровня модели OSI, а затем разбивает их на меньшие пакеты данных. Затем протокол IP, выполняющийся на рабочей станции, которая является получателем пакетов, производит воссоздание данных в исходном виде. В целях гарантированной доставки каждого IP-пакета в их заголовки помещаются адреса отправителя и получателя, а также вычисляется значение контрольной суммы.
   На рис. 4.1 показана структура заголовка IP-пакета. Описание соответствующих полей приводится в следующем за рисунком перечне.


   Рис. 4.1. Структура заголовка IP-пакета

   – Поле Version (версия) позволяет указывать версию применяемого протокола IP (IPv4 или IPv6).
   – Поле IHL (Internet Header Length, длина заголовка IP-пакета) содержит информацию о длине заголовка пакета, передаваемого протоколом Интернета.
   – Поле Type of Service (тип обслуживания) позволяет задавать уровень приоритета для данного IP-пакета. Это поле используется версиями Gigabit Ethernet и 10 Gigabit Ethernet, а также версией протокола IPv6.
   – Поле Datagram Length (длина дейтаграммы) содержит длину IP-пакета в целом. Длина раздела данных пакета вычисляется при помощи вычитания значения, хранящегося в поле IHL, из данного значения.
   – Поле Identification (идентификация). Протокол IP часто разбивает сообщение, полученное протоколом высокого уровня, на меньшие по размеру пакеты в зависимости от максимального размера фрейма, поддерживаемого базовой сетевой технологией. После получения пакетов необходимо выполнить их повторную сборку. Компьютер-отправитель помещает в данное поле уникальный номер, соответствующий каждому фрагменту сообщения. В этом случае для каждого пакета в конкретном сообщении в данном 16-битовом поле будет содержаться одно и то же значение. Компьютер-получатель принимает все требуемые фрагменты, затем воссоздает исходное сообщение.
   – Поле Flags (флаги) содержит различные флаговые биты. Нулевой бит резервируется и всегда должен содержать нулевое значение. Первый бит определяет флаг DF (Don't Fragment, He фрагментировать). Второй бит определяет флаг MF (More Fragments, Дополнительные фрагменты).
   – Поле Fragment Offset (смещение фрагмента). Если бит MF установлен равным единице, данное поле используется для указания позиции фрагмента в исходном сообщении, благодаря чему обеспечивается успешная повторная сборка пакета.
   – Поле TTL (Time to Live, время существования). В этом поле определяется время, в течение которого IP-пакет циркулирует в сети. При каждом прохождении пакета через маршрутизатор значение этого поля уменьшается на единицу.
   – Поле Protocol (протокол) содержит числовой код применяемого протокола, присвоенный организацией ICANN.
   – Поле Header Checksum (контрольная сумма заголовка) содержит контрольную сумму, вычисляемую по всем полям заголовка IP-пакета. Это значение вычисляется повторно при каждом прохождении IP-пакета через маршрутизатор, поскольку при этом изменяется значение поля TTL.
   – Поле Source IP Address (IP-адрес компьютера отправителя). Как и следует из названия, в этом поле находится IP-адрес компьютера, которым был отправлен данный пакет.
   – Поле Destination IP Address (IP-адрес компьютера-получателя). Как и следует из названия, в этом поле находится IP-адрес компьютера, которому предназначается данный пакет.
   – Поле Options (параметры). В этом поле указываются дополнительные параметры, определяющие различные аспекты дальнейшей обработки пакета данных.
   – Поле Padding (дополнение). Назначение этого поля – дополнение заголовка пакета таким образом, чтобы его длина была постоянной и составляла 32 бита.
   Теперь следует тщательнее рассмотреть, как в процессе работы формируются и распознаются IP-адреса.

IP-адреса

   Интернет представляет собой набор сетей, которые объединены с помощью маршрутизаторов. В результате этого формируется «суперсеть». Образование подобной структуры возможно, поскольку протокол IP обеспечивает правильную адресацию каждой сети, подключенной к Интернету, а также идентификацию узлов, имеющих отношение к конкретной сети. В процессе выполнения маршрутизации пакетов IP-адрес применяется для пересылки данных в требуемую локальную сеть. Как только пакет данных достигает маршрутизатора, находящегося в этой сети, в дело вступает MAC-адрес компьютера-получателя данного пакета. При этом используется узловой раздел IP-адреса, а также сведения из таблицы маршрутизации, в которой указано соответствие между МАС-адресами и узловыми разделами IP-адреса в локальной сети. Если соответствие не найдено, в локальной сети используется протокол ARP в целях определения адресов и добавления их в таблицу маршрутизации.

Классы IP-адресов

   Существует пять классов IP-адресов (А, В, С, D и Е). Класс, к которому относится данный IP-адрес, определяется его первыми четырьмя битами (длина IP-адреса составляет 32 бита в версии протокола IPv4). В данном случае эти четыре бита определяют сетевой раздел IP-адреса (адресация сети), в то время как оставшиеся биты образуют узловой раздел IP-адреса (адресация узла в сети).
   Для IP-адресов из класса А первый бит равен нулю, остальные же биты могут принимать произвольные значения. Если воспользоваться стандартной точечно-десятичной нотацией, которую принято использовать для записи IP-адресов, то IP-адреса класса А относятся к диапазону от 0.0.0.0 до 127.255.255.255.
   Следует отметить, что сетей класса А меньше всего. Это связано с тем, что в адресах из этой категории для идентификации сети используется только первый байт. Оставшиеся байты адреса используются для идентификации узла в сети. Поскольку первый бит адреса всегда равен нулю, для формирования сетевого адреса используются оставшиеся 7 битов. По этой причине в сетях класса А доступно лишь 127 сетевых адресов (двоичное число 01111111 соответствует десятичному числу 127).
   Но, как говорится, нет худа без добра. Сети класса А могут содержать наибольшее количество сетевых узлов, поскольку оставшиеся три байта используются для определения узлового раздела IP-адреса. Эти три байта могут определять значение, которое в десятичной записи соответствует числу 16777215 (24 бита, значение каждого из которых равно 1). Учитывая ноль, можно понять, что с помощью трех байтов возможно определение до 16 777216 IP-адресов (224). Поэтому в одной сети класса А возможно одновременно «мирное сосуществование» свыше 16 миллионов сетевых компьютеров.
   А вот общее количество сетей класса А существенно меньше – не более 127. Диапазон IP-адресов сетей класса А – от 0.0.0.0 до 127.255.255.255. Если некий адрес попадает в этот диапазон, можно с полной уверенностью утверждать, что он является адресом из сети класса А.
   IP-адреса, относящиеся к классу В, характеризуются тем, что значения первых двух битов равны единице и нулю, соответственно. Если использовать точечно-десятичную запись, то адреса этого типа попадают в диапазон значений от 128.0.0.0 до 191.255.255.255. В двоичном формате десятичное число 128 эквивалентно 10000000. Десятичное значение 191 преобразуется в двоичное число 10111111. Оба эти значения на первом месте содержат двоичные числа 10, что служит признаком IP-адреса класса В. Поскольку два первых байта адреса класса В используются для адресации сети, два оставшихся байта применяются для определения адресов узлового компьютера. Простые вычисления позволяют сказать, что в данном классе имеется до 16384 допустимых сетевых адресов. В каждой сети класса В может располагаться не более 65536 (216) отдельных компьютеров.
   Характерный признак IP-адресов из класса С заключается в том, что первые три бита равны 1, 1 и 0, соответственно. После преобразования в точечно-десятичный формат получим, что IP-адреса из класса С относятся к диапазону от 192.0.0.0 до 223.255.255.255. В данном случае первые три байта используются для сетевого раздела адреса, а один байт применяется для формирования адреса узла. Общее количество сетей из класса С достигает 2097152. В каждой сети этого класса может находиться до 256 узловых компьютеров. Таким образом, общее количество сетей класса С является наибольшим, а в каждой сети находится минимальное количество компьютеров.
   ПРИМЕЧАНИЕ
   В настоящее время для вновь создаваемых сетей назначаются IP-адреса, относящиеся к классу С. Это связано с тем, что именно этот класс обладает небольшим избытком IP-адресов, тогда как классы адресов А и В уже давно закрыты.
   До сих пор шла речь об IP-адресах, применяемых для адресации в локальных сетях. Следует упомянуть еще два класса адресов, применяемых в служебных целях. Диапазон адресов из класса D зарезервирован для широковещательной рассылки, когда сетевые пакеты отсылаются нескольким сетевым узлам одновременно. Адреса из класса D (в точечно-десятичной нотации) относятся к диапазону от 224.0.0.0 до 239.255.255.255. Причем в данном случае отсутствуют специфические байты, используемые для идентификации сетевого или узлового раздела IP-адреса. Это означает, что потенциально может существовать до 268435456 уникальных IP-адресов из этого класса.
   IP-адреса из класса Е относятся к диапазону от 240.0.0.0 до 255.255.255.255. Эти адреса зарезервированы для применения в будущем.
   IP-адрес 127.0.0.1 (попадающий в диапазон адресов класса А) называется адресом закольцовки и применяется для тестирования локального стека протоколов TCP/IP. Этот адрес применяется совместно с командой ping в целях проверки корректности сетевых настроек для данного компьютера. Так, например, в результате выполнения команды ping 127.0.0.1 на экране отображается соответствующая информация о локальной системе (рис. 4.2).
   Этот IP-адрес можно использовать для тестирования других программ. Например, можно воспользоваться Telnet, указав адрес закольцовки для проверки возможности запуска этого сервиса на данном компьютере.


   Рис. 4.2. Пример использования адреса закольцовки

Подсети

   Хотя и пространство IP-адресов достаточно велико, но, как известно, все познается в сравнении, особенно если вспомнить о количестве сетевых компьютеров, подключенных к Интернету в настоящее время. Любая серьезная организация, которой приходится развертывать десятки и сотни локальных сетей, нуждается в нескольких сотнях IP-адресов. Суть формирования подсетей заключается в разбиении единого непрерывного множества IP-адресов с образованием нескольких подмножеств, которые называются подсетями. Например, если идет речь об адресах класса А, в одной сети могут находиться свыше 16 миллионов узловых компьютеров. Это количество настолько велико, что даже такой монстр как Microsoft не использует сети подобных масштабов.
   В силу упомянутых выше причин в больших сетях формируются подсети, в которых применяется так называемая адресация подсетей. При этом исходный IP-адрес разбивается таким образом, что образуется сетевой и локальный раздел. Первый раздел применяется в целях идентификации сети в бескрайних просторах Интернета, а второй раздел адресует подсети и узлы внутри локальной сети.
   В процессе адресации подсетей для каждой сети, входящей в состав большой сети, формируется маска подсети. Алгоритм, положенный в основу ее формирования, весьма прост. Если биты исходного IP-адреса имеют отношение к разделу, определяющему подсеть, соответствующие биты маски подсети выбираются равными 1, если же рассматривается раздел, который определяет IP-адрес узла внутри подсети, то для битов маски подсети выбираются нулевые значения. Так, например, в маске вида 11111111 11111111 00000000 00000000 первые два октета определяют подсеть, а последние два – узел в этой подсети. Структура маски подсети в этом случае соответствует IP-адресу для сети из класса В. Если воспользоваться точечно-десятичным форматом записи, то маска подсети получит обозначение 255.255.0.0. Для IP-адресов из класса А применяется маска подсети 255.0.0.0. а для IP-адресов из класса С – 255.255.255.0.
   Например, маска подсети 255.255.255.128 определяет сеть класса С, в которой могут формироваться две подсети. Если применить эту маску к сетевому адресу 193.112.255, то будут созданы две подсети. Диапазон IP-адресов в первой подсети ранжируется от 193.112.255.1 до 193.112.255.128, а во второй подсети – от 193.112.255.129 до 193.112.255.254.

Бесклассовая адресация

   Как отмечалось ранее, система классификации IP-адресов (классы А, В, С) устраивала сообщество пользователей Интернета до тех пор, пока Сеть не получила глобальное распространение. Система классов и подсети по-прежнему широко используются маршрутизаторами локальных сетей. Магистральные маршрутизаторы Интернета применяют бесклассовую маршрутизацию между доменами (CIDR, Classless Interdomain Routing) в целях определения оптимального маршрута, используемого для передачи пакетов.
   После появления системы классов IP-адресов первый байт адреса традиционно обозначал номер сети, благодаря чему практическая реализация маршрутизации не вызывала особых затруднений. Например, для IP-адреса 130.166.232.233 число 130 являлось признаком диапазона IP-адресов класса В, а подсеть получала номер 130.166.0. Маршрутизация же пакета в самой подсети требовала использования локальной таблицы маршрутизации, поддерживаемой самим маршрутизатором.
   ПРИМЕЧАНИЕ
   Подробнее о маршрутизаторах и таблицах маршрутизации рассказывается в следующей главе.
   Но поскольку рост Интернета в последние десятилетия все больше напоминает неуправляемую реакцию деления атомных ядер урана, все это привело к появлению великого множества сетей, относящихся к классам В и С. Это, в свою очередь, вызвало стремительное «разбухание» таблиц маршрутизации, применяемых магистральными маршрутизаторами Интернета. А потому эффективная маршрутизация IP-пакетов стала попросту невозможной.
   И тут на помощь пришел метод CIDR. Благодаря этой инновации одна единственная запись в таблице маршрутизации может представлять множество сетевых адресов низкого уровня. 1 акже метод CIDR может служить «противоядием» гипотетическому исчерпанию пространства IP-адресов.
   При использовании метода CIDR применяется собственный формат записи, в которой IP-адрес разбивается на сетевой и узловой разделы, причем сетевой раздел IP-адреса обозначается префиксом /п, где п определяет количество битов в этом разделе. Естественно, что для адреса из класса А используется префикс /8, из класса В – префикс /16, а из класса С – префикс /24.
   Поскольку метод CIDR не предусматривает разбиения IP-адресов на классы, возможно применение таких «нестандартных» адресов, как 150.174.121.0/24. Число 150 определяет применение 16 битов в качестве сетевого раздела IP-адреса (как в случае с классами IP-адресов), а префикс /24 определяет применение для сетевого раздела IP-адреса первых 24 битов, оставшиеся же 8 битов используются для адресации узлов в сети. Благодаря сетевому префиксу можно разбить непрерывное пространство адресов класса В на отдельные меньшие по размеру диапазоны.
   В табл. 4.1 приведено соответствие между префиксами CIDR и эквивалентным диапазоном IP-адресов из класса С.

   Таблица 4.1. Префиксы CIDR и эквивалентный диапазон из класса С


   Следует обратить внимание на соответствие между количеством сетей из класса С и префиксами CIDR. Так, префикс /16 определяет предельно допустимое количество сетей из класса С (256), соответствующее одной сети из класса В. Следуя этой логике, можно прийти к выводу о том, что префикс /15 определяет две сети из класса В, префикс /14 – четыре сети и т. д.
   Все современные маршрутизаторы поддерживают технологию CIDR, благодаря которой ушла в прошлое проблема «нехватки» IP-адресов. Эту проблему был призван решить протокол IPv6, речь о котором пойдет в следующем разделе.

Протокол IPv6

   Стандарт, определяющий протокол IPv6, был разработан еще в 1995 году. Немалую роль в его появлении сыграла паника, возникшая из-за слухов о грядущем крахе Интернета по причине быстрого исчерпания доступного пространства IP-адресов. Но после появления IPv6 оказалось, что потребность в нем преувеличена, как это часто бывает.
   В последующие годы были разработаны новые технологии, такие как преобразование сетевых адресов (NAT, Network Address Translation) и бесклассовая маршрутизация между доменами (CIDR, Classless Interdomain Routing), «продлившие жизнь» старому доброму IPv4. Именно поэтому победная поступь IPv6 несколько замедлилась, и в настоящее время он применяется исключительно в больших корпоративных сетях, а также в работе магистральных маршрутизаторов Интернета. Программная поддержка IPv6 встроена в операционные системы Windows XP и Windows Server 2003.
   Протокол IPv6 позволил не только резко увеличить общий объем пространства IP-адресов, но и привнес ряд других свойств, благодаря чему он может постепенно вытеснить протокол IPv4.
   Основным «родовым признаком» протокола IPv6 является то, что под IP-адрес отводится 128 битов, вместо прежних 32 битов. Адресный потенциал IPv6 себе даже трудно вообразить, особенно, если вспомнить, что IPv4 может поддерживать свыше 4 миллионов IP-адресов.
   Преимущества, связанные с применением IPv6, не сводятся только к «раздуванию» пространства IP-адресов. Ниже перечислен целый ряд новых свойств, привнесенных протоколом IPv6:
   – упрощение структуры заголовка IP-пакетов, благодаря чему ускоряется их маршрутизация;
   поддержка нового формата IP-заголовка;
   – встроена поддержка идентификации и шифрования.
   Ранее уже рассматривалась структура заголовка IP-пакета для протокола IPv4, теперь пришло время ознакомиться со структурой заголовка IP-пакета протокола IPv6 (рис 4.3).


   Рис. 4.3. Структура заголовка IP-пакета протокола IPv6

   – Поле Version (Версия). Это 4-разрядное поле определяет версию протокола IP. Для протокола IPv4 указывалось значение 4. Для версии IPv6 в поле указывается значение 6. Это значение используется маршрутизаторами и другими сетевыми устройствами для определения типа обрабатываемого IP-пакета.
   – Поле Traffic Class (Класс трафика). В этом поле задается так называемый «класс трафика».
   – Поле Flow Label (Метка потока). Это 20-разрядное поле функционально схоже с полем Quality of Service, которое обрабатывается протоколом IPv4.
   – Поле Payload Length (Длина полезной нагрузки). В этом 16-разрядном поле задается длина раздела IP-пакета, в котором передаются данные.
   – Поле Next Header (Следующий заголовок). Одно из наиболее полезных свойств протокола IPv6 заключается в том, что, помимо основного заголовка IPv6, в IP-пакет можно включать дополнительные заголовки.
   – Поле Hop Limit (Ограничение количества переходов). Назначение данного 8-разрядного поля аналогично назначению поля Time to Live (TTL), присущего протоколу IPv4. После каждого прохождения IP-пакета через маршрутизатор значение в поле уменьшается на единицу. Если значение в поле становится равным нулю, IP-пакет «списывается в утиль».
   – Поле Source Address (Адрес компьютера-отправителя). IP-адрес (разрядностью в 128 битов), соответствующий компьютеру-отправителю IP-пакета.
   – Поле Destination Address (Адрес компьютера-получателя). IP-адрес (разрядностью в 128 битов), соответствующий компьютеру-получателю IP-пакета.
   Как правило, в большинстве пакетов после раздела заголовка следует раздел «полезной нагрузки», в котором содержатся фактические данные пакета. В некоторых случаях предусмотрен специальный завершающий раздел, который обычно используется для выполнения проверки целостности данных, благодаря чему можно удостовериться в том, что пакет был получен без искажений.
   Поле Next Header определяет наличие дополнительного заголовка после текущего заголовка, следующего за исходным заголовком IPv6. Если принимающий узел не распознает следующий заголовок, он отвергает IP-пакет и отправляет ICMP-сообщение компьютеру-отправителю. В этом сообщении кратко описывается суть проблемы. Это ICMP-сообщение используется во многих случаях, связанных с обработкой данных протоколом IPv6.
   После заголовка пакета IPv6 могут следовать дополнительные заголовки, указанные в списке.
   – Поле Hop-by-Нор (Переход за переходом). При наличии подобного заголовка именно он проверяется маршрутизатором или другим сетевым устройством.
   – Поле Destination Options (Параметры компьютера-получателя). Этот заголовок может иметь переменную длину и применяется для передачи некоторых дополнительных данных.
   – Поле Routing (Маршрутизация). В этом поле определяются подключенные к сети компьютеры, через которые проходит IP-пакет на пути к пункту назначения. Обычно информация, хранящаяся в этом поле, применяется маршрутизаторами для определения оптимального маршрута следования пакетов в сети. Информация в этом поле носит рекомендательный характер.
   – Поле Fragment (Фрагмент). Содержимое этого поля определяет фрагментацию пакетов данных на основе показателя MTU для компьютера-отправителя. Поскольку значения MTU для сетевых компьютеров, находящихся на пути следования пакета, могут отличаться, доставка пакетов по месту назначения не гарантирована. Повторная сборка пакетов компьютером-получателем возможна на основе изучения информации, содержащейся в поле Authentification.
   – Поле Authentication (Идентификация). Название этого поля говорит само о себе.
   – Поле Encapsulating Security Payload (Инкапсуляция раздела данных, связанного с обеспечением безопасности). Применяется для обеспечения безопасности.
   – Поле Upper layer header (Заголовок верхнего уровня). Здесь описываются данные, которые находятся в разделе данных IP-пакета.
   Дополнительные заголовки, связанные с протоколом IPv6, приводят к уменьшению полезных данных, «переносимых» IP-пакетом. Эта особенность должна учитываться протоколами верхнего уровня, реализующими управление передачей данных.
   Теперь настала очередь протокола TCP, который тоже является одним из базовых сетевых протоколов.

Протокол TCP

   Как и протокол IP, протокол TCP отвечает за передачу данных между сетевыми узлами. При использовании этого протокола задействованы дополнительные механизмы, позволяющие назвать его надежным. В отличие от протокола IP, протокол TCP выполняет предварительное согласование параметров канала связи и требует подтверждения доставки сообщения. Здесь уместна аналогия с работой обычной почты. Так, например, протокол IP действует по принципу «бросил письмо в почтовый ящик и забыл». Протокол TCP поступает «хитрее», он требует «уведомления о получении заказного письма». Причем, достаточно одного уведомления в ответ на доставку целой группы IP-пакетов. Данные, передаваемые протоколом TCP, называются сегментами.
   Протокол TCP логически располагается на более высоком уровне, чем протокол IP. Он позволяет нескольким приложениям параллельно и независимо обмениваться данными с приложениями, запущенными на других машинах. Так же, как и UDP, протокол TCP демультиплексирует входной трафик между несколькими приложениями. Поэтому по аналогии с протоколом UDP, в протоколе TCP также используется понятие номеров портов, позволяющих идентифицировать конкретный компьютер-получатель информации. Каждому из портов для идентификации присваивается соответствующее целое число.
   При описании протокола TCP используется понятие абстрактного соединения, осуществляемого с применением виртуальных каналов связи. Для каждого соединения назначаются конечные точки соединения. В данном случае под конечной точкой понимается целочисленная пара чисел вида узел, порт, где параметр узел определяет IP-адрес узла сети, а параметр порт определяет номер порта TCP для данного узла. Например, запись (139.15.1.5, 13) определяет конечную точку, которая характеризуется TCP-портом с номером 13, относящимся к компьютеру с IP-адресом 139.15.1.5.
   Теперь, после формулирования понятия конечной точки, несложно определить термин «соединение». Поскольку любое соединение идентифицируется парой определяющих его конечных точек, достаточно указать IP-адреса и ТСР-порты для этих точек.
   На самом деле это упрощенная модель соединения, поскольку в данном случае номера портов для соединений уникальны. На практике же бывает так, что одна и та же конечная точка используется несколькими соединениями. При этом неоднозначности не возникает, поскольку в протоколе TCP все соединения связаны с открытым соединением, определяемым парой конечных точек, а вовсе не с номерами портов.
   Концепция абстрактного соединения играет важную роль в программировании. В частности, разработчик может создать программу, выполняющую один и тот же набор функций с несколькими открытыми соединениями. При этом нет необходимости использовать для каждого соединения уникальный номер локального порта. Например, в большинстве операционных систем поддерживается возможность одновременного доступа нескольких клиентов к службе электронной почты. Благодаря этому несколько клиентских компьютеров могут одновременно отправлять почтовые сообщения, а необходимость в этом возникает достаточно часто. Поскольку программа, принимающая входящие сообщения, использует для связи протокол TCP, для ее работы достаточно назначить лишь один локальный порт, несмотря на то, что могут одновременно обрабатываться несколько соединений.
   Для реализации передачи данных при использовании протокола TCP требуется предварительная установка соединения. На практике это означает предварительную «договоренность» между конечными точками, участвующими в соединении. При этом «переговоры» ведутся приложениями, функционирующими на компьютерах, между которыми устанавливается соединение. Одно из приложений реализует функцию пассивного открытия соединения. Вызов подобной функции сигнализирует о том, что данная сторона готова к приему входящих соединений. После этого операционная система назначает номер TCP-порта для собственной конечной точки текущего соединения.
   Приложение, которое выполняется на другом конце виртуального канала, обращается к операционной системе с запросом на активное открытие соединения. При этом два экземпляра протокола TCP взаимодействуют друг с другом. В ходе этого взаимодействия проверяется возможность установки соединения.
   После того как соединение будет установлено, приложения могут начать процесс обмена данными. При этом экземпляры протокола TCP в фоновом режиме обмениваются служебными сообщениями, гарантирующими надежность доставки данных. Подробнее процесс установки соединения будет рассмотрен после изучения формата сообщения протокола TCP.
   В протоколе TCP поток данных разбивается на сегменты, состоящие из последовательности байтов (октетов). Как правило, каждый сегмент данных передается в сети в виде единственной IP-дейтаграммы. Для повышения эффективности передачи данных и управления потоком данных в протоколе TCP используется специальный механизм скользящих окон. В этом случае экземпляр протокола TCP может отправлять сразу несколько сегментов данных еще до того, как будет получено соответствующее сообщение относительно их доставки. Благодаря этому увеличивается общая пропускная способность сети, поскольку сокращается время ее простоя. Также становится реальной «голубая мечта разработчиков» – сквозное управление потоком данных. Получатель может использовать средства, позволяющие ограничить поток передаваемых данных в случае нехватки буферной памяти, используемой для хранения промежуточных данных.
   Благодаря использованию скользящих окон протокол TCP оперирует октетами (байтами) данных (рис. 4.4, а), а не сегментами или пакетами. При этом октеты потока данных нумеруются последовательно, а компьютер-отправитель запоминает три указателя для каждого открытого соединения. Именно по этим указателям определяется скользящее окно (рис. 4.4, б).
   Первый указатель обозначает левую границу скользящего окна. Он разделяет октеты на успешно доставленные получателю и те, которые отправлены в сеть, но подтверждение их успешной доставки еще не получено. Второй указатель обозначает правую границу скользящего окна. Он определяет номер старшего октета последовательности, который может быть передан в сеть до получения подтверждения о доставке других октетов, находящихся в окне. Третий указатель обозначает границу внутри окна, разделяющую последовательность октетов на уже отправленные в сеть и те, которые еще только предстоит отправить. Модуль протокола отправляет в сеть все октеты, находящиеся в окне, без задержки. Поэтому граница внутри окна, определяемая третьим указателем, обычно перемещается слева направо очень быстро.


   Рис. 4.4. Скользящее окно протокола TCP

   Экземпляр протокола TCP, выполняемый на компьютере-отправителе, перемещает окно вдоль последовательности октетов. Экземпляр протокола TCP, выполняемый на компьютере-получателе, формирует точно такое же окно для того, чтобы собрать поток получаемых данных. Следует учитывать, что соединения, устанавливаемые протоколом TCP, являются дуплексными. Это означает, что одновременно по каждому из виртуальных каналов можно передавать два потока данных в противоположных направлениях. Поэтому экземпляры протокола TCP, выполняемые на обоих концах соединения, поддерживают для каждого соединения по два окна. Одно окно в этой паре применяется для передачи потока данных, а второе – для их приема.
   Размер окна в протоколе TCP не является постоянным. В каждом сообщении, подтверждающем получение данных, которое присылает получатель, указывается количество принятых октетов и объявление окна. В этом объявлении определяется количество дополнительных октетов данных, которые сможет принять получатель. В данном контексте объявление окна можно рассматривать в качестве сообщения, присылаемого получателем потока данных, в котором говорится о текущем размере буфера данных.
   В ответ на получение объявления окна, в котором говорится об увеличении размеров, отправитель данных соответствующим образом увеличивает размер своего скользящего окна, отправляя дополнительные данные еще до того, как будет получено подтверждение о приеме данных. Если же получено объявление окна, в котором сообщается об уменьшении размеров, отправитель уменьшит размеры собственного скользящего окна, задерживая отправку байтов данных, выходящих за его пределы.
   Экземпляр протокола TCP не обязан немедленно реагировать на прием объявления окна, в котором указаны уменьшенные размеры, смещая влево границу окна в потоке данных. Следует просто дождаться подтверждения приема данных, временно «замораживая» их отсылку. Поэтому спустя некоторое время размер окна уменьшится автоматически по мере смещения его левой границы вправо.
   Благодаря окну переменного размера повышается надежность передачи данных и обеспечивается управление потоком данных. Чтобы не допустить переполнения буфера, следует по мере его заполнения отсылать объявления окон меньшего размера. Иногда в целях прекращения передачи данных получатель объявляет окно нулевого размера. Если же буфер памяти очистится, получатель отсылает объявление ненулевого окна для возобновления передачи данных.
   Механизм управления потоком данных, используемый протоколом TCP, весьма важен для функционирования реальной сети, объединяющей множество других локальных сетей различной протяженности и пропускной способности. При этом возникают некоторые сложности. Первая проблема связана с различной производительностью компьютеров, подключенных к сети. В качестве решения этой проблемы используется сквозное управление потоком данных между компьютером-отправителем и компьютером-получателем. Следует обратить внимание на то, что применяемые в сети промежуточные устройства тоже должны уметь производить сквозной контроль данных. Если промежуточное устройство не справляется с поступающим потоком данных, наступает состояние перегрузки. В этом случае задействуются соответствующие механизмы устранения перегрузки.

Структура ТСР-сегментов

   Выше уже отмечалось, что в протоколе TCP передаваемые данные реализованы в виде сегментов, которые применяются для установки соединения, передачи данных, отправки сигналов подтверждения приема, объявления размера окон и закрытия соединения. Формат сегмента протокола TCP приведен на рис. 4.5.


   Рис. 4.5. Структура заголовка сегмента TCP

   Каждый сегмент состоит из заголовка и раздела данных. В заголовке располагаются идентификационные данные и управляющая информация. Его структура подробно описана в списке.
   – Поле Source port (Порт компьютера-отправителя). Это 16-разрядное поле применяется для идентификации порта, используемого приложением, отсылающим данные.
   – Поле Destination port (Порт компьютера-получателя). Это 16-разрядное поле применяется для идентификации порта компьютера-приемника.
   – Поле Sequence number (Последовательный номер). Это 32-разрядное поле применяется для повторной сборки фрагментов в одно большое сообщение после получения IP-пакета.
   – Поле Acknowledgment number (Номер подтверждения). Это 32-разрядное поле хранит сведения о последовательном номере подтверждения приема IP-пакета.
   – Поле Data offset (Смещение данных). В этом 4-разрядном поле указывается количество разделов данных, формирующих заголовок IP-пакета. Именно это поле позволяет определить место нахождения раздела данных в пакете.
   – Поле Reserved (Зарезервировано). Это 6-разрядное поле зарезервировано для использования в будущем.
   – Поле URG. Это битовое поле определяет «срочность» данных, содержащихся в пакете.
   – Поле АСК. Это поле определяет передачу подтверждения (Acknowledgment) о приеме пакета.
   – Поле PSH. Это поле определяет состояние «выталкивания» для данных, содержащихся в пакете.
   – Поле RST. Это битовое поле определяет переустановку соединения, если ему присвоено единичное значение.
   – Поле SYN. Это битовое поле определяет синхронизацию передаваемых последовательных номеров.
   – Поле FIN. Данное поле определяет завершение передачи данных.
   – Поле Window (Окно). Данное 16-разрядное поле определяет количество блоков данных, принимаемых компьютером-получателем.
   – Поле Checksum (Контрольная сумма). Это 16-разрядное поле обеспечивает проверку целостности разделов, содержащих заголовок и данные пакета.
   – Поле Urgent pointer (Указатель срочности). Совместно с полем URG данное поле определяет «срочность» передаваемых данных.
   – Поле Options (Параметры). При помощи этого поля переменной длины производится определение максимального размера передаваемых сегментов данных.
   Поскольку протокол TCP является потоково-ориентированным, приложение, которое выполняется на одном конце соединения, может потребовать внеочередной отправки данных другому приложению. В данном случае речь идет о том, чтобы программа на другом конце соединения получила их сразу, не ожидая приема октетов, которые были отправлены раньше. Например, если протокол TCP используется для установки сеанса связи с удаленным терминалом, пользователю иногда нужно послать удаленной программе специальный сигнал с клавиатуры, который прервет ее выполнение. Обычно подобные сигналы посылаются, если программа, выполняемая удаленным компьютером, зависла или претерпела фатальный сбой. В данном случае управляющие сигналы должны передаваться программе вне очереди, без ожидания, пока она считает из входного потока все посланные ранее октеты. В противном случае, если программа по какой-либо причине прекратит считывание потока данных, то управляющие сигналы никогда не попадут по месту назначения.
   Для реализации режима передачи внеочередных сигналов в протоколе TCP для отправителя предусмотрена возможность задавать в сегменте метку срочности. Это означает, что программа-получатель должна быть извещена о поступлении таких данных насколько возможно быстро, вне зависимости от состояния входящего потока данных. В спецификации протокола указано, что после поступления срочных данных экземпляр протокола TCP должен уведомить приложение, открывшее соединение, о переходе в «срочный режим» работы. После того как набор срочных данных будет получен, экземпляр протокола TCP уведомляет приложение о переходе в обычный режим работы.
   Естественно, все детали механизма уведомления прикладной программы о прибытии срочных данных зависят от используемой на компьютере операционной системы. Однако при отправке срочных данных этот механизм унифицирован. Для этого полю URG присваивается единица, а полю указателя срочных данных присваивается соответствующее значение. Если полю URG присвоена единица, поле указателя срочных данных определяет позицию в сегменте, где завершается раздел «срочных» данных.
   Через открытое соединение отсылаются сегменты данных, имеющие различный размер. Естественно, обе стороны должны заранее «договориться» о максимально допустимой длине передаваемого сегмента. Для обмена информацией с модулем протокола TCP, запущенным на противоположной стороне соединения, используется поле параметров протокола (Options). Один из этих параметров позволяет определить максимальный размер сегмента (MSS, Maximum Segment Size). Например, если небольшой компьютер, оснащенный малым объемом оперативной памяти, подключается к мощному суперкомпьютеру, сначала требуется передать последнему сведения о максимальном размере сегмента. Иначе может сложиться такая ситуация, что получаемые от суперкомпьютера сегменты не поместятся в выделенном для этой цели буфере памяти.
   Этот параметр играет важную роль, если компьютеры подключены к высокоскоростной локальной сети. Для увеличения пропускной способности сети максимальный размер сегмента должен быть таким, чтобы он целиком помещался в пакете данных. Поэтому, если отправитель и получатель находятся внутри одной физической сети, экземпляр протокола TCP обычно выбирает максимальный размер сегмента таким образом, чтобы результирующая IP-дейтаграмма соответствовала максимальному размеру модуля данных (MTU), который передается в физической сети. Если же отправитель и получатель находятся в разных физических сетях, то можно попытаться определить минимальный размер MTU сети, находящейся по пути передачи пакетов, или установить максимальный размер сегмента равным 536 байтам. Это значение получается путем вычитания из стандартного размера IP-дейтаграммы (576 байтов) значения стандартного размера заголовков пакетов IP и TCP.
   Ранее уже упоминалось, что проблема выбора оптимального размера сегмента данных TCP достаточно сложна, поскольку пропускная способность сети падает при передаче как очень больших, так и слишком малых сегментов. При небольшом размере сегмента эффективность сети будет невысокой. Следует помнить, что сегменты данных TCP в процессе передачи встраиваются в 1Р-дейтаграммы, а они, в свою очередь инкапсулируются во фреймы данных, передаваемые в сети. Поэтому, помимо раздела данных, каждый сегмент содержит, как минимум еще 40 байтов для заголовков TCP-сегмента и IP-дейтаграммы. Из-за этого при передаче дейтаграммы, содержащей только один байт данных, передача пользовательских данных занимает незначительную часть выделенной полосы пропускания сети. А если учесть минимальный межпакетный промежуток и биты синхронизации фреймов, автоматически добавляемые сетевым оборудованием, то это соотношение будет еще меньше.
   Чересчур большие сегменты данных тоже вредны, поскольку их использование приводит к падению пропускной способности сети. Это связано с тем, что большие сегменты данных приводят к формированию громоздких 1Р-дейтаграмм. В процессе передачи подобной дейтаграммы в сети с малым значением коэффициента MTU происходит ее фрагментация при помощи протокола IP. В отличие от TCP-сегментов, подтверждение получения каждого фрагмента на уровне протокола не выполняется, а отдельные фрагменты дейтаграммы при необходимости не могут быть повторно переданы независимо от всей дейтаграммы. Таким образом, в случае утери или повреждения одного из фрагментов данных повторно должна быть передана вся дейтаграмма. Поскольку отдельные фрагменты время от времени теряются, увеличение размеров сегмента больше порога фрагментации уменьшает вероятность успешного приема дейтаграммы и, следовательно, ведет к уменьшению пропускной способности сети.
   Теоретически оптимальный размер сегмента определяется максимально возможным размером формируемых IP-дейтаграмм, которые на протяжении маршрута от компьютера-отправителя до конечного получателя не фрагментируются. На практике определение этого значения затруднено в силу нескольких причин. Во-первых, в большинстве реализаций протокола TCP не используется механизм определения оптимального размера сегмента. Во-вторых, поскольку маршрутизаторы могут динамически изменять маршруты дейтаграмм, возможно изменение пути их следования между двумя взаимодействующими компьютерами. Следовательно, величина MTU в любой момент может измениться, после чего неминуемо последует фрагментация дейтаграммы. В-третьих, оптимальный размер сегмента зависит от длины заголовков протоколов более низкого уровня. Кроме того, при использовании параметров протокола IP размер сегмента должен быть еще меньше. Поэтому проблема определения оптимального размера сегментов протокола TCP до сих пор не разрешена.
   ПРИМЕЧАНИЕ
   Подробное рассмотрение принципов функционирования маршрутизаторов производится в следующей главе.
   Поле контрольной суммы применяется для проверки целостности полученных данных и заголовка TCP-сегмента. В процессе вычисления контрольной суммы экземпляр протокола TCP, выполняющийся на компьютере-отправителе, использует соответствующий алгоритм.
   Перед вычислением контрольной суммы к началу сегмента добавляется псевдозаголовок, а конец сегмента дополняется требуемым количеством нулевых битов. После выполнения описанных подготовительных действий вычисляется значение 16-разрядной контрольной суммы. Длина псевдозаголовка и битов, добавленных в процессе заполнения, не учитывается в общей длине TCP-сегмента, поскольку они не передаются получателю. Кроме того, при вычислении само значение поля контрольной суммы TCP-заголовка полагается равным нулю.
   В процессе вычисления контрольной суммы используется двоичная арифметика, когда отрицательные числа представляются в инверсном виде. Затем полученный результат инвертируется, в результате чего формируется положительное значение контрольной суммы. После получения сегмента данных принимающим компьютером, экземпляр протокола TCP выполняет над ним аналогичные вычисления, а затем сравнивает значения контрольных сумм. Если эти величины совпадают, то процесс передачи сегментов данных выполнен без ошибок.
   Благодаря псевдозаголовку компьютер-получатель может удостовериться в том, что сегмент данных доставлен по назначению. Для этого проверяются IP-адреса отправителя и конечного получателя, а также номера порта протокола. В протоколе TCP IP-адреса отправителя и конечного получателя играют очень важную роль, поскольку они используются для идентификации соединения, к которому относится полученный сегмент данных. Поэтому после прибытия дейтаграммы, содержащей TCP-сегмент, экземпляр протокола IP должен передать экземпляру протокола TCP, кроме самого сегмента, еще и IP-адреса отправителя и конечного получателя.
   Поскольку в протоколе TCP данные посылаются в виде сегментов переменного размера и в повторно передаваемые сегменты, кроме оригинала, могут быть включены дополнительные данные, получаемые сигналы подтверждения приема не так-то просто соотнести с отправленными дейтаграммами или сегментами. По этой причине сигналы подтверждения приема соотносятся с положением данных в потоке, которым присваиваются порядковые номера. Получатель собирает поступившие в сегментах данные и воспроизводит точную копию передаваемого потока данных. Так как сегменты поступают получателю в виде IP-дейтаграмм, то для упорядочения сегментов получатель использует их порядковые номера. В какой-то момент у получателя может быть восстановлено произвольное количество байтов.
   Кроме того, получателю может быть доставлена некая часть потока в виде полученных вне очереди дейтаграмм. Несмотря на это, получатель всегда посылает сигналы подтверждения приема только на самую большую и непрерывную часть потока, которая была корректно получена. В каждом подтверждении приема указывается порядковый номер, который соответствует положению самого старшего байта в непрерывной части доставленного потока. Таким образом, по мере передачи потока данных отправитель постоянно получает сигналы подтверждения, отражающие состояние принятого потока данных.
   Принятую в протоколе TCP систему подтверждения приема называют накопительной, поскольку она отражает количество байтов потока данных, накопленных получателем. Следует отметить, что накопительная система подтверждения приема имеет как преимущества, так и недостатки. Одно из преимуществ заключается в том, что сигналы подтверждения приема легко генерируются и являются однозначными. Их просто невозможно истолковать неправильно. Еще одно преимущество заключается в том, что в случае утери сигналов подтверждения приема не требуется повторно передавать ни сами сигналы, ни соответствующие им сегменты данных. Недостатком накопительного метода является то, что отправитель не обладает сведениями о том, что передача данных завершилась успешно. Ему только известно, какая часть потока данных была успешно доставлена получателю.
   Описанную технологию может иллюстрировать простой пример. Предположим, имеется окно, расположенное в потоке данных начиная с позиции 201 и включающее 3000 байтов. Предположим также, что отправитель передал все находящиеся в окне данные в виде трех сегментов. Что произойдет в том случае, когда первый сегмент в процессе передачи данных был утерян, а остальные успешно достигли места назначения? Во время получения сегментов, получатель будет отсылать сигналы подтверждения. В каждом из них будет указан порядковый номер байта (201), то есть номер следующего по порядку старшего байта, относящегося к непрерывному потоку данных, который ожидает получить принимающая сторона. При этом получатель лишен возможности сообщить отправителю, что большая часть данных, принадлежащих текущему окну, уже получена.
   Как только истечет время ожидания сигнала подтверждения приема, отправитель попытается выйти из сложившейся ситуации, используя один из следующих двух методов. Он может передать либо один сегмент данных, либо все три. Очевидно, что последний метод весьма неэффективен. После того как первый сегмент данных будет успешно доставлен, в распоряжении получателя окажутся данные, образующие окно. Поэтому он подтвердит прием байта с порядковым номером 3001. Таким образом, если отправитель будет действовать согласно принятым стандартам и выполнит повторную передачу первого непринятого сегмента данных, то прежде чем предпринимать дальнейшие шаги, он должен дождаться подтверждения приема этого сегмента. При этом не ощущается преимущество, предоставляемое большим окном.
   Метод обработки истекшего времени ожидания и выполнение повторной передачи данных являются основными технологиями протокола TCP. Как и в других надежных протоколах, в протоколе TCP предполагается, что получатель пришлет сигнал подтверждения приема, успешно получив байты из потока данных. Каждый раз при отправке сегмента в модуле протокола TCP устанавливается значение таймера ожидания, определяющего получение сигнала подтверждения приема данных. Если время ожидания истечет прежде, чем будет подтвержден прием отправленного сегмента, экземпляр протокола TCP полагает, что сегмент данных не достиг компьютера-получателя, либо соответствующие данные были искажены в процессе передачи. После этого передача сегмента производится повторно.
   Протокол TCP изначально предназначался для применения в межсетевой среде. Пакет данных может передаваться по сетям, обладающими различными скоростными характеристиками, в связи с чем невозможно заранее предсказать, как быстро отправитель получит сигнал подтверждения приема. Ситуация усугубляется еще и тем, что задержка прохождения сигнала через маршрутизаторы зависит от величины трафика в конкретной сети. Поэтому суммарное время задержки на передачу сегмента и получение отправителем подтверждения его приема может колебаться в очень широких пределах.
   В целях определения времени задержки сигнала в протоколе TCP используется адаптивный алгоритм повторной передачи. Принцип его работы заключается в том, что отслеживается производительность каждого сетевого соединения, а затем на основании полученных результатов выбирается подходящее время задержки. По мере изменения значения производительности соединения соответственно изменяется и величина задержки.
   В процессе сбора данных, требуемых для работы адаптивного алгоритма, экземпляр протокола TCP фиксирует время отправки каждого сегмента, а также время получения сигналов подтверждения приема данных, находящихся в этих сегментах. Затем определяется разность этих значений, соответствующая времени доставки каждого пакета. Этот алгоритм также называется оценкой полного времени доставки пакета. После выполнения очередной оценки экземпляр протокола TCP пересчитывает среднее время доставки для данного соединения. При этом также оценивается средневзвешенная величина полного времени доставки пакетов (RTT, Round Trip Time).
   В процессе отправки пакета экземпляр протокола TCP вычисляет величину задержки в виде функции от предполагаемой величины полного времени доставки.
   Оценка полного времени доставки пакета не составляет особого труда. Для этого следует из значения времени получения сигнала подтверждения доставки сегмента вычесть значение времени отправки сегмента. В этом случае могут возникать определенные затруднения, поскольку в протоколе TCP используется накопительная система подтверждения приема сегментов данных. Ее суть заключается в том, что сигнал подтверждения приема отражает факт успешного получения данных, но не той дейтаграммы, в которой эти данные находятся.
   Следует подробнее рассмотреть процесс повторной передачи данных. Сначала экземпляр протокола TCP формирует сегмент данных, помещает его в дейтаграмму и отправляет ее компьютеру-получателю. По истечении времени задержки выполняется повторная передача сегмента данных, но уже в составе другой дейтаграммы. Поскольку в обеих дейтаграммах содержатся одни и те же данные, отправитель не может определить, в какой из дейтаграмм (исходной или повторной) содержится полученный сигнал подтверждения приема данных. Здесь возникает проблема неоднозначности сигналов подтверждения приема данных. Рано или поздно сигнал подтверждения приема будет получен, даже если для этого потребуется выполнить одну или несколько повторных передач сегмента данных. В результате экземпляр протокола TCP оценит полное время доставки сегмента относительно времени его первоначальной посылки и на основе этого большого значения вычислит новое значение коэффициента RTT. Таким образом, по сравнению с прежним значением, новое значение коэффициента RTT вырастет незначительно. В следующий раз, когда экземпляр протокола TCP будет отправлять сегмент данных получателю, увеличенное значение коэффициента RTT приведет к заметному увеличению тайм-аута, относящегося к подтверждению приема. Поэтому, если сигнал подтверждения приема данных будет получен также после одной или нескольких повторных передач сегмента данных, полное время доставки сегмента будет еще больше.
   Нельзя также соотносить сигнал подтверждения приема со временем самой последней повторной передачи сегмента. Если внезапно возрастет полное время доставки сегмента, то ситуация изменится. При отправке сегмента экземпляром протокола TCP для вычисления времени тайм-аута будет использоваться прежнее невысокое значение предполагаемого полного времени доставки пакета. Предположим, что после успешной доставки сегмента получателю, отправителю был послан сигнал подтверждения приема. Однако из-за перегрузок в сети сигнал подтверждения приема не будет получен до истечения значения таймера. В этом случае модуль протокола TCP выполнит повторную передачу сегмента. Вскоре после этого отправитель получит первый сигнал подтверждения приема и соотнесет его с моментом последней повторной передачи. Оцененное полное время доставки пакета будет небольшим, что приведет к незначительному снижению значения предполагаемого полного времени доставки пакета. К сожалению, уменьшение значения коэффициента RTT приведет к тому, что для передачи следующего сегмента данных экземпляр протокола TCP выберет малое значение тайм-аута.
   Впрочем, в конечном итоге значение предполагаемого полного времени доставки пакета стабилизируется. Проведенные исследования показали, что в тех реализациях протокола TCP, где сигналы подтверждения приема соотносятся с моментом последней повторной передачи сегмента, стабильное значение RTT немного меньше половины корректного значения полного времени доставки. Следовательно, при отсутствии потерь сегментов в сети, модуль протокола TCP будет два раза посылать один и тот же сегмент получателю.
   В предыдущем разделе шла речь о том, что независимо от того, к какому из моментов времени будет соотнесен полученный сигнал подтверждения приема, оценка полного времени доставки пакета будет неточной. Как же быть в этом случае? Ответ на этот вопрос очень прост. Экземпляр протокола TCP в этом случае не будет повторно подсчитывать значение предполагаемого полного времени доставки пакета на основе данных, полученных при повторной передаче сегмента. Величина предполагаемого полного времени доставки пакета (алгоритм Карна) вычисляется исключительно на основании данных, полученных для однозначных сигналов подтверждения приема.
   Теперь стоит рассмотреть ситуацию, которая возникнет, если в момент отправки сегмента данных экземпляром протокола TCP резко увеличится время задержки в сети. Значение тайм-аута вычисляется на основании текущего значения предполагаемого полного времени доставки пакета. Для больших задержек в сети вычисленное значение тайм-аута будет незначительным. Это приведет к повторной передаче сегмента данных. Таким образом, если игнорировать сигналы подтверждения приема для повторно переданных сегментов, новое значение предполагаемого полного времени доставки пакета никогда не изменится, и описанный выше процесс будет продолжаться до тех пор, пока не уменьшится время задержки.
   Чтобы устранить подобные недостатки, в алгоритме Карна используется метод коррекции значения тайм-аута (так называемый «откат таймера»). Его суть заключается в том, что начальное значение тайм-аута вычисляется на основании текущих данных. Но если в результате истечения тайм-аута произойдет повторная передача сегмента, то экземпляр протокола TCP увеличит значение тайм-аута. На практике каждый раз перед повторной передачей сегмента модуль протокола TCP увеличивает значение тайм-аута. Чтобы не допустить бесконтрольного увеличения тайм-аута, в большинстве его реализаций имеет место максимально возможное значение, которое всегда больше максимально возможной задержки передачи пакета по любому из маршрутов, проложенных в локальной сети.
   Алгоритм вычисления нового значения тайм-аута зависит от конкретной реализации протокола TCP. В большинстве реализаций протокола эта величина вычисляется путем умножения прежнего значения тайм-аута на специальный корректирующий множитель. Обычно величина этого множителя выбирается равной двум. Если эта величина будет меньше двух, система может работать нестабильно.
   Для того чтобы решить проблему вычисления постоянного предполагаемого полного времени доставки пакета, в алгоритме Карна используется методика принудительного изменения тайм-аута. При вычислении предполагаемого полного времени доставки пакета игнорируются результаты замеров, относящихся к повторно отправленным сегментам. В целях определения точного времени доставки пакетов в алгоритме Карна используется метод приращения значения тайм-аута при повторной передаче сегмента данных. Учитывая все выше сказанное, можно отметить, что в случае возникновения больших задержек в сети алгоритм Карна позволяет разделить вычисление текущего значения тайм-аута и определение предполагаемого полного времени доставки пакета.
   Предполагаемое значение полного времени доставки используется только для вычисления начального значения тайм-аута. При каждой повторной передаче сегмента данных значение тайм-аута увеличивается на некоторую величину до тех пор, пока этот сегмент не будет успешно доставлен получателю. Таким образом, при отправке последовательности сегментов используется значение тайм-аута, полученное в результате принудительной коррекции значения таймера. Это происходит до тех пор, пока не будет получен сигнал подтверждения приема, соответствующий однократно посланному сегменту данных. После этого экземпляр протокола TCP, основываясь на выполненном замере, пересчитывает предполагаемое значение полного времени доставки и соответствующим образом изменяет значение тайм-аута. Как показывает практика, алгоритм Карна идеален для применения в тех сетях, где потери данных весьма велики.
   Исследования, в ходе которых вычислялось предполагаемое значение полного времени доставки пакетов, показали, что описанные методы неприменимы в том случае, если значение времени задержки в сети сильно изменяется. Эта проблема была учтена в спецификации протокола TCP, выпущенной в 1989 году, где требовалось, чтобы оценивалось среднее время полной доставки пакетов, а также величина статистического разброса.
   Разработчики протокола TCP предусмотрели ситуации, связанные с возникновением перегрузки в сети. Признаком возникновения подобной ситуации может служить резкое увеличение времени задержки при доставке пакетов. При перегрузке устройства маршрутизации задержка увеличивается, поскольку поступающие дейтаграммы ставятся в очередь и находятся там до тех пор, пока маршрутизатор не сможет их обработать. Следует учитывать то, что емкость памяти маршрутизатора является конечной, поэтому она рано или поздно исчерпывается. Иными словами, при передаче дейтаграмм в сети для каждого ТСР-соедине-ния увеличения выделяемой памяти не происходит.
   В самом худшем варианте, когда дейтаграммы не могут поместиться в памяти нагруженного маршрутизатора, они просто теряются. Как правило, в конечных точках соединения неизвестно, в каком месте сети и по какой причине возникла перегрузка. Для них перегрузка просто означает увеличение задержки.
   К сожалению, в большинстве транспортных протоколов используется стратегия повторной передачи пакетов в случае истечения времени ожидания сигнала. Поэтому увеличение задержки вызывает повторную передачу дейтаграмм, что, в свою очередь, приводит к еще большей задержке. Если ничего не предпринимать, то увеличение трафика вызовет увеличение задержки, а рост времени задержки снова приведет к увеличению трафика в сети, и т. д. до тех пор, пока работа сети не будет полностью парализована. Подобная ситуация называется полным коллапсом сети.
   Чтобы избежать полного коллапса сети, в случае возникновения перегрузки экземпляр протокола TCP должен уменьшить интенсивность передачи пакетов. Маршрутизаторы постоянно отслеживают длину внутренней очереди дейтаграмм, а в случае ее переполнения сообщают о возникшей перегрузке всем компьютерам-отправителям, используя механизм, подобный рассылке ICMP-сообще-ний. Однако протоколы транспортного уровня тоже могут регулировать степень перегрузки в сети, автоматически снижая интенсивность передачи данных при возникновении задержек. Применяемые при этом алгоритмы должны быть тщательно продуманы, поскольку даже при обычных условиях полное время доставки пакета в сети может варьироваться в очень широких пределах.
   Для предотвращения перегрузки в сети современная версия стандарта TCP рекомендует использовать медленный запуск и мультипликативное уменьшение. Обе методики взаимосвязаны и могут быть легко реализованы на практике. Ранее уже упоминалось о том, что для каждого открытого соединения экземпляр протокола TCP хранит размер окна получателя. Чтобы избежать перегрузки, в протоколе TCP установлено еще одно ограничение, которое называется ограничением размера окна перегрузки. При возникновении перегрузки оно ограничивает поток данных настолько, чтобы он был меньше размера буфера приема данных.
   

notes

Notes

Купить и читать книгу за 164 руб.

Вы читаете ознакомительный отрывок. Если книга вам понравилась, вы можете купить полную версию и продолжить читать