Re: [ovs-dev] 3 byte oxm fields?

2013-10-07 Thread Ben Pfaff
On Tue, Oct 08, 2013 at 02:50:01PM +0900, YAMAMOTO Takashi wrote: > > On Tue, Oct 08, 2013 at 02:31:30PM +0900, YAMAMOTO Takashi wrote: > >> ovs uses length==4 for the following oxm fields. why? > >> > >> OXM_OF_IPV6_FLABEL > > > > OXM_OF_IPV6_FLABEL is 4 bytes in the openflow.h header from

Re: [ovs-dev] 3 byte oxm fields?

2013-10-07 Thread YAMAMOTO Takashi
> On Tue, Oct 08, 2013 at 02:31:30PM +0900, YAMAMOTO Takashi wrote: >> ovs uses length==4 for the following oxm fields. why? >> >> OXM_OF_IPV6_FLABEL > > OXM_OF_IPV6_FLABEL is 4 bytes in the openflow.h header from ONF, so OVS > has this right. the header is considered more authoritive than

Re: [ovs-dev] 3 byte oxm fields?

2013-10-07 Thread Ben Pfaff
On Tue, Oct 08, 2013 at 02:31:30PM +0900, YAMAMOTO Takashi wrote: > ovs uses length==4 for the following oxm fields. why? > > OXM_OF_IPV6_FLABEL OXM_OF_IPV6_FLABEL is 4 bytes in the openflow.h header from ONF, so OVS has this right. > OXM_OF_MPLS_LABEL OXM_OF_MPLS_LABEL is 4 bytes in t

[ovs-dev] [PATCH] openflow-1.2.h: Fix definition of OXM_OF_PBB_ISID.

2013-10-07 Thread Ben Pfaff
The ONF header file shows this as a 3-byte field. Reported-by: YAMAMOTO Takashi Signed-off-by: Ben Pfaff --- include/openflow/openflow-1.2.h |4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/openflow/openflow-1.2.h b/include/openflow/openflow-1.2.h index 541b143

[ovs-dev] 3 byte oxm fields?

2013-10-07 Thread YAMAMOTO Takashi
hi, ovs uses length==4 for the following oxm fields. why? OXM_OF_IPV6_FLABEL OXM_OF_MPLS_LABEL OXM_OF_PBB_ISID linc uses length==3 for them. it seems like a natural interpretation of the spec to me. YAMAMOTO Takashi ___ dev mailing list

[ovs-dev] [PATCH 5/6] ofproto-dpif-monitor: Add ofproto-dpif-monitor module.

2013-10-07 Thread Alex Wang
This commit adds a new module ofproto-dpif-monitor in ofproto directory. This module is in charge of executing the periodic functions of monitoring code (e.g. bfd and cfm). Signed-off-by: Alex Wang --- ofproto/automake.mk|2 + ofproto/ofproto-dpif-monitor.c | 199 ++

[ovs-dev] [PATCH 6/6] ofproto-dpif-monitor: Run ofproto-dpif-monitor in a thread.

2013-10-07 Thread Alex Wang
This commit moves the ofproto-dpif-monitor module into a dedicated thread. This helps eliminate the burden of main thread having to wake up very frequently for periodic interface monitoring (bfd, cfm). Also, this commit greatly increases the number of bfd/cfm sessions that can be supported by ovs

[ovs-dev] [PATCH 4/6] timeval: Wake up all threads when time is warped.

2013-10-07 Thread Alex Wang
This commit makes the main thread wake up all other threads when time is warped. Signed-off-by: Alex Wang --- lib/poll-loop.c |5 + lib/timeval.c | 28 lib/timeval.h |2 ++ 3 files changed, 35 insertions(+) diff --git a/lib/poll-loop.c b/lib/poll-l

[ovs-dev] [PATCH 1/6] ofproto-dpif: Move send_packet() to ofproto-dpif-xlate module.

2013-10-07 Thread Alex Wang
This commit moves the main logic of send_packet() function into the ofproto-dpif-xlate module. Also, modification is made to guarantee the thread safety of ofproto-dpif-xlate module. Signed-off-by: Alex Wang --- ofproto/ofproto-dpif-xlate.c | 72 +++--- ofp

