RFC 56 (rfc56) - Page 2 of 6


Third Level Protocol: Logger Protocol



Alternative Format: Original Text Document



the logger actually be user zero and have the NCP handle its messages
the same as everyone else's.)

When the send-logger is called, it pulls a pair of unused sockets (2N
and 2N+1) from a pool of free sockets and CONNECT from 2N+1 to User 0,
Socket 0 in the desired foreign host. This activates the receive-logger,
which accepts the connection if it has an available slot for the foreign
teletype. He then immediately closes down this connection to allow links
from other sources to be initiated. If, on the other hand, there is no
room for the foreign teletype (or if, for some other reason, the
receive-logger does not wish to connect) the attempted link to socket
zero is refused. This notifies the send-logger that he cannot log on the
foreign host and it then notifies the user of this fact. There is no
guarantee, however, that the close was actually sent by the foreign
logger. It could have been sent by the NCP if, for example, the pending
call queue for the socket was overloaded.

If the link to socket zero has been accepted (thus indicating that the
receive-logger can accommodate the request) after closing that link, the
receive-logger picks an available pair of sockets (2M and 2M+1) from its
pool, and connects from 2M+1 to 2N. (It found the identity of 2N when
its listen was answered by the link with 2N+1.)  The send-logger has
meanwhile listened to socket 2N and now accepts the link, and CONNECTS
from 2N+1 to 2M. The receive-logger has been listening to this socket
and accepts the attempted link.

At this point, there is a full duplex connection between the two
loggers. They then activate the sender and receiver, which handle all
other communication between the user and the foreign monitor.  (The
senders and receivers can be part of the loggers, or can be called by
them, etc.)

When the user is finished and escapes back to his monitor, it is up to
the sender to close down the links. On the receiving end, it would be
highly desirable for the NCP to notify the receiver of this fact, so it
could log the user off (if he had failed to do that himself) and could
free any resources that he had been using.

A more formal outline of the proposed protocol described in the scenario
above follows: