R2Rnet

ContentAutomatic ModeOperating Mode

  • R2Rnet


The R2Rnet supports roaming trains traveling from system to system.
This technology can be usefull for large layouts or modular setups.

Boundaries of Rocrail(R) systems should be also power district boundaries; A roaming train will be set to zero velocity if it has left a system.

R2Rnet uses the UDP protocol for communicating with all systems.

Mobile clients like andRoc will put a net-request for available client connections. All enabled R2RNet servers will respond to this with hostname, port and plan title.


The Picture



NetRoutes

NetRoutes are stored in a separate file, and are provided by only one system in the R2Rnetwork; The other systems will request them.

Every system has its own namespace which is used in setting up the netroutes.
Block “b1” for system “r1” is formatted like this: “r1::b1”
Roaming train “NS2403” on system “r1” will be prefixed on all other systems like this: “r1::NS2403”


Example NetRoutes

<plan>
  <stlist>
    <st id="r1::b2-r2::b1" bka="r1::b2" bkb="r2::b1"/>
    <st id="r2::b2-r1::b1" bka="r2::b2" bkb="r1::b1"/>
  </stlist>
</plan>


Setup



Every Rocrail system must be setup with an unique client connection, so if one or more systems reside on the same computer they should use different port numbers.

  <tcp port="8051"/>

The rocrail.ini's need to be extended with a r2rnet node:

  <r2rnet id="r1" enable="true" port="1234"/>

→ Make sure that no other service is running on the same port!


Startup

All playing systems must be started and initialized according the real situation on the layout and activating the auto mode.
Only one system should have access to the netroutes file to prevent conflicts.
The rest of the operation equals to running a layout stand alone.


Open Issues

  • Remote switch commands in NetRoutes.
  • Signal commands for the exiting (remote)block.
  • Second next block at system boundaries.


Files


Mobile Client Support

Make sure the DHCP client setup is correct to announce the IP address to mobile clients.

Ubuntu & DHCP

Check the /etc/dhcp/dhclient.conf or /etc/dhcp3/dhclient.conf file if the following line is active and set to the right MAC address:

send host-name "<hostname>";
send dhcp-client-identifier 00:1b:9e:44:5f:cb;

The MAC address, HWaddr, can be obtained with ifconfig:

eth0      Link encap:Ethernet  HWaddr 00:1a:92:fc:0d:5d  
...
wlan0     Link encap:Ethernet  HWaddr 00:1b:9e:44:5f:cb  
...

Personal Tools