Поскольку UDP не создает соединений, каждый пакет передаваемых данных должен содержать в себе адрес назначения.
Важно и то, что любой процесс использует номера портов, назначаемые системой при применении сокетов. Это значит, что каждый процесс должен предоставлять полные адреса другим процессам, чтобы взаимодействовать с ними.
Подпроцессы, запускающиеся при использовании referee или
front_end хорошо ``знают'' порты. При чтении UDP-сокета
также предоставляется адрес отправителя: после первого контакта
процессы обмениваются несколькими байтами данных, тем самым получая
полные адреса друг друга.