Р.Л. Смелянский - Компьютерные сети. Том 2. Сети в ЭВМ (1130083), страница 17
Текст из файла (страница 17)
дет нести свой заголовок. Если в предыдугдем случае исходный пакет ' восстанавливался сразу после прохождения транспортной среды с . малым размером пакета, то теперь фрагменты исходного пакета пои-; дут со своими заголовками до получателя. Отдельную проблему представляет собой нумерация фрагментов, принадлежащих разным пакетам. Эта нумерация должна обеспечивать не только восстановление исходного пакета, но и восстановление утерянных или поврежденных при передаче фрагментов. С некоторыми решениями этой проблемы можно познакомиться в 149].
Наилучший подход к решению этой проблемы состоит в определении минимального размера фрагмента, который бы прохолил через любую транспортную среду между отправителем и получателем. Заметим, что в случае использования транспортных сред, ориентированных на виртуальные соединения, такой размер определить несложно, а вот в случае использования лейтаграмм — это действительно проблема. При этом если какая-то промежуточная транспортная среда пропу- 72 ""ссчюет'фрагменты размера, больпеего, чем минимальный, то в пакете ',:лясой транспортной среды можно объединить несколько минималь- -~,~ фрагментов 2.5. Сетевой уровень в Интернете ж.б. 1. Общие сведения Интернет на сетевом уровне можно рассматривать как объедине.
-::т)осе транспортных сред или сетей, которые называются автономными ' '~$$йтемамн ',.'мвввтономная система — это сеть, охватываюшая единую терри;~)зйю, находяшаяся под единым административным управлением и „"~~Веющая единую систему правил маршрутизации (политику марш.)ф~изации) по отношению ко всем остальным сетям. В Интернете "~ф,'какой-либо регулярной специально предусмотренной структуры -задачей.
Это соединение большого числа сетей, среди которых можно 'дфйвлить несколько магистральных (Ьас1Ьопе). К этим магистраль,~фу сетям подключены региональные сети, к которым, в свою оче.~а$, подключены локальные сети организаций. На рис. 2.22 показан "вв)ямер такого соединения сетей '".„~тВсе автономные системы взаимодействуют через!Р-протокол Й~~тличие от других протоколов сетевого уровня !Р-протокол с самого йявала создавался для объединения сетей. Его целью было наилучшим .,:фрсазом передавать дейтаграммы от одной машины к другой, где бы 'ял)амашины ни находились Система линий в Европе ,:,"~ъделенные Система линий в России г , ')чрреии в в, Кольцо РРР! Рис. 2.22. Интернет как сеть, состоящая из множества сетей.
А 2..0 — точки подключение 73 Как уже отмечалось, сетевой уровень в Интернете реализует сервис без соединений и работает следующим образом. Транспортный уровень получает поток данных и делит их на дейтаграммы. Дейтаграммы, которые могут содержать от 1,5 до 64 Кбайт, переда1отся через сети в Интернет и, если необходимо, делятся на более короткие. Когла все дейтаграммы достигают места назначения, они собираются в исходные дейтаграммы на сетевом уровне и передаются на транспортный уровень, где восстанавливается исходный поток данных.
2.5.2. 1Р-протокол В настоящее время в Интернете действуют две версии 1Р-протокола: 1Рч4 и 1Рчб. Начнем рассмотрение с более ранней версии 1Рч4, а затем рассмотрим и 1Рчб, поэтому если противное не оговорено, то сейчас под 1Р-протоколом мы будем понимать 1Рч4. На рис. 2.23 показан заголовок 1Р-пакета (дейтаграммы), имеющий обязательную часть размером 20 байт, которая может быть расширена до 60 байт. Дейтаграмму передают начиная с поля Уегаоп. Назначение полей заголовка следующее: Уегз)оп — указывает версию 1Р-протокола; 1Н1. — длина заголовка, который может содержать от 5 до 60 32- разрядных слов; Туре о( аегч)се — вид необходимого сервиса.
Здесь можно указать различные комбинации скорости и надежности (например, передача голоса, аккуратная доставка строки битов, файла и т.п.), а также задать приоритет дейтаграммы; Тога) 1епяг)т — указывает общую длину пакета, включая заголовок и поле данных. Максимальная длина составляет 65 535 байт; 32 бит расе Рис. 2.23. Заголовок 1Р-пакета !:!''-,"::, ' 1депбйсаг1оп — позволяет отличать фрагменты одного и того же ' =:.цвкета,'т. е, указывает, какому пакету принадлежит очередной посту- :, цнвший фрагмент.
Все фрагменты одного и того же пакета имеют в '":дтоМ поле одно и то же значение; Рà — признак управления фрагментацией, причем если он равен 1, '::.~о фрагментация невозможна, Мà — содержит единицу у всех фрагментов пакета кроме послед- ',:=:,йвго. Это поле позволяет отличить послелний фрагмент от всех йстальнгях, Ргайшеп! о1Тзе! — указывает, где в пакете располагается данный -- фрагмент пакета. Длина всех фрагментов, кроме последнего, должна ,,"~быть кратна 8 байт.
Поскольку поле имеет 13 разрядов, то у одного ";;:,:пикета максимально может быть 8 192 фрагментов. Таким образом, яг21ина минимального фрагмента равна 8 байт, ., !'':.: Типе го 1Ье — время жизни пакета. Максимальное значение этого ,;:„-:,",зайдя составляет 255 с. Очень часто здесь используется счетчик :::.,скачков; Ргогосо1 — показывает, какому протоколу на транспортном уровне ~~~!передать собранную дейтаграмму (ТСР, АЗОР и т.д.). Неадег сИес1гзшп — контрольная сумма, охватывающая только «!заголовок; ч;;.,:, '.. Боцгсе аЫгезгь Оезйпаггоп аг1бгезз — идентифицируют машину :",!8пправителя и получателя на сетевом уровне; Оргюпз — необязательная часть заголовка, предусмотренная для ":-,расширения возможностей протокола, которая может иметь следу- ;:"".: ~ющие поля ° Бесипйу — указывает уровень секретности передаваемой инфор- .",,'~мации.
Маршрутизатор может на основании значения этого поля :,,-зайретить определенные маршруты, например если они пролегают ;~;:„-:аррез небезопасные регионы, ','А Бгпсг зоигсе гош!п8 — указывает полный маршрут в виде списка :,,"',сР-адресов, Используется в алгоритме маршрутизации от источника, ;:!.4:также в критических ситуациях, например когда таблица маршру- ;:.:.Фйзации по какой-то причине оказалась испорченной, ° 1.созе воцгсе юшш8 — список маршрутизаторов, через которые :.;,ФРагмент обязан пройти.
Фрагмент может пройти и через другие -:.':: Маршрутизаторы, но перечисленные здесь обязательно должны при,"надлежать его маршруту, ° Кесогд гоше — указывает маршрутизаторам на необходимость ';:'заносить в поле свои адреса. Это позволяет проследить маршрут, ко- !'; '!срым следовал фрагмент, Типе машр — вместе с полем Кесогг! гоше указывает маршру;.'ГИзаторам на необходимость записывать не только свои адреса, но ';, И, время, когда фрагмент проходил через них. Это поле очень полезно '- '!фи отладке алгоритмов маршрутизации Более подробное описание заголовка !Р-протокола см. в !14! 2.5.3. 1Р-адресация 32 бит Область алресо- ванных Класс 1.0.0.0- 127.255.255.255 128.0.0.0- 191.255.255.255 192.0.0.0- 223.255.255.255 224.0.0.0- 239.255.255.255„! 240.0.0.0- 247.255.255.255 -',; Хост А 0 Сеть В !О Сеть Хост Хост Сеть С 1!0 Групповой адрес Р н!0 В пно Зарезервировано для использования в буду!нем Рис.
2.24. Форматы !Р-адресов 000000000000000000000000000000000000 Данный хост Хост данной сети Вещание на тюкальную сеть Вещание на удаленную сеть ' Кольцевая проаеркаяинии 00 Хост 00 11111!11!!1!1111!11111!11!111!111!11 Сеть 11! 1 1! 1! (Любые значения) 127 Рис. 2.25. Специальные !Р-адреса 76 Каждая машина в Интернете имеет уникальный! Р-адрес, состоя! ший из адреса сети и адреса машины в этой сети.
Все 1Р-адреа' имеют длину 32 разряда. На рис. 2.24 показаны форматы 1Р-адресов Если машина подключена к нескольким сетям, то в каждой сети у не, будут свой 1Р-адрес и своя сетевая карта. Все адреса на сетевом уровне а ТСР7! Р подразделяются на класс ' Всего сушествует пять классов адресов: А, В, С, 13, Е. В классе А адрб' сети занимает 7 бит, под адрес машины в сети выделяется 24 би" Таким образом, класс А позволяет адресовать до 126 сетей по 16 мд" машин в каждой. В классе В под адрес сети вьшелено 14 разрядов;," под адрес машины в сети — !6. Тем самым класс В позволяет адре' совать 16 382 сетей по 64 000 машин в каждой.
В классе С под адр " сети отдано 19 разрядов, а под адрес машины — 8, т.е. 2 млн сетей п' 256 машин. Адреса класса.0 предназначены для групповой передач ' ' а класса Š— зарезервированы для развития. Адреса выделяет только организация 1п!егпег 1х!е!есор 1п1оппаг1о' Сеп!ег (три'у. 1п1еппс. пет). На рис. 2.25 показаны 1Р-адреса, имеюшие специальное назнач"' ние.
1Р-адрес с нулевым адресом сети используют для адресац ' машин одной и той же сети. При этом необходимо соблюдать класс сети и соответственно число нулей в поле адреса сети. Адрес из одних ; —,:,;-.. ' ' нулей соответствует машине, на которой располагается программное обеспечение, используемое при загрузке машины, обратившейся по этому адресу. Алрес из одних единиц относится ко всем машинам в данной сети. Если единицы проставлены только в поле адреса машины, то такой адрес обозначает все хосты* в сети, адрес которой указан ,в поле адреса сети.
Ну, и, наконец, адрес с номером сети 127 исполь зуется для тестирования сетевого программною обеспечения, когда сетевой интерфейс хоста заворачивает пакет с таким адресом себе же на вход. Адрес! Р записывают в виде четырех десятичных чисел, раз- деленных точками. в 2.5.4. Подсети Все машины, принадлежагцие одной и той же сети, должны иметь одинаковый номер сети в своем адресе. Это приводит к целому ряду ':;:;;.-',." проблем. По мере роста сети организации приходится изменять класс сети. Появление новых адресов приводит к проблеме повсеместной ."а;::::,. модификации таблиц маршрутизации и распространению информа- ции о новых адресах.