Dear all,

I have the following set up:

<switch 2: 192.168.56.202> ------ <switch 3: 192.168.56.203> ------
<controller: 192.168.56.103>

So all switches and the controller live in network 192.168.56.0/24.

In the switches, there is the OVS bridge (e.g. s3) who is assigned the ip
address in the network 192.168.56/24, and then there are additional virtual
interfaces that are also attached to the switch and belong to the OF
datapath.

For instance the configuration of switch 3 is the following:

    Bridge "s3"
        Controller "tcp:192.168.56.103:6633"
            is_connected: true
        fail_mode: secure
        Port "s3-eth1"
            Interface "s3-eth1"  -------> Connected to a host (irrelevant
for this case)
        Port "veth_7_3"           -------> Connected to the controller
            Interface "veth_7_3"
        Port "s3-eth0"
            Interface "s3-eth0"  ---------> Connected to s2
        Port "s3"
            Interface "s3"
                type: internal

And the default route to 192.168.56.0/24 is through s3.

s3 boots with the following hidden rules to allow for in-band control:

duration=2403s, n_packets=6791, n_bytes=517600,
priority=180008,tcp,nw_src=192.168.56.103,tp_src=6633,actions=NORMAL
duration=2403s, n_packets=3, n_bytes=126,
priority=180005,arp,arp_tpa=192.168.56.103,arp_op=2,actions=NORMAL
duration=2403s, n_packets=7112, n_bytes=10315013,
priority=180007,tcp,nw_dst=192.168.56.103,tp_dst=6633,actions=NORMAL
duration=2403s, n_packets=1, n_bytes=60,
priority=180001,arp,dl_dst=aa:f4:4a:14:c6:49,arp_op=2,actions=NORMAL
duration=2399s, n_packets=0, n_bytes=0,
priority=180003,arp,dl_dst=08:00:27:a9:08:16,arp_op=2,actions=NORMAL
duration=2403s, n_packets=1, n_bytes=42,
priority=180002,arp,dl_src=aa:f4:4a:14:c6:49,arp_op=1,actions=NORMAL
duration=2399s, n_packets=0, n_bytes=0,
priority=180004,arp,dl_src=08:00:27:a9:08:16,arp_op=1,actions=NORMAL
duration=2403s, n_packets=0, n_bytes=0,
priority=180000,udp,in_port=LOCAL,dl_src=aa:f4:4a:14:c6:49,tp_src=68,tp_dst=67,actions=NORMAL
duration=2403s, n_packets=7, n_bytes=420,
priority=180006,arp,arp_spa=192.168.56.103,arp_op=1,actions=NORMAL
table_id=254, duration=2403s, n_packets=0, n_bytes=0,
priority=0,reg0=0x3,actions=drop
table_id=254, duration=2403s, n_packets=728, n_bytes=119017,
priority=0,reg0=0x1,actions=controller(reason=no_match)
table_id=254, duration=2403s, n_packets=0, n_bytes=0,
priority=0,reg0=0x2,actions=drop


When I boot up s3, it immediately connects to the controller. I assume that
this is because OVS starts sending ARP requests through all the OF
interfaces, where one of them is directly connected to the controller and
thus it can establish the connection.

The interesting thing happens when I boot s2, which has no direct
connection to the controller but only has a connection to s3. When booting
s2 the following happens:

1- s2 starts sending ARP requests to discover the controller, and I can see
those popping up at the appropriate interface in s3.

2- During 1 or 2 minutes s3 keeps dropping the ARP Requests from s2, which
in my opinion is a consequence of the following hidden rule:

"duration=2403s, n_packets=3, n_bytes=126,
priority=180005,arp,arp_tpa=192.168.56.103,arp_op=2,actions=NORMAL"

The rule says that an ARP Request to the controller should be processed as
NORMAL, so pass as if there was no OF enabled. Thus, in this case s3 is
receiving an ARP Request for 192.168.56.103, which is an address that does
not belong to any of its interfaces. Therefore s3 drops the ARP Request
from s2.

3- After 1 or 2 minutes, for a reason that I have not yet been able to
discover, s3 relays the ARP Request and s2 establishes the connection to
the controller.

It is not the case that the controller pushes a new rule to the switches
after some time. The "normal" OF rules in the switches are always empty:

$ ovs-ofctl dump-flows s3
NXST_FLOW reply (xid=0x4):


Is this behavior normal? Could anyone explain how is in-band supposed to
work? Especially the part where an ARP Request to the controller from a
connected switch should be treated as a NORMAL packet but still be
forwarded to the controller?

Best Regards

Daniel
_______________________________________________
discuss mailing list
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to