Date: Wed, 27 Oct 93 04:30:02 PDT
From: Advanced Amateur Radio Networking Group <tcp-group@ucsd.edu>
Errors-To: TCP-Group-Errors@UCSD.Edu
Reply-To: TCP-Group@UCSD.Edu
Precedence: Bulk
Subject: TCP-Group Digest V93 #279
To: tcp-group-digest


TCP-Group Digest            Wed, 27 Oct 93       Volume 93 : Issue  279

Today's Topics:
                              BOOTP docs
                           Data Compression
                         Dynamic IP Addresses
                    Dynamic IP Addressing (3 msgs)
                IP address coordinator in ENY section
                  RE: Dynamic IP Addressing (2 msgs)
            VJ header compression on radio links (2 msgs)
                          While we're at it
                                 XLZW

Send Replies or notes for publication to: <TCP-Group@UCSD.Edu>.
Subscription requests to <TCP-Group-REQUEST@UCSD.Edu>.
Problems you can't solve otherwise to brian@ucsd.edu.

Archives of past issues of the TCP-Group Digest are available
(by FTP only) from UCSD.Edu in directory "mailarchives".

We trust that readers are intelligent enough to realize that all text
herein consists of personal comments and does not represent the official
policies or positions of any party.  Your mileage may vary.  So there.
----------------------------------------------------------------------

Date: 26 Oct 93 11:02:32 CDT
From: Jack Snodgrass <kf5mg@vnet.ibm.com>
Subject: BOOTP docs
To: <TCP-Group@ucsd.edu>

Does anyone have any instructions for using BOOTP in a NOS environment.
I've found the RFC's but I'm not sure how well the NOS implementation
follows it yet. Is anyone running BOOTP with NOS? Thanks.

73's  de  Jack  -  kf5mg
Internet        -  kf5mg@kf5mg.ampr.org       - 44.28.0.14
Worknet         -  kf5mg@vnet.ibm.com         - work (817) 962-4409
AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.na - home (817) 488-4386

------------------------------

Date: Tue, 26 Oct 93 17:50:47 GMT
From: kf5mg@kf5mg.ampr.org
Subject: Data Compression
To: tcp-group@ucsd.edu

   The data compression book that I mentioned in a previous append is called
'The Data Compression Book'. Catchy title... huh? It's written by Mark Nelson
and is published by M&T Books. The ISBN number is 1-55851-216-0. 

73's  de  Jack  -  kf5mg   ( running JNOS in a 735K - OS/2 2.1 Dos Box! )
Internet        -  kf5mg@kf5mg.ampr.org            -  44.28.0.14
AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.noam    -  home (817) 488-4386
Worknet         -  kf5mg@vnet.ibm.com              -  work (817) 962-4409
-------------------------------------------------------------------------
|    "I am Homer of Borg.... Prepare to be assim.... oooo Donuts."      |
-------------------------------------------------------------------------

------------------------------

Date: Tue, 26 Oct 1993 15:21:28 -0500 (CDT)
From: Steve Sampson <ssampson@sabea-oc.af.mil>
Subject: Dynamic IP Addresses
To: TCP-Group@ucsd.edu

kf5mg@kf5mg.ampr.org says:
> Someone suggested we look at doing some sort of dynamic IP Addressing
> for a new, radio network project that we're starting to work on.

MIKEBW@ids.net says:

> You might look at bootp, since the code for it is nominally already in
> NOS.  I don't know if the code works or not, but it might.

A note in the source says it doesn't work as I recall.  Normally bootp is
used to issue an IP address based on an Ethernet address, but could be used
along with an amateur callsign.  I think the problem is that every expected
address must be in a table.  They're not really dynamic, but the administrator
can change IP addresses without the LAN user being aware of what their number
is.  One method may be to have an IP Address server running which is accessed
via the NOS mailbox, and the user answers a couple questions and receives an
IP address to use which times out after an hour or so of non-use.  Another
may be similar to an ARP request packet to QST.  A DIP request? :-)  The user
would say hello and any listening server (one per frequency hopefully) would
listen up and answer, thus being automated.  I may be wrong, but I don't think
anything in NOS does this type of thing yet.
---
Steve

