Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции 6 сем.docx
Скачиваний:
5
Добавлен:
25.09.2019
Размер:
898.21 Кб
Скачать

Временное мультиплексирование

При мультиплексировании с разделением по времени каждое устройство или входящий канал получают в свое распоряжение всю пропускную способность линии, но только на строго определенный промежуток времени каждые 125 мкс (см. Рисунок 2.2). Последнее значение соответствует циклу дискретизации, так как при ИКМ каждую 1/8000 долю секунды необходимо производить измерение амплитуды аналогового сигнала. Время передачи восьмиразрядного значения мгновенной амплитуды называется квантом времени (time slot) и равно длительности передачи восьми импульсов (один для каждого бита). Последовательность квантов времени, следующих с вышеуказанным интервалом, образует временной канал. Совокупность каналов за один цикл дискретизации составляет кадр.

Рисунок 2.2. При временном мультиплексировании вся пропускная способность исходящей линии предоставляется на фиксированный промежуток времени входящей линии меньшей емкости.

В Европе, как и в остальном мире, за исключением США и Японии, стандартной системой является ИКМ-32/30 (или E-1) с 32 временными каналами по 64 кбит/с, в которой 30 каналов используются в качестве информационных для передачи голоса, данных и т. д., а два - в качестве служебных, причем один из служебных каналов предназначен для сигнализации (служебных сигналов установления связи), другой - для синхронизации. Как нетрудно подсчитать, общая емкость системы составляет 2,048 Мбит/с.

Система E-1 образует так называемую первичную группу. Вторичную группу E-2 образуют 4 канала E-1 общей емкостью 8,448 Мбит/с, третичную систему E-3 - четыре канала E-2 (или шестнадцать каналов E-1) общей емкостью 34,368 Мбит/с, а четверичную группу - четыре канала E-3 общей емкостью 139,264 Мбит/с. Эти системы образуют европейскую плезиохронную цифровую иерархию.

Принцип последовательного мультиплексирования каналов проиллюстрирован на Рисунке 3.3. Четыре канала E-1 мультиплексируются в один канал E-2, причем на этом и последующих уровнях мультиплексирование осуществляется побитно, а не побайтно, как это имело место в случае мультиплексирования 30 голосовых каналов в один канал E-1. Суммарная емкость четырех каналов E-1 составляет 8,192 Мбит/с, в то время как полная емкость E-2 равна в действительности 8,448 Мбит/с. Избыточные биты используются для обрамления и восстановления синхронизации. Затем четыре канала E-2 мультиплексируются в один канал E-3 и т. д.

Рисунок 3.3. Как малые притоки сливаются в одну большую реку, так и низкоскоростные линии объединяются в высокоскоростные с помощью иеархии мультиплексоров.

Принятый в Северной Америке и Японии, стандарт определяет канал T-1 (формат кадра DS1). Канал T-1 состоит из 24 мультиплексированных голосовых каналов, причем изначально предполагалось, что амплитуда аналогового сигнала будет выражаться 7-разрядным двоичным числом, а один бит использоваться для целей управления (сигнализации). Кроме того, помимо 192 бит каждый кадр имеет еще один бит для синхронизации. Таким образом, общая емкость канала T-1 составляет 1,544 Мбит/с. Однако в конце концов все 8 бит были отведены под данные, а сигнализация стала осуществляться одним из следующих двух способов. При сигнализации по общему каналу 193-й бит в каждом нечетном кадре служит для целей синхронизации, а в каждом четном - для сигнализации. Суть другого метода заключается в том, что каждый канал имеет свой собственный подканал для передачи сигнальной информации (один бит в каждом шестом кадре).

Компьютерные сети Лекция 3 6 сем

Адресация узлов сети

При соединении в сеть трех и более компьютеров является проблема их адресации, точнее сказать адресации их сетевых интерфейсов. Один компьютер может иметь несколько сетевых интерфейсов. Например, для образования физического кольца каждый компьютер должен быть оснащен как минимум двумя сетевыми интерфейсами для связи с двумя соседями. А для создания полносвязной структуры из N компьютеров необходимо, чтобы у каждого из них имелся N-1 интерфейс.

По количеству адресуемых интерфейсов адреса классифицируются:

уникальные адреса – используются для идентификации отдельных интерфейсов;

групповые адреса – используются для идентификации сразу нескольких интерфейсов (групп интерфейсов). С помощью групповых адресов данные могут направляться сразу нескольким узлам;

широковещательные адресаиспользуются для доставки данных всем узлам сети;

адрес произвольной рассылки – данные доставляются не всем абонентам группы, а любому из них.

Адреса могут быть числовыми) и символьными (например, 129.26.255.255 или site.domain.ru).

Числовые адреса могут записываться в десятичной, шестнадцатиричной или двоичной системах счисления.

Символьные адреса предназначены для запоминания людьми, поэтому они должны нести смысловую нагрузку. В больших сетях они могут иметь иерархическую структуру, например APGT-2k-29-01.

Недостаток символьных имен – переменная длина и потенциально большая длина (передавать по каналам связи при большой длине крайне невыгодна)

Множество всех адресов, которые являются допустимыми в рамках некоторой схемы адресации, называется адресным пространством. Адресное пространство может иметь плоскую (линейную) (рис.1.) или иерархическую (рис.2.) организацию.

Рис. 1.  Плоское адресное пространство.

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

Рис. 2.  Иерархическая структура адресного пространства.

На рис. 2 показана трехуровневая структура адресного пространства, при которой адрес конечного узла задается тремя составляющими: идентификатором группы (K), в которую входит данный узел, идентификатором подгруппы (L) и, наконец, идентификатором узла (n), однозначно определяющим его в подгруппе. Иерархическая адресация во многих случаях оказывается более рациональной, чем плоская. В больших сетях, состоящих из многих тысяч узлов, использование плоских адресов может привести к большим издержкам — конечным узлам и коммуникационному оборудованию придется работать с таблицами адресов, состоящими из тысяч записей. А иерархическая система адресации позволяет при перемещении данных до определенного момента пользоваться только старшей составляющей адреса, затем для дальнейшей локализации адресата следующей по старшинству частью, и, в конечном счете, — младшей частью. Примером иерархически организованных адресов служат обычные почтовые адреса, в которых последовательно уточняется местонахождение адресата: страна, город, улица, дом, квартира.

К адресу сетевого интерфейса и схеме его назначения можно предъявить несколько требований:

  • адрес должен уникально идентифицировать сетевой интерфейс в сети любого масштаба;

  • схема назначения адресов должна сводить к минимуму ручной труд администратора и вероятность дублирования адресов;

  • желательно, чтобы адрес имел иерархическую структуру, удобную для построения больших сетей;

  • адрес должен быть удобен для пользователей сети, а это значит, что он должен допускать символьное представление, например Server3 или www.cisco.com;

  • адрес должен быть по возможности компактным, чтобы не перегружать память коммуникационной аппаратуры – сетевых адаптеров, маршрутизаторов и т.п.

Эти требования в какой-то мере противоречивы — например, адрес, имеющий иерархическую структуру, будет менее компактным, чем плоский.

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

Примером плоского числового адреса является МАС-адрес, используемый для однозначной идентификации сетевых интерфейсов в локальных сетях. Такой адрес обычно применяется только аппаратурой, поэтому его стараются сделать по возможности компактным и записывают в виде двоичного или шестнадцатеричного значения, например 0081005e24a8. МАС-адреса, встраиваются в аппаратуру компанией-изготовителем; их называют еще аппаратными (hardware) адресами. Использование плоских адресов является жестким решением — при замене аппаратуры, например сетевого адаптера, изменяется и адрес сетевого интерфейса компьютера.

