В ходе обычной работы сетевая программа, такая как TELNET, отправляет прикладное сообщение, пользуясь транспортными услугами TCP. Модуль TCP посылает соответствующее транспортное сообщение через модуль IP. В результате составляется IP-пакет, который должен быть передан драйверу Ethernet. IP-адрес места назначения известен прикладной программе, модулю TCP и модулю IP. Необходимо на его основе найти Ethernet-адрес места назначения. Для определения искомого Ethernet-адреса используется ARP-таблица.Как же заполняется ARP-таблица? Она заполняется автоматически модулем ARP, по мере необходимости. Когда с помощью существующей ARP-таблицы не удается преобразовать IP-адрес, то происходит следующее: 1) По сети передается широковещательный ARP-запрос.2) Исходящий IP-пакет ставится в очередь.3) Возвращается ARP-ответ, содержащий информацию о соответствии IP- и Ethernet-адресов. Эта информация заносится в ARP-таблицу.4) Для преобразования IP-адреса в Ethernet-адрес у IP-пакета, поставленного в очередь, используется ARP-таблица.5) Ethernet-кадр передается по сети Ethernet.Короче говоря, если с помощью ARP-таблицы не удается сразу осуществить преобразование адресов, то IP-пакет ставится в очередь, а необходимая для преобразования информация получается с помощью запросов и ответов протокола ARP, после чего IP-пакет передается по назначению.Если в сети нет машины с искомым IP-адресом, то ARP-ответа не будет и не будет записи в ARP-таблице. Протокол IP будет уничтожать IP-пакеты, направляемые по этому адресу. Протоколы верхнего уровня не могут отличить случай повреждения сети Ethernet от случая отсутствия машины с искомым IP-адресом.Следует отметить, что каждая машина имеет отдельную ARP-таблицу для каждого своего сетевого интерфейса. 5. IP-адрес Менеджер сети присваивает IP-адреса машинам в соответствии с тем, к каким IP-сетям они подключены. Старшие биты 4-х байтного IP-адреса определяют номер IP-сети. Оставшаяся часть IP-адреса - номер узла (хост-номер). Для машины из табл.1 с IP-адресом 223.1.2.1 сетевой номер равен 223.1.2, а хост-номер - 1. Напомним, что IP-адрес узла идентифицирует точку доступа модуля IP к сетевому интерфейсу, а не всю машину.Существуют 5 классов IP-адресов, отличающиеся количеством бит в сетевом номере и хост-номере (рис. 4). Класс адреса определяется значением его первого октета (пять битов).В табл.2 приведено соответствие классов адресов значениям первого октета и указано количество возможных IP-адресов каждого класса.Адреса класса A предназначены для использования в больших сетях общего пользования. Они допускают большое количество номеров узлов. Адреса класса B используются в сетях среднего размера, например, сетях университетов и крупных компаний. Адреса класса C используются в сетях с небольшим числом компьютеров. Адреса класса D используются при обращениях к группам машин, а адреса класса E зарезервированы на будущее.Некоторые IP-адреса являются выделенными и трактуются по-особому.------------------------------------------------------- | Класс Диапазон значений Возможное Возможное | | первого октета кол-во сетей кол-во узлов | ------------------------------------------------------- | A 1 - 126 126 16777214 | | B 128-191 16382 65534 | | C 192-223 2097150 254 | | D 224-239 - 2**28 | | E 240-247 - 2**27 | ------------------------------------------------------- Табл.2. Характеристики классов адресов 0 8 16 24 31 --------------------------------------------------- Класс A |0| номер сети | номер узла | --------------------------------------------------- --------------------------------------------------- Класс B |10| номер сети | номер узла | --------------------------------------------------- --------------------------------------------------- Класс C |110| номер сети | номер узла | --------------------------------------------------- --------------------------------------------------- Класс D |1110| групповой адрес | --------------------------------------------------- --------------------------------------------------- Класс E |11110| зарезервировано | --------------------------------------------------- Рис.4. Структура IP-адресов Выбор адреса. Прежде чем использовать сеть с TCP/IP, необходимо получить один или несколько официальных сетевых номеров. Выделением номеров (как и многими другими вопросами) занимается DDN Network Information Center (NIC). Выделение номеров производится бесплатно и занимает около недели. Можно получить сетевой номер вне зависимости от того, для чего предназначена сеть. Даже если сеть не имеет связи с объединенной сетью Internet, получение уникального номера желательно, так как в этом случае есть гарантия, что в будущем при включении в Internet или при подключении к сети другой организации не возникнет конфликта адресов.Организации, имеющие небольшие сети с числом узлов до 126, должны запрашивать сетевые номера класса C. Организации с большим числом машин могут получить несколько номеров класса C или номер класса B. Удобным средством структуризации сетей в рамках одной организации являются подсети.При использовании подсетей надо выбрать "маску подсети". Она используется сетевым программным обеспечением для выделения номера подсети из IP-адресов. Биты IP-адреса, определяющие номер IP-сети, в маске подсети должны быть равны 1, а биты, определяющие номер узла, в маске подсети должны быть равны 0. Как уже отмечалось, стандарты TCP/IP определяют количество октетов, задающих номер сети. Часто в IP-адресах класса B третий октет используется для задания номера подсети. Это позволяет иметь 256 подсетей, в каждой из которых может быть до 254 узлов. Маска подсети в такой системе равна 255.255.255.0.Но, если в вашей сети должно быть больше подсетей, а в каждой подсети не будет при этом более 60 узлов, то можно использовать маску 255.255.255.192. Это позволяет иметь 1024 подсети и до 62 узлов в каждой. (Напомним, что номера узлов 0 и "все единицы" используются особым образом.) Обычно маска подсети указывается в файле стартовой конфигурации сетевого программного обеспечения. Протоколы TCP/IP позволяют также запрашивать эту информацию по сети.