Serial Convergence Layer

When using the Serial convergence layer a connection is either a receiver or a sender. First it parses and attempts to resolve the next hop address and if able to do so opens a tty. To add a serial interface in your config file, use:

Syntax: interface add name CL [arg=val arg=val2 argN=valN...]

Example: interface add serial0 serial

Valid arguments for arg are:

arg Possible settings Default Comments
hexdump true or false false Whether to log a hexdump of all traffic
initstr string "" String to initialize the tty
ispeed number 19200 Input speed on the tty
ospeed number 19200 Output speed on the tty
sync_interval number 1000 Interval to send initial sync bits

Note

The side which initiates the active connect is not necessarily the sender.

The serial CL first attempt to parse the next hop address and if unable to do so, the link can't be opened. If it can it opens the tty and set the tty parameters and initializes the timer. If there's a dialing string, it will attempt to send it, reserve space in the buffer and send a sync byte to kick things off.

During the session it will check that it hasn't been too long since it got some data from the other side and if it has it will time out the connection.

Once data is received on the channel, it means the other side is up and trying to sync, so it will send the contact header