Принцип построения IP-адресов и основные протоколы IP-технологий



Тема 8. Принципы построения INTERNET. [1,2,3,7] Схема модулей, реализующих протоколы TCP/IP в узле сети. IP-адреса, сети и подсети. Базовые протоколы семейства TCP/IP, архитектура сети и маршрутизация. Доменная адресация. Система серверов доменных имен BIND.

Принципы построения Internet.

Сеть Internet - это сеть сетей. Она объединяет как локальные сети, так и глобальные сети типа NSFNET. Поэтому центральным местом при обсуждении принципов построения сети является семейство протоколов межсетевого обмена TCP/IP. Под термином "TCP/IP" обычно понимают все, что связано с протоколами TCP и IP. Это не только собственно сами протоколы с указанными именами, но и протоколы прикладного уровня и прикладные программы.

Главной задачей TCP/IP является объединение в сеть пакетных подсетей через шлюзы. Каждая сеть работает по своим собственным законам, однако предполагается, что шлюз может принять пакет из другой сети и доставить его по указанному адресу. Реально пакет из одной сети передается в другую сеть через последовательность шлюзов, которые обеспечивают сквозную маршрутизацию пакетов по всей сети.

Такой механизм доставки становится возможным благодаря реализации во всех узлах сети протокола межсетевого обмена 1Р. Базируясь на классификации OSI (Open System Integration - Взаимодействие открытых систем), всю архитектуру протоколов семейства TCP/IP можно представить в виде схемы, представленной на рисунке 8.1.

Вся схема называется стеком протоколов TCP/IP или просто стеком TCP/IP (в стек входят и другие протоколы, не изображенные на рисунке 8.1).

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

Драйвер - программа, непосредственно взаимодействующая с сетевым адаптером.

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

Сетевой интерфейс - физическое устройство, подключающее компьютер к сети. В нашем случае - карта Ethernet.

Кадр - это блок данных, который принимает/передает сетевой нтерфейс.

TCP - Transmission Control Protocol - базовый транспортный протокол, давший название всему семейству протоколов TCP/IP.

UDP - User Datagram Protocol - второй транспортный протокол семейства TCP/IP. Различия между ТCP и UDP будут обсуждены позже.

IP-пакет - это блок данных, которым обменивается модуль IР с сетевыми интерфейсом.

ТCP-сегмент - блок данных, которым обменивается модуль IР с модулем TCP.

UDP-датаграмма - блок данных, которым обменивается модуль IР с модулем UDP.

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

ARP - Address Resolution Protocol - протокол используется для определения соответствия IP-адресов и Ethernet-адресов.

Структура стека протоколов зависит от программ прикладного уровня. При работе с такими программами, как FTP или telnet, образуется стек протоколов с использованием модуля ТCP,представленный на рисунке 8.2.

При работе с прикладными программами, использующими транспортный протокол UDP, программные средства Network File System (NFS), используют другой стек, где вместо модулей TCP будет использоваться модуль UDP (рисунок 8.3).

При обслуживании блочных потоков данных модули ТCP, UDP и драйвер ENET работают как мультиплексоры, т.е. перенаправляют данные с одного входа на несколько выходов и/или наоборот, с многих входов на один выход. Так драйвер ENET может направить кадр либо модулю IР, либо модулю АRР, в зависимости от значения поля "тип" в заголовке кадра. Модуль IР может направить IP-пакет либо модулю ТCP, либо модулю UDP, что определяется полем "протокол" в заголовке пакета.

Получатель UDP-датаграммы или ТCP-сообщения определяется на основании значения поля "порт" в заголовке датаграммы или сообщения.

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

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

При использовании Ethernet и IP-пакета каждая машина имеет как минимум один адрес Ethernet и один IP-адрес. Собственно Ethernet-адрес имеет не компьютер, а его сетевой интерфейс. Таким образом, если компьютер имеет несколько интерфейсов, то это автоматически означает, что каждому интерфейсу будет назначен свой Ethernet-адрес. IP-адрес назначается для каждого драйвера сетевого интерфейса. Грубо говоря, каждой сетевой карте Ethernet соответствуют один Ethernet-адрес и один IP-адрес. IP-адрес уникален в рамках всего Internet.

Принцип построения IP-адресов и основные протоколы IP-технологий

IP-адрес - это 4-байтовая последовательность. Принято каждый байт этой последовательности записывать в виде десятичного числа. Например, приведенный ниже адрес является адресом одной из машин Российского научного центра (РНЦ) "Курчатовский Институт":

144.206.160.32

Каждая точка доступа к сетевому интерфейсу имеет свой IP-адрес.

IР-адрес состоит из двух частей: адреса сети и номера хоста. Вообще говоря, под хостом понимают один компьютер, подключенный к Сети. В последнее время понятие "хост" можно толковать более расширено. Это может быть и принтер с сетевой картой, и Х-терминал, и вообще любое устройство, которое имеет свой сетевой интерфейс.

Существует 5 классов IP-адресов. Эти классы отличаются друг от друга количеством битов, отведенных на адрес сети и адрес хоста в сети. На рисунке 8.4 показаны эти пять классов.

Опираясь на эту структуру, можно подсчитать характеристики каждого класса в терминах числа сетей и числа машин в каждой сети.

Класс Диапазон значений первого байта Возможное количество сетей Возможное количество узлов
A 1-126 126 16777214
B 128-191 16382 65534
C 192-223 2097150 254
D 224-239 - 228
E 240-247 - 227

Рис.8.5. Характеристики классов IP-адресов

 

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

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

Среди всех IP-адресов имеется несколько зарезервированных под специальные нужды. Ниже приведена таблица зарезервированных адресов:

  IP-адрес           Значение        
все нули данный узел сети
номер сети ! все нули данная IP-сеть
все нули ! номер узла узел в данной (локальной) сети
все единицы все узлы в данной локальной IP-сети
номер сети ! все единицы все узлы указанной IP-сети
127.0.0.1 "петля"

Рисунок 8.6. Выделенные IP-адреса

 

Особое внимание в приведенной выше таблице имеет последняя строка. Адрес 127.0.0.1 предназначен для тестирования программ и взаимодействия процессов в рамках одного компьютера. В большинстве случаев в файлах настройки этот адрес обязательно должен быть указан, иначе система при запуске может зависнуть (как это случается в SCO Unix). Наличие "петли" чрезвычайно удобно с точки зрения использования сетевых приложений в локальном режиме для их тестирования и при разработке интегрированных систем.

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

Реальные адреса выделяются организациями, предоставляющими IP-услуги, из выделенных для них пулов IP-адресов. Согласно документации Network Information Centre (NIC), IP-адреса предоставляются бесплатно, но в прейскурантах отечественных организаций (как коммерческих, так и некоммерческих), занимающихся Internet-сервисом, предоставление IP-адреса стоит отдельной строкой.

Важным элементом разбиения адресного пространства Internet являются подсети. Подсеть - это подмножество сети, не пересекающееся с другими подсетями. Это означает, что сеть организации (скажем, сеть класса С) может быть разбита на фрагменты, каждый из которых будет составлять подсеть. Реально каждая подсеть соответствует физической локальной сети (например, сегменту Ethernet). Вообще говоря, подсети придуманы для того, чтобы обойти ограничения физических сетей на число узлов в них и максимальную длину кабеля в сегменте сети. Например, сегмент тонкого Ethernet имеет максимальную длину 185 м и может включать до 32 узлов. Как видно из таблицы (рис. 8.5), самая маленькая сеть - класса С - может состоять из 254 узлов. Для того, чтобы достичь этой цифры, надо объединить несколько физических сегментов сети. Сделать это можно либо с помощью физических устройств (например, репитеров), либо при помощи машин-шлюзов. В первом случае разбиения на подсети не требуется, т.к. логически сеть выглядит как одно целое. При использовании шлюза сеть разбивается на подсети (рис. 8.7).

На рисунке 8 .7 изображен фрагмент сети класса В - 144.206.0.0, состоящий из двух подсетей - 144.206.130.0 и 144.206.160.0. В центре схемы изображена машина шлюз, которая связывает подсети. Эта машина имеет два сетевых интерфейса и, соответственно, два IP-адреса.

В принципе разбивать сеть на подсети необязательно. Можно использовать адреса сетей другого класса (с меньшим максимальным количеством узлов). Но при этом возникает как минимум два неудобства:

· В сети, состоящей из одного сегмента Ethernet, весь адресный пул сети не будет использован, т.к., например, для сети класса С (самой маленькой с точки зрения количества узлов в ней), из 254 возможных адресов можно использовать только 32.

· Структура сети становится открытой во внешний мир, т. е. для доступа к отдельным компьютерам сети данной организации, внешнему компьютеру нужно знать маршрут к каждому компьютеру сети. При использовании подсетей внешним машинам надо знать только шлюз всей сети организации. Маршрутизация внутри сети - это ее внутреннее дело.

Разбиение сети на подсети использует ту часть IP-адреса, которая закреплена за номерами хостов. Администратор сети может замаскировать часть IР- адреса и использовать ее для назначения номеров подсетей.

Маска подсети - это четыре байта, которые накладываются на IP-адрес для получения номера подсети. Например, маска 255.255.255.0 позволяет разбить сеть класса В на 254 подсети по 254 узла в каждой. На рисунке 8.8 приведено маскирование подсети 144.206.160.0 из предыдущего примера.

На приведенной на рисунке 8.8 схеме сеть класса В (номер начинается с 10) разбивается на подсети маской 255.255.224.0. При этом первые два байта задают адрес сети и не участвуют в разбиении на подсети. Номер подсети задается тремя старшими битами третьего байта маски. Такая маска позволяет получить 6 подсетей. Для нумерации подсети нельзя использовать номер 000 и номер 111. Номер 160 задает 5-ю подсеть в сети 144.206.0.0. Для нумерования машин в подсети можно использовать оставшиеся после маскирования 13 битов, что позволяет создать подсеть из 8190 узлов. Честно говоря, в настоящее время такой сети в природе не существует и РНЦ "Курчатовский институт", которому принадлежит сеть 144.206.0.0, рассматривает возможность пересмотра маски подсетей. Перестроить сеть, состоящую из более чем 400 машин, не такая простая задача, так как ею управляет 4 администратора, которые должны изменить маски на всех машинах сети. Ряд компьютеров работает в круглосуточном режиме, и все изменения надо произвести в тот момент, когда это минимально скажется на работе пользователей сети. Данный пример показывает, насколько внимательно следует подходить к вопросам планирования архитектуры сети и ее разбиения на подсети. Многие проблемы можно решить за счет аппаратных средств построения сети.

 


Дата добавления: 2018-04-05; просмотров: 2488; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!