Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Сообщение о недостижимости порта

Поиск

Поля Internet протокола: Адрес получателя -Локальная сеть и адрес компьютера, отправившего исходную датаграмму

Поля ICMP протокола -Тип3

Код

  невозможно передать датаграмму на локальную сеть, где находится адресат
  невозможно передать датаграмму на хост-компьютер, являющийся адресатом
  нельзя воспользоваться указанным протоколом
  нельзя передать данные на указанный порт
  для передачи датаграммы по сети требуется фрагментация, однако выставлен флаг DF.
  сбой в маршрутизации при отправлении

Контрольная сумма
Контрольная сумма является 16-битным дополнением до единицы суммы дополнений октетов в полях ICMP сообщения, начиная с поля типа ICMP. Для вычисления контрольной суммы первоначально значение этого поля обнуляется. В будущем процедура вычисления контрольной суммы может быть изменена.

Internet заголовок + 64 бита данных из исходной датаграммы
Данное поле содержит Internet заголовок и первые 64 бита данных из исходной датаграммы для выработки сообщения для соответствующего процесса. Если протокол более высокого уровня использует номера портов, то предполагается, что эти номера находятся в первых 64 битах поля данных.

Список типов сообщений

  ответ на запрос эхо
  адресат недостижим
  приостановка отправителя
  переадресация
  эхо-запрос
  превышение контрольного времени
  проблемы с параметрами
  штамп времени
  ответ на запрос штампа времени
  запрос информации
  ответ на запрос информации

Вопрос 21

Протокол доставки пользовательских дейтаграмм UDP

К транспортному уровню стека TCP/IP относится:

-протокол управления передачей (TransmissionControlProtocol, TCP),описанный в стандарте RFC 793;

-протокол пользовательских дейтаграмм (UserDatagramProtocol, UDP), описанный в стандарте RFC 768.

Протоколы TCP и UDP, как и протоколы прикладного уровня, устанавливаются на конечные узлы.

Протокол UDP обеспечивает ненадежную доставку дейтаграмм и не поддерживает соединений из конца в конец. Другими словами, его пакеты могут быть потеряны, продублированы или прийти не в том порядке, в котором они были отправлены. К заголовку IP-пакета он добавляет два поля, одно из которых, поле "порт", обеспечивает мультиплексирование информации между разными прикладными процессами, а другое поле - "контрольная сумма" - позволяет поддерживать целостность данных. Примерами сетевых приложений, использующих UDP, являются NFS и SNMP.

Зарезервированные и доступные UDP-порты

Сетевой уровень –передача между произвольными узлами.

Транспортный уровень -передача данных между любыми прикладными процессами, выполняющимися на любых узлах сети.

Процедура распределения протоколами TCP иUDP поступающих от сетевого уровня пакетов между прикладными процессами называется демультиплексирование. Существует и обратная задача: данные, генерируемые разными приложениями, работающими на одном конечном узле, должны быть переданы общему для всех них протокольному модулю IP для последующей отправки в сеть. Эту работу – мультиплексировани е -выполняют протоколы TCP иUDP.

Пакеты, поступающие на транспортный уровень, организуются операционной системой в виде множества очередей к точкам входа различных прикладных процессов. В терминологии TCP/IP такие системные очереди называются портами. Прикладной процесс, предоставляющий некоторые услуги другим прикладным процессам (сервер), ожидает поступления сообщений в порт, специально выделенный для этих услуг. Сообщения отправляются процессами-клиентами и должны содержать запросы на предоставление услуг. Порты нумеруются, начиная с нуля.

Назначение номеров портов прикладным процессам осуществляется либо централизовано, если эти процессы представляют собой популярные общедоступные сервисы, типа сервиса удаленного доступа к файлам TFTP (Trivial FTP) или сервиса удаленного управления telnet, либо локально для тех сервисов, которые еще не стали столь распространенными, чтобы за ними закреплять стандартные (зарезервированные) номера.

Централизованное присвоение сервисам номеров портов выполняется организацией InternetAssignedNumbersAuthority. Эти номера затем закрепляются и опубликовываются в стандартах Internet. Локальное присвоение номера порта заключается в том, что разработчик некоторого приложения просто связывает с ним любой доступный, произвольно выбранный числовой идентификатор, обращая внимание на то, чтобы он не входил в число зарезервированных номеров портов.

Динамические номера – операционная система выделяет под работу приложения свободный номер. После завершения работы приложения, номер освобождается.

Формат сообщений UDP

Единица данных протокола UDP называется UDP-пакетом или пользовательской дейтаграммой. UDP-пакет состоит из заголовка и поля данных, в котором размещается пакет прикладного уровня. Заголовок имеет простой формат и состоит из четырех двухбайтовых полей:

  • Поле sourceport - номер порта процесса-отправителя.
  • Поле destinationport - номер порта процесса-получателя.
  • Поле messagelength - длина UDP-пакета в байтах.
  • Поле checksum - контрольная сумма UDP-пакета.

Не все поля UDP-пакета обязательно должны быть заполнены. Например, если посылаемая дейтаграмма не предполагает ответа, то на месте адреса отправителя могут помещаться нули.

Контрольное суммирование

Когда модуль UDP получает датаграмму от модуля IP, он проверяет контрольную сумму,содержащуюся в ее заголовке. Если контрольная сумма равна нулю, то это означает, что отправитель дейтаграммы ее не подсчитывал, и, следовательно, ее нужно игнорировать. Если два модуля UDP взаимодействуют только через одну сеть Ethernet, то от контрольного суммирования можно отказаться, так как средства Ethernet обеспечивают достаточную степень надежности обнаружения ошибок передачи. Это снижает накладные расходы, связанные с работой UDP. Однако рекомендуется всегда выполнять контрольное суммирование, так как возможно в какой-то момент изменения в таблице маршрутов приведут к тому, что дейтаграммы будут посылаться через менее надежную среду.

Хотя к услугам протокола UDP может обратиться любое приложение, многие из них предпочитают иметь дело с другим, более сложным протоколом транспортного уровня - TCP. Дело в том, что протоколUDP выступает простым посредником между сетевым уровнем и прикладными сервисами, и, в отличие от TCP, не берет на себя никаких функций по обеспечению надежности передачи. UDP является дейтаграммным протоколом, то есть он не устанавливает логического соединения, не нумерует и не упорядочивает пакеты данных. С другой стороны, функциональная простота протокола UDP обуславливает простоту его алгоритма, компактность и высокое быстродействие.

Инкапсуляция.

Например, когда процесс хочет послать сообщение с помощью UDP, то производится последовательность действий:

§ процесс передает сообщение к UDP в соответствии с парой гнездовых адресов и длины данных;

§ UDP получает данные, дополненные заголовком UDP;

§ UDP передает пользовательскую дейтаграмму к IP с гнездовым адресом;

§ IP дополняет свой заголовок, который использует значение 17 в поле протокола, указывающее, что данные поступили от UDP-протокола;

§ IP-дейтаграмма дополняет и добавляет собственный заголовок (при необходимости и окончание) и передает его к физическому уровню;

§ физический уровень кодирует биты в электрические или оптические сигналы и посылает их отдалённой машине.

Работа протокола на хосте – отправителе

Вопрос 22



Поделиться:


Последнее изменение этой страницы: 2016-07-16; просмотров: 252; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.148.104.103 (0.008 с.)