[ovs-discuss] switch flow self-insertion

Grzegorz cezaarr at gmail.com
Thu Jul 5 19:25:05 UTC 2018


The goal is to minimize number of flows (aggregate them) in the core of
network using some labeling. In our case MPLS is proposed but any other
technique allowing for labeling may be used, e.g. VLANs. This is part of s
bigger idea. Details are presented in paper
https://arxiv.org/pdf/1805.07993.pdf

czw., 5 lip 2018 o 21:15 Ben Pfaff <blp at ovn.org> napisał(a):

> It's an odd change.  What's the goal?
>
> On Thu, Jul 05, 2018 at 08:27:08PM +0200, Grzegorz wrote:
> > I'm taking about hash based on which flow table is looked up in kernel
> data
> > path.
> >
> > czw., 5 lip 2018 o 20:20 Ben Pfaff <blp at ovn.org> napisał(a):
> >
> > > Which hash are you talking about?  OVS has lots of hashes all over.
> > >
> > > On Thu, Jul 05, 2018 at 07:46:57PM +0200, Grzegorz wrote:
> > > > Hi Ben,
> > > > You're absolutely right. Thank you! Now I understand how it works.
> > > >
> > > > So having such the knowledge I have another question. In order to
> > > implement
> > > > other part of our mechanism I need to place in kernel space only
> flows
> > > that
> > > > for which mach (hash) is done based only on MPLS label. If I correct
> > > > understand how OVS worsk, the hash is done based on all header
> fields.
> > > So I
> > > > need to put somewhere in code simple if statement, i.e.:
> > > >
> > > > if (packet is tagged with MPLS)
> > > >    hash = label_number
> > > > else
> > > >    proceed_regular_hash_calculation
> > > >
> > > > Could someone point me a place where such the statement should be
> placed
> > > in
> > > > the code? Thank you in advance.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > czw., 5 lip 2018 o 18:56 Ben Pfaff <blp at ovn.org> napisał(a):
> > > >
> > > > > On Thu, Jul 05, 2018 at 10:32:23AM +0200, Grzegorz wrote:
> > > > > > We want to make some OSV code modification in order to obtain
> > > > > fuctionality
> > > > > > desribed in https://arxiv.org/pdf/1805.07993.pdf
> > > > > > Strictly speaking wa want to implement the part related to
> Figure 4
> > > on
> > > > > page
> > > > > > 10. In shortcut, the proposed mechanism uses 2 flow tables
> (Detailed
> > > and
> > > > > > Coarse Flow Table, DTF and CFT). The first stores exact 5-tuple
> > > match,
> > > > > when
> > > > > > the latter cotains match based on only destination network. When
> a
> > > flow
> > > > > is
> > > > > > missed in DFT, the second table is looked up. When the match is
> > > found in
> > > > > > CFT, a packated is proccessed according to this much and
> > > simultaneously
> > > > > > switch prepares a new match based on this packet 5-tuple and
> acctions
> > > > > > copied from CFT. Such flow is inserted by switch into DFT itself.
> > > > >
> > > > > This sounds like what OVS already does with its multiple layers of
> > > > > caches, or possibly with connection tracking.  What's new about
> your
> > > > > design?
> > > > >
> > >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20180705/0e9d07cf/attachment.html>


More information about the discuss mailing list