Автор: Пользователь скрыл имя, 27 Мая 2012 в 04:03, курс лекций
Работа содержит курс лекций по дисциплине "Сетевые технологии"
Маршрутизатор
Рис. 4. Для передачи по сети с меньшим значением MTU маршрутизатор разделяет дейтаграмму на фрагменты
Разбивая дейтаграмму на фрагменты, протокол IP к каждому из них присоединяет IP-заголовок. Поле Identification в заголовке каждого фрагмента содержит то же значение, что и аналогичное поле в заголовке исходной дейтаграммы. Это позволяет целевой системе найти фрагменты, принадлежащие одной и той же дейтаграмме. Кроме того, маршрутизатор записывает в поля Total Length длины фрагментов и изменяет значение бита More Fragments в поле Flags с 0 на 1 во всех фрагментах, кроме последнего. Значение 1 этого бита означает, что существуют и другие фрагменты, относящиеся к той же дейтаграмме. По биту More Fragments целевая система определяет, все ли фрагменты получены и можно ли начинать сборку дейтаграммы.
Значение поля Fragment Offset определяет место фрагмента в дейтаграмме. У первого фрагмента значение этого поля равно 0, у второго фрагмента оно равно размеру первого фрагмента в байтах. Для третьего фрагмента величина смещения равна суммарному размеру первых двух фрагментов и т. д. Целевая система использует эти величины, чтобы скомпоновать фрагменты в правильном порядке. Установка в единицу бита Don't Fragment в поле Flags запрещает маршрутизатору фрагментировать дейтаграмму. Если без фрагментации ее передать нельзя, маршрутизатор проигнорирует дейтаграмму, послав системе-источнику сообщение ICMP об ошибке.
Идентификация протокола
Чтобы корректно обработать принятую дейтаграмму, целевая система должна знать, каким протоколом сгенерирована информация в поле данных. Для этого в поле Protocol заголовка IP записывается один из кодов протоколов TCP/IP, определенных в документе RFC 1700. Наиболее часто используются следующие коды:
• 0 IP
• 1 ICMP
• 6 TCP
• 8 Exterior Gateway Protocol (EGP)
• 17 UDP
Совет На каждой TCP/IP-системе есть текстовый файл PROTOCOL, содержащий список кодов протоколов, которые, как ожидается, будут распознаваться или использоваться этой системой. Если Вам нужно узнать код протокола, попробуйте сначала найти его в этом файле, и только потом начинайте поиски в RFC 1700.
Наиболее ожидаемы в этом списке протоколы транспортного уровня TCP и UDP, генерирующие большую часть трафика в TCP/IP - ceтях. Однако в дейтаграммах IP передается информация и других протоколов, в том числе сообщения ICPM об ошибках и других происшествиях в сети, а также сообщения маршрутизирующих протоколов, подобных BGP и EGP, которыми TCP/IP-системы пользуются для автоматического обновления таблиц маршрутизации.
Параметры IP
Необязательное поле Options позволяет передавать в дейтаграммах дополнительные сведения, а также собирать в некоторых случаях информацию во время прохождения дейтаграммы по интерсети. Вот некоторые параметры, определенные в стандартах IP.
• Loose Source Route — список адресов маршрутизаторов, которые дейтаграмма обязательно должна использовать при прохождении по интерсети. Помимо обязательных, дейтаграмма может использовать и другие маршрутизаторы.
• Strict Source Route — полный список адресов маршрутизаторов, которые дейтаграмма обязательно должна использовать при прохождении по интерсети. Другими маршрутизаторами дейтаграмма пользоваться не может.
• Record Route — область, в которую маршрутизаторы, обрабатывающие дейтаграмму, могут добавить свои IP-адреса.
• Timestamp — область, в которую маршрутизаторы могут записать время обработки дейтаграммы.