Введение в UDP в Go
Датаграмма в сетевых программах на Go
это одно сообщение, которое уходит одним
пакетом на указанный адрес и порт, без
долгого рукопожатия и без потока байтов,
как у TCP. Работа идет через стандартный
пакет net: там же, где настраивают
и другие сетевые типы адресов.
Постоянного соединения между сторонами здесь нет: пакет может потеряться, порядок доставки не обещан. Программа сама решает, сколько ждать ответ и что делать, если за отведенное время ничего не пришло.
Отправитель заранее знает, куда слать данные, и записывает их в сокет. Слушатель открывает локальный порт, читает пришедший кусок байтов и вместе с ним получает адрес того, кто прислал пакет, чтобы при необходимости ответить на тот же хост и порт.
В этом разделе разберем отправку на известный
адрес, прием с адресом отправителя, ответ
обратно и простой обмен вопросом и ответом.
Закрепим приемы в задачах. Для примеров
возьмем локальный адрес "127.0.0.1:9091";
горутины и ожидание из предыдущих разделов
пригодятся в полном обмене.