[ovs-dev] [PATCH 2/6] ofproto-dpif: Make stats update thread safe.

2013-10-07 Thread Alex Wang
This commit makes the update of 'stats' member in ofproto_dpif struct thread safe. Signed-off-by: Alex Wang --- ofproto/ofproto-dpif.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index b45a289..9d7e97a 100644 -

[ovs-dev] [PATCH 0/6] [RESEND] Introduce ofproto-dpif-monitor module.

2013-10-07 Thread Alex Wang
This series of patches implements the multi-threading bfd/cfm in ofproto-dpif-monitor module. This module is in charge of the execution of periodic functions (like bfd_run, cfm_run, bfd_send_packets). Rebase to the current master. Alex Wang (6): ofproto-dpif: Move send_packet() to ofproto-dpif

[ovs-dev] [PATCH 3/6] tests: Remove the unit test for "ovs-appctl coverage/show".

2013-10-07 Thread Alex Wang
Changes will be made to allow "ovs-appctl time/warp" wake up all threads. With that, all threads will try calling "coverage_run()". And it will be impossible to deterministically check the output of the "ovs-appctl coverage/show" command. Thusly, this commit removes the unit test for the coverage

[ovs-dev] [PATCH] ovs-lib: Return the correct exit status of the command 'status'

2013-10-07 Thread Gurucharan Shetty
commit 46528f78e5c(debian, rhel, xenserver: Ability to collect ovs-ctl logs) made changes in the startup scripts such that the o/p of ovs-ctl is logged into ovs-ctl.log. But it had an unintended consequence that the exit status of ovs-ctl was no longer returned. We would always return success(the e

Re: [ovs-dev] [PATCH] sFlow export: include standard tunnel structures (for GRE, VXLAN etc.)

2013-10-07 Thread Ben Pfaff
On Sun, Oct 06, 2013 at 10:11:11PM -0700, Neil Mckee wrote: > Please comment on this proposed patch. It adds the standard > sFlow-TUNNEL structures to the sFlow export, which will be helpful > for tracing tunneled traffic through a network fabric in real-time. > > As part of doing that, it sw

Re: [ovs-dev] [PATCH v2.42 1/5] odp: Allow VLAN actions after MPLS actions

2013-10-07 Thread Ben Pfaff
On Mon, Oct 07, 2013 at 03:34:47PM +0900, Simon Horman wrote: > What I have done is to make an incremental patch which: > > 1. Moves the 'vlan_tci' member of strict xlate_in to >be the 'final_vlan_tci' member of struct xlate_ctx. > > 2. Moves the 'vlan_tci' local variable of do_xlate_actions(

[ovs-dev] [ipfix-bug 1/3] netlink: New function nl_msg_put_unspec_zero().

2013-10-07 Thread Ben Pfaff
This function already had a few potential users, which this commit converts. An upcoming commit adds more users. Signed-off-by: Ben Pfaff --- lib/netlink.c | 12 lib/netlink.h |1 + lib/odp-util.c | 12 +--- 3 files changed, 18 insertions(+), 7 deletions(-) diff

[ovs-dev] [ipfix-bug 2/3] odp-util: Fix IPFIX breakage with old kernel modules.

2013-10-07 Thread Ben Pfaff
Before commit e995e3df57ea (Allow OVS_USERSPACE_ATTR_USERDATA to be variable length.) userdata attributes in userspace actions were expected to be exactly 64 bits long. The kernel only actually enforced that they were at least 64 bits long (the previously referenced commit's log message contains m

[ovs-dev] [ipfix-bug 3/3] ofproto-dpif: Enable NXAST_SAMPLE only if the datapath supports it.

2013-10-07 Thread Ben Pfaff
This prevents using an older datapath from breaking forwarding. CC: Romain Lenglet Signed-off-by: Ben Pfaff --- ofproto/ofproto-dpif-ipfix.c | 28 ++--- ofproto/ofproto-dpif-ipfix.h |5 ++- ofproto/ofproto-dpif.c | 91 +- 3 files cha

[ovs-dev] [PATCH] ovs-vtep: Initial check-in of ovs-vtep.

2013-10-07 Thread Justin Pettit
ovs-vtep is a VTEP emulator that uses Open vSwitch for forwarding. Signed-off-by: Justin Pettit --- vtep/README.ovs-vtep | 82 + vtep/debian/changelog|5 + vtep/debian/compat |1 + vtep/debian/control

Re: [ovs-dev] [PATCH] sFlow export: include standard tunnel structures (for GRE, VXLAN etc.)

2013-10-07 Thread Neil Mckee
Thanks for the prompt reply. If the external sFlow analyzer always knows the difference between the outer (tunnel) and inner (tenant) layers, then it can present the appropriate abstraction depending on the application. It can already see both layers from sFlow-enabled transit switches in the f

Re: [ovs-dev] [PATCH] ipfix: implement flow caching and aggregation in exporter

2013-10-07 Thread Romain Lenglet
On Oct 1, 2013, at 11:40 AM, Neil Mckee wrote: > Just a comment: one of the architectural differences between IPFIX and sFlow > is the location of the flow-cache: with sFlow the cache is implemented in > external software on a central server, which can then easily export IPFIX if > requir

Re: [ovs-dev] [PATCH] sFlow export: include standard tunnel structures (for GRE, VXLAN etc.)

2013-10-07 Thread Jesse Gross
On Sun, Oct 6, 2013 at 10:11 PM, Neil Mckee wrote: > Please comment on this proposed patch. It adds the standard > sFlow-TUNNEL structures to the sFlow export, which will be helpful > for tracing tunneled traffic through a network fabric in real-time. Is there a way to turn this off? Since tu

[ovs-dev] [PATCH v2.43 5/5] datapath: Add basic MPLS support to kernel

2013-10-07 Thread Simon Horman
Allow datapath to recognize and extract MPLS labels into flow keys and execute actions which push, pop, and set labels on packets. Based heavily on work by Leo Alterman, Ravi K, Isaku Yamahata and Joe Stringer. Cc: Ravi K Cc: Leo Alterman Cc: Isaku Yamahata Cc: Joe Stringer Signed-off-by: Sim

[ovs-dev] [PATCH v2.43 4/5] datapath: Break out deacceleration portion of vlan_push

2013-10-07 Thread Simon Horman
Break out deacceleration portion of vlan_push into vlan_put so that it may be re-used by mpls_push. For both vlan_push and mpls_push if there is an accelerated VLAN tag present then it should be deaccelerated, adding it to the data of the skb, before the new tag is added. Signed-off-by: Simon Hor

[ovs-dev] [PATCH v2.43 2/5] ofp-actions: Add separate OpenFlow 1.3 action parser

2013-10-07 Thread Simon Horman
From: Joe Stringer This patch adds new ofpact_from_openflow13() and ofpacts_from_openflow13() functions parallel to the existing ofpact handling code. In the OpenFlow 1.3 version, push_mpls is handled differently, but all other actions are handled by the existing code. In the case of push_mpls f

[ovs-dev] [PATCH v2.43 0/5] MPLS actions and matches

2013-10-07 Thread Simon Horman
Hi, This series implements MPLS actions and matches based on work by Ravi K, Leo Alterman, Yamahata-san and Joe Stringer. This series provides two changes * Patches 1 - 3 Provide user-space support for the VLAN/MPLS tag insertion order up to and including OpenFlow 1.2, and the different ord

[ovs-dev] [PATCH v2.43 1/5] odp: Allow VLAN actions after MPLS actions

2013-10-07 Thread Simon Horman
From: Joe Stringer OpenFlow 1.1 and 1.2, and 1.3 differ in their handling of MPLS actions in the presence of VLAN tags. To allow correct behaviour to be committed in each situation, this patch adds a second round of VLAN tag action handling to commit_odp_actions(), which occurs after MPLS actions

[ovs-dev] [PATCH v2.43 3/5] lib: Support pushing of MPLS LSE before or after VLAN tag

2013-10-07 Thread Simon Horman
From: Joe Stringer This patch modifies the push_mpls behaviour to allow pushing of an MPLS LSE either before any VLAN tag that may be present. Pushing the MPLS LSE before any VLAN tag that is present is the behaviour specified in OpenFlow 1.3. Pushing the MPLS LSE after the any VLAN tag that is