9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Bakul Shah <bakul+plan9@bitblocks.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] telnet vs. godaddy whois
Date: Mon, 21 Apr 2008 14:06:27 -0700	[thread overview]
Message-ID: <20080421210627.D6D915B66@mail.bitblocks.com> (raw)
In-Reply-To: Your message of "Mon, 21 Apr 2008 21:19:33 BST." <49bcef4f0acf09bf86e042eeff8ed42b@terzarima.net>

On Mon, 21 Apr 2008 21:19:33 BST Charles Forsyth <forsyth@terzarima.net>  wrote:
> > But in any case setting PSH on a
> > packet with no data serves no real purpose.
>
> i think that's incorrect: it ensures a push of any data that is already buffe
> red but un-pushed
> (ie, the immediately preceding segment had no PSH, and the receiver's impleme
> ntation buffers
> accordingly).

Other major implementations don't set PSH on a pkt with no
data so clearly they don't agree with you.  Here's why:

According to rfc1122 page 83,

    The PSH bit is not a record marker and is independent of
    segment boundaries.  The transmitter SHOULD collapse
    successive PSH bits when it packetizes data, to send the
    largest possible segment.

     A TCP MAY implement PUSH flags on SEND calls.  If PUSH
     flags are not implemented, then the sending TCP: (1)
     must not buffer data indefinitely, and (2) MUST set the
     PSH bit in the last buffered segment (i.e., when there
     is no more queued data to be sent).

The implication is that the "preceding segment" to a pkt with
no data *will have* PSH set.

> part of the problem with the continued specification of protocols, even 30
> years on, as `formal' english text is that it can appear to be ambiguous when
> it's just subtly precise. that's why i had to say `i think' as opposed to QED

Indeed.  One point to note is that RFCs (at least used to)
document existing implementations but some times not
everything is documented clearly and precisely.  Unlike
programming language implementations where things left
undefined by the specification can be implemented however you
wish, here you have to be compatible with existing
implementations as far as possible (in order to maximize
interoperability).


  reply	other threads:[~2008-04-21 21:06 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-15 17:16 erik quanstrom
2008-04-16 13:31 ` Russ Cox
2008-04-16 13:46   ` Charles Forsyth
2008-04-16 16:52     ` Michaelian Ennis
2008-04-16 18:36     ` erik quanstrom
2008-04-16 19:04       ` ron minnich
2008-04-16 19:48         ` Bakul Shah
2008-04-16 20:25           ` Tim Wiess
2008-04-16 20:49           ` Charles Forsyth
2008-04-16 21:43             ` Taj Khattra
2008-04-16 22:00               ` John Barham
2008-04-16 22:20               ` C H Forsyth
2008-04-16 23:26             ` Bakul Shah
2008-04-17  0:04               ` Charles Forsyth
2008-04-17  8:18                 ` Charles Forsyth
2008-04-17 18:41                   ` Bakul Shah
2008-04-17 19:29                     ` erik quanstrom
2008-04-17 20:59                       ` Tim Wiess
2008-04-17 21:19                         ` Charles Forsyth
2008-04-17 21:23                           ` Tim Wiess
2008-04-17 21:56                             ` Charles Forsyth
2008-04-17 22:06                               ` Charles Forsyth
2008-04-17 22:43                               ` Tim Wiess
2008-04-17 23:02                                 ` Charles Forsyth
2008-04-17 23:09                                   ` Charles Forsyth
2008-04-21 14:56                                     ` erik quanstrom
2008-04-21 15:24                                       ` Charles Forsyth
2008-04-21 19:37                                         ` erik quanstrom
2008-04-21 20:20                                           ` Charles Forsyth
2008-04-21 19:28                                       ` Bakul Shah
2008-04-21 20:19                                         ` Charles Forsyth
2008-04-21 20:19                                         ` Charles Forsyth
2008-04-21 21:06                                           ` Bakul Shah [this message]
2008-04-21 21:24                                             ` Charles Forsyth
2008-04-21 21:40                                               ` Wes Kussmaul
2008-04-21 21:45                                                 ` erik quanstrom
2008-04-21 22:04                                                   ` Wes Kussmaul
2008-04-21 21:57                                                 ` Charles Forsyth
2008-04-21 22:07                                               ` Bakul Shah
2008-04-21 23:12                                                 ` Charles Forsyth
2008-04-21 21:49                                         ` erik quanstrom
2008-04-21 22:42                                           ` Bakul Shah
2008-04-17 21:42                       ` Bakul Shah
2008-04-17 21:49                         ` Charles Forsyth
2008-04-17 21:49                           ` erik quanstrom
2008-04-17 22:15                             ` Charles Forsyth
2008-04-17 22:19                               ` erik quanstrom
2008-04-17 22:48                                 ` Charles Forsyth
2008-04-17 22:55                                   ` Tim Wiess
2008-04-17 23:08                                     ` Charles Forsyth
2008-04-17 22:14                           ` Bakul Shah

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080421210627.D6D915B66@mail.bitblocks.com \
    --to=bakul+plan9@bitblocks.com \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).