LR and LRCP pageLRCPLRCP stands for Link Redundancy Configuration Protocol which is developed by Yumo since 2001. Purpose of LRCP is to make redundancy of LAN interface automatically at an end node and to make the LAN node be able to talk to any physically reachable LAN nodes. LRCP and lr are described in CQ publishing "Interface" June/2002 and July/2002. Please refer to them too. Abstract of LRCPThere is a way to make link segment redundancy on single LAN Node. It aggregates multiple physical link to single virtual link and it always uses single active physical link for communication with other nodes. Now, we call this as ``Model A''. Now we assume that N1a is active and N1b is standby in the LAN showed in figure 1. In the ``Model A'', even if link fail occurs between N1a and B1a, N1b becomes active then we can use alternative link between N1b and B2a and N1 can communicate with N2 and N3.
However, in the same figure, while N1a is Active and N1b is Standby, if link fail occurs between B1b and B2b , N1 and N2 can communicate each other via path ``N1a-B1a-B1c-N2'' but N1 and N3 cannot communicate each other. Because N1b is standby interface so N1 cannot use it for communicating with N3. This time, let's make N1b which was standby interface active too simultaneously. Now we call this as ``Model B''. In the ``Model B'', N1 can communicate with not only N2 but also N3. In this model, there are no problem while B1b and B2b are not connected. However there are following problems while B1b and B2b are connected. If N1 operates based on ``Model B'' while B1b-B2b is disconnected and ``Model A'' while B1b-B2b is connected, availability of N1 for N2 and N3 will be up. LRCP is a protocol for realizing this. LRCP make physical interface(Port) belong to not only a virtual interface(Group) but also ``Subgroup'' in the Group. Then only one Port is allowed to be active in a Subgroup. E.g. in the figure 1, N1a and N1b are grouped to same Subgroup while they are on the same LAN each other. Then only N1a which is prior port becoms active. Also, if B1b-B2b is disconnected, N1a and N1b belong to separate Subgroup each other because they are on separate LAN each other. So N1a and N1b are active ports of each subgroup and transmit and receive frames simultaneously. In order to do ``Subgrouping'', Each port transmit Check Packet(RCF) periodically. Receiving port can know source port of received RCF is on the same subgroup as itself. Also receiving port can know ports which RCF does not arrive are on the separate LAN. Therefore LRCP can change subgroup configuration dynamically. it increments or decrements number of active port and improves availability of path to other nodes. lrlr is an GPL'd implementation of LRCP -- which is Yumo's original protocol -- for Linux. lr can be used in, E.g, figure 1 environment. Of course it behaves as described above. Also lr can work with veth module. E.g. Figure 2
shows combination of lr and veth. In this configuration, lr bundles
veth's multiple aggregators for redundancy.
This can be setup as follows. # insmod veth.o nveth=2 # insmod lr.o # vethcfg add eth0 veth0 # vethcfg add eth1 veth0 # vethcfg add eth2 veth1 # vethcfg add eth3 veth1 # lrcfg add veth0 lr0 # lrcfg add veth1 lr0 # ifconfig lr0 <IP address> netmask <Netmask> up |