Далее рассматривается ряд более сложных сетевых приложений, включая обработку срочных данных TCP, использование сокетов домена UNIX и протокола UDP. Кроме того, здесь описывается широковещательная и многоадресная рассылка.
Протокол UDP
До сих пор рассматривались только те приложения, в которых используется протокол TCP, и мало говорилось о протоколе UDP (User Datagram Protocol — Протоке пользовательских дейтаграмм). Это связано с тем, что протокол TCP, как правило, проще в использовании, более надежен и понятен для программистов, которые привыкли работать с файлами и каналами. В Internet приложений на основе протока TCP больше (примерно в 10 раз), чем приложений, основанных на протоколе UDP.
Тем не менее, протокол UDP очень удобен для некоторых приложений и иногда позволяет выполнять такие задачи, которые трудно или даже невозможно реализовать в сетевой службе на основе TCP. В следующих нескольких разделах дано краткое описание протокола UDP, описана конструкция серверов на основе UDP и показано, как использовать UDP для приложений широковещательной и многоадресной рассылки.
Клиент службы времени
Начнем описание этого протокола с сетевого клиента службы времени на основе UDP, код которого приведен в сценарии udp_daytime.pl. Как было описано ранее, сервер службы времени на основе TCP ожидает входящий запрос на установление соединения и отвечает одной строкой, оканчивающейся спецсимволами, которая содержит отметку времени и даты на компьютере сервера.