Типичными представителями иерархических числовых адресов являются сетевые IP- и IPX-адреса. В них поддерживается двухуровневая иерархия, адрес делится на старшую часть — номер сети — и младшую — номер узла. Такое разделение позволяет передавать сообщения между сетями только на основании номера сети, а номер узла используется после доставки сообщения в нужную сеть; точно так же, как название улицы используется почтальоном только после того, как письмо доставлено в нужный город. В последнее время, чтобы сделать маршрутизацию в крупных сетях более эффективной, предлагаются более сложные варианты числовой адресации, в соответствии с которыми адрес имеет три и более составляющих. Такой подход, в частности, реализован в новой версии протокола IPv6, предназначенного для работы в Internet.

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

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

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

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

Компьютерные сети Лекция 4 6 сем

IP-адресация

Стек протоколов TCP/IP тесно связан с сетью Internet, ее историей и современностью. Создан он был в 1969 году, когда для сети ARPANET понадобился ряд стандартов для объединения в единую сеть компьютеров с различными архитектурами и операционными системами. На базе этих стандартов и был разработан набор протоколов, получивших название TCP/IP.

Вместе с ростом Internet протокол TCP/IP завоевывал позиции и в других сетях. На сегодняшний день этот сетевой протокол используется как для связи компьютеров всемирной сети, так и в подавляющем большинстве корпоративных сетей.

В наши дни используется версия протокола IP, известная как IPv4. В данной лекции мы рассмотрим стандартную схему адресации и более новые методы рационального использования адресного пространства, введенные в результате обнаруженных недостатков в реализации протокола IP.

Адреса протокола IP

Согласно спецификации протокола, каждому узлу, подсоединенному к IP-сети, присваивается уникальный номер. Узел может представлять собой компьютер, маршрутизатор, межсетевой экран и др. Если один узел имеет несколько физических подключений к сети, то каждому подключению должен быть присвоен свой уникальный номер.

Этот номер, или по-другому IP-адрес, имеет длину в четыре байта, и состоит из двух частей. Первая часть определяет сеть, к которой принадлежит узел, а вторая – уникальный адрес самого узла внутри сети.

Номер сети

Номер узла

11011100

11010111

00001110

00010110

В классической реализации протокола первую часть адреса называли "сетевым префиксом", поскольку она однозначно определяла сеть. Однако в современной реализации это уже не так и сеть идентифицируют другим образом, речь о чем пойдет ниже.

Классическая адресная схема протокола IP

Изначально все адресное пространство разделили на пять классов: A, B, C, D и Е. Такая схема получила название "классовой". Каждый класс однозначно идентифицировался первыми битами левого байта адреса. Сами же классы отличались размерами сетевой и узловой частей. Зная класс адреса, вы могли определить границу между его сетевой и узловой частями. Кроме того, такая схема позволяла при маршрутизации не передавать вместе с пакетом информацию о длине сетевой части IP-адреса.

Класс А

 

 

 

 

Номер бита

0

8

16

24    31

Адрес

0.......

........

........

........

Сетевая часть

 

 

 

 

 

 

 

 

 

Класс В

 

 

 

 

Номер бита

0

8

16

24    31

Адрес

10......

........

........

........

Сетевая часть

 

 

 

 

 

 

 

 

 

Класс С

 

 

 

 

Номер бита

0

8

16

24    31

Адрес

110.....

........

........

........

Сетевая часть

 

 

 

 

 

 

 

 

 

Класс D

 

 

 

 

Номер бита

0

8

16

24    31

Адрес

1110....

........

........

........

 

 

 

 

 

Класс E

 

 

 

 

Номер бита

0

8

16

24    31

Адрес

1111....

........

........

........

Рис. 4.1

Класс А ориентирован на очень большие сети. Все адреса, принадлежащие этому классу, имеют 8-битный сетевой префикс, на что указывает первый бит левого байта адреса установленный в нуль. Соответственно, на идентификацию узла отведено 24 бита и каждая сеть может содержать до 224-2 узлов. Два адреса необходимо отнять, поскольку адреса, содержащие в правом байте все нули (идентифицирует указанную сеть) и все единицы (широковещательный адрес) используются в служебных целях и не могут быть присвоены узлам.

Самих же сетей может быть 27-2. Снова мы вычитаем двойку, но это уже две служебных сети: 127/8 и 0/8 (по-старому: 127.0.0.0 и 0.0.0.0).

Наконец, можно заметить, что класс А содержит всего 27 * 224 = 231 адресов, или половину всех возможных IP-адресов.

Класс В предназначен для сетей большого и среднего размеров. Адреса этого класса идентифицируются двумя старшими битами, равными соответственно 1 и 0. Сетевой префикс класса состоит из шестнадцати бит или первых двух байтов адреса.

Поскольку два первых бита сетевого префикса заняты определяющим класс ключом, то можно задать лишь 214 различных сетей. Узлов же в каждой сети можно определить до 216-2.

Проведя вычисления, аналогичные приведенным для класса А, мы увидим, что класс В занимает четверть адресного пространства протокола IP.

Наконец, самый употребляемый класс сетей – класс С – имеет 24 битный сетевой префикс, определяется старшими битами, установленными в 110, и может идентифицировать до 221 сетей. Соответственно, класс позволяет адресовать до 28-2 узлов. Занимает восьмую часть адресного пространства протокола TCP/IP.

Последние два класса занимают оставшуюся восьмую часть в адресном пространстве и предназначены для служебного (класс D) и экспериментального (класс Е) использования. Для класса D старшие четыре бита адреса установлены в 1110, для класса Е -- 1111. Сегодня класс D используется для групповой передачи информации.

Поскольку длинные последовательности из единиц и нулей трудно запомнить, IP адреса обычно записывают в десятичной форме. Для этого каждый октет адреса представляется в виде десятичного числа. Между собой октеты отделяются точкой. Иногда октеты обозначаются как w.x.y.z и называются "z-октет", "y-октет", "x-октет" и "w-октет".

Представление IP-адреса в виде четырех десятичных чисел разделенных точками и называется "точечно-десятичная нотация".

Октет

W

X

Y

Z

Номер бита

0

8

16

24    31

Адрес

11011100

11010111

00001110

00010110

 

220

215

14

22

Точечно-десятичный формат

220.215.14.22

Рис. 4.2

На рис. 2 показано, как IP-адрес представляется в точечно-десятичной нотации.

Подытожим информацию о классах сетей в таблице:

Класс

Количество сетей

Количество узлов

Десятичный диапазон

A

27 – 2 (126)

224 – 2 (2 147 483 648)

1.ххх.ххх.ххх

- 126.ххх.ххх.ххх

B

214 (16 384)

216 – 2 (65 534)

128.0.ххх.ххх

- 191.255.ххх.ххх

C

221 (2 097 152)

28 – 2 (254)

192.0.0.ххх

- 223.255.255.ххх

D

-

-

224.0.0.ххх

- 239.255.255.ххх

E

-

-

240.0.0.ххх

- 254.255.255.ххх

Рис. 4.3

Зарезервированные адреса

В адресной схеме протокола выделяют особые IP-адреса.

Если биты всех октетов адреса равны нулю, то он обозначает адрес того узла, который сгенерировал данный пакет. Это используется в ограниченных случаях, например в некоторых сообщениях протокола IP.

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

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

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

Специальное значение имеет, так же, адреса сети 127/8. Они используются для тестирования программ и взаимодействия процессов в пределах одной машины. Пакеты, отправленные на этот интерфейс, обрабатываются локально, как входящие. Потому адреса из этой сети нельзя присваивать физическим сетевым интерфейсам.

Организация подсетей

Очень редко в локальную вычислительную сеть входит более 100-200 узлов. Кроме того, многие сетевые среды накладывают ограничения, например, в 1024 узла. Поэтому, использовать адресацию сетей классов А и В нецелесообразно. При малом количестве компьютеров в сети (до 30) не имеет смысла использовать адресацию С.

