Для определения локального адреса(МАС) по IP-адресу используется протокол разрешения адреса Address Resolution Protocol, ARP. Протокол ARP работает различным образом в зависимости от того, какой протокол канального уровня работает в данной сети - протокол локальной сети (Ethernet, Token Ring, FDDI) с возможностью широковещательного доступа одновременно ко всем узлам сети, или же протокол глобальной сети (X.25, frame relay), как правило не поддерживающий широковещательный доступ. Существует также протокол, решающий обратную задачу - нахождение IP-адреса по известному локальному адресу(МАС) . Он называется реверсивный ARP - RARP (Reverse Address Resolution Protocol) и используется при старте бездисковых станций, не знающих в начальный момент своего IP-адреса, но знающих адрес своего сетевого адаптера.
В локальных сетях протокол ARP использует широковещательные кадры протокола канального уровня для поиска в сети узла с заданным IP-адресом.
Узел, которому нужно выполнить отображение IP-адреса на локальный адрес, формирует ARP запрос, вкладывает его в кадр протокола канального уровня, указывая в нем известный IP-адрес, и рассылает запрос широковещательно. Все узлы локальной сети получают ARP запрос и сравнивают указанный там IP-адрес с собственным. В случае их совпадения узел формирует ARP-ответ, в котором указывает свой IP-адрес и свой локальный адрес и отправляет его уже направленно, так как в ARP запросе отправитель указывает свой локальный адрес. ARP-запросы и ответы используют один и тот же формат пакета. Так как локальные адреса могут в различных типах сетей иметь различную длину, то формат пакета протокола ARP зависит от типа сети.
Длина локального адреса для протокола Ethernet равна 6 байтам, а длина IP-адреса - 4 байтам.
Узел, отправляющий ARP-запрос, заполняет в пакете все поля, кроме поля искомого локального адреса (для RARP-запроса не указывается искомый IP-адрес). Значение этого поля заполняется узлом, опознавшим свой IP-адрес.
DHCP (англ. Dynamic Host Configuration Protocol — протокол динамической конфигурации узла) — это сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Данный протокол работает по модели «клиент-сервер». Для автоматической конфигурации компьютер-клиент на этапе конфигурации сетевого устройства обращается к так называемому серверу DHCP, и получает от него нужные параметры.
Протокол DHCP предоставляет три способа распределения IP-адресов:
1) Ручное распределение. При этом способе сетевой администратор сопоставляет аппаратному адресу (для Ethernet сетей это MAC-адрес) каждого клиентского компьютера определённый IP-адрес.
2) Автоматическое распределение. При данном способе каждому компьютеру на постоянное использование выделяется произвольный свободный IP-адрес из определённого администратором диапазона.
3) Динамическое распределение. Этот способ аналогичен автоматическому распределению, за исключением того, что адрес выдаётся компьютеру не на постоянное пользование, а на определённый срок. Это называется арендой адреса. По истечении срока аренды IP-адрес вновь считается свободным, и клиент обязан запросить новый (он, впрочем, может оказаться тем же самым). Кроме того, клиент сам может отказаться от полученного адреса.
Помимо IP-адреса, DHCP также может сообщать клиенту дополнительные параметры, необходимые для нормальной работы в сети. Эти параметры называются опциями DHCP. Некоторыми из наиболее часто используемых опций являются:
- IP-адрес маршрутизатора по умолчанию;
- маска подсети;
- адреса серверов DNS;
- имя домена DNS.
Некоторые поставщики программного обеспечения могут определять собственные, дополнительные опции DHCP.
85) DNS
Для решения проблемы цифровой адресации была введена система доменных имен.
DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства. Ответственность за назначение имен возложена на группы пользователей, отвечающих за ту или иную область сети – домен.
DNS обладает следующими характеристиками:
Распределённость администрирования. Ответственность за разные части иерархической структуры несут разные люди или организации.
Распределённость хранения информации. Каждый узел сети в обязательном порядке должен хранить только те данные, которые входят в его зону ответственности и (возможно) адреса корневых DNS-серверов.
Кеширование информации. Узел может хранить некоторое количество данных не из своей зоны ответственности для уменьшения нагрузки на сеть.
Иерархическая структура, в которой все узлы объединены в дерево, и каждый узел может или самостоятельно определять работу нижестоящих узлов, или делегировать (передавать) их другим узлам.
Резервирование. За хранение и обслуживание своих узлов (зон) отвечают (обычно) несколько серверов, разделённые как физически, так и логически, что обеспечивает сохранность данных и продолжение работы даже в случае сбоя одного из узлов.
Ключевыми понятиями DNS являются:
1) Доме́н (англ. domain — область) — узел в дереве имён, вместе со всеми подчинёнными ему узлами (если таковые имеются). Структура доменного имени отражает порядок следования узлов в иерархии; доменное имя читается слева направо от младших доменов к доменам высшего уровня (в порядке повышения значимости), корневым доменом всей системы является точка('.'), ниже идут домены первого.
2) Поддомен (англ. subdomain) — подчиненный домен.
3) Ресурсная запись — единица хранения и передачи информации в DNS. Каждая ресурсная запись имеет имя, тип и поле данных, формат и содержание которого зависит от типа.
4) Зона — часть дерева доменных имен (включая ресурсные записи), размещаемая как единое целое на некотором сервере доменных имен (DNS-сервере, см. ниже), а чаще — одновременно на нескольких серверах (см. ниже). Целью выделения части дерева в отдельную зону является передача ответственности (см. ниже) за соответствующий Домен другому лицу или организации, так называемое Делегирование
5) Делегирование — операция передачи ответственности за часть дерева доменных имен другому лицу или организации.
6) DNS-сервер — специализированное ПО для обслуживания DNS, а также компьютер, на котором это ПО выполняется. DNS-сервер может быть ответственным за некоторые зоны и/или может перенаправлять запросы вышестоящим серверам.
7) DNS-клиент — специализированная библиотека (или программа) для работы с DNS. В ряде случаев DNS-сервер выступает в роли DNS-клиента.
8) Авторитетность (англ. authoritative) — признак размещения зоны на DNS-сервере. Ответы DNS-сервера могут быть двух типов: авторитетные (когда сервер заявляет, что сам отвечает за зону) и неавторитетные (англ. Non-authoritative), когда сервер обрабатывает запрос, и возвращает ответ других серверов.
9) DNS-запрос (англ. DNS query) — запрос от клиента (или сервера) серверу. Запрос может быть рекурсивным или нерекурсивным.
Сетевой адаптер (NetworkInterfaceCard, NIC) – периферийное устройство компьютера, предназначенное для сопряжения сетевых устройств (ПК, сервер и т.д.) со средой передачи в соответствии с принятыми правилами обмена информацией.
Как и любой контроллер компьютера, сетевой адаптер работает под управлением драйвера операционной системы, и распределение функций между сетевым адаптером и драйвером может изменяться от реализации к реализации. Сетевой адаптер вместе со своим драйвером реализует второй канальный уровень модели OSI в конечном узле сети – компьютере.
Более точно в сетевой операционной системе пара адаптер и драйвер выполняют только функции физического и MAC-уровней, в то время как LLC-уровень обычно регулируется модулем операционной системы, единым для всех драйверов и сетевых адаптеров.
Сетевой адаптер совместно с драйвером выполняют две операции: передача кадра и приём кадра.
Классификация адаптеров по распеределнию обязанностей:
- для клиентских компьютеров (значительная часть работы перекладывается на драйвер, тем самым адаптер дешевле)
- для серверов (снабжен собственным процессором, который самостоятельно выполняет часть работы)
Классификация по виду протокола:
* Ethernet- адаптер
*TokenRing адаптер
*FDDI адаптер
Многие протоколы, начиная с FastEthernet, позволяют за счет процедуры автопереговоров автоматически выбирать скорость работы сетевого адаптера в зависимости от скорости концентратора => поддерживают 2 режима.
Этапы передачи кадра:
1) Приём кадра данных LLC через межуровневый интерфейс вместе с адресной информацией MAC-уровня.
2) Формирование символьных кодов при использовании избыточных кодов типа 4B/5B.
3) Выдача сигналов в кабель в соответствии с принятым линейным кодом
Этапы приёма кадра:
1) Приём из кабеля сигналов, кодирующих битовый поток.
2) Выделение сигналов на фоне шума
3) Проверка контрольной суммы кадра.
Если контрольная сумма неверна, то кадр отбрасывается, а через межуровневый интерфейс наверх, протоколу LLC передаётся соответствующий код ошибки.
Если контрольная сумма верна, то из MAC-кадра извлекается кадр LLC и передаётся через межуровневый интерфейс наверх, протоколу LLC.
В начале 80-х годов сети Ethernet организовывались на базе шинной топологии с использованием сегментов на основе коаксиального кабеля длинной до 500м.
Для увеличения размера сетей нужно было преодолеть 500-метровый барьер…
Для решения этой задачи использовались повторители (repeater).
Основной задачей повторителя является восстановление электрических сигналов для передачи их в другие сегменты. За счёт усиления и восстановления формы электрических сигналов повторителем становится возможным расширение сетей построенных на основе коаксиального кабеля и увеличение общего числа пользователей сети.
Концентратором (hub) называется повторитель, который имеет несколько портов и соединяет несколько физических линий связи. Концентратор изменяет физическую топологию сети, но при этом оставляет без изменений её логическую топологию. Если на какой-то порт поступило сообщение, то он передаёт его на все остальные порты.
Дополнительные функции концентратора:
1) Объединяет физические сегменты с различными физическими средами (например коаксиал, витая пара и оптоволокно) в единый логический сегмент
2) Поддержка средств управления сетями – протокола SNMP
3) Автосегментация портов – автоматическое отключение порта при его некорректном поведении (интенсивная генерация пакетов ошибочной длины, повреждение кабеля и т.д.)
4) Защита передаваемых по сети данных от несанкцианированного доступа
Мост (Bridge) – делит физическую среду передачи сети на части, передавая информацию из одного сегмента в другой, только в том случае, если адрес компьютера назначения принадлежит другой подсети.
Отличия моста от повторителя:
1) Повторитель передаёт все пакеты, а мост только те, которые нужно. Если пакет не нужно передавать в другой сегмент, он фильтруется. Для мостов существуют многочисленные алгоритмы (правила) передачи и фильтрации пакетов. Минимальным требованием является фильтрация пакетов по адресу получателя.
2) Сегменты, подключённые к повторителю, образуют одну разделяемую среду, а сегменты, подключённые к каждому порту моста образуют свою среду: следовательно, мост обеспечивает преимущества как с точки зрения расширения сети, так и обеспечения большей полосы для каждого пользователя.
Недостатки:
1) Слабая защита от широковещательного шторма
2) Невозможность поддержания петлеобразных конфигураций сети
Коммутатор (switch, switchinghub) по назначению не отличается от моста, но обладает более высокой производительностью т.к. одновременно поддерживает потоки данных между всеми своими портами, а мост осуществляет передачу между одной парой портов
Коммутаторы обрабатывают и передают данные на уровне кадров, что соответствует канальному уровню модели OSI.
Принятие решения на коммутацию выполняется на основании анализа физических адресов (MAC-адресов) источника и пункта назначения.MAC-адреса находятся в заголовке кадра.
Коммутаторы выполняют три основные задачи:
1) Изучение (learning) – коммутатор изучает все MAC-адреса в поле адреса источника кадра и составляет таблицу MAC-адресов.
2)Передача (forwarding) или фильтрация (filtering) – на основании MAC-адреса назначения коммутатор решает передавать поступивший кадр или фильтровать (не передавать). При передаче кадра коммутатор выполняет коммутацию на основнии построенной таблицы MAC-адресов.
3) Предотвращение петель (loop prevention)–в случае возникновения в сети избыточных (дублированных) маршрутов, коммутатор предотвращает некорректную работу сети с помощью протокола STP(SpanningTreeProtocol)
Коммутаторы могут обрабатывать кадры в 3 режимах:
Store&Forward :Задержка зависит от размера кадра.
Плюсы: надёжность (некорректные кадры стираются только после проверки)
Минус: медленно
Cut-through: Плюсы: скорость
Минусы: могут передаваться некорректные кадры (ненадежность)
Fragmet-freeЗадержка в этом решении выше, чем в througt, но при этом фильтруется искаженные кадры.
Spanning Tree Protocol — сетевой протокол, работающий на втором уровне модели OSI. Основной задачей STP является приведение сети Ethernet с множественными связями к древовидной топологии, исключающей циклы пакетов. Основной задачей STP является устранение петель в топологии произвольной сети Ethernet, в которой есть один или более сетевых мостов, связанных избыточными соединениями. STP решает эту задачу, автоматически блокируя соединения, которые в данный момент для полной связности коммутаторов являются избыточными.
При
определенных условиях кадры могут
зацикливаться. Проиллюстрируем это на
простом примере. Пусть две сети 1 и 2
соединены с помощью двух параллельных
мостов Мост1 и Мост2 (например, для
обеспечения избыточности). Если компьютер
из сети 1 передает кадр неизвестному
адресату, то сначала, например, М1, а
затем М2 передают этот кадр в сеть 2 в
соответствии с алгоритмом веерной
рассылки. Вскоре М2 получает пересланную
М1, а М1 - пересланную М2 в сеть 2 копию
исходного кадра, адрес получателя
которого неизвестен, и передают их
поэтому обратно в сеть 1, и так до
бесконечности.
Принцип действия:
1) В сети выбирается один корневой мост (англ. Root Bridge).
2) Далее каждый, отличный от корневого, мост просчитывает кратчайший путь к корневому. Соответствующий порт называется корневым портом (англ. Root Port). У любого не корневого коммутатора может быть только один корневой порт.
3) После этого для каждого сегмента сети просчитывается кратчайший путь к корневому порту. Мост, через который проходит этот путь, становится назначенным для этой сети (англ. Designated Bridge). Непосредственно подключенный к сети порт моста — назначенным портом.
4) Далее на всех мостах блокируются все порты, не являющиеся корневыми и назначенными. В итоге получается древовидная структура (математический граф) с вершиной в виде корневого коммутатора.