Hi,
>From the FAQ:

Q: It looks like each of the interfaces in my bonded port shows up
   as an individual OpenFlow port.  Is that right?

A: Yes, Open vSwitch makes individual bond interfaces visible as
   OpenFlow ports, rather than the bond as a whole.  The interfaces
   are treated together as a bond for only a few purposes:

       - *Sending a packet to the OFPP_NORMAL port.  (When an OpenFlow*
*         controller is not configured, this happens implicitly to*
*         every packet.)*

       - The "autopath" Nicira extension action.  However, "autopath"
         is deprecated and scheduled for removal in February 2013.

       - Mirrors configured for output to a bonded port.

I have some questions based on this. This is what I am trying to achieve: I
have a two-interface bond port in OVS that I'd like balance-slb
load-balancing.
Let's say my OVS bridge is:

$ sudo ovs-vsctl show
bdb92ad6-3dc3-40c0-be03-714c88d1ac27
    Bridge "testbr0"
        Port "bond0"
            Interface "veth1"
            Interface "veth2"
        Port "testbr0"
            Interface "testbr0"
                type: internal
        Port "veth10"
            Interface "veth10"
    ovs_version: "2.5.0"


$ sudo ovs-ofctl -OOpenflow13 show testbr0
OFPT_FEATURES_REPLY (OF1.3) (xid=0x2): dpid:0000769ca595b645
n_tables:254, n_buffers:256
capabilities: FLOW_STATS TABLE_STATS PORT_STATS GROUP_STATS QUEUE_STATS
OFPST_PORT_DESC reply (OF1.3) (xid=0x3):
 *1(veth1)*: addr:ae:c8:18:c7:8f:3e
     config:     0
     state:      0
     current:    10GB-FD COPPER
     speed: 10000 Mbps now, 0 Mbps max
 *2(veth2)*: addr:d2:26:71:c0:c3:a5
     config:     0
     state:      0
     current:    10GB-FD COPPER
     speed: 10000 Mbps now, 0 Mbps max
 *10(veth10)*: addr:ae:fd:60:a7:51:2c
     config:     0
     state:      0
     current:    10GB-FD COPPER
     speed: 10000 Mbps now, 0 Mbps max
 LOCAL(testbr0): addr:76:9c:a5:95:b6:45
     config:     PORT_DOWN
     state:      LINK_DOWN
     speed: 0 Mbps now, 0 Mbps max
OFPT_GET_CONFIG_REPLY (OF1.3) (xid=0x5): frags=normal miss_send_len=0

Sure enough the bond did not get an OF port number, but the member
interfaces did. What I want to do is this: for packets coming from veth10,
I want that traffic to be load-balanced across bond0 (comprised of veth1
and veth2).

1) Given the bond port gets no openflow port number, this looks like
something I can't do with an openflow controller at all. Right?

2) If I am to use the "normal" non-openflow pipeline,  it seems like the
flow that specifies action as OFPP_NORMAL has to be the last flow? Said
another way, I cannot match certain packets (coming on veth10) and set the
action to be OFPP_NORMAL, can I?

Are there are any guides/blog posts that help explain how to use
OFPP_NORMAL action, I couldn't find any practical example of this.

Thank you in advance for your input.

-- 
Piyush Agarwal
Life can only be understood backwards; but it must be lived forwards.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to