Для решения этих проблем в двухуровневую иерархию IP-адресов (сеть – узел) была введена новая составляющая -- подсеть. Идея заключается в "заимствовании" нескольких битов из узловой части адреса для определения подсети.

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

 

 

Сетевой префикс

подсеть

узел

IP адрес 

144.144.19.22 

10010000

10010000

00010011

00010110

Маска

255.255.255.0 

11111111

11111111

11111111

00000000

 

 

Расширенный сетевой префикс

 

Рис.4.4

Но маску в десятичном представлении удобно использовать лишь тогда, когда расширенный сетевой префикс заканчивается на границе октетов, в других случаях ее расшифровать сложнее. Допустим, что в примере на рис. 4 мы хотели бы для подсети использовать не 8 бит, а десять. Тогда в последнем (z-ом) октете мы имели бы не нули, а число 11000000. В десятичном представлении получаем 255.255.255.192. Очевидно, что такое представление не очень удобно. В наше время чаще используют обозначение вида "/xx", где хх -- количество бит в расширенном сетевом префиксе. Таким образом, вместо указания: "144.144.19.22 с маской 255.255.255.192", мы можем записать: 144.144.19.22/26. Как видно, такое представление более компактно и понятно.

Маска подсети переменной длины VLSM (Variable Length Subnet Mask)

Однако подсети, несмотря на все их достоинства, обладают и недостатками. Так, определив однажды маску подсети, приходится использовать подсети фиксированных размеров. Скажем, у нас есть сеть 144.144.0.0/16 с расширенным префиксом /23.

 

Сетевой префикс

Подсеть

Узел

144.144.0.0/23

<-->

10010000

10010000

0000000

0          00000000

 

Расширенный сетевой префикс

 

Рис. 4.5

Такая схема позволяет создать 27 подсетей размером в 29 узлов каждая. Это подходит к случаю, когда есть много подсетей с большим количеством узлов. Но если среди этих сетей есть такие, количество узлов в которых находится в пределах ста, то в каждой их них будет пропадать около 400 адресов.

Решение состоит в том, что бы для одной сети указывать более одного расширенного сетевого префикса. О такой сети говорят, что это сеть с маской подсети переменной длины (VLSM).

Действительно, если для сети 144.144.0.0/16 использовать расширенный сетевой префикс /25, то это больше бы подходило сетям размерами около ста узлов. Если допустить использование обеих масок, то это бы значительно увеличило гибкость применения подсетей.

Общая схема разбиения сети на подсети с масками переменной длины такова: сеть делится на подсети максимально необходимого размера. Затем некоторые подсети делятся на более мелкие, и рекурсивно далее, до тех пор, пока это необходимо.

Кроме того, технология VLSM, путем скрытия части подсетей, позволяет уменьшить объем данных, передаваемых маршрутизаторами. Так, если сеть 12/8 конфигурируется с расширенным сетевым префиксом /16, после чего сети 12.1/16 и 12.2/16 разбиваются на подсети /20, то маршрутизатору в сети 12.1 незачем знать о подсетях 12.2 с префиксом /20, ему достаточно знать маршрут на сеть 12.1/16.

Проблемы классической схемы

В середине 80-х годов Internet впервые столкнулся с проблемой переполнения таблиц магистральных маршрутизаторов. Решение, однако, было быстро найдено – подсети устранили проблему на несколько лет. Но уже в начале 90-х к проблеме большого количества маршрутов прибавилась нехватка адресного пространства. Ограничение в 4 миллиарда адресов, заложенное в протокол и казавшееся недосягаемой величиной, стало весьма ощутимым.

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

Долгосрочное решение – это протокол IP следующей версии. Он обозначается, как IPv6, или IPng (Internet Protocol next generation). В этой реализации протокола длина адреса увеличена до 16-ти байтов (128 бит!), исключены некоторые элементы действующего протокола, которые оказались неиспользуемыми.

Новая версия обеспечит, как любят указывать, плотность в 3 911 873 538 269 506 102 IP адресов на квадратный метр поверхности Земли.

Ё+й ёОднако то, что и в 2000-м году протокол все еще проходил стандартизацию, и то, что протокол CIDR вместе с системой NAT оказались эффективным решением, заставляет думать, что переход с IPv4 на IPng потребует очень много времени.

Бесклассовая междоменная маршрутизация CIDR (Classless Inter-Domain Routing)

Появление этой технологии было вызвано резким увеличением объема трафика в Internet и, как следствие, увеличением количества маршрутов на магистральных маршрутизаторах. Так, если в 1994 году, до развертывания CIDR, таблицы маршрутизаторов содержали до 70 000 маршрутов, то после внедрения их количество сократилось до 30 000. На сентябрь 2002, количество маршрутов перевалило за отметку 110 000! Можете себе представить, сколько маршрутов нужно было бы держать в таблицах сегодня, если бы не было CIDR!

Что же представляет собой эта технология? Она позволяет уйти от классовой схемы адресации, эффективней использовать адресное пространство протокола IP. Кроме того, CIDR позволяет агрегировать маршрутные записи. Одной записью в таблице маршрутизатора описываются пути ко многим сетям.

Суть технологии CIDR состоит в том, что каждому поставщику услуг Internet (или, для корпоративных сетей, какому-либо структурно-территориальному подразделению) должен быть назначен неразрывный диапазон IP-адресов. При этом вводится понятие обобщенного сетевого префикса, определяющего общую часть всех назначенных адресов. Соответственно, маршрутизация на магистральных каналах может реализовываться на основе обобщенного сетевого префикса. Результатом является агрегирование маршрутных записей, уменьшение размера таблиц маршрутных записей и увеличение скорости обработки пакетов.

Допустим, центральный офис компании выделяет одному своему региональному подразделению сети 172.16.0.0/16 и 172.17.0.0/16, а другому -- 172.18.0.0/16 и 172.19.0.0/16. У каждого регионального подразделения есть свои областные филиалы и из полученного адресного блока им выделяются подсети разных размеров. Использование технологии бесклассовой маршрутизации позволяет при помощи всего одной записи на маршрутизаторе второго подразделения адресовать все сети и подсети первого подразделения. Для этого указывается маршрут к сети 172.16.0.0 с обобщенным сетевым префиксом 15. Он должен указывать на маршрутизатор первого регионального подразделения.

Рис. 4.6

По своей сути технология CIDR родственна VLSM. Только если в случае с VLSM есть возможность рекурсивного деления на подсети, невидимые извне, то CIDR позволяет рекурсивно адресовать целые адресные блоки.

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

Компьютерные сети Лекция 5 6 сем

Протоколы канального уровня

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

Другой областью действия протоколов канального уровня являются связи типа «точка-точка» глобальных сетей, когда протокол канального уровня ответственен за доставку кадра непосредственному соседу. Адрес в этом случае не имеет принципиального значения, а на первый план выходит способность протокола восстанавливать искаженные и утерянные кадры, так как плохое качество территориальных каналов, особенно коммутируемых телефонных, часто требует выполнения подобных действий.

Наиболее существенными характеристиками метода передачи, а значит, и протокола, работающего на канальном уровне, являются следующие:

  • асинхронный/синхронный;

  • символьно-ориентированный/бит-ориентированный;

  • с предварительным установлением соединения/дейтаграммный;

  • с обнаружением искаженных данных/без обнаружения;

  • с обнаружением потерянных данных/без обнаружения;

  • с восстановлением искаженных и потерянных данных/без восстановления;

  • с поддержкой динамической компрессии данных/без поддержки.

Многие из этих свойств характерны не только для протоколов канального уровня, но и для протоколов более высоких уровней.

Асинхронные протоколы