------------------------------

Date: Tue, 26 Oct 93 12:32:52 MET
From: pa0gri@tophat.cdh.cdc.com
Subject: Dynamic IP Addressing
To: MIKEBW@ids.net (Mike Bilow)

> You might look at bootp, since the code for it is nominally already in
> NOS.  I don't know if the code works or not, but it might.
> 
> -- Mike
> 
For supplying the (a) IP address yes, but using dynamic IP addresses for
SMTP etc, sounds like a bad idea to me. You would need a second level
of addressing for moving targets. (out of sight, next on gets its just
used address !! , revalidate , forward all routes ....)
Regards, Gerard.

------------------------------

Date: Tue, 26 Oct 93 10:17:23 -0400
From: jfjr@mbunix.mitre.org (Jerome Freedman)
Subject: Dynamic IP Addressing
To: pa0gri@tophat.cdh.cdc.com

 Check out "Protocols for Mobile Internetworking" PHd Theis by J. Ioannidis
at Columbia

------------------------------

Date: Tue, 26 Oct 1993 15:46:20 -0500
From: miltonm@inetnode.austin.ibm.com (Milton Miller)
Subject: Dynamic IP Addressing
To: kf5mg@kf5mg.ampr.org, tcp-group@ucsd.edu

Besides BOOTP, there is another protocol written up (don't remember if
it was a rfc, just a draft, or not even a draft) that specifically 
addressed the reuse issue (ie when is it safe to re-use the address)

I will have to dig through my printouts at home to see if I can find it.

regards,
miltonm
--
Milton Miller  KB5TKF  miltonm@austin.ibm.com
I don't speak for IBM

------------------------------

Date: Wed, 27 Oct 93 00:03:59 -0400
From: foxworth@bnlls1.nsls.bnl.gov (Bob Foxworth)
Subject: IP address coordinator in ENY section
To: tcp-group@UCSD.EDU

I spoke with Dana, wa2wni on the phone this evening. He lives in the
Albany, NY area and is associated with NorthEast Digital Association.
The IPers in the ENY section are interesting in setting up subnetting
for routing etc. Right now there are 2 problems, the existing ENY
addresses are "flat" and there has been no recent communication with the
address coordinator of record, n2igu. I am posting this here to see if
anyone knows what is happening in ENY with address coordination and
to see about sanctioning having wa2wni become involved with re-structuring
the addressing for that area. I am coordinator for NLI in New York,
and Dana called me with respect to that. I would favor having someone
who is reachable and actively involved in IP activity there take over 
this job as it would reduce requests to me for help, which I can't
handle as I am out of the area. The ENY people want to set up a scheme
similar to what is going on in WNY, however I don't have recent details
of what they are doing in WNY beyond that they are extensively sub-
netting.

Please send me mail if any of you have input on this problem.

I am handling all NLI section addressing. The best way to reach me
is via telephone in the evenings at 516-585-7559. I have been off
the air (IP and AX.25) for a while now and my CBA is no longer valid.
My internet address is valid for those with such access. The closest BBS
is KC2FD-4 (ZIP 11727) who can hand off traffic to me. Please circulate
this info to anyone who may need to have it. 73 Bob

------------------------------

Date: 26 Oct 93 09:35:31 CDT
From: Jack Snodgrass <kf5mg@vnet.ibm.com>
Subject: RE: Dynamic IP Addressing
To: <TCP-Group@UCSD.EDU>

>> You might look at bootp, since the code for it is nominally already in
>> NOS.  I don't know if the code works or not, but it might.
>>
>> -- Mike
>>
>For supplying the (a) IP address yes, but using dynamic IP addresses for
>SMTP etc, sounds like a bad idea to me. You would need a second level
>of addressing for moving targets. (out of sight, next on gets its just
>used address !! , revalidate , forward all routes ....)
>Regards, Gerard.

Thanks.... I've requested the RFC's mentioned in the BOOTP code. Maybe
I'll be able to figure them out.

   As for Gerard's concern about moving targets... the main thing I'm
