Re: TCP MSS issue

From: Vernon Schryver (
Date: 12/26/04

  • Next message: Walter Roberson: "Re: TCP MSS issue"
    Date: Sat, 25 Dec 2004 23:32:16 -0700 (MST)

    In article <cql0fs$6ib$>,
    Walter Roberson <> wrote:

    >:I_SRDOPT is an option for Streams and not for TCP. It works if a
    >:transport protocol honours this option. TCP is certainly not one of it.
    >Emil, TCP can (and has been) implimented in terms of STREAMS.

    As far as I know and recall, there have been two major implementations
    of TCP/IP in System V STREAMS. The first was done by people at Lachman
    (perhaps Steve Alexander?) for AT&T and was part of what wrecked AT&T's
    suit against BSDI when it came out that AT&T had been shipping the
    Regent's code without the Regent's copyright legends. Judging from
    my diffs with with the SVR4 source, it consisted of the BSD 4.3 TCP/IP
    of various flavors jammed into STREAMS modules. The second was the
    from-scratch Mentat code that Sun shipped in a paniced reaction to
    that legal stuff.

    >The following are from the SGI IRIX man pages:

    Please check the IRIX kernel source instead of trying to infer from
    man pages, which themselves were related to BSD and SV man pages.
    I think you'll find that IRIX STREAMS TCP/IP was really a wart on top
    of and beside good old 4.3 BSD SOCKETS TCP/IP, including Sam Leffler's
    protocol switch, Van Jacobson's slow-start, ack-pacing, and
    header-predicting, etc.

    Well, there is (or was?) also the other, later STREAMS-related wart
    underneath among the interfaces, ostensibly to support SAPs. What was
    that over elaborate, committee designed, utter disaster of a driver
    abstraction called? I though it stupid because it required upper
    layers to do things like handle the differing bit orders of IEEE MAC
    addresses for 802.3 vs. FDDI.

    (Survey the $author$ tags in RCS logs of the IRIX kernel TCP/IP and
    STREAMS code to see the basis of those claims.)

    > For STREAMS files [see intro(2)], the operation of write is determined by
    > the values of the minimum and maximum nbyte range (``packet size'')
    > ...

    That seems to be confusing the SRV3 STREAMS in IRIX with the BSD
    SOCK_STREAMS also in IRIX--at least as of IRIX 6.?.

    >There is no mention at all of sockets in the write(2) man page, but the
    >section on STREAMS describes fragmentation into packets. Would it not
    >be rather strange to describe in detail packet fragmentation for the
    >obscure STREAMS and yet not even mention sockets at all, let alone
    >describe their fragmentation rules, unless sockets are indeed a kind of
    >STREAM ?

    Things are indeed strange, undreampt of things in heaven and earth.
    20 years ago were already "streams," "STREAMS," "SOCK_STREAM," and
    many other kinds of canals, rivers, creeks, pipes, aqueducts, and
    other flowing things, all different and related.

    As I see things, no one in their right minds writing a STREAMS module
    for the TCP state machines would handle dividing data into segments much
    differently than the BSD code does. TCP is what it is. If you are
    building T/TCP, UDP, RDP, or something else, you might do other things.

    I recognize the names of some contributors to this thread. Greetings.
    You guys are still far more gentle than I am.

    Vernon Schryver

  • Next message: Walter Roberson: "Re: TCP MSS issue"

    Relevant Pages

    • Re: TCP MSS issue
      ... TCP is certainly not one of it. ... TCP can implimented in terms of STREAMS. ... my diffs with with the SVR4 source, it consisted of the BSD 4.3 TCP/IP ... I think you'll find that IRIX STREAMS TCP/IP was really a wart on top ...
    • Re: EZASMI Concurrent Server cannt handle mutiple open connections in the same port
      ... connections such as TCP, rather than datagrams. ... Streams have the property of a local socket AND a ... remote IP address and port. ... That's true for TCP, but not for, e.g., SCTP. ...
    • Re: All BBC stations off-air on iPlayer
      ... rate on wired Internet transmissions will be *very* low, ... IP dumps the packets, TCP notices they've gone missing because it ... Most streams use TCP nowadays. ...
    • Re: All BBC stations off-air on iPlayer
      ... Flash's RTMP uses TCP, Microsoft ASF streams are delivered via RTSP over TCP, and Shoutcast Internet radio streams use TCP. ... I don't think I tried with any Real Player streams though. ...
    • Re: [fw-wiz] dirty packet tricks?
      ... > things in BSD firewalls by whacking the code in the IP stack so that ... efficient ways of doing this but then it doesn't really port to other SVR4 ... Unless you want to modify data streams, ...