Re: Terminal server efficiency

Kirk Lougheed (Lougheed@MATHOM.CISCO.COM)
Mon 16 Nov 87 05:52:46-PST

Jim -

The TCP maximum segment size, the number of data bytes that can be sent in a
single TCP segment, probably dominates the efficiency considerations of the
terminal server test you describe. When sending large amounts of data to a
terminal server (display editors, parallel and serial printers), you want to
have each TCP segment to be as large as possible. Window size would be of
secondary importance.

A reasonable default maximum segment size is 536 bytes (IP's "minimum
maximum" of 576 less 40 bytes of IP and TCP header). If the two hosts are
on the same physical cable, it is reasonable to negotiate a maximum segment
size closer to the MTU of the cable.

Such extremely small maximum segment sizes and offered window sizes probably
indicate a lack of memory in the terminal servers.

The ability to piggy-back acknowledgements is an even more important
efficiency consideration for terminal servers. If you use Telnet with remote
echoing and don't do piggy-backing, sending a single character packet
results into two packets being sent back (the echo and the acknowledgment)
which in return generates a responding acknowledgement. Four packets. If
you can do piggy-backing, you can get the number of packets per character
down to three (slow typist) or even two (fast typist). That assumes of
course that you aren't employing some strategy to put more than one character
per packet.

I recommend reading Clark's RFC 813, "Window and Acknowledgement Strategy in
TCP" for more details on how TCP implementations can be more efficient.
That will allow you to ask all sorts of potentially embarrassing questions
of your vendors.

Kirk Lougheed
cisco Systems, Inc.

This archive was generated by hypermail 2.0b3 on Thu Mar 09 2000 - 14:39:56 GMT