looking for is a way to assign an IP address for a client that doesn't
normally run TCP/IP.  I see NO reason why a simple client needs to have
a static IP number.  No one is going to ever try and connect to the
client so no one needs to have an permanent IP number for him.

   When I mentioned mobile stations, I really meant semi portable
stations.  Something where you would go from place to place and connect
to the server each time.  I'm not looking at doing a completely mobile
system.  I.E. not something that constantly follows you around as you go
from one service area to another.  I'm trying to cover the simple cases
first. I'll let the paid professionals work out the follow-me-roaming
stuff.

73's  de  Jack  -  kf5mg
Internet        -  kf5mg@kf5mg.ampr.org       - 44.28.0.14
Worknet         -  kf5mg@vnet.ibm.com         - work (817) 962-4409
AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.na - home (817) 488-4386

------------------------------

Date: Tue, 26 Oct 93 15:54:34 PDT
From: brian@nothing.UCSD.EDU (Brian Kantor)
Subject: RE: Dynamic IP Addressing
To: tcp-group@nothing.UCSD.EDU

It seems to me that RARP and/or BOOTP could be used to assign addresses.

If a station in each community were to accept responsibility for doing
so, and forwarding the address info (a tuple containing

 IP address assigned
 date/time assignment was made
 identifier of agency doing the assignment
 link address (AX.25 callsign/ssid or the like)

to a central collection point, mobile/portable IP assignment wouldn't be
a problem.

Simply, a station would have an IP address assigned to its callsign/ssid
until a newer assignment is registered at the central point (the central
nameserver) or until the assigning agency (the community host) indicates
that the callsign/IPaddr pair hasn't been used for a year or so.

Regional concentration of this data would solve the problem of people
who are like driving cross-country.  With a fast enough underlying
network update mechanism, you could even handle stations in fast airplanes.

We've got LOTS of IP addresses; using up a few extra for a year when
stations move isn't a problem.
 - Brian

------------------------------

Date: Tue, 26 Oct 1993 17:35:28 -0500
From: miltonm@inetnode.austin.ibm.com (Milton Miller)
Subject: VJ header compression on radio links
To: MIKEBW@ids.net, louie@uunet.uu.net, tcp-group@ucsd.edu

I think there are a few issues to be addressed:

1)  VJ Header compression was designed for point-to-point links.  At
the very least, you would need a compressed slot table for each 
router and direct host that was talking to you, and you would need the
hardware address to tell these apart.

2)  VJ header compression requires that either a "bad frame detected"
be sent to the decompresser, or the slot never be compressed.  Since
we *can not* do the first, we must never compress the slot id.

3)  VJ is designed for reliable links.  When you get an unreliable
link, you basicly discard all packets from the error until the 
retransmit of the frame in error (the look like tcp checksum
errors, as stated in rfc1144).  So error recovery is no better than
vanilla ax.25 connected mode (except you are allowed a bigger window,
which means even more data retransmitted).

4) VJ over vc would probably make some sense, but the protocol issues
noted by others would need to be taken into account (vc reliablity).
The increase in rtt variation should factor in automatically if the
errors happen with any reliability.

5)  I was reading the VJ's SIGCOMM '88 paper.  There was a footnote
that the rto should be rtt + 4 * variance, not 2 * var as in the 
original paper.  I wonder which nos is using?  (might still be 2*,
in which case it needs to be fixed.

6) Over vc links, the rto might need to be increased even further,
depends on retransmit drop count -- how many times do you retransmit
before you drop the link and flush your packets?  (I think the answer
is nos presently drops exactly one tcp packet if the vc curcit fails
and is re-established).


Ok, that should be enough discussion for a few days :-)

milton
--
Milton Miller  KB5TKF  miltonm@austin.ibm.com
I don't speak for IBM

------------------------------

Date: Wed, 27 Oct 93 12:25:18 +1000
From: wkt@csadfa.cs.adfa.oz.au (Warren Toomey)
Subject: VJ header compression on radio links
To: miltonm@inetnode.austin.ibm.com (Milton Miller), MIKEBW@ids.net,

