CLOSE
- Состояние CLOSED (TCB не существует)
Если у пользователя нет прав доступа к соединению, возвращается сообщение "error: connection illegal for this process". В остальных случаях возвращается сообщение "error: connection does not exist".
- Состояние LISTEN
Все незавершенные вызовы RECEIVE завершаются с сообщением "error: closing" (соединение закрывается). Удаляется TCB и соединение переводится в состояние CLOSED.
- Состояние SYN-SENT
Удаляется TCB и возвращаются сообщения "error: closing" для всех поставленных в очередь вызовов SEND и RECEIVE.
- Состояние SYN-RECEIVED
Если нет очереди SEND и данных, ожидающих передачи, формируется сегмент FIN и соединение переходит в состояние FINWAIT-1. В противном случае вызов помещается в очередь для обработки после завершения состояния ESTABLISHED.
- Состояние ESTABLISHED
Запрос сохраняется в очереди, пока не будут сегментированы все предыдущие вызовы SEND. После этого формируется сегмент FIN и соединение переходит в состояние FIN-WAIT-1.
- Состояния FIN-WAIT-1; FIN-WAIT-2
Строго говоря, такой вызов является для данных состояний ошибкой и должен возвращать сообщение "error: connection closing" (закрытие соединения). Однако отклик "ok" (нет ошибок) также допускается, пока не передан повторно сегмент FIN (хотя первый сегмент FIN может быть передан повторно).
- Состояние CLOSE-WAIT
Запрос сохраняется в очереди, пока не будут сегментированы все предыдущие вызовы SEND. После этого формируется сегмент FIN и соединение переходит в состояние.
- Состояния CLOSING; LAST-ACK; TIME-WAIT
Возвращается сообщение "error: connection closing".