Асинхронные протоколы представляют собой наиболее старый способ связи. Эти протоколы оперируют не с кадрами, а с отдельными символами, которые представлены байтами со старт-стоповыми символами. Асинхронные протоколы ведут свое происхождение от тех времен, когда два человека связывались с помощью телетайпов по каналу «точка-точка». С развитием техники асинхронные протоколы стали применяться для связи телетайпов, разного рода клавиатур и дисплеев с вычислительными машинами. Единицей передаваемых данных был не кадр данных, а отдельный символ. Некоторые символы имели управляющий характер, например символ <CR> предписывал телетайпу или дисплею выполнить возврат каретки на начало строки. В этих протоколах существуют управляющие последовательности, обычно начинающиеся с символа <ESC>. Эти последовательности вызывали на управляемом устройстве достаточно сложные действия - например, загрузку нового шрифта на принтер.

В асинхронных протоколах применяются стандартные наборы символов, чаще всего ASCII или EBCDIC. Так как первые 32 или 27 кодов в этих наборах являются специальными кодами, которые не отображаются на дисплее или принтере, то они использовались асинхронными протоколами для управления режимом обмена данными. В самих пользовательских данных, которые представляли собой буквы, цифры, а также такие знаки, как @, %, $ и т. п., специальные символы никогда не встречались, так что проблемы их отделения от пользовательских данных не существовало.

Постепенно асинхронные протоколы усложнялись и стали наряду с отдельными символами использовать целые блоки данных, то есть кадры. Например, популярный протокол XMODEM передает файлы между двумя компьютерами по асинхронному модему. Начало приема очередного блока файла инициируется символьной командой - принимающая сторона постоянно передает символ ASCII NAK. Передающая сторона, приняв NAK, отправляет очередной блок файла, состоящий из 128 байт данных, заголовка и концевика. Заголовок состоит из специального символа SOH (Start Of Header) и номера блока. Концевик содержит контрольную сумму блока данных. Приемная сторона, получив новый блок, проверяла его номер и контрольную сумму. В случае совпадения этих параметров с ожидаемыми приемник отправлял символ АСК, а в противном случае - символ NAK, после чего передатчик должен был повторить передачу данного блока. В конце передачи файла передавался символ ЕОХ.

Как видно из описания протокола XMODEM, часть управляющих операций выполнялась в асинхронных протоколах посылкой в асинхронном режиме отдельных символов, в то же время часть данных пересылалась блоками, что более характерно для синхронных протоколов.

Синхронные символьно-ориентированные и бит-ориентированные протоколы

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

Кадры синхронных протоколов

Так как байты в этих протоколах не отделяются друг от друга служебными сигналами, то одной из первых задач приемника является распознавание границы байт. Затем приемник должен найти начало и конец кадра, а также определить границы каждого поля кадра - адреса назначения, адреса источника, других служебных полей заголовка, поля данных и контрольной суммы, если она имеется.

Большинство протоколов допускает использование в кадре поля данных переменной длины. Иногда и заголовок может иметь переменную длину. Обычно протоколы определяют максимальное значение, которое может иметь длина поля данных. Эта величина называется максимальной единицей передачи данных (Maximum Transfer Unit, MTU). В некоторых протоколах задается также минимальное значение, которое может иметь длина поля данных. Например, протокол Ethernet требует, чтобы поле данных содержало по крайней мере 46 байт данных (если приложение хочет отправить меньшее количество байт, то оно обязано дополнить их до 46 байт любыми значениями). Другие протоколы разрешают использовать поле данных нулевой длины, например FDDI.

Существуют также протоколы с кадрами фиксированной длины, например, в протоколе АТМ кадры фиксированного размера 53 байт, включая служебную информацию. Для таких протоколов необходимо решить только первую часть задачи - распознать начало кадра.

Синхронные протоколы канального уровня бывают двух типов: символьно-ориентированные (байт-ориентированные) и бит-ориентированные. Для обоих характерны одни и те же методы синхронизации бит. Главное различие между ними заключается в методе синхронизации символов и кадров.

Символьно-ориентированные протоколы

Символьно-ориентированные протоколы используются в основном для передачи блоков отображаемых символов, например текстовых файлов. Так как при синхронной передаче нет стоповых и стартовых битов, для синхронизации символов необходим другой метод. Синхронизация достигается за счет того, что передатчик добавляет два или более управляющих символа, называемых символами SYN, перед каждым блоком символов. В коде ASCII символ SYN имеет двоичное значение 0010110, это несимметричное относительно начала символа значение позволяет легко разграничивать отдельные символы SYN при их последовательном приеме. Символы SYN выполняют две функции: во-первых, они обеспечивают приемнику побитную синхронизацию, во-вторых, как только битовая синхронизация достигается, они позволяют приемнику начать распознавание границ символов SYN. После того как приемник начал отделять один символ от другого, можно задавать границы начала кадра с помощью другого специального символа. Обычно в символьных протоколах для этих целей используется символ STX (Start of TeXt, ASCII 0000010). Другой символ отмечает окончание кадра - ЕТХ (End of TeXt, ASCII 0000011).

Однако такой простой способ выделения начала и конца кадра хорошо работал только в том случае, если внутри кадра не было символов STX и ЕТХ. При подключении к компьютеру алфавитно-цифровых терминалов такая задача действительно не возникала. Тем не менее синхронные символьно-ориентированные протоколы позднее стали использоваться и для связи компьютера с компьютером, а в этом случае данные внутри кадра могут быть любые, если, например, между компьютерами передается программа. Наиболее популярным протоколом такого типа был протокол BSC компании IBM. Он работал в двух режимах - непрозрачном, в котором некоторые специальные символы внутри кадра запрещались, и прозрачном, в котором разрешалась передачи внутри кадра любых символов, в том числе и ЕТХ. Прозрачность достигалась за счет того, что перед управляющими символами STX и ЕТХ всегда вставлялся символ DLE (Data Link Escape). Такая процедура называется стаффингом символов (stuff - всякая всячина, заполнитель). А если в поле данных кадра встречалась последовательность DLE ЕТХ, то передатчик удваивал символ DLE, то есть порождал последовательность DLE DLE ЕТХ. Приемник, встретив подряд два символа DLE DLE, всегда удалял первый, но оставшийся DLE уже не рассматривал как начало управляющей последовательности, то есть оставшиеся символы DLE ЕТХ считал просто пользовательскими данными.

Бит-ориентированные протоколы

Потребность в паре символов в начале и конце каждого кадра вместе с дополнительными символами DLE означает, что символьно-ориентированная передача не эффективна для передачи двоичных данных, так как приходится в поле данных кадра добавлять достаточно много избыточных данных. Кроме того, формат управляющих символов для разных кодировок различен, например, в коде ASCII символ SYN равен 0010110, а в коде EBCDIC - 00110010. Так что этот метод допустим только с определенным типом кодировки, даже если кадр содержит чисто двоичные данные. Чтобы преодолеть эти проблемы, сегодня почти всегда используется более универсальный метод, называемый бит-ориентированной передачей. Этот метод сейчас применяется при передаче как двоичных, так и символьных данных.

На рис. 2.22 показаны 3 различные схемы бит-ориентированной передачи. Они отличаются способом обозначения начала и конца каждого кадра.

Способы выделения начало и конца кадра при синхронной передаче

Первая схема, показанная на рисунке, а, похожа на схему с символами STX и ЕТХ в символьно-ориентированных протоколах. Начало и конец каждого кадра отмечается одной и той же 8-битовой последовательностью - 01111110, называемой флагом. Термин «бит-ориентированный» используется потому, что принимаемый поток бит сканируется приемником на побитовой основе для обнаружения стартового флага, а затем во время приема для обнаружения стопового флага. Поэтому длина кадра в этом случае не обязательно должна быть кратна 8 бит.

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

