X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=hippotat.git;a=blobdiff_plain;f=PROTOCOL;h=ae64db8d148c24bfab720d72656130c7267ec419;hp=c7033af0b2353000b1972b0dcacc8151e12e9ba6;hb=02a201e1e706788f355171ff979e1f82ecadfc71;hpb=58b51fa34b2fdb4b7336456d8aec6c697ee5bec5 diff --git a/PROTOCOL b/PROTOCOL index c7033af..ae64db8 100644 --- a/PROTOCOL +++ b/PROTOCOL @@ -1,41 +1,33 @@ Server maintains a queue of outbound packets for each user -Packets which are older than MAX_QUEUE_TIME are discarded +Packets which are older than the applicable max_queue_time are discarded -Each incoming request to the server takes up to MAX_BATCH_DOWN bytes +Each incoming request to the server takes up to max_batch_down bytes from the queue and returns them as the POST response body payload -Each incoming request contains up to MAX_BATCH_UP bytes of payload. +Each incoming request contains up to max_batch_up bytes of payload. It's a multipart/form-data. Authentication: for now, plaintext password -Sever side configuration: +Routing assistance: none needed; secnet polypath will DTRT - [] or [default] - max_batch_down - max_queue_time - max_request_time - password +Client form parameters (multipart/form-data): + m metadata, newline-separated list (text file) of + client ip address (textual) + password + target_requests_outstanding + http_timeout + d data (SLIP format, with SLIP_ESC and `-' swapped) - [global] - max_batch_down - max_queue_time - max_request_time - [virtual] - network # required - host # default is first host in network (eg .1) - relay # default is first host in network not equal to server - mtu # default is 1500 -Client side configuration; - MAX_BATCH_DOWN MAX_QUEUE_TIME PASSWORD +Future nonce-based authentication: -Routing assistance: none needed; secnet polypath will DTRT +server keeps big nonce counter for each client +meaning is: + nonce counter is most recent nonce client has sent +also server keeps bitmap of the previous ?64 nonces, + whether client has sent them -Client form parameters: - i ip address (textual) - p password - d data (SLIP format) - mbd mqt mrt config updates +client picks.... xxx