Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Сетевой уровень сети Internet






 

Сетевой уровень Internet использует протокол IP (Internet Protocol) и протокол управляющих сообщений Internet (ICMP). Модуль IP выполняет основную работу сетевого уровня и поэтому в дальнейшем основное внимание в пособие уделяется этому протоколу.

Адресация в сети Internet. Адрес в сети Internet может иметь несколько IP- адресов. Длина адреса в сети Internet составляет 32 бита или 4 байта. IP ‑ адрес может представляться в двоичном виде, в записи «десятичное с точкой» и в символьном виде. IP ‑ адрес в двоичном виде представляется следующим образом:

IP = 11000000 01100110 11111001 00000011.

Этот же адрес «десятичное с точкой» можно представить так:

IP = 192.102.249.3.

Для задания IP ‑ адресов широко используется система имен доменов (Domain Name System, DNS). Система имен доменов позволяет обращаться к сетевым компьютерам не только по их IP ‑ адресам, но и по индивидуальным адресам, например, вместо IP ‑ адреса 192.102.249.3 можно задать имя компьютера SONET.com.

Каждое из составляющих имени, например, ftp.microsoft.com, называется меткой. В данном случае имя компьютера состоит из трех меток: ftp, microsoft и com. Метки отделены друг от друга точками.

Термин «домен» определяется как сфера деятельности, отношений или выполнения каких-либо совместных функций. Метка ftp означает, что данный компьютер является хостом ftp, то есть на нем работает ftp ‑ сервер. Метка microsoft описывает организацию (сферу деятельности), которой принадлежит компьютер ‑ корпорации Microsoft. Метка com обозначает, что данный компьютер выполняет коммерческие функции.

Структура DNS похожа на структуру дерева каталогов. На вершине иерархии находится корневой каталог, не имеющий имени. Каждый домен DNS может разделяться на несколько поддоменов. На рис. 47 показана иерархическая структура системы имен доменов Internet.

 


 
 

Следующий после корневого уровень состоит из трех групп доменов верхнего уровня:

· Arpa ‑ это специальный домен, необходимый для преобразования IP ‑ адресов в имена DNS.

· Группа организаций, к которой принадлежит владелец данной сети. Она обозначается трехбуквенной меткой, например com, edu или gov.

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

Домены второй группы разделены на шесть основных категорий (табл. 4).

 

Таблица 4

Домен Назначение
Com Коммерческие организации
Edu Образовательные учреждения
Gov Правительственные учреждения США
Int Международные организации
Mil Военные организации США
Net Сеть, не относящаяся к вышеперечисленным категориям
Org Организации, не относящиеся к вышеперечисленным категориям

 

Общую координацию регистрации доменных имен выполняет Интернет Корпорация по распределению адресов и имен (The Internet Corporation for Assigned Names and Numbers, ICANN). ICANN передает полномочия по присвоению имен различным организациям. Каждая несет ответственность за некоторую ветвь общей DNS. Ветвь в иерархии, за которую отвечает организация, называется зоной (zone). Другими словами, ICANN передает полномочия по назначению имен в определенных зонах (частях иерархии DNS) конкретным организациям. Организация, ответственная за зону DNS, может поделить ее на части и передать полномочия по присвоению имен дальше. Этот процесс продолжается до тех пор, пока одно ответственное лицо не сможет полностью управлять назначением имен в пределах одной четко ограниченной зоны. Это лицо является администратором DNS. Администратор управляет сервером DNS, обслуживающим его или зону.

Проблема преобразования адресов решается путем создания сервера DNS (сервера имен). Сервер DNS ‑ это программа, преобразующая имена доменов в IP ‑ адреса. Этот сервер работает на тысячах компьютеров в Internet. Когда программе нужно соединиться с удаленным компьютером, первым делом она соединяется с сервером DNS и просит его найти IP ‑ адрес по известному имени. Запрос к серверу имен обычно состоит из структуры данных, включающий имя хоста (сетевого компьютера), адрес в формате «десятичное с точкой» и 32-х разрядный двоичный адрес.

Система имен доменов является распределенной базой данных. Данные о конкретных компьютерах находятся на различных серверах DNS. Общаясь друг с другом, сервер с сервером, любой сервер DNS может преобразовать любой сетевой адрес в Internet. На рис. 48 показана схема работы серверов DNS в Internet.

 

 
 

 

 


