Приостановка передачи
При полном заполнении входного буфера перегруженный узел-приемник указывает в своей квитанции нулевое окно. Даже после этого его партнер по соединению может направить на этот порт сообщение. Для этого оно должно сопровождаться пометкой «срочно» (в поле заголовка — «указатель срочности»). При поступлении такого срочного пакета порт обязан принять его даже путем вытеснения из буфера уже находящихся там данных. Ненулевое окно разрешает дальнейший приём данных.
Заголовок. Мин. длина - 20 байт
«Номер в последовательности»(Sequence number) - номер первого байта в текущем сегменте.
«Номер подтверждения»(Acknowledgment number) - номер следующего байта, который ожидает приемник. Тем самым подтверждается получение байтов с номерами до {AN-1}.
«Смещение данных»(Data offset) — указывает количество 32-битных слов в заголовке TCP.
«Резерв» (Reserved) - заполнено нулями и предназначено для будущего расширения протокола.
«Окно»(Window) - объявляет размер W окна в байтах.
«Контрольная сумма»(Checksum) - сумма всех 16 битовых слов заголовка и поля данных.
«Указатель срочности»(Urgent pointer) - используется совместно с флагом URG. Указывает размер в байтах поля срочных данных.
«Опции» - имеет переменную длину и может отсутствовать. Его размер всегда кратен 8 байтам. Здесь могут, к примеру, указываться: максимальный размер сегмента, дополнительные услуги и т.д.
«Выравнивание»(Padding) - заполнение нулями до 32-битовой длины.
Особенности протокола TCP
1. С помощью флага URG могут передаваться срочные данные.
2. Соединение является надежным за счет:
- использования режима обнаружения ошибок;
- присвоения порядковых номеров каждому байту сообщения
- использования тайм-аута ожидания подтверждения, по его истечении сегмент передается повторно.
3. Управление потоком путем использования окна передачи W.
Протокол UDP
UDP (User Datagram Protocol) - протокол пользовательских дейтаграмм. Он используется в том случае, если передаваемые данные помещаются в одном пакете, а гарантия их доставки не особенно важна. Этот протокол не заботится о пропавших пакетах, о расположении данных в правильном порядке и о других тонкостях. Протокол применяется для тех программ, которые посылают только короткие сообщения и могут повторить передачу данных, если ответ задерживается.
Формат дейтаграммы UDP показан на рисунке слева
Поле «длина» указывает количество байтов в дейтаграмме (т.е. длина заголовка и данных)
Данные протокола UDP инкапсулируется в IP-дейтаграммах при передаче их по сети (см. рис. справа вверху).
Только IP-заголовок определяет отправителя и получателя. Сама же дейтаграмма содержит только номера портов.
UDP обеспечивает мультиплексирование и демультиплексирование дейтаграмм (см. рис.6.23.).
Каждый такой порт (также как и в протоколе TCP) может быть представлен в виде входной и выходной очереди дейтаграмм.
Протокол 1СМР
Протокол обмена управляющими сообщениями ICMP (Internet Control Message Protocol) является вспомогательным в стеке TCP/IP.
Этот протокол позволяет маршрутизатору сообщать станции-источнику об ошибках и нештатных ситуациях, с которыми он столкнулся при передаче IP-дейтаграммы от этой станции.
Протокол включается в каждую реализацию протокола IP и может рассматриваться и как его неотъемлемая часть.
Сообщения ICMP передаются по сети в поле данных IP-дейтаграммы. Протокол посылает два вида сообщений:
• управляющие сообщения;
• сообщения об ошибках.
Эти сообщения могут быть посланы как на другие маршрутизаторы, так и на конечные станции.
Протокол сообщает об ошибках, но не предпринимает мер по их исправлению. Если маршрутизатор обнаруживает ошибку, он уничтожает дейтаграмму, но одновременно с помощью ICMP отсылает сообщение об ошибке отправителю для принятия мер по ее устранению.Доставка сообщений ICMP производится с помощью IP-дейтаграмм. Поэтому эти сообщения могут быть аналогично другим дейтаграммам утеряны или удалены. Сообщения ICMP требуют двух уровней инкапсуляции (см. рис.слева).
Все сообщения ICMP начинаются с трех одинаковых полей (см. рис.справа выше.).
Поле «тип» определяет смысл сообщения и его формат. Это поле может иметь, например, следующие значения* 3 — получатель недостижим; * 11 — время жизни дейтаграммы истекло;* 12 — ошибка параметра;
Сообщения «Запрос эха» и «Ответ наэхо» часто используются при отладке сети. Они позволяют убедиться в достижимости получателя IP-дейтаграммы и его способности отвечать на запросы. Во многих системах программа с такими функциями называется «Ping».
Сообщение «Получатель недостижим»посылается маршрутизатором, если он не может доставить IP-дейтаграмму по назначению. Поле «код» в таком сообщении указывает на причину недоставки, например: * 1 — устройство недостижимо; * 3 — порт недостижим; * 4 — требуется фрагментация; * 6 — сеть назначения неизвестна и т.д. В это сообщение включается IP-заголовок отвергнутой IP-дейтаграммы и ее первые 64 бита. Сообщение «Подавление источника»требует от узла-источника уменьшения скорости передачи дейтаграмм. Такое сообщение посылается тогда, когда на маршрутизаторе скапливается большая очередь и происходит переполнение буфера. Тогда на каждую из не поставленных в очередь IP-дейтаграмм посылается такое сообщение. Сообщение «Изменение маршрута»используется для указания источнику на то, что в данной сети существует более оптимальный путь доставки отправленной дейтаграммы. В сообщении указывается адрес рекомендуемого маршрутизатора. Сообщение «Время жизни дейтаграммы истекло»посылается при обнулении счетчика времени жизни дейтаграммы или при превышении времени ожидания формирования фрагментов дейтаграммы. Сообщение «Ошибка параметра»посылается маршрутизатором при обнаружении неправильного параметра в заголовке. Тогда дейтаграмма уничтожается. Неверный байт передается в специальном поле «указатель».
Дата добавления: 2016-10-07; просмотров: 1654;