Особенности протокола TCP
1. С помощью флага URG могут передаваться срочные данные.
2. Соединение является надежным за счет:
- использования режима обнаружения ошибок;
- присвоения порядковых номеров каждому байту сообщения;
- использования тайм-аута ожидания подтверждения, по его истечении сегмент передается повторно.
3. Управление потоком путем использования окна передачи W.
Протокол UDP
UDP (User Datagram Protocol) – протокол пользовательских дейтаграмм. Он используется в том случае, если передаваемые данные помещаются в одном пакете, а гарантия их доставки не особенно важна. Этот протокол не заботится о пропавших пакетах, о расположении данных в правильном порядке и о других тонкостях. Протокол применяется для тех программ, которые посылают
только короткие сообщения и могут повторить передачу данных, если ответ задерживается.
Формат дейтаграммы UDP показан на рисунке 6.21.
Рис.6.21
Поле «длина» указывает количество байтов в дейтаграмме (т.е. длина заголовка и данных)
Данные протокола UDP инкапсулируется в IP-дейтаграммах при передаче их по сети (см. рис.6.22.).
Рис.6.22.
Только IP-заголовок определяет отправителя и получателя. Сама же дейтаграмма содержит только номера портов.
UDP обеспечивает мультиплексирование и демультиплексирование дейтаграмм (см. рис.6.23.).
Рис.6.23.
Каждый такой порт (также как и в протоколе TCP) может быть представлен в виде входной и выходной очереди дейтаграмм.
Протокол ICMP
Протокол обмена управляющими сообщениями ICMP (Internet Control Message Protocol) является вспомогательным в стеке TCP/IP.
Этот протокол позволяет маршрутизатору сообщать станции-источнику об ошибках и нештатных ситуациях, с которыми он столкнулся при передаче IP-дейтаграммы от этой станции.
Протокол включается в каждую реализацию протокола IP и может рассматриваться и как его неотъемлемая часть.
Сообщения ICMP передаются по сети в поле данных IP-дейтаграммы. Протокол посылает два вида сообщений:
§ управляющие сообщения;
§ сообщения об ошибках.
Эти сообщения могут быть посланы как на другие маршрутизаторы, так и на конечные станции.
Протокол сообщает об ошибках, но не предпринимает мер по их исправлению. Если маршрутизатор обнаруживает ошибку, он уничтожает дейтаграмму, но одновременно с помощью ICMP отсылает сообщение об ошибке отправителю для принятия мер по ее устранению.Доставка сообщений ICMP производится с помощью IP-дейтаграмм. Поэтому эти сообщения могут быть аналогично другим дейтаграммам утеряны или удалены. Сообщения ICMP требуют двух уровней инкапсуляции (см. рис.6.24.).
Рис.6.24.
Все сообщения ICMP начинаются с трех одинаковых полей (см. рис.6.25.).
Рис.6.25.
Поле «тип» определяет смысл сообщения и его формат. Это поле может иметь, например, следующие значения:
¨ 8 — запрос эха;
¨ 3 — получатель недостижим;
¨ 11 — время жизни дейтаграммы истекло;
¨ 12 — ошибка параметра;
¨ 17 — запрос маски адреса и т. д.
Сообщения «Запрос эха» и «Ответ на эхо» часто используются при отладке сети. Они позволяют убедиться в достижимости получателя IP-дейтаграммы и его способности отвечать на запросы. Во многих системах программа с такими функциями называется «Ping».
Сообщение «Получатель недостижим» посылается маршрутизатором, если он не может доставить IP-дейтаграмму по назначению. Поле «код» в таком сообщении указывает на причину недоставки, например:
¨ 1 — устройство недостижимо;
¨ 3 — порт недостижим;
¨ 4 — требуется фрагментация;
¨ 6 — сеть назначения неизвестна и т.д.
В это сообщение включается IP-заголовок отвергнутой IP-дейтаграммы и ее первые 64 бита.
Сообщение «Подавление источника» требует от узла-источника уменьшения скорости передачи дейтаграмм. Такое сообщение посылается тогда, когда на маршрутизаторе скапливается большая очередь и происходит переполнение буфера. Тогда на каждую из не поставленных в очередь IP-дейтаграмм посылается такое сообщение.
Сообщение «Изменение маршрута» используется для указания источнику на то, что в данной сети существует более оптимальный путь доставки отправленной дейтаграммы. В сообщении указывается адрес рекомендуемого маршрутизатора.
Сообщение «Время жизни дейтаграммы истекло» посылается при обнулении счетчика времени жизни дейтаграммы или при превышении времени ожидания формирования фрагментов дейтаграммы.
Сообщение «Ошибка параметра» посылается маршрутизатором при обнаружении неправильного параметра в заголовке. Тогда дейтаграмма уничтожается. Неверный байт передается в специальном поле «указатель».
Сообщения «Запрос временной метки» и «Передача временной метки» используются для синхронизации часов в распределенной системе.
Сообщения «Запрос маски адреса» и «Передача маски адреса» необходимы для уточнения того, какие биты адреса относятся к адресу сети.
7.Маршрутизация
Реализуется на сетевом уровне сети. За нее отвечает протокол маршрутизации. При выборе стратегии маршрутизации могут быть поставлены разные цели, например:
q Минимизация времени доставки пакетов;
q Минимизации стоимости доставки пакетов;
q Обеспечение максимальной пропускной способности сети и т.д.
Задача маршрутизации решается маршрутизатором, который определяется как устройство сетевого уровня, использующее одну или несколько метрик для определения оптимального пути передачи сетевого трафика на основании информации сетевого уровня.
Под метрикой понимаются некоторые количественные характеристики пути, например, длина, время прохождения, пропускная способность и т. д.
Алгоритмы маршрутизации могут быть:
q статическими или динамическими;
q одномаршрутными или многомаршрутными;
q одноуровневыми или иерархическими;
q внутридоменными или междоменными;
q одноадресными или групповыми.
Статические (неадаптивные) алгоритмы предполагают предварительный выбор маршрутов и их занесение вручную в таблицу маршрутизации. Таким образом там должна уже быть заранее записана информация о том, на какой порт отправить пакет с соответствующим адресом. Примеры: протокол LAT фирмы DEC, протокол NetBIOS.
В динамических протоколах таблица маршрутизации обновляется автоматически при изменении топологии сети или трафика в ней.
Одномаршрутные протоколы предлагают только один маршрут для передачи пакета (который не всегда является оптимальным).
Многомаршрутные алгоритмы предлагают несколько маршрутов. Это позволяет передавать информацию получателю по нескольким маршрутам одновременно.
Сети могут иметь одноуровневую или иерархическую архитектуру. Соответственно различают и протоколы маршрутизации. В иерархических сетях маршрутизаторы верхнего уровня образуют особый уровень магистральной сети.
Некоторые алгоритмы маршрутизации действуют только в пределах своих доменов, т.е. используется внутридоменная маршрутизация. Другие алгоритмы могут работать и со смежными доменами – это определяется как междоменная маршрутизация.
Одноадресные протоколы предназначены для передачи информации (по одному или нескольким маршрутам) только одному получателю. Многоадресные — способны передавать данные сразу многим абонентам.
Выделяют три основные группы протоколов маршрутизации в зависимости от используемого типа алгоритма определения оптимального маршрута:
q Протоколы вектора расстояния;
q Протоколы состояния канала;
q Протоколы политики маршрутизации.
Протоколы вектора расстояния – самые простые и распространенные. Это, например, RIP, RTMP, IGRP.
Такие протоколы с определенной периодичностью передают (рассылают) соседям данные из своей таблицы маршрутизации (адреса и метрики). Соседи, получив эти данные, вносят необходимые изменения в свои таблицы. Недостаток эти протоколы хорошо работают только в небольших сетях. При увеличении размера возрастает служебный трафик в сети, увеличивается задержка обновления таблиц маршрутизации.
Протоколы состояния канала были впервые предложены в 1970 году Эдсгером Дейкстрой. Здесь вместо рассылки содержимого таблиц маршрутизации, каждый маршрутизатор производит широковещательную рассылку списка маршрутизаторов, с которыми он имеет непосредственную связь и списка напрямую подключенных к нему локальных сетей. Такая рассылка может производиться либо при изменении состояния каналов, либо периодически. Примеры протоколов: OSPF, IS-IS, Novell NLSP.
Протоколы политики (правил) маршрутизации наиболее часто используются в сети Интернет. Они опираются на алгоритмы вектора расстояния. Информация о маршрутизации получается от соседних операторов на основании специальных критериев. На основе такого обмена вырабатывается список разрешенных маршрутов. Примеры: протоколы BGP и EGP.
Маршрутизаторы
Маршрутизаторы являются достаточно сложными устройствами. При их создании используются 3 основные архитектуры.
1) Однопроцессорная. Здесь на процессор возлагается весь комплекс задач, включающий:
q фильтрацию и передачу пакетов;
q модификацию заголовков пакетов;
q обновление таблиц маршрутизации;
q выделение служебных пакетов;
q формирование управляющих пакетов;
q работа с протоколом управления сетью SNMP (Simple Network Management Protocol) и т.д.
Однако даже мощные RISC-процессоры не справляются с обработкой при большой загрузке.
2) Расширенная однопроцессорная. В функциональной схеме маршрутизатора выделяют модули, ответственные за выполнение ряда задач (например, работа со служебными пакетами). Каждый такой функциональный модуль снабжается собственным процессором (периферийным).
3) Симметричная многопроцессорная архитектура. Здесь происходит равномерное распределение нагрузки на все процессорные модули. Каждый из модулей выполняет все задачи маршрутизации и имеет свою собственную копию таблицы маршрутизации. Это наиболее прогрессивная для маршрутизаторов архитектура.
IP-маршрутизаторы
IP (Internet Protocol) является в настоящее время наиболее распространенным (в сети Интернет). Протокол работает на сетевом уровне и именно на этом уровне принимается решение о маршрутизации.
Существует 2 подхода к выбору маршрута:
· одношаговый подход;
· маршрутизация от источника.
При одношаговой маршрутизации каждый маршрутизатор принимает участие в выборе только одного шага передачи дейтаграммы. Поэтому в строке таблицы маршрутизации указывается не весь маршрут (к получателю), а только один IP-адрес следующего маршрутизатора. Для тех адресов, которые отсутствуют в таблице, используется адрес маршрутизатора по умолчанию.
Алгоритмы построения таблиц при одношаговоймаршрутизации могут быть следующими:
¨ фиксированная маршрутизация (таблица составляется «вручную» администратором);
¨ случайная маршрутизация (пакет передается в любом случайном направлении кроме исходного);
¨ лавинная маршрутизация (дейтаграмма передается во все направления, кроме исходного);
¨ адаптивная маршрутизация (таблица маршрутизации периодически корректируется на основании сведений о сетевой топологии от других маршрутизаторов).
Протоколы адаптивной маршрутизации получили наибольшее распространение в IP-сетях. Это протоколы: RIP, OSPF, IS-IS, EGP, BGP и т.д.
При маршрутизации от источника выбор маршрута производится конечным узлом или первым маршрутизатором на пути следования дейтаграммы. В IP-сетях этот метод не нашел распространения, зато широко применяется в ATM-сетях (например, протокол PNNI).
Пример записи в таблице маршрутизации (протокол RIP IP):
Номер сети получателя: 128.3.0.0
Следующий маршрутизатор в пути | Количество переходов | Таймер |
128.5.3.2 | ||
128.5.4.7 | ||
128.5.3.9 |
Здесь в качестве метрики маршрута используется количество переходов (hop count). Его называют также числом транзитных узлов (маршрутизаторов на пути к адресату). Таймер – это время, прошедшее с момента последнего обновления записи, Таймер сбрасывается при каждом обновлении.
Дата добавления: 2016-04-11; просмотров: 1156;