Схема обработки данных в выходном порту, представленная на рис. 4.36, показывает, что хранящиеся в памяти выходного порта дейтаграммы передаются по выходной линии. Среди функций выходного порта можно выделить функции протоколов канального и физического уровней, взаимодействующих со своими аналогами во входном порту на другом конце линии связи, как уже рассказывалось в подразделе «Входные порты» данного раздела. Также в выходном порту необходимы функции обработки очередей и управления буферами в тех случаях, когда коммутационный блок доставляет пакеты выходному порту со скоростью, превосходящей скорость передачи данных в выходной линии.
Читать далее »
Архив за марта, 2008
Выходные порты
Коммутационный блок
Коммутационный блок располагается в самом сердце маршрутизатора. Именно через коммутационный блок пакеты перемещаются от входного порта к выходному порту. Коммутационный блок может быть реализован несколькими способами, как показано на рис. 4.35.
Входные порты
Более детальная, чем на рис. 4.35, функциональная схема входного порта приведена на рис. 4.34. Как уже упоминалось, блок завершения физической линии входного порта маршрутизатора и блок обработки канального уровня реализуют физический и канальный уровни входной линии маршрутизатора. Блок поиска/ продвижения данных входного порта является центральным для системы коммутации маршрутизатора. Во многих маршрутизаторах именно здесь маршрутизатор определяет выходной порт, которому будет передан принятый пакет через коммутационный блок. Выбор выходного порта осуществляется при помощи информации, содержащейся в таблице продвижения данных. Хотя таблица продвижения данных вычисляется маршрутным процессором, локальнная копия таблицы продвижения данных, как правило, сохраняется на каждом входном порту и, при необходимости обновляется маршрутным процессором. Наличие локальных копий таблицы продвижения данных позволяет принимать решения о коммутации локально на каждом входном порту, не занимая централизованный маршрутный процессор. Подобная централизованная коммутация позволяет избежать заторов на входе в маршрутизатор.
Читать далее »
Архитектура маршрутизатора
До сих пор в этой главе мы рассматривали модели обслуживания сетевого уровня, алгоритмы маршрутизации и реализующие их протоколы. Однако эти вопросы представляют собой лишь часть (хотя и важную) того, что происходит на сетевом уровне. Мы еще не изучали коммутирующую функцию маршрутизатора — процесс передачи дейтаграмм с входных линий маршрутизатора на его выходные линии.
Читать далее »
Протокол OSPF
Как и RIP, протокол OSPF (Open Shortest Path First — открытый протокол выбора кратчайшего маршрута) используется для маршрутизации внутри автономной системы. Слово «Ореп» в названии протокола означает, что спецификация протокола маршрутизации свободно распространяется (в отличие от, к примеру, спецификации протокола EIGRP корпорации Cisco). Последняя (вторая) версия протокола OSPF определена в RFC 2328.
Читать далее »
Протокол RIP
Протокол RIP (Routing Information Protocol — протокол маршрутной информации) был одним из первых протоколов внутренней маршрутизации, применявшихся в Интернете; он и в наши дни по-прежнему популярен. Своим происхождением и названием он обязан архитектуре XNS (Xerox Network Systems). Широкое распространение протокола RIP было во многом вызвано тем, что он был включен в версию 1982 года операционной системы Berkeley UNIX, поддерживающей стек протоколов TCP/IP. Протокол RIP версии 1 определен в RFC 1058, обратно совместимая версия 2 этого протокола определена в RFC 2453.
Читать далее »
Трансляторы сетевых адресов
Итак, теперь мы знаем, что у каждого устройства, поддерживающего протокол IP, Должен быть IP-адрес. С распространением небольших и домашних офисов это бы означало, что каждый раз, когда в таком офисе возникает необходимость установить локальную сеть или соединить друг с другом несколько машин, поставщику услуг Интернета пришлось бы выделять блок адресов для всех машин маленького офиса. В случае роста сети (например, у детей в доме помимо настольных персональных компьютеров появились карманные компьютеры, телефоны с поддержкой протокола IP или сетевые игровые приставки) такому офису нужно было бы выделить блок адресов большего размера. А что, если Интернет-провайдер уже распределил все соседние участки адресного пространства? И что нужно знать об управлении IP-адресами типичному домовладельцу? К счастью, существует более простой метод выделения адресов, нашедший широкое применение в подобных ситуациях. Этим методом является (RFC 2663, RFC 3022) так называемая трансляция сетевых адресов (Network Address Translation, NAT).
Читать далее »
Протокол DHCP
Ранее в этом разделе говорилось, что протокол DHCP (Dynamic Host Configuration Protocol — протокол динамической конфигурации хоста) часто используется для назначения хостам IP-адресов в динамическом режиме. Мы кратко упомянули службы, предоставляемые хосту протоколом DHCP. В данном подразделе мы несколько подробнее поговорим о том, как протокол DHCP предоставляет свои службы.
Читать далее »
Протокол ICMP
Теперь мы рассмотрим протокол управляющих сообщений Интернета (Internet Control Message Protocol, ICMP), используемый хостами, маршрутизаторами и шлюзами для обмена информацией сетевого уровня друг с другом. Спецификация протокола ICMP содержится в RFC 792. Наиболее типичное использование протокола ICMP заключается в передаче сообщений об ошибках. Например, при работе с Telnet-, FTP- или HTTP-приложениями вы можете встретить сообщение об ошибке, например Destination network unreachable (сеть назначения недоступна). Это сообщение формирует протокол ICMP, если IP-маршрутизатор не может найти маршрут к хосту, указанному в вашем приложении. Маршрутизатор создает и отправляет вашему хосту ICMP-сообщение об ошибке. Ваш хост получает ICMP-сообщение и возвращает пытающейся связаться с удаленным хостом TCP-программе код ошибки. Протокол TCP, в свою очередь, возвращает код ошибки вашему приложению.
Читать далее »
Фрагментация IP-дейтаграмм
В главе 5 мы увидим, что у различных протоколов канального уровня может быть разный, максимальный размер переносимых пакетов. Некоторые протоколы могут переносить «большие» пакеты, тогда как другие допускают перенос только «маленьких» пакетов. Например, Ethernet-пакеты могут содержать не более 1500 байт данных, тогда как многие протоколы глобальных линий способны переносить пакеты размером не более 576 байт. Максимальное количество данных, которое может переносить пакет канального уровня, называют максимальной единицей передачи (Maximum Transfer Unit, MTU). Поскольку каждая IP-дейтаграмма для передачи от одного маршрутизатора к другому инкапсулируется в пакет канального уровня, максимальный размер поля данных протокола канального уровня накладывает жесткое ограничение на длину IP-дейтаграммы. Само по себе жесткое ограничение на размер IP-дейтаграммы не представляет проблемы. Проблема заключается в том, что в каждой линии связи на пути от отправителя до получателя могут использоваться разные протоколы канального уровня, и у каждого из этих протоколов может быть свой, отличный от других, максимальный размер поля данных.
Читать далее »
