Хотя это правило имеет исключения, в большинстве текстовых сетевых служб для обозначения конца строки применяется последовательность CRLF, которая имеет восьмеричное значение “ 1512”. При построчном чтении данных с таких серверов необходимо установить глобальную переменную $/ разделителя входных записей равной “1512” (а не “rn”, поскольку эта строка имеет различное значение на разных плата формах). Для упрощения этой задачи модуль Socket позволяет дополнительно выполнить экспорт нескольких констант, определяющих наиболее распространенные обозначения конца строки. Кроме того, чтобы было проще преобразовывать эти последовательности в строки, модуль Socket экспортирует переменные $CRLF, $CR и $LF.
Исключительные ситуации, возникающие во время связи по протоколу TCP. Протокол TCP обладает исключительной надежностью. Он способен работать при медленных соединениях, ненадежных маршрутизаторах, периодических выходах из строя и многих неправильных настройках и при этом передавать равномерный поток данных, свободный от ошибок. Однако протокол TCP не может преодолеть все проблемы. В данном раздел вкратце рассматриваются обычные исключительные ситуации, а также некоторые распространенные ошибки программирования.
Во время вызова функции connect() часто возникают следующие ошибки.
Удаленный хост работает, но ни один сервер не принимает входящие запросы на установление соединений. Клиент пытается подключиться к удаленному хосту, но ни один сервер не принимает входящие запросы через указанный порт. Функция connect() завершается аварийно с ошибкой ECONNREFUSED (“Connection refused” — В соединении отказано).