home .. forth .. colorforth mail list archive ..

[colorforth] bulk transfer protocol


This is an idea I had as an alternative to TCP. I would like TCP for
compatibility but see no reason we should be restricted to it. I
think this idea is an extension of Chuck's block get/put.

Associate with each internet host a continuously addressable set of data
blocks.

A request is an offset followed by a sequence of bits representing
requests. Bit i corresponds to block number offset + i. If the payload
size is 512 bytes, then one packet can request up to 4096 blocks (512
bytes each) of data (2MB).

A response is a block number followed by the payload.

There should be an additional mechanism to cancel a grouped request.

The difference from TCP is that this would be a conectionless protocol.
Data has a sequence number however this an absolute sequence number.
Data can be requested and sent in any order. Retransmision involves an
additional request. So long as data is being transfered at an expected
rate there should not be a need to request retransmission of blocks
immediately.

I have no idea on flow/congestion control yet except for the data rate
idea presented earlier.

Assigning meaning to the block data may be the job of a seperate protocol,
perhaps similar to the way DNS will map a domain name to a host address.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com