[ovs-discuss] Connection ovs-vswitchd over IPv6

Ben Pfaff blp at nicira.com
Fri Sep 6 17:34:12 UTC 2013


On Fri, Sep 06, 2013 at 10:17:34AM +0200, Henning Rogge wrote:
> On 09/05/2013 06:19 PM, Ben Pfaff wrote:
> >>I have looked a little bit more into the OpenVSwitch 1.9.0 codebase
> >>for the IPv4/IPv6 thing.
> >>
> >>The main trouble I see is that the libs/stream*.[ch] abstraction is
> >>only able to work with IPv4 at the moment, both the variables and
> >>the functions directly use 32-bit integers for IP addresses.
> >
> >I guess you're talking about these functions:
> >
> >     ovs_be32 stream_get_remote_ip(const struct stream *);
> >     ovs_be16 stream_get_remote_port(const struct stream *);
> >     ovs_be32 stream_get_local_ip(const struct stream *);
> >     ovs_be16 stream_get_local_port(const struct stream *);
> 
> Among others, yes.
> 
> I had the same problem in a different open source project, I ended
> up with implementing my own struct that contains an address (IP or
> MAC) with a small library to handle the conversion between
> text/socket and the struct.
> 
> Not sure thats a good way to do with OpenVSwitch.
> 
> >Those are only important for implementing in-band control.  There
> >would be no need to tie adding support for IPv6 controllers to adding
> >*in-band* support for IPv6 controllers.  You could ignore them and
> >just return 0.
> 
> Not sure what you mean with "in-band" support.

You can read the section titled "In-Band Control" in the file DESIGN at
the top of the source tree for information about in-band control.

If you don't need to use in-band control for IPv6, you can just let
these functions return 0.  (If you do need in-band control for IPv6,
then you need to do a lot more design work--see DESIGN and
ofproto/in-band.c.)



More information about the discuss mailing list