In atricle by Milton Miller:
> 
> I think there are a few issues to be addressed:
> 
> 1)  VJ Header compression was designed for point-to-point links.  At
> the very least, you would need a compressed slot table for each 
> router and direct host that was talking to you, and you would need the
> hardware address to tell these apart.
> 
> 3)  VJ is designed for reliable links.  When you get an unreliable
> link, you basicly discard all packets from the error until the 
> retransmit of the frame in error (the look like tcp checksum
> errors, as stated in rfc1144).  So error recovery is no better than
> vanilla ax.25 connected mode (except you are allowed a bigger window,
> which means even more data retransmitted).
> 
> Ok, that should be enough discussion for a few days :-)

Why not fuel the fire :-) Here's a roughed out paper/tech report that I
started this week.




       Extending  TCP/IP  Header Compression
   over  Multiple Links

          W.  Toomey



       Department of Computer Science
      University College
      The University of New South Wales
      Australian Defence Force Academy
        Canberra, ACT
      October 27, 1993



         Abstract


TCP/IP header compression, described in RFC 1144, increases data throughput
over low speed links.  This technique is limited to TCP/IP connections
between two hosts joined by one point to point link.
   This paper extends this technique so that it can be used in situations
with multiple links that are not specifically point to point.


Warren Toomey, e-mail: wkt@csadfa.cs.adfa.oz.au


1   Introduction

1.1   Limitations Imposed by RFC 1144 Compression

a) The source and destination of the compressed TCP connection must be
     connected by a single point to point link.

b) Packets will not be misordered by transmission from source to
     destination.


1.2   Extending RFC 1144 Compression

RFC 1144 header compression can be extended to work over multiple links by
adding extra information that allows packets to be routed.  Specifically,
the following fields from the IP header must be included:


   o The IP address of the destination.

   o The IP address of the source.  This allows any ICMP error messages to
     be returned to the source.

   o The time to live field.  This allows old packets to be removed from
     the network if there is no adequate route for them.



1.3   Limitations Imposed by the New Compression

a) Packets will not be misordered by transmission from source to
     destination.

b) Routers that forward packets from the source to the destination must be
     able to forward compressed TCP/IP packets.


2   Functional Specification


2.1   Packet Format

The format of a compressed TCP/IP packet is that of RFC 1144, extended to
allow IP routing.  The format is shown in the following diagram.


     +----------------+----------------+----------------+----------------+
     |    Source IP Address    |
     +----------------+----------------+----------------+----------------+
     |      Destination IP Address    |
     +----------------+----------------+----------------+----------------+
     | Time to live  |  Change flags  |  Connection # |  TCP checksum  |
     +----------------+----------------+----------------+----------------+
     | TCP Checksum  | Urgent Pointer |  Delta window |   Delta Ack  |
     +----------------+----------------+----------------+----------------+
     | Delta sequence |  Delta IP ID   |
     +----------------+----------------+


  Figure 2:  Compressed TCP/IP Packet Format


   All fields except the first three are unchanged from RFC 1144.  The
first three fields hold the source/destination IP address and time to live
value, and are used exactly as their counterparts in a standard IP header.


2.2   Compression Negotiation

The source and destination cannot assume that the other understands TCP/IP
header compression.  Therefore a negotiation phase during connection setup
needs to be performed in order to allow header compression to commence.
   This is achieved by setting a `COMPRESS HEADERS' TCP option in the SYN
packets exchanged during connection setup.  If a source/destination sends a
SYN packet with a `COMPRESS HEADERS' option and receives a SYN packet with
a `COMPRESS HEADERS', then TCP/IP header compression can be performed
according to RFC 1144.
   The `COMPRESS HEADERS' TCP option has the following form.


 +----------+----------+--------------------+
 | Kind= 25 | Size= 4  |  Connection Number |
 +----------+----------+--------------------+

  Figure 3:  `COMPRESS HEADERS' TCP Option


   The `Kind' octet indicates the `COMPRESS HEADERS' option.  The `Size'
octet indicates the size of the option, 4 octets.  The `Connection Number'
holds the connection number to be used in compressed headers to the host
that sent the SYN with this option.