Для достижения прозрачности данных в этой схеме необходимо, чтобы флаг не присутствовал в поле данных кадра. Это достигается с помощью приема, известного как вставка 0 бита, - бит-стаффинга. Схема вставки бита работает только во время передачи поля данных кадра. Если эта схема обнаруживает, что подряд передано пять 1, то она автоматически вставляет дополнительный 0 (даже если после этих пяти 1 шел 0). Поэтому последовательность 01111110 никогда не появится в поле данных кадра. Аналогичная схема работает в приемнике и выполняет обратную функцию. Когда после пяти 1 обнаруживается 0, он автоматически удаляется из поля данных кадра. Бит-стаффинг гораздо более экономичен, чем байт-стаффинг, так как вместо лишнего байта вставляется один бит, следовательно, скорость передачи пользовательских данных в этом случае замедляется в меньшей степени.

Во второй схеме для обозначения начала кадра имеется только стартовый флаг, а для определения конца кадра используется поле длины кадра, которое при фиксированных размерах заголовка и концевика чаще всего имеет смысл длины поля данных кадра. Эта схема наиболее применима в локальных сетях. В этих сетях для обозначения факта незанятости среды в исходном состоянии по среде вообще не передается никаких символов. Чтобы все остальные станции вошли в битовую синхронизацию, посылающая станция предваряет содержимое кадра последовательностью бит, известной как преамбула, которая состоит из чередования единиц и нулей 101010... Войдя в битовую синхронизацию, приемник исследует входной поток на побитовой основе, пока не обнаружит байт начала кадра 10101011, который выполняет роль символа STX. За этим байтом следует заголовок кадра, в котором в определенном месте находится поле длины поля данных. Таким образом, в этой схеме приемник просто отсчитывает заданное количество байт, чтобы определить окончание кадра.

Третья схема (см. рис. 2.22, в) использует для обозначения начала и конца кадра флаги, которые включают запрещенные для данного кода сигналы (code violations, V). Например, при манчестерском кодировании вместо обязательного изменения полярности сигнала в середине тактового интервала уровень сигнала остается неизменным и низким (запрещенный сигнал J) или неизменным и высоким (запрещенный сигнал К). Начало кадра отмечается последовательностью JKOJKOOO, а конец - последовательностью JK1JK 100. Этот способ очень экономичен, так как не требует ни бит-стаффинга, ни поля длины, но его недостаток заключается в зависимости от принятого метода физического кодирования. При использовании избыточных кодов роль сигналов J и К играют запрещенные символы, например, в коде 4В/5В этими символами являются коды 11000 и 10001.

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

Протоколы с гибким форматом кадра

Для большей части протоколов характерны кадры, состоящие из служебных полей фиксированной длины. Исключение делается только для поля данных, с целью экономной пересылки как небольших квитанций, так и больших файлов. Способ определения окончания кадра путем задания длины поля данных, рассмотренный выше, как раз рассчитан на такие кадры с фиксированной структурой и фиксированными размерами служебных полей.

Однако существует ряд протоколов, в которых кадры имеют гибкую структуру. Например, к таким протоколам относятся очень популярный прикладной протокол управления сетями SNMP, а также протокол канального уровня РРР, используемый для соединений типа «точка-точка». Кадры таких протоколов состоят из неопределенного количества полей, каждое из которых может иметь переменную длину. Начало такого кадра отмечается некоторым стандартным образом, например с помощью флага, а затем протокол последовательно просматривает поля кадра и определяет их количество и размеры. Каждое поле обычно описывается двумя дополнительными полями фиксированного размера. Например, если в кадре встречается поле, содержащее некоторую символьную строку, то в кадр вставляются три поля:

Дополнительные поля «Тип» и «Длина» имеют фиксированный размер в один байт, поэтому протокол легко находит границы поля «Значение». Так как количество таких полей также неизвестно, для определения общей длины кадра используется либо общее поле «Длина», которое помещается в начале кадра и относится ко всем полям данных, либо закрывающий флаг.

Передача с установлением соединения и без установления соединения

При передаче кадров данных на канальном уровне используются как дейтаграммные процедуры, работающие без становления соединения (connectionless), так и процедуры с предварительным установлением логического соединения (connection-oriented).

При дейтаграммной передаче кадр посылается в сеть «без предупреждения», и никакой ответственности за его утерю протокол не несет. Предполагается, что сеть всегда готова принять кадр от конечного узла. Дейтаграммный метод работает быстро, так как никаких предварительных действий перед отправкой данных не выполняется. Однако при таком методе трудно организовать в рамках протокола отслеживание факта доставки кадра узлу назначения. Этот метод не гарантирует доставку пакета.

Протоколы без установления соединения (а) и с установлением соединения (б)

Передача с установлением соединения более надежна, но требует больше времени для передачи данных и вычислительных затрат от конечных узлов.

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

Заметим, что, в отличие от протоколов дейтаграммного типа, которые поддерживают только один тип кадра - информационный, протоколы, работающие по процедуре с установлением соединения, должны поддерживать несколько типов кадров - служебные, для установления (и разрыва) соединения, и информационные, переносящие собственно пользовательские данные.

Логическое соединение обеспечивает передачу данных как в одном направлении - от инициатора соединения, так и в обоих направлениях.

Процедура установления соединения может использоваться для достижения различных целей.

  • Для взаимной аутентификации либо пользователей, либо оборудования (маршрутизаторы тоже могут иметь имена и пароли, которые нужны для уверенности в том, что злоумышленник не подменил корпоративный маршрутизатор и не отвел поток данных в свою сеть для анализа).

  • Для согласования изменяемых параметров протокола: MTU, различных тайм-аутов и т. п.

  • Для обнаружения и коррекции ошибок. Установление логического соединения дает точку отсчета для задания начальных значений номеров кадров. При потере нумерованного кадра приемник, во-первых, получает возможность обнаружить этот факт, а во-вторых, он может сообщить передатчику, какой в точности кадр нужно передать повторно.

  • В некоторых технологиях процедуру установления логического соединения используют при динамической настройке коммутаторов сети для маршрутизации всех последующих кадров, которые будут проходить через сеть в рамках данного логического соединения. Так работают сети технологий Х.25, frame relay и АТМ.

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

Сетевые транспортные протоколы

Прежде всего необходимо уточнить, что такое протокол.

Проще всего представить протокол как стандарт или набор правил.

Сетевые транспортные про­токолы определяют метод передачи данных по сети, а также метод их пакетирования и адресации. Чтобы два сетевых компьютера могли установить связь, они должны использовать одинаковые транспортные протоколы, поскольку протокол определяет метод пакетирования и обмена данными.

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

Протоколы NetBEUI, IPX/SPX и TCP/IP работают на сетевом и транспортном уровнях модели OSI. Поскольку они работают на нескольких уровнях, их нередко называют стеками протоколов, а не просто протоколами.

Современные операционные системы могут одновременно поддерживать несколько протоколов, поэтому вы всегда можете использовать для уста­новления связи протокол нужного типа. К сожалению, не все операционные системы поддерживают все транспортные протоколы. Фактически они "склонны" к специализации, и даже некоторые протоколы с одинаковыми именами невозможно использовать на всех платформах. Однако в настоящее время возможности операционных систем в достаточной мере перекрываются, что допускает связь и взаимодействие между ними.

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

Протокол NetBEUI

Давным-давно, когда IBM только вышла на рынок сетей персональных компьютеров, ей понадобился базовый сетевой протокол. Фирма не собиралась создавать крупные сети, а предусматривала организовывать небольшие рабочие группы, не более нескольких десятков компьютеров.

Исходя из такой задачи и была разработана базовая сетевая система ввода-вывода — NetBIOS. Она представляет собой набор из 18 команд, которые позволяют создавать, поддерживать и использовать соединения между сетевыми компьютерами. Вскоре IBM дополнила NetBIOS, создав расширенный пользовательский интерфейс среды NetBIOS — NetBEUI. По существу NetBEUI — усовершенствованный вариант NetBIOS. Однако со временем имена NetBEUI и NetBIOS приобрели разный смысл.

