[ovs-discuss] Could someone tell me how to shorten recovery time after a bonded port failed?

ZHANG Zhiming zhangzhiming at yunshan.net.cn
Fri Feb 26 01:56:42 UTC 2016


Hi Andy,

Perfect! This also give me a hint for solving other problems.

Thank you very much!

Best regards!




ZHANG Zhiming
Yunshan Networks

From: Andy Zhou
Date: 2016-02-26 05:24
To: zhangzhiming
CC: discuss
Subject: Re: [ovs-discuss] Could someone tell me how to shorten recovery time after a bonded port failed?
One possible solution is to create another bridge say brbond, and put eth0 and eth1 in it.  You can then connect your bridge to 'brbond' using patch ports. Patch ports will have their ofport numbers. 






On Thu, Feb 25, 2016 at 12:17 AM, ZHANG Zhiming <zhangzhiming at yunshan.net.cn> wrote:


Thanks a lot!




ZHANG Zhiming
Yunshan Networks

发件人: ZHANG Zhiming
发送时间: 2016-02-23 21:35
收件人: discuss
主题: One question about ofport number of a bond port and learned output port number
Hi,

Could someone tell me how to shorten recovery time after a bonded port failed?

When two physical ports named eth0 and eth1 are bonded to a port, for example named bond_port_eth, 
eth0 and eth1 will be removed from table port of the database, and bond_port_eth is inserted instead.
But there is no interface named bond_port_eth in table interface of the database. So no ofport is available for
port bond_port_eth, and we can not specify ofport of bond_port_eth in flow, and the ofports of eth0 and eth1 are used instead.

Based on the reality, we use the ofport of eth0 or eth1 in our learned flows, which leads to long recovery time.
Here is the settings of the bond port.

_uuid               : 00f7a5cc-3a4b-42cb-a265-c8fcbcce78fb
bond_active_slave   : "74:a4:b5:00:4b:89"
bond_downdelay      : 0
bond_fake_iface     : false
bond_mode           : balance-tcp
bond_updelay        : 0
external_ids        : {}
fake_bridge         : false
interfaces          : [418be768-eb9e-4522-8353-0ac693321294, ef828455-5e15-40d5-91c4-b511fd7a9417]
lacp                : active
mac                 : []
name                : "bond-port-eth"
other_config        : {lacp-time=fast}
qos                 : []
statistics          : {}
status              : {}
tag                 : []
trunks              : []
vlan_mode           : []

There is a flow with a action:
actions=learn(table=1,idle_timeout=300,priority=33000,cookie=0x4,in_port=57,NXM_OF_ETH_DST[]=NXM_OF_ETH_SRC[],output:NXM_OF_IN_PORT[]) 

If all packets from a vm named VM1 are transmitted on eth0, when eth0 failed, the lacp can detect the failure quickly, 
while the learned flows need to be updated after receiving a new arp packet from the physical port eth1.




ZHANG Zhiming
Yunshan Networks

_______________________________________________
discuss mailing list
discuss at openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20160226/9c79712e/attachment-0002.html>


More information about the discuss mailing list