[ovs-discuss] ovs-vswitchd disconnecting UNIX socket

Ben Warren ben at skyportsystems.com
Sat Apr 23 21:09:59 UTC 2016


Thank you very much!  That’s all I need to know.

> On Apr 23, 2016, at 2:07 PM, Ben Pfaff <blp at ovn.org> wrote:
> 
> On Sat, Apr 23, 2016 at 11:45:12AM -0700, Ben Warren wrote:
>> Thanks for the explanations!
>>> On Apr 23, 2016, at 10:15 AM, Ben Pfaff <blp at ovn.org> wrote:
>>> 
>>> On Fri, Apr 22, 2016 at 11:25:26PM -0700, Ben Warren wrote:
>>>> As you can see, the disconnects happen when the datapath ID changes,
>>>> presumably due to adding interfaces?  Only the addition of the first
>>>> two interfaces seem to bring it down.
>>> 
>>> OVS disconnects OpenFlow connections when the datapath ID changes
>>> because the datapath ID is important to some controllers and OpenFlow
>>> provides no way for a switch to notify a controller that the datapath ID
>>> has changed.
>>> 
>> OK, so what causes the datapath ID to change (Linux kernel 3.10
>> datapath in this case)?  Does it come from the kernel or is it an OVS
>> thing?
> 
> The datapath ID is an OpenFlow concept, and there's no connection to the
> OVS concept of a "datapath", so the datapath in use doesn't matter.
> 
> By default, Open vSwitch uses the lowest-numbered Ethernet address of
> any of the physical ports connected to a bridge as the bridge's datapath
> ID.  You can override this with other-config:datapath-id, as documented,
> but otherwise if the ports in the bridge change the datapath ID may
> change as well.
> 
>>>> On the client side, I’m really confused.  As you can see, I re-open
>>>> the connection with a HELLO message, and the HELLO response comes back
>>>> with an earlier XID (0x80 vs. the expected 0x86).  Message 0x83 was a
>>>> BARRIER response, and a valid BARRIER reply was received, so it would
>>>> seem that messages after 0x80 were accepted:
>>> 
>>> HELLO is not a request/response message.  Rather, both sides of the
>>> OpenFlow connection send a hello message at the initiation of the
>>> connection.  Each side chooses its own xid as it wishes, so one cannot
>>> expect the xids to match.  The xid for a hello message is only
>>> significant for sending an OFPT_ERROR response, if necessary.
>> 
>> OK, is this understanding correct: for send/receive (GetConfig,
>> Feature etc.) messages ovs-vswitchd will mirror back the XID of the
>> request, 
> 
> OpenFlow requires that behavior.
> 
>> but for HELLO it keeps a static monotonically increasing counter?
> 
> That's the current implementation but there's certainly no guarantee
> that it won't change.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20160423/2feb6e49/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3583 bytes
Desc: not available
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20160423/2feb6e49/attachment.p7s>


More information about the discuss mailing list