2.3   Problems with Compression Negotiation

Compression negotiation depends on the fact that a TCP instantiation knows
that header compression is available on this host, and that the routers on
the path between this host and a destination can forward compressed
packets.
   This violates the principle that TCP should not know about the link
between itself and a destination, and it should not know about layers below
IP. There are two solutions to this problem:


   o Alter a TCP implementation to know about header compression in a layer
     below it. This ignores the problems raised above.

   o Let the header compression layer rewrite SYN packets, adding the
     `COMPRESS HEADERS' option to the SYN packet according to criteria that
     will guarantee the limitations discussed in Section 1.4 are met.  This
     is kludgy, but we are already rewriting TCP and IP headers, so this is
     not much harder.

The latter is recommended.


2.4   Other Details

   o All routers between the source/destination must be able to interpret
     and forward compressed packets, otherwise they will be discarded, and
     header compression will be useless.  It is suggested that routers with
     TCP implementations also have full header (de)compression
     implementations; if a router only routes, then only a small
     modification to the IP layer is needed to interpret compressed
     packets.

   o Obviously we need a new link layer protocol id for the new type of
     packet, for every link layer that will be used.

------------------------------

Date: 26 Oct 93 10:59:45 CDT
From: Jack Snodgrass <kf5mg@vnet.ibm.com>
Subject: While we're at it
To: <TCP-Group@UCSD.EDU>

Warren vk1xwt writes:
>   Does anybody have/know of something like an RFC for the XLZW data
>compression as used by many NOS flavours for SMTP mail transmission.
>Seems to me that this is useful throughout the whole Internet, and not
>just the Amprnet.  Patches to sendmail for this also appreciated :-)

   Do you want an RFC on the LZW compression stuff in general or just
the client/server communication part?

   I've added LZW compression to both FTP and POP.  ( The pop stuff has
problems where the socket if flushed too often, so lots of small packets
get sent out.  The FTP stuff seems to work fine works on both ASCII file
transfers and directory list.  ) The process if fairly strait forward.
I'd be glad to try and write down what I've been able to figure out.  I
haven't been able to figure out how the data is actually compression in
NOS, but I have found a really good book that talks about the different
compression methods (Huffman, Adaptive Huffman, LZW-S, LZW-77, LZW-78,
plus several others.)  I'll post the name of the book if anyone is
interested.  It comes with C source.

73's  de  Jack  -  kf5mg
Internet        -  kf5mg@kf5mg.ampr.org       - 44.28.0.14
Worknet         -  kf5mg@vnet.ibm.com         - work (817) 962-4409
AX25net         -  kf5mg@kf5mg.#dfw.tx.usa.na - home (817) 488-4386

------------------------------

Date: Wed, 27 Oct 93 11:08:33 CET
From: dk5dc@vnet.ibm.com
Subject: XLZW
To: tcp-group@UCSD.EDU

Sorry, there is probably NO RFC available yet.
LZW Compression has been roughly implemented by Anders Klemets
SM0RGV on Socket Level only.

Later on (somwhere in 1991) I added the XLZW Exchange as a transparent
extension to SMTP and NNTP. This has been adopted by Michael,
DB3FL just because WNOS and our local Version of NOS wanted to talk
to each other. Some time later, I've found that code in JNOS, too.
This is normal, because people don't think such special
Ham Radio extensions could be usefull for the whole
Internet.
The same thing happended (among others)
with that nnGpost() function, which automatically transfers
(via alias) a incoming smtp message into the NEWS System.
It popped up in other NOS Derivates, but the remarks where gone....


Peter Glasmacher  DK5DC/AA6HM

+----------------------------------------------+
| AX25Net : DK5DC@DB0LJ.GER.EU (SMTP forward)  |
| amprNet : dk5dc@dk5dc.ampr.org [44.130.17.60]|
| Internet: dk5dc@vnet.ibm.com                 |
| Bitnet  : dk5dc@vnet                         |
| Vnet    : D1PGLA AT DUESVM1                  |
+----------------------------------------------+

------------------------------

End of TCP-Group Digest V93 #279
******************************
******************************