Корневой сервер (root) знает, какой из серверов может преобразовать адреса каждого из доменов верхнего уровня. Серверы следующего уровня знают о серверах своих подчиненных уровней и т.д. DNS используется моделью «клиент ‑ сервер». Программа ‑ клиент в этом случае называется «преобразователь» (resolver). Прикладная программа, желающая преобразовать имя компьютера в его адрес, обращается (через преобразователь) к серверу DNS с запросом. Преобразователь имен должен связаться с корневым сервером DNS и передать ему запрос на преобразование имени в IP ‑ адрес. Корневой сервер в свою очередь должен определить, к какому из подчиненных серверов он должен обращаться, то есть к какому домену принадлежит имя компьютера, указанное в запросе. Сервер DNS второго уровня делает то же самое, и это продолжается до тех пор, пока запрос не достигнет зоны, в которой будет искомая информация. В конце концов выполняемый запрос возвратится обратно к вызывавшей программе и IP ‑ адрес будет найден.

32-х битный IP – адрес содержит за собой номер сети и сетевого компьютера. Так как сеть Internet состоит из тысяч взаимосвязанных сетей, информационный центр сети Internet (ICANN) следит за тем, чтобы номер каждой входящей в Internet сети нигде больше не повторялся. При этом разработчики Internet договорились, что старший байт IP ‑ адреса будет идентифицировать сеть, а младшие три байта – номер компьютера (интерфейса), входящего в эту сеть. Поле адреса, заполненное единицами, обозначает адрес «для всех», то есть широковещательный (broadcast) адрес, предназначенный для всех компьютеров в данной сети. Поле адреса, заполненное одними нулями, рассматривается, как «этот», и означает «этот компьютер», находящийся в этой же сети. Эти специальные форматы поля IP ‑ адресов не могут присваиваться компьютерам сети Internet и служат только для специального использования.

Сети Internet делятся на несколько классов. Старшие биты старшего байта IP ‑ адреса определяет класс адреса в сети Internet. Класс IP ‑ адреса означает, сколько байтов в адресе служат для идентификации сети. Система классификации адресов (сетей) приведена в табл. 5.

 

Таблица 5

Класс Старшие биты Свободные для нумерации сети байты
A 0 · · · ·  
B 1 0 · · ·  
C 1 1 0 · ·  
D 1 1 1 0 · Для широковещания
E 1 1 1 1 0 Зарезервировано на будущее

Сети класса А. Биты этого класса и номера сети занимают один байт, оставляя три для нумерации принадлежащих ей компьютеров:

 

0 Номер сети 24 бита

номер компьютера

Сеть класса А

 

Принадлежность классу А определена одним старшим битом, поэтому для нумерации сетей класса А остается семь бит. Это значит, что максимальное количество сетей класса А в Internet составляет 127 (а не 128, так как значение «все нули» зарезервировано). Поскольку сети класса А содержат 24 бита для нумерации компьютеров, теоретически адресное пространство позволяет адресовать 16777216 из них. Реально, адреса класса А используются тем небольшим количеством сетей, в состав которых входит более 65536 компьютеров.

Сети класса B. Сети класса В используют два байта для класса и номера сети, остальные 16 битов доступны для нумерации компьютеров.

 

2 бита 14 битов 16 битов

1 0 номер сети номер компьютера

Сеть класса В

 

Два старших байта за вычетом двух битов, определяющих класс, то есть 14 битов, задают адресное пространство сети класса В. Таким образом, теоретически в Internet могут входить 16 384 сети класса В. Шестнадцать доступных для номера компьютера битов теоретически позволяют адресовать 65536 сетевых компьютеров. Для сетей с большим количеством компьютеров требуется выделять сеть класса А. Сеть класса В выделяется, если количество компьютеров на ней превышает 256 штук.

Сети класса С. У сети класса С поля класса и номера сети умещаются в три байта. Таким образом, для нумерации компьютеров остается только 8 битов

 

3 бита 21 бит 8 битов

1 1 0 номер сети номер компьютера

Сеть класса С

 

После вычитания трех битов класса сети для их нумерации остается 21 бит. В результате, в Internet теоретически может входить до 2 097 152 сетей класса С. Поскольку максимальное количество компьютеров в сети класса С не может превышать 256, этот класс предназначен для небольших сетей.

Сети классов D и E. Класс D предназначается для групповой передачи. Адрес групповой передачи представляет группу компьютеров в Internet и используется, чтобы передать сообщение более чем одному компьютеру. ICANN зарезервировал адреса класса Е для использования в будущем. Это будет широковещательная (broadcasting) или групповая передача (multicasting).

Распределение IP ‑ адресов занимается информационный центр Internet ( ICANN ). Он следит, чтобы адреса не выдавались повторно. При этом номера сетей присваиваются администрацией ICANN, а номера компьютеров в сетях – непосредственно сетевыми администраторами. Такая схема обладает значительной гибкостью. Адресное пространство, отведенное отдельной сети, используется наиболее удобным для администратора образом. В целях увеличения эффективности, одна сеть может разделяться на несколько подсетей путем деления адресного пространства. Например, сеть класса В. Администратору такой сети отведено 16 битов для нумерации компьютеров. 16 битов ‑ это два байта, один из которых можно использовать для нумерации подсетей, а второй ‑ для нумерации компьютеров. Таким образом, сеть класса В разделяется сетевым администратором на несколько подсетей меньшего размера.

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