NetBEUI обозначает транспортный протокол, в то время как NetBIOS — набор про­граммных команд, используемых системой для управления сетью. Обращаясь к модели OSI, можно отметить, что NetBIOS работает на сеансовом уровне, в то время как NetBEUI — на сетевом и транспортном.

NetBEUI относится к числу наиболее скоростных протоколов (с точки зрения скорости пакетирования данных для передачи и извлечения их получателем из пакета). Кроме того, он прост в установке: вы устанавливаете протокол, "привязываете" его к сетевому драйверу и можете приступать к работе. Не требуется никакого конфигурирования, а в качестве адресов компьютеров используются присвоенные вами же имена компьютеров, которые нетрудно запомнить.

Необходимо иметь в виду, что имена компьютеров в сетях, использующих протокол NetBEUI, фактически пред­ставляют собой имена NetBIOS. Длина имен не должна превышать 16 символов, а регистр не имеет значения.

Применение NetBEUI ограничивает серьезная проблема: этот протокол не поддерживает маршрутизацию. Иными словами, если ваша сеть состоит из нескольких сегментов, то нет возможностие использовать его для передачи данных за пределы локального сегмента. Кроме того, он поддерживается только операционными системами Microsoft и OS/2, и если планируется связываться с файловым сервером, работающим под управлением, например, операционной системы UNIX или сервером печати NetWare, то необходимо применять более сложные протоколы..

В настоящее время использование NetBEUI ограничено. Быстродействие протокола TCP/IP возросло, так что NetBEUI потерял былое преимущество в производительности. А вот, если требуется работа в Internetе, то необходимо использовать TCP/IP — основной протокол этой сети. И даже несмотря на то, что некоторые приложения NetBIOS требуют поддержки протокола NetBEUI, в настоящее время с тем же успехом можно использовать NetBIOS "поверх" (over) протокола IP.

В целом же протокол NetBEUI нельзя назвать совсем бесполезным, но применимость его ограничена небольшими сетями, состоящими из един­ственного узла, которым не нужна связь с Internet и другими сетями.

Протокол IPX/SPX

Транспортный протокол IPX/SPX — интеллектуальная собственность фирмы Novell. Фактически он состоит из двух протоколов: IPX и SPX. IPX (Internet Package Exchange — межсетевой обмен пакетами) — протокол сетевого уровня, не ориентированный на установление соединения (connec­tionless). Он отвечает за поиск наилучшего пути передачи пакетов к месту назначения и за отбор их по прибытии, управляет адресацией и маршрути­зацией пакетов. Таким образом, на уровне IPX назначают логические сетевые адреса (в отличие от адресов аппаратных средств, которые используют на канальном уровне и "зашиты" изготовителями в сетевые платы). IPX-адрес состоит из четырехбайтового (32-битового) сетевого номера и шестибайтового (48-битового) узлового номера.

Что означают эти номера?

Сетевой номер, называемый также внешним сетевым адресом, идентифицирует физический сегмент, к которому под­ключен компьютер. Если в сегмент входят несколько серверов, они должны использовать единый внешний адрес.

Необходимо иметь в виду, что внешние сетевые адреса присваивают только серверам NetWare. Клиентные машины сетей NetWare наследуют эти адреса от серверов, с которыми устанав­ливают связь.

Узловой номер, или внутренний сетевой адресэто обычно адрес аппа­ратных средств сетевой платы компьютера, что очень удобно, поскольку избавляет от необходимости транслировать имена, назначенные про­граммными средствами (software-assigned names) в имена аппаратных средств.

Ниже показан формат полного IPS-адреса сети NetWare.

Внешний Внутренний

1C9FDB42: 2E702A1D IPX-адрес

Следует обратить внимание на тот факт, что протокол IPX управляет маршрутизацией. Иными словами, протокол IPX/SPX, в отличие от NetBEUI, относится к маршру­тизируемым протоколам. Поэтому с его помощью можно соединять сегменты сети, разделенные маршрутизаторами. Чтобы найти наилучший путь, каждые 60 с в сети с протоколом IPX (средствами протокола RIP (Routing Information Protocol — обмен информации о маршрутизации) или NLSP (NetWare Link Service Protocol — обслуживание каналов NetWare)) передается широковещательный запрос (broadcast), т.е. посылается в пред­полагаемое место по всем известным каналам. После этого возвращается своеобразное "эхо". По времени задержки эхо-сигнала определяется крат­чайший путь, ведущий в заданное место. Подобный метод имеет единст­венный недостаток: протокол IPX/SPX слишком "шумный" — постоянно обновляя текущие маршруты данных, оборудование генерирует значительный сетевой трафик.

Поскольку IPX не поддерживает обработку ошибок, в некоторых случаях он дополняется средствами протокола SPX (Sequenced Package Exchange — последовательный обмен пакетами). Этот протокол транспортного уровня ориентирован на установление соединений. Он гарантирует установление надежного соединения перед отправлением данных по сети. Поскольку протокол SPX обеспечивает корректность работы соединения, то отвечает за обработку искаженных пакетов и других ошибок. Его основные функции заключаются в вычислениях в среде пар клиент/сервер, которым необходима связь, исключающая ошибки.

Протоколы IPX и SPX являются собственностью фирмы Novel, но благодаря протоколам, совместимым с IPX/SPX, их применение не огра­ничено сетями NetWare. Аналогичные протоколы отличаются от исходного, но могут устанавливать с ним связь. Эти совместимые протоколы позво­ляют сетям Microsoft устанавливать связь с сетями NetWare, хотя в них и не используется общий транспортный протокола. Протоколы NetWare IP и TCP/IP фирмы Microsoft друг с другом не совместимы.

Протокол TCP/IP

TCP/IP разработан ARPANET (Сеть перспективных исследований и разработок) по заказу министерства обороны США. Предназначен для соединения сетей с разнородным оборудованием, например, мэйнфреймов — с персональными компьютерами.

Каждая половина имени протокола "TCP/IP" означает его ориентированность на решение собственной задачи.

Строго говоря, TCP/IP состоит не из двух частей - фактически это набор из нескольких протоколов. Однако аббревиатуры IP и TCP известны лучше всех, так что здесь мы и остановимся на них.

Протокол Internet (IP — Internet Protocol) работает на сетевом уровне, предоставляя различным сетям стандартный набор правил и спецификаций для межсетевой пакетной маршрутизации с помощью IP-адресов. Протокол IP позволяет устанавливать связь как между локальными сетями, так и между отдельными компьютерами. С другой стороны, протокол управления передачей данных (TCP — Transmission Control Protocol) работает на транс­портном уровне модели OSI. Он обеспечивает прием сетевой информации и трансляцию ее в форму, "понятную" сети, и таким образом организует взаимодействие процессов между двумя компьютерами или клиентами. IP можно представить себе как часть, задающую правила установления связи, a TCP — как часть, отвечающую за интерпретацию данных.

Вы можете сами оценить работу TCP/IP по тем задачам, которые он решает. Это — транспортный протокол Internet, системы, соединяющей тысячи отдельных компьютеров и сетей по всей планете. Хотя TCP/IP первоначально предназначался для использования университетами и армией, он стал самым популярным протоколом и офисных приложений, так как позволяет соединять локальные сети, UNIX-машины, миникомпыотеры DEC VAX, а также и множество компьютеров иных типов.

