В сложных сетях и в бытовых компьютерах есть цифровой компонент, называемый сокетом, который соединяет две разные платформы. Когда есть проблема с подключением к сокету, например, сеть недоступна или нет Интернета, сокет будет продолжать попытки подключения. Тайм-аут сокета останавливает это соединение по истечении заданного времени. Команда тайм-аута сокета обычно создается в объектно-ориентированном программировании (ООП) или сетевом программировании и предотвращает создание сокетом чрезмерных проблем путем разрыва соединения.
Сокеты, независимо от того, используются ли они в Linux® или другой операционной системе (ОС), предназначены для установления соединения между клиентской программой и сервером.
Тайм-аут сокета - это установленный промежуток времени с момента подключения сокета до разрыва соединения. Многие пользователи считают, что тайм-аут сам по себе является проблемой, но на самом деле тайм-аут предназначен для предотвращения проявления дальнейших проблем. Время между подключением и тайм-аутом устанавливается программистами программного обеспечения или операционной системы (ОС). Без команды тайм-аута сокет будет продолжать попытки соединения бесконечно.
Если тайм-аут сокета не запрограммирован, то сокет останется открытым, ожидая подключения другой стороны. Если оставить его открытым, это откроет компьютер для потенциальных злонамеренных атак. Чаще всего компьютер просто использует избыточную память для подключения к сети, которая не отвечает. Это также предотвращает использование сокета для чего-либо еще, что замедляет работу всего компьютера. Программисты ОС и программного обеспечения должны указать время ожидания тайм-аута сокета. Это чаще всего встречается в ООП или сетевом программировании, потому что это программы, которые больше всего используют сокеты. Большинство разработчиков веб-сайтов не так часто используют сокеты и не имеют команд тайм-аута. Время ожидания обычно измеряется в миллисекундах, но программист может сделать тайм-аут на несколько минут или даже часов.
У большинства программистов есть два сообщения о тайм-ауте сокета: одно для соединения, которое не отвечает, а другое при закрытии сервера или сетевой программы. Тайм-аут не всегда требуется сокету, чтобы остановить соединение. Когда сервер или компьютер собираются закрыть соединение, он посылает сигнал в сокет, чтобы сделать то же самое и закрыть соединение между двумя системами. Этот сигнал не всегда поступает, в том числе, когда происходит внезапный сбой в сети или отключается кабель Ethernet во время соединения. В этих случаях сокет просто будет ждать данных.