Реализация IP ‑ протокола. IP ‑ протокол реализует дейтаграммный способ передачи данных. Он формирует (инкапсулирует) IP ‑ дейтаграмму, которая состоит из IP ‑ заголовка и данных. Размер IP ‑ заголовка всегда кратен 32‑ битному слову, даже если для этого он должен дополниться до нужной величины. Он содержит всю необходимую для доставки инкапсулированных данных по сети информацию и равен 20 байтам. На рис. 49 приведен формат IP ‑ дейтаграммы. Она включает в себя следующие разделы.

Номер версии (VERS). Протокол Internet все время развивается. Первые четыре бита в IP ‑ заголовке (поле «номер версии») обозначают версию протокола Internet, который создал данную дейтаграмму. Когда формат данных протокола Internet меняется, номер его версии в дейтаграмме увеличивается, позволяя другим модулям IP отбрасывать дейтаграммы, обработать которые они не в состоянии из ‑ за устаревшего формата данных. Модуль IP, принявший IP ‑ дейтаграмму версии, которую он не может обработать, может сообщить об этом источнику. В настоящее время применяется версия IP ‑ протокола V.4.

 

0 15 16 31

Версия (VERS) 4 бита Длина заголовка (HLEN) 4 бита Тип службы (TOS) 8 битов Общая длина пакета в байтах 16 битов
Идентификатор фрагмента 16 битов Флаги 3 бита Смещение фрагмента 13 битов
Время существования (TTL) 8 битов Протокол 8 битов Контрольная сумма заголовка 16 битов
IP- адрес источника 32 бита
IP- адрес получателя 32 бита
Опции (если есть) Заполнение (при необходимости)
Данные

 

Рис. 49. Формат IP ‑ дейтаграммы

 

Длина заголовка (HLEN). Следующие четыре бита IP ‑ заголовка (поле «длина заголовка») задают длину заголовка в 32 ‑ битных словах. Данное поле обычно содержит число 5 (пять 32‑ битных слов равны 20 байтам). В двоичном виде это поле равно 0101.

Тип службы (TOS). Перед разработчиком программ встает вопрос: что выгоднее ‑ увеличение производительности или уменьшение используемой памяти? Это относится к приоритетам. Следующие восемь битов в IP ‑ заголовке (поле «тип службы») определяют приоритет IP ‑ пакета. Сетевой уровень TCP/IP управляет доставкой данных при помощи протокола Internet. Биты поля «тип службы» в IP ‑ заголовке позволяют сетевому уровню принять обоснованное решение по поводу передачи пакетов, основываясь на их, возможно различных, приоритетах. Поле «тип службы» имеет следующую структуру:

 

 

0-2          
Приоритет Задержка Производительность Надежность Стоимость Не исполь- зуется

 

Первые три бита поля «тип службы» образуют подраздел «приоритет». Подраздел «приоритет» может принимать значения от нуля до семи (от 000 до 111) и обозначает уровень «важности» переносимых данных.

Следующие четыре подраздела поля «тип службы» также определяют приоритеты, которые игнорируются большинством маршрутизаторов и сетевых компьютеров. Эти четыре подраздела определяют приоритеты, зависящие от конкретного приложения. Например, подраздел «задержка» (delay) говорит о том, что задержку в распространении пакета желательно сделать минимальной. Подраздел «пропускная способность» (throughput) позволяет увеличить полосу пропускания до максимально возможной величины. Установленный в единицу бит «надежность» (reliability) позволяет сделать доставку пакета максимально надежной. Установка бита «стоимость» (cost) требует минимизировать затраты на доставку данного пакета.

Следующее поле IP – заголовка – поле «длина пакета». Оно имеет длину в шестнадцать битов и задает длину IP – пакета, включая сам заголовок. Стандарт предписывает считать длину пакета в байтах, а не в 32 – разрядных словах, как в поле «длина заголовка.».Данные из этих двух полей позволяют найти начало и конец инкапсулированных данных, а также подсчитать их длину. Для поля «длина пакета» отведено 16 битов, а это значит, что максимальная длина пакета равна 65535 байтов.

Наличие поля идентификации в IP ‑ заголовке обусловлено часто случающейся фрагментацией пакетов в Internet. Сетевые компьютеры используют поле идентификации с целью однозначно идентифицировать каждый посланный ими пакет данных. Когда сетевой компьютер получает пакет, он определяет, к какой дейтаграмме относится определенный фрагмент при помощи поля идентификации.

Важную роль в передаче данных по протоколу IP является фрагментация. Некоторые сетевые технологии, например Ethernet, имеют ограничение на максимальную длину передаваемого блока данных, называемую «блок данных максимальной длины» или MTV. MTV определяет максимальную длину блока данных, которую данная сетевая среда в состоянии перенести. Если блок данных имеет большую длину, он автоматически разбивается на части меньшей длины, каждая из которых передается затем по отдельности.

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

Для управления фрагментацией протокол IP использует первый и последний биты в трех битовом поле флагов. Первый бит называется «фрагментация запрещена» и устанавливается сетевым программным обеспечением для тестирования и отладки. Кроме того, существуют некоторые приложения, данные которых нельзя фрагментировать. Включая режим «фрагментация запрещена», то есть устанавливая соответствующий бит, следует иметь в виду, что если модуль IP обнаружит, что фрагментация должна произойти, протокол TCP/IP отбросит IP‑ пакет и вернет сообщение об ошибке источнику пакета.

Последний бит поля флагов называется «фрагмент ‑ продолжение». В процессе фрагментации пакета протокол IP устанавливает этот бит в единицу во всех фрагментах, кроме последнего. В последнем фрагменте данных бит равен нулю.

Для повышения эффективности и производительности протокол IP пытается послать пакет наибольшего допустимого размера. Однако иногда фрагментации не избежать. До начала фрагментации протокол IP рассчитывает точку деления (breaking point), равную значению MTV низлежащего уровня сети. Точка деления ‑ это расположение байта в пакете, на котором произойдет разделение.

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

Время существования (TTL). Восьмибитовое поле «время существования» (Time – to ‑ Live, TTL) задает срок существования пакета в сети. Протокол TCP/IP предписывает каждому маршрутизатору на пути между отправителем и получателем уменьшить значение поля «время существования пакета». Каждый маршрутизатор должен контролировать время появления IP ‑ пакета. Отправляя пакет дальше, маршрутизатор уменьшает поле «время существования» на количество секунд, которое пакет ждал в буфере, если пакет был задержан.

Если поле «время существования» становится равным нулю до того, как пакет достигнет места назначения, протокол TCP/IP уничтожит его и предупредит компьютер ‑ источник пакета об этом событии, пользуясь протоколом управляющих сообщений Internet ICMP.

Протокол. Транспортный уровень TCP/IP имеет два протокола: протокол управления транспортировкой TCP и протокол пользовательских дейтаграмм UDP. Эти протоколы используют протокол IP для доставки данных. Восьмибитовое поле «протокол» в IP – заголовке указывает на протокол ‑ источник данных, инкапсулированных в IP ‑ дейтаграмму. Например, если значением поля «протокол» является шесть (двоичное 00000110), это значит, что данные сформированы из сегмента TCP. Значение 17 (двоичное 00010001), означает, что данные принадлежат UDP ‑ дейтаграмме.

Сетевой уровень пользуется значением в поле «протокол» при передаче данных на транспортный уровень. Значение поля указывает на определенный модуль транспортного уровня, которому принадлежат данные IP ‑ пакета.

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

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

Компьютер, принявший дейтаграмму, подсчитывает новую контрольную сумму, в том числе и с полем старой контрольной суммы, подсчитанной ранее при передаче. Если заголовок не изменится, то есть его повреждения не произошло, новая контрольная сумма должна быть «все единицы». Если это не так, то есть произошла ошибка при передаче, протокол TCP/IP отбрасывает дейтаграмму. При этом никакого сообщения компьютеру ‑ источнику дейтаграммы не передается.

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

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

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

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

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

Доставка IP ‑ дейтаграммы делится на непосредственную и промежуточную. При непосредственной передаче, когда компьютер получает пакет, его IP ‑ протокол исследует идентификатор сети назначения, размещенный в заголовке пакета. Затем IP ‑ протокол запрашивает запись для сети с этим идентификатором у таблицы маршрутизации. Если запись найдена, исследуется содержимое поле флагов. Если в поле флагов указано прямое соединение, это значит, что пакет можно доставить, используя формат кадра данных низлежащего уровня соединения (например, в сетях технологии Ethernet или Token Ring). Далее процесс доставки будет непосредственно зависеть от применяемой сетевой технологии.

Таким образом, непосредственная доставка значит, что сеть может преобразовывать адрес IP ‑ получателя в адрес формата канального уровня (например, адрес сети Ethernet). Сеть инкапсулирует IP ‑ дейтаграмму в кадр данных и передает непосредственно пункту назначения.

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

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

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.