Что происходит, если удаленный компьютер Macintosh отсылает данные на персональный компьютер главного офиса? Во-первых, средства прото­кола TCP обеспечивают установление связи, гарантирующей дуплексный контроль ошибок (контроль ошибок данных в обоих направлениях) между обеими платформами. Во-вторых, IP задает правила установления связи и обеспечивает соединение портов компьютеров. К этому времени в соот­ветствии с TCP подготавливаются данные. Соответствующая программа забирает их, разделяет на меньшие части, если их объем слишком велик, и вставляет в пакет новый заголовок ("адрес пересылки"), чтобы гарантировать правильную доставку пакета. Кроме того, в пакете указывается тип содер­жащихся данных и их объем. Затем пакет конвертируется в стандартный зашифрованный формат и передается на персональный компьютер главного офиса. Наконец, программа, установленная на персональном компьютере в главном офисе, транслирует шифрованный пакет в собственный формат в соответствии с TCP. Этот процесс показан на рисунке.

Во многих сетях, разбросанных по всему миру, протокол TCP/IP используется как стандартный. Это — единственное средство коммуникации, позволяющее связываться рабочим станциям всех типов — PC, Macintosh, UNIX. Кроме того, он необходим для выхода в Internet. TCP/IP работает несколько медленнее NetBEUI, однако издержки производительности компенсируются широкой поддержкой протокола. И действительно, лучше работать несколько медленнее, но иметь возможность связаться со всем миром, чем быстрее, но в пределах небольшой рабочей группы.

Требования к конфигурированию TCP/IP

Один из недостатков протокола TCP/IP состоит в трудности его уста­новки неопытными пользователями, поскольку необходимо задать множество адресов и серверов. Как указывалось ранее, установка адресов протоколов NetBEUI и IPX/SPX не встречает затруднений. При использовании NetBEUI вы назначаете имя компьютера, а при IPX/SPX — идентификатор сети (network identifier) и позволяете системе назначить собственный иден­тификатор узла (node identifier), основываясь на адресе аппаратных средств сетевой платы компьютера. Однако протокол TCP/IP требует указания множества адресов, а именно:

  • локальный IP-адрес;

  • IP-адрес сервера DNS (Domain Name Service — служба имен домена), который транслирует легко запоминаемые человеком адреса, например, computer.company.com, в IP-адреса;

  • в сетях Windows NT, использующих имена NetBIOS для идентификации компьютеров, следует указать IP-адрес сервера WINS (Windows Internet Name Service — система присвоения имен Internet для Windows), который транслирует имена NetBIOS в IP-адреса;

  • шлюз (gateway) по умолчанию (т.е. портал (главный вход) в следующий сегмент сети), который необходим также и для доступа в Internet;

  • число (называемое маской подсети), идентифицирующее сетевой сегмент, в котором расположен данный компьютер;

  • если задействовано динамическое присвоение IP-адресов, следует указать IP-адрес сервера, назначающего IP-адреса.

Если вы уже хоть немного работали в Internet, вероятно, вам знакома концепция IP-адресов. Говоря упрощенно, они представляют собой 32-бито­вые (четырехбайтовые) числа, которые идентифицируют сетевой компьютер.

По сути, это программный адрес компьютера, в отличие от аппаратного адреса, "зашитого" в сетевую плату. В двоичном формате IP-адрес выглядит примерно так:

11000000 01101010 01111110 11000001

В таком виде его нелегко понимать пользователям, за исключением разве что программистов (и компьютеров). Поэтому, исключительно для удобства, IP-адреса обычно записывают в формате октетов, разделенных точками. В этом формате каждый байт из 32 битов номера преобразуется в десятичное число.

192.106.126.193

Каждой сетевой плате, работающей в сети TCP/IP, присваивается уникальный IP-адрес, идентифицирующий ее во всей сети, а не только в локальном сегменте.

Откуда берутся эти IP-адреса? Где узнать, какие числа следует включать в них? Ответ зависит от "области охвата" вашей сети. Если вы создаете IP-адреса для локальной сети TCP/IP, которая никогда не будет подключена к Internet, то можете назначать их до некоторой степени произвольно (достаточно помнить, что двум сетевым платам нельзя назначать одинаковый адрес). Если же вы собираетесь подключиться к Internet, необходимо получить уникальные IP-адреса, обратившись в международную организацию InterNIC.

InterNIC — единственная организация, которая уполномочена выделять IP-адреса заинтересованным фирмам и организациям. В первом прибли­жении можно считать, что она выделяет группы IP-адресов, основываясь на размерах организаций. С этой целью InterNIC предоставляет организации конкретные числа для первого байта (первых двух, или трех байтов), а для назначения остальных адресов позволяет организации использовать ос­тавшиеся номера по собственному усмотрению. Так, например, если вы запросили у InterNIC набор адресов Internet, вам могут предоставить набор, скажем, 192.106.Х.Х. Это означало бы, что все ваши IP-адреса должны начинаться с префикса 192.106, но вы можете назначить номера (вплоть до 255) по собственному усмотрению остальным двум октетам. Часть, назначенную InterNIC, называют полем сети адреса, а ту, что назначена вами, — полем узла (host portion).

Кроме назначения IP-адресов придется еще создать файл, сопоставляющий имена компьютеров с IP-адресами. Этот файл должен поддерживаться и постоянно обновляться на каждом сетевом компьютере. Чтобы упростить задачу, можно запустить сервер DHCP (протокол динамического конфигурирования компьютера), чтобы взять IP-адреса из специального буфера, а затем использовать серверы WINS или DNS для преобразования имен в адреса. Серверы WINS работают с именами NetBIOS, a DNS - с доменными именами.

Краеугольный камень адресации Internet заключается в идентификации не собственно компьютера, а подсети, т.е. той части сети, в которую компь­ютер входит. Это достигается не с помощью внешнего сетевого адреса, как в адресах IPX/SPX, а с масками подсети. Маска подсети — число, которое можно "наложить" на IP-адрес. Если сетевая часть IP-адресов компьютеров совпадает с ней, значит, машины находятся в одной подсети. В противном случае, два IP-адреса относятся к разным подсетям.

Установить связь между двумя компьютерами одной подсети несложно. Оборудование передает данные (в соответствии с требованиями протокола TCP/IP) с помощью широковещательной передачи, а компьютер, адрес которого совпадает с указанным в пакете IP, принимает данные. Если компьютеру одной подсети необходимо связаться с компьютером в другой, — запрос должен поступить на маршрутизатор, соединяющий подсети. Маршрутизатор просматривает сетевой адрес места назначения, определяет, находится ли он в данной подсети или нет, а затем направляет пакет в следующую подсеть. Затем этот маршрутизатор проверяет IP-адрес места назначения, определяет, находится ли он в данной подсети, и вслед за этим либо передает сообщение с помощью широковещательной передачи, либо снова направляет пакет в следующую подсеть. Эта процедура продолжается до обнаружения нужной подсети.

Когда пакет поступает в место назначения, протокол определения адреса (ARP) преобразует IP-адрес в аппаратный адрес сетевой платы. Помимо того, протокол ARP отвечает за трансляцию адресов исходящих данных.

Компьютерные сети Лекция 6 6 сем

Стандарт Ethernet

Алгоритма организации обмена данными

Метод управления обменом CSMA/CD

Метод управления обменом CSMA/CD (Carrier-Sense Multiple Access with Collision Detection – множественный доступ с контролем несущей и обнаружением коллизий) относится к децентрализованным случайным (точнее, квазислучайным) методам. Он используется как в обычных сетях типа Ethernet, так и в высокоскоростных сетях (Fast Ethernet, Gigabit Ethernet). Поскольку характеристики и области применения этих популярных на практике сетей связаны именно с особенностями используемого метода доступа, его стоит рассмотреть более подробно.

В сетях типа Ethernet и Fast Ethernet в качестве несущей выступает синхросигнал, «подмешиваемый» к передаваемым данным таким образом, чтобы обеспечить надежную синхронизацию на приемном конце. Это реализуется за счет организации (при необходимости) дополнительных принудительных переходов сигнала между двумя (как в коде Манчестер-П) или тремя электрическими уровнями (как в коде типа 8В6Т, используемом в сегменте Fast Ethernet 100BaseT4 на основе четырех неэкранированных витых пар). По сравнению с классическим методом CSMA в методе CSMA/CD добавлено обнаружение конфликтов (коллизий) во время передачи, что повышает скорость доставки информации.

При описании временных диаграмм сетей типа Ethernet и Fast Ethernet, а также предельных размеров пакетов (кадров) широко используются следующие термины:

  • IPG (interpacket gap, межпакетная щель) – минимальный промежуток времени между передаваемыми пакетами (9,6 мкс дляEthernet / 0,96 мкс для Fast Ethernet). Другое название – межкадровый интервал.

  • ВТ (Bit Time, время бита) – интервал времени для передачи одного бита (100 нс для Ethernet / 10 нс для Fast Ethernet).

  • PDV (Path Delay Value, значение задержки в пути) – время прохождения сигнала между двумя узлами сети (круговое, то есть удвоенное). Учитывает суммарную задержку в кабельной системе, сетевых адаптерах, повторителях и других сетевых устройствах.

  • Collision window (окно коллизий) – максимальное значение PDV для данного сегмента.

  • Collision domain (область коллизий, зона конфликта) – часть сети, на которую распространяется ситуация коллизии, конфликта.

  • Slot time (время канала) – максимально допустимое окно коллизий для сегмента (512• ВТ).

  • Minimum frame size – минимальный размер кадра (512 бит).

  • Maximum frame size – максимальный размер кадра (1518 байт).

  • Maximum network diameter (максимальный диаметр сети) -максимальная допустимая длина сегмента, при которой его окно коллизий не превышает slot time, времени канала.

  • Truncated binary exponential back off (усеченная двоичная экспоненциальная отсрочка) – задержка перед следующей попыткой передачи пакета после коллизии (допускается максимум 16 попыток). Вычисляется она по следующей формуле:

RAND(0,2min(N,10)) x 512 x ВТ

где N – значение счетчика попыток, RAND(a, b) – генератор случайных нормально распределенных целых чисел в диапазоне а...b, включая крайние значения. Дискрет изменения данного параметра равен минимальной длине пакета или максимально допустимой двойной задержке распространения сигнала в сети (PDV).

Алгоритм доступа к сети

На рисунке показана структурная схема алгоритма доступа к сети в соответствии с методом CSMA/CD для одного из абонентов, имеющих данные (кадры) для передачи.

В начале из кадра, предназначенного для передачи, абонент (узел) формирует пакет. Далее при обозначении блоков информации, передаваемых по сети при использовании алгоритма CSMA/CD, понятия «кадр» и «пакет» не различаются, что не совсем правильно, но соответствует сложившейся практике.

Если после подготовки пакета сеть свободна, то абонент (узел) имеет право начать передачу. Но в первую очередь он должен проверить, прошло ли минимально допустимое время IPG после предыдущей передачи. Только по окончании времени IPG абонент может начать передачу битов своего пакета.

После передачи каждого бита абонент поверяет наличие конфликта (коллизии) в сети. Если коллизий нет, передача битов продолжается до окончания пакета. В этом случае считается, что передача прошла успешно.

Если после передачи какого-то бита обнаружена коллизия, то передача пакета прекращается. Абонент (узел) усиливает коллизию, передавая 32-битовый сигнал ПРОБКА (JAM) и начинает готовиться к следующей попытке передачи. Сигнал ПРОБКА гарантирует, что факт наличия коллизии обнаружат все абоненты, участвующие в конфликте.

После передачи сигнала ПРОБКА абонент, обнаруживший коллизию, увеличивает значение счетчика числа попыток (перед началом передачи счетчик был сброшен в нуль). Максимальное число попыток передачи должно быть не более 16, поэтому если счетчик попыток переполнился, то попытки передать пакет прекращаются. Считается, что в этом случае сеть сильно перегружена, в ней слишком много коллизий. Эта ситуация – аварийная, и обрабатывается она на более высоких уровнях протоколов обмена.

Если же количество попыток не превысило 16, то производится вычисление величины задержки по приведенной формуле.

RAND(0,2min(N,10)) x 512 x ВТ

где N – значение счетчика попыток, RAND(a, b) – генератор случайных нормально распределенных целых чисел в диапазоне а...b, включая крайние значения.

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

Если в момент возникновения заявки на передачу (после окончания подготовки пакета) сеть занята другим абонентом, ведущим передачу, то данный абонент ждет освобождения сети. После освобождения сети он дол-жен выждать время IPG после предыдущей передачи по сети до начала собственной передачи. Это связано с конечным быстродействием узлов, осуществляющих проверку наличия несущей (занятости среды каким-либо передающим абонентом).

Таким образом, получается, что метод CSMA/CD не только не предотвращает коллизии, наоборот, он их предполагает и даже провоцирует, а затем разрешает. Например, если заявки на передачу возникли у нескольких абонентов во время занятости сети, то после ее освобождения все эти абоненты одновременно начнут передачу и образуют коллизию. Коллизии появляются и в случае свободной сети, если заявки на передачу возникают у нескольких абонентов одновременно. В обоих случаях под словом «одновременно» понимается «в пределах интервала двойного прохождения сигнала по сети», то есть в пределах 512-битовых интервалов. Точно так же в пределах 512-битовых интервалов обнаруживаются все коллизии в сети.

Если коллизия обнаруживается раньше 480 – битового интервала, то в результате в сети образуются пакеты, длина которых меньше нижнего установленного предела в 512 – битовых интервалов (64 байта) даже с добавлением сигнала ПРОБКА. Такие пакеты (кадры) называются карликовыми (runt frames). Если же коллизия обнаруживается в конце 512-битового интервала (после 480 – битового интервала), то в результате может получиться пакет допустимой длины (вместе с сигналом ПРОБКА). Такие пакеты называть карликовыми не совсем корректно. Сигнал ПРОБКА, образующий 32 последних бита пакета, выступает в виде контрольной суммы пакета. Однако вероятность того, что ПРОБКА будет соответствовать правильной контрольной сумме пакета, бесконечно мала (примерно 1 случай на 4,2 миллиарда).

Коллизии (наложения пакетов в процессе передачи) могут и должны обнаруживаться до окончания передачи. Действительно, анализ принятого в конце каждого пакета поля FCS, фактически содержащего помехо-устойчивый циклический код CRC (Cyclic Redundancy Check), привел бы неоправданному снижению скорости передачи.

Практически коллизии обнаруживаются либо самим передающим абонентом, либо повторителями в сети, возможно, задолго до окончания передачи заведомо испорченного пакета. Если учесть, что длина пакетов в локальной сети типа Ethernet / Fast Ethernet может лежать в диапазоне от 64 до 1518 байт, то досрочное прекращение передачи и освобождение линии означает заметное повышение эффективности использования ее пропускной способности.

Первым признаком возникновения коллизии является факт получения сигнала ПРОБКА передающим абонентом во время передачи пакета. Другие признаки связаны с неверным форматом пакетов, передача которых была досрочно прекращена из-за возникновения коллизии:

  • длина пакета меньше 64 байт (512 бит);

  • пакет имеет неверную контрольную сумму FCS (точнее, неверный циклический код);

  • длина пакета не кратна восьми.

Наконец, в таких сетях как Ethernet используется код Манчестер-П и аппаратный способ определения коллизии, основанный на анализе отклонения среднего значения сигнала от нуля.

Даже при загруженной сети для одного абонента число подряд следующих коллизий обычно не превышает 3. Этому способствует случай-ный характер возникновения запроса на передачу и случайная дискретная величина отсрочки следующей попытки передачи при возникновении коллизии. Число коллизий тем больше, чем больше диаметр (размер) сегмента и чем дальше расположены друг от друга абоненты с интенсивным трафиком.