Рассмотрим структуру заголовока 𝐔𝐃𝐏 (к предыдущей иллюстрации)
Заголовок UDP состоит из четырех основных частей, и его общая длина составляет всего 8 байт. Во-первых, в него входит исходный порт, который занимает первые 2 байта. Он сообщает, с какого порта поступают данные на стороне отправителя.
Сразу за ним идет порт назначения, также 2 байта, который показывает порт на принимающей стороне, куда направляются данные. Эти порты помогают устройствам выяснить, какое приложение должно обрабатывать входящие данные — например, почтовый адрес для приложения.
Далее идет поле длины, еще 2 байта, которое показывает общий размер сегмента UDP, включая заголовок и фактические данные, которые следуют за ним.
Наконец, есть 𝐂𝐡𝐞𝐜𝐤𝐬𝐮𝐦, также 2 байта, который используется для проверки ошибок в сегменте UDP и даже частях заголовка IP.
Контрольная сумма необязательна в некоторых случаях, но когда она используется, она гарантирует, что данные не были повреждены во время передачи. Она также включает в себя нечто, называемое псевдозаголовком — по сути, небольшой фрагмент заголовка IP — для более надежной проверки ошибок.
Простота UDP делает его невероятно быстрым, но поскольку он не гарантирует доставку или порядок, вам придется самостоятельно обрабатывать эти вещи в своем коде, если они имеют значение для вашего проекта.
Post #1562
1.79K
- ❤ 6
- 👍 3
- 👏 1