This directory contains a draft version of a router daemon (server program) that routes between an OpenLCB Tcp/Ip network and an OpenLCB/LCC CAN segment. Included in this directory are these files: 334 Mar 18 09:06 md5sum.txt MD5 Sums 1.5K Mar 18 08:06 Router.1 Man page 3.2M Mar 18 08:14 Router.exe 32-bit MS-Windows executable 3.0M Mar 18 08:08 Router.linux.arm7lv Linux ARM executable 1.8M Mar 18 08:07 Router.linux.x86_64 Linux x86_64 (amd64) executable 5.0M Mar 18 08:09 Router.MacOSX MacOSX executable 3.8K Mar 18 08:05 Router.pdf PDF version of the Man page 44K Mar 18 08:06 Router.tcl Source code (Tcl) Brief description of the code. ============================== The code consists of three static-only SNIT "types" (OO classes): OpenLCBTcp -- This implements sending and receiving messages over Tcp/Ip using the format described in TcpTransferS.pdf and TcpTransferTN.pdf. Messages are received and converted to an abstract OpenLCB message object and passed to the router to be routed. As messages are received, the source NID is passed to the router to add to its routing table. This class provides a method to send messages from the router back out in the network. OpenLCBGCCAN -- This implements sending and receiving messages using the GridConnect format over Tcp/Ip, over a USB/Serial port, or using CAN Sockets (using my TclSocketCAN channel extension). Messages are received and converted to an abstract OpenLCB message object and passed to the router to be routed. While doing this, the alias map is kept up-to-date and as messages are received, the source NID is passed to the router to add to its routing table. This class provides a method to send messages from the router back out in the network and when doing so, CAN aliases are generated as needed. Router -- This handles the actual routing between the two. It exposes three methods that the low-level types use. One method is used to update the router's routing table. The other two handle routing both directly addressed messages and broadcast messages. ----- This code is part of the Model Railroad System. Robert Heller heller@deepsoft.com https://www.deepsoft.com/