Update changelog and proto docs

This commit is contained in:
Erik Ekman
2009-08-15 13:10:21 +00:00
committed by Erik Ekman
parent 473bb93951
commit 0e81cd78bc
2 changed files with 32 additions and 0 deletions

View File

@@ -3,6 +3,8 @@ Detailed specification of protocol in version 00000501
Note: work in progress!!
======================================================
1. DNS protocol
======================================================
CMC = 2 byte Cache Miss Counter, increased every time it is used
@@ -125,3 +127,31 @@ The server response to Ping and Data packets is a DNS NULL type response:
If server has nothing to send, data length is 0 bytes.
If server has something to send, it will send a downstream data packet,
prefixed with 2 bytes header as shown above.
======================================================
2. Raw UDP protocol
======================================================
All Raw UDP protcol messages start with a 3 byte header: 0x10d19e
This is not the start of a valid DNS message so it is easy to identify.
The fourth byte contains the command and the user id.
7654 3210
+----+----+
|CCCC|UUUU|
+----+----+
Login message (command = 1):
The header is followed by a MD5 hash with the same password as in the DNS
login. The client starts the raw mode by sending this message, and uses
the login challenge +1, and the server responds using the login challenge -1.
After the login message has been exchanged, both the server and the client
switch to raw udp mode for the rest of the connection.
Data message (command = 2):
After the header comes the payload data, which may be compressed.
Ping message (command = 3):
Sent from client to server and back to keep session open. Has no payload.