Routing

Julien Muchembled jm at jmuchemb.eu
Tue Mar 25 19:56:57 CET 2014


Hello,


I think routing could be improved in several ways, at least, there lacks some documentation describing how Tinc routes packets.

In order to test Tinc, I setup the following virtual network:
- tinc 1.1pre9 with ExperimentalProtocol=yes
- use of network namespaces (actually python-nemu[1])
- star topology, where all nodes runs tinc except the center, which I use to filter communications, simulating cuts or delays between specific nodes (use of NFQUEUE)
- tinc TCP graph:

  m1 -- R ---- m3
         \    /
          `m6'
  with 100ms delay between R & m3

Here are my observations.

- UDP tunnels

Tinc only uses UDP for direct communication. What I mean is that if a source node can't establish a UDP tunnel to the destination node, the packet will go through TCP tunnels, even if there are UDP tunnels between intermediate nodes.

- edge weight ignored ?

Tinc measures latency of edges but only when establishing a connection and then, it even ignores it.

In the above example, packets between m1 & m3 should go via m6 for better performance.


Regards,
Julien


[1] https://github.com/TheTincho/nemu/wiki


More information about the tinc mailing list