Технические основы IP-сетей. Структура сетевого протокола TCP/IP. Уровень канала данных. Прикладной уровень, страница 5

Рис. 3-5  Понятие подсети

На рис. 3-5 изображена маска подсети, используемая для разделения на подсети. В качестве примера на рис. 3-5 (а) приводится IP-адрес класса B. Как показано на рис. 3-5 (b), поле номера подсети добавляется к части IP-адреса, находящейся под локальным управлением. Организация определяет длину поля в зависимости от конкретных условий. Система TCP/IP определяет 32-битовую маску подсети, указывающую длину поля адреса подсети. Детальная структура маски подсети представляет собой последовательность “1” и последовательность “0”. ”1” относится к полю сетевого адреса и номера подсети, “0” относятся к полю номера узла (рис. 3-5 (c)).

Распределение дополнительного поля адреса подсети также требует компромиссов. В примере, приведенном на рис. 3-5, IP-адрес класса B изначально включает 65534 адресов хостов. После выделения 6-битового поля адреса подсети максимально возможное количество подсетей - 62 (за исключением подсетей с номерами, состоящими только из 1 или из 0). Каждой подсети соответствуют 10-бит адреса хост-узла, т. е. каждая подсеть может иметь максимум 1022 хост-узлов. Таким образом, общее число узлов равно  62 % 1022 = 63364, то есть меньше, чем до разделения на подсети.

Если в организации не применяется разделение на подсети, то маска подсети устанавливается по умолчанию. Длина поля единиц - “1”- обозначает длину сетевого адреса. Таким образом, значения маски подсети для IP-адресов классов A, B и C - 255.0.0.0, 255.255.0.0 и 255.255.255.0 соответственно.

3.3.3 Перевод адресов

IP-адрес в виде, описанном выше, нельзя использовать для прямой связи узлов, поскольку: 

n  В структуре IP-адреса адрес хоста является адресом сетевого уровня, т. е. он равнозначен NSAP, о которой упоминалось выше. Для того чтобы передать дейтаграмму на сетевом уровне, требуется физический адрес адресата. Следовательно, необходим перевод IP-адреса в физический адрес хоста. 

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

В системе TCP/IP имеются оба механизма перевода.

В случае небольшой сети для перевода имени хоста в IP-адрес используется файл с именем “hosts”, обеспечиваемый системой TCP/IP. Файл “hosts” содержит множество соответствий имен хостов IP-адресам, которые используются вызывающим хостом.

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

Как показано на рис. 3-6, хосту-а требуется установить связь с хостом-b. Для этого хост-а получает у хоста-b (адресата) информацию об IP-адресе через сервер DNS - 209.0.0.6.

Host name – имя хоста

Destination Host Name – имя хоста-адресата

Destination Host IP Address – IP-адрес хоста адресата

Destination Host Physical Address – Физический адрес хоста адресата

Net-id – идентификатор сети

Network Adapter – сетевой адаптер

Рис. 3-6 Перевод имени хостов, физического адреса хостов и IP-адреса.

Перевод IP-адреса в физический адрес узла осуществляется с помощью протокола разрешения адресов ARP. На рис. 3-6 через протокол ARP из IP-адреса 209.0.0.6 получен 48-битовый физический адрес хоста адресата - 08002B00EE0A. На данном этапе делается вывод о том, что хост подсоединен к определенной LAN. Если это WAN, осуществляется перевод физического адреса хоста в WAN.

IP-адрес состоит из 32 бит, тогда как физический адрес LAN (или MAC-адрес) содержит 48 бит. Соотношение между ними нельзя установить простым переводом. В сети часто имеют место такие случаи, как добавление новых компьютеров или вывод некоторых машин из сети. Замена сетевого адаптера на компьютере также может изменить его физический адрес. Таблица перевода IP в физические адреса должна храниться на компьютере, при этом она должна динамически обновляться, и как можно чаще. Данная проблема легко решается использованием протокола ARP.