RFC: 793
Оригинал: Transmission Control Protocol
Предыдущие версии: RFC 761
Категория: Стандарт Интернета
Дата публикации:
Автор:
Перевод: Николай Малых

RFC 793, Страница 42 из 49

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".

Страница 42 из 49

2007 - 2022 © Русские переводы RFC, IETF, ISOC.