Otherwise, first check sequence number SYN-RECEIVED STATE ESTABLISHED STATE FIN-WAIT-1 STATE FIN-WAIT-2 STATE CLOSE-WAIT STATE CLOSING STATE LAST-ACK STATE TIME-WAIT STATE Segments are processed in sequence. Initial tests ... In general, the processing of received segments MUST ... There are four cases for the acceptability test for ... +=========+=========+======================================+ | Segment | Receive | Test | | Length | Window | | +=========+=========+================================== ... In implementing sequence number validation as described ... If the RCV.WND is zero, no segments will be acceptable, ... If an incoming segment is not acceptable, an ... + After sending the acknowledgment, drop the unacceptable ... Note that for the TIME-WAIT state, there is an improved ... In the following it is assumed that the segment is the ... second check the RST bit, RFC 5961 [9] section 3 describes a potential blind reset ... 1) If the RST bit is set and the sequence number is ... 2) If the RST bit is set and the sequence number exactly ... 3) If the RST bit is set and the sequence number does not ... After sending the challenge ACK, TCP endpoints MUST ... SYN-RECEIVED STATE If the RST bit is set If this connection was initiated with a passive ... ESTABLISHED FIN-WAIT-1 FIN-WAIT-2 CLOSE-WAIT If the RST bit is set then, any outstanding RECEIVEs ... CLOSING STATE LAST-ACK STATE TIME-WAIT If the RST bit is set then, enter the CLOSED state ... third check security SYN-RECEIVED If the security/compartment in the segment does not ... ESTABLISHED FIN-WAIT-1 FIN-WAIT-2 CLOSE-WAIT CLOSING LAST-ACK TIME-WAIT If the security/compartment in the segment does not ... Note this check is placed following the sequence check ... fourth, check the SYN bit, SYN-RECEIVED If the connection was initiated with a passive OPEN ... ESTABLISHED STATE FIN-WAIT STATE-1 FIN-WAIT STATE-2 CLOSE-WAIT STATE CLOSING STATE LAST-ACK STATE TIME-WAIT STATE If the SYN bit is set in these synchronized states ... After sending the acknowledgement, TCP implementations ... For implementations that do not follow RFC 5961 ... If the SYN is not in the window this step would ... fifth check the ACK field, if the ACK bit is off drop the segment and return if the ACK bit is on RFC 5961 [9] section 5 describes a potential blind data ... SYN-RECEIVED STATE If SND.UNA < SEG.ACK =< SND.NXT then enter ESTABLISHED ... SND.WND <- SEG.WND SND.WL1 <- SEG.SEQ SND.WL2 <- SEG.ACK If the segment acknowledgment is not acceptable, form ... and send it. ESTABLISHED STATE If SND.UNA < SEG.ACK =< SND.NXT then, set SND.UNA ... If SND.UNA =< SEG.ACK =< SND.NXT, the send window ... Note that SND.WND is an offset from SND.UNA, ... FIN-WAIT-1 STATE In addition to the processing for the ESTABLISHED ... FIN-WAIT-2 STATE In addition to the processing for the ESTABLISHED ... CLOSE-WAIT STATE Do the same processing as for the ESTABLISHED state. CLOSING STATE In addition to the processing for the ESTABLISHED ... LAST-ACK STATE The only thing that can arrive in this state is ... TIME-WAIT STATE The only thing that can arrive in this state is ... sixth, check the URG bit, ESTABLISHED STATE FIN-WAIT-1 STATE FIN-WAIT-2 STATE If the URG bit is set, RCV.UP <- max(RCV.UP,SEG.UP) ... CLOSE-WAIT STATE CLOSING STATE LAST-ACK STATE TIME-WAIT This should not occur, since a FIN has been received ... seventh, process the segment text, ESTABLISHED STATE FIN-WAIT-1 STATE FIN-WAIT-2 STATE Once in the ESTABLISHED state, it is possible to ... When the TCP endpoint takes responsibility for ... Once the TCP endpoint takes responsibility for ... A TCP implementation MAY send an ACK segment ... Please note the window management suggestions in ... Send an acknowledgment of the form: This acknowledgment should be piggybacked on a ... CLOSE-WAIT STATE CLOSING STATE LAST-ACK STATE TIME-WAIT STATE This should not occur, since a FIN has been received ... eighth, check the FIN bit, Do not process the FIN if the state is CLOSED, LISTEN ... If the FIN bit is set, signal the user "connection ... SYN-RECEIVED STATE ESTABLISHED STATE Enter the CLOSE-WAIT state. FIN-WAIT-1 STATE If our FIN has been ACKed (perhaps in this ... FIN-WAIT-2 STATE Enter the TIME-WAIT state. Start the time-wait ... CLOSE-WAIT STATE Remain in the CLOSE-WAIT state. CLOSING STATE Remain in the CLOSING state. LAST-ACK STATE Remain in the LAST-ACK state. TIME-WAIT STATE Remain in the TIME-WAIT state. Restart the 2 MSL ... and return.