4.1.4 Интерфейс между уровнем UDP и прикладным уровнем
Интерфейс между приложениями и UDP должен полностью обеспечивать службы, описанные в параграфе 3.4. Таким образом, приложениям на основе UDP требуются функции GET_SRCADDR(), GET_MAXSIZES(), ADVISE_DELIVPROB() и RECV_ICMP(), описанные в 3.4. Например, функция GET_MAXSIZES() может использоваться для определения эффективного значения максимального размера дейтаграмм UDP для конкретной тройки {интерфейс, удаленный хост, TOS}.
Программы прикладного уровня должны иметь возможность установки значений TTL и TOS, а также опций IP при передаче дейтаграмм UDP и установленные значения должны прозрачно передаваться на уровень IP. UDP может передавать полученные значения TOS на уровень приложений.
4.1.5 Требования к протоколу UDP
Функция | Параграф | Требование |
UDP передает сообщения Port Unreachable | 4.1.3.1 | Рекомендуется |
Опции IP в UDP | ||
Передача полученных опций на уровень приложений | 4.1.3.2 | Обязательно |
Приложения могут устанавливать опции при передаче | 4.1.3.2 | Обязательно |
UDP передает опции на уровень IP | 4.1.3.2 | Обязательно |
Передача сообщений ICMP на прикладной уровень | 4.1.3.3 | Обязательно |
Контрольные суммы UDP: | ||
Генерация и проверка контрольных сумм | 4.1.3.4 | Обязательно |
Отбрасывание дейтаграмм с ошибкой в контрольной сумме | 4.1.3.4 | Обязательно |
Передача дейтаграмм без контрольной суммы | 4.1.3.4 | Возможно |
По умолчанию контрольная сумма используется | 4.1.3.4 | Обязательно |
Приемник может требовать контрольную сумму | 4.1.3.4 | Возможно |
Многодомные хосты UDP: | ||
Передача указанного адреса получателя приложениям | 4.1.3.5 | Обязательно |
Возможность задания локального адреса отправителя на прикладном уровне | 4.1.3.5 | Обязательно |
Возможность задания шаблона локального адреса отправителя на прикладном уровне | 4.1.3.5 | Обязательно |
Уведомление приклад. уровня об используемом локальном адресе | 4.1.3.5 | Возможно |
Дейтаграммы с некорректным IP-адресом отправителя отбрасываются UDP/IP | 4.1.3.6 | Обязательно |
При передаче дейтаграмм используется только корректный. адрес IP | 4.1.3.6 | Обязательно |
Службы интерфейса UDP c приложениями: | ||
Полный интерфейс IP (см. 3.4) для приложений | 4.1.4 | Обязательно |
Возможность задания TTL, TOS и опций IP при передаче | 4.1.4 | Обязательно |
Передача принятого TOS на уровень приложений | 4.1.4 | Возможно |