TCP RFC and SYN_RCVD state

TCP RFC and SYN_RCVD state

Post by sunult.. » Mon, 07 Feb 2000 04:00:00



Hi,

 I have a question regarding TCP's RFC 793. There is no mention of TCP
event processing when in SYN_RCVD state.

 Page 64 (http://www.freesoft.org/CIE/RFC/Orig/rfc793.txt)
discusses what happens when a SEGMENT arrives. Only three states are
mentioned here: CLOSED, LISTEN and SYN_SENT.

 What I am interested in is what happens when we are in the SYN_RCVD
state and the ESTABLISHED state (or the rest of the CLOSE/FIN/TIME_WAIT)
states and a segment arrives.  Am I missing something from the RFC?

 The SYN_SENT state (and LISTEN and CLOSED) are explained in great
details. Like- check for ACK first, then RST, then FIN and so on. Is
there a similar treatment for SYN_RCVD, ESTABLISHED and the rest of the
states?

Any suggestions and help will be *highly* appreciated.

thanks
-P

Sent via Deja.com http://www.deja.com/
Before you buy.

 
 
 

TCP RFC and SYN_RCVD state

Post by Andrew Gabri » Mon, 07 Feb 2000 04:00:00




Quote:>Hi,

> I have a question regarding TCP's RFC 793. There is no mention of TCP
>event processing when in SYN_RCVD state.

It's the part which reads:

    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 on arrival
        are used to discard old duplicates, but further processing is
        done in SEG.SEQ order.  If a segment's contents straddle the
        boundary between old and new, only the new parts should be
        processed.

...and so on.

When implementing a TCP device driver for a proprietry operating
system some 12 years ago, I took this section of RFC793, wrapped
it all in comment symbols for the language being used, and then
simply worked through it filling in the code to do what it said.
Worked like a charm...

--
Andrew Gabriel
Consultant Software Engineer

 
 
 

1. losing TCP ACKs: SYN_RCVD

Hello

We're having a problem on a few of our networks:
each network has a number of PCs connected to a SCO 3.4 Unix server
that,
in turn, is connected to an X.25 network.
Frequently, for no apparent reason, a random PC fails to connect.
The server-side of the connection is stuck in SYN_RCVD so it would seem
that the ACK from the PC to server is getting lost somewhere!

During our search for a solution we were informed that some variants of
the SVR4 TCP/IP kernel would occasionally ignore TCP ACKs.
Is this correct?

If so, would someone please give me more information?

Please respond via email; thanks in advance.

-- Marty

2. LOC counter ?

3. Rejecting TCP connections with TCP reset (what state?)

4. SunCD doesn't recognize some audio CDs

5. [RFC][PATCH][CLEANUP] task->state cleanup: pilot

6. Patching question

7. Matrox Mystique ands X.

8. 14.0 modem help

9. Looking for RFC 1006 (OSI on top of TCP) implementation for Unix

10. Linux and RFC 1006 (OSI over TCP/IP)

11. How to get RFC ?? fingerd - RFC 742 ??

12. Large TCP Window (RFC 1323) for Solaris 2.5?

13. Linux and RFC 1006 (OSI over TCP/IP)