Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/952121/?format=api
{ "id": 952121, "url": "http://patchwork.ozlabs.org/api/patches/952121/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openvswitch/patch/20180801121635.14509-4-vkommadi@redhat.com/", "project": { "id": 47, "url": "http://patchwork.ozlabs.org/api/projects/47/?format=api", "name": "Open vSwitch", "link_name": "openvswitch", "list_id": "ovs-dev.openvswitch.org", "list_email": "ovs-dev@openvswitch.org", "web_url": "http://openvswitch.org/", "scm_url": "git@github.com:openvswitch/ovs.git", "webscm_url": "https://github.com/openvswitch/ovs", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20180801121635.14509-4-vkommadi@redhat.com>", "list_archive_url": null, "date": "2018-08-01T12:16:34", "name": "[ovs-dev,v7,3/4] Document the flows for redirecting VLAN packets", "commit_ref": null, "pull_url": null, "state": "deferred", "archived": false, "hash": "220332e317627064aecb4179239691ee695226de", "submitter": { "id": 67383, "url": "http://patchwork.ozlabs.org/api/people/67383/?format=api", "name": "Venkata Anil", "email": "vkommadi@redhat.com" }, "delegate": { "id": 55684, "url": "http://patchwork.ozlabs.org/api/users/55684/?format=api", "username": "jpettit", "first_name": "Justin", "last_name": "Pettit", "email": "jpettit@nicira.com" }, "mbox": "http://patchwork.ozlabs.org/project/openvswitch/patch/20180801121635.14509-4-vkommadi@redhat.com/mbox/", "series": [ { "id": 58787, "url": "http://patchwork.ozlabs.org/api/series/58787/?format=api", "web_url": "http://patchwork.ozlabs.org/project/openvswitch/list/?series=58787", "date": "2018-08-01T12:16:31", "name": "Use VLANs for VLAN packets redirected to a gateway chassis", "version": 7, "mbox": "http://patchwork.ozlabs.org/series/58787/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/952121/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/952121/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<ovs-dev-bounces@openvswitch.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "dev@openvswitch.org" ], "Delivered-To": [ "patchwork-incoming@bilbo.ozlabs.org", "ovs-dev@mail.linuxfoundation.org" ], "Authentication-Results": [ "ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=openvswitch.org\n\t(client-ip=140.211.169.12; helo=mail.linuxfoundation.org;\n\tenvelope-from=ovs-dev-bounces@openvswitch.org;\n\treceiver=<UNKNOWN>)", "ozlabs.org;\n\tdmarc=fail (p=none dis=none) header.from=redhat.com" ], "Received": [ "from mail.linuxfoundation.org (mail.linuxfoundation.org\n\t[140.211.169.12])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 41gXQR6wXqz9s3Z\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed, 1 Aug 2018 22:18:23 +1000 (AEST)", "from mail.linux-foundation.org (localhost [127.0.0.1])\n\tby mail.linuxfoundation.org (Postfix) with ESMTP id DAB14DF2;\n\tWed, 1 Aug 2018 12:16:57 +0000 (UTC)", "from smtp1.linuxfoundation.org (smtp1.linux-foundation.org\n\t[172.17.192.35])\n\tby mail.linuxfoundation.org (Postfix) with ESMTPS id 1A019DDD\n\tfor <dev@openvswitch.org>; Wed, 1 Aug 2018 12:16:57 +0000 (UTC)", "from mx1.redhat.com (mx3-rdu2.redhat.com [66.187.233.73])\n\tby smtp1.linuxfoundation.org (Postfix) with ESMTPS id 6D099701\n\tfor <dev@openvswitch.org>; Wed, 1 Aug 2018 12:16:56 +0000 (UTC)", "from smtp.corp.redhat.com\n\t(int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 9512940201BE\n\tfor <dev@openvswitch.org>; Wed, 1 Aug 2018 12:16:55 +0000 (UTC)", "from vkommadi.lab.eng.blr.redhat.com\n\t(dhcp35-207.lab.eng.blr.redhat.com [10.70.35.207])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id 718391C5BB;\n\tWed, 1 Aug 2018 12:16:54 +0000 (UTC)" ], "X-Greylist": [ "domain auto-whitelisted by SQLgrey-1.7.6", "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.11.55.6]);\n\tWed, 01 Aug 2018 12:16:55 +0000 (UTC)", "inspected by milter-greylist-4.5.16 (mx1.redhat.com\n\t[10.11.55.6]); \n\tWed, 01 Aug 2018 12:16:55 +0000 (UTC) for IP:'10.11.54.5'\n\tDOMAIN:'int-mx05.intmail.prod.int.rdu2.redhat.com'\n\tHELO:'smtp.corp.redhat.com' FROM:'vkommadi@redhat.com' RCPT:''" ], "From": "vkommadi@redhat.com", "To": "dev@openvswitch.org", "Date": "Wed, 1 Aug 2018 17:46:34 +0530", "Message-Id": "<20180801121635.14509-4-vkommadi@redhat.com>", "In-Reply-To": "<20180801121635.14509-1-vkommadi@redhat.com>", "References": "<20180801121635.14509-1-vkommadi@redhat.com>", "X-Scanned-By": "MIMEDefang 2.79 on 10.11.54.5", "X-Spam-Status": "No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED\n\tautolearn=ham version=3.3.1", "X-Spam-Checker-Version": "SpamAssassin 3.3.1 (2010-03-16) on\n\tsmtp1.linux-foundation.org", "Subject": "[ovs-dev] [PATCH v7 3/4] Document the flows for redirecting VLAN\n\tpackets", "X-BeenThere": "ovs-dev@openvswitch.org", "X-Mailman-Version": "2.1.12", "Precedence": "list", "List-Id": "<ovs-dev.openvswitch.org>", "List-Unsubscribe": "<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>", "List-Archive": "<http://mail.openvswitch.org/pipermail/ovs-dev/>", "List-Post": "<mailto:ovs-dev@openvswitch.org>", "List-Help": "<mailto:ovs-dev-request@openvswitch.org?subject=help>", "List-Subscribe": "<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=subscribe>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Sender": "ovs-dev-bounces@openvswitch.org", "Errors-To": "ovs-dev-bounces@openvswitch.org" }, "content": "From: venkata anil <vkommadi@redhat.com>\n\nWe have added new flows for using vlans instead of tunnels for\nredirecting VLAN packets to a gateway chassis. This patch documents\nthese flows in ovn-northd.8.xml and ovn-architecture.7.xml.\n\nSigned-off-by: Venkata Anil <vkommadi@redhat.com>\n---\n\nv6->v7:\n* Rebased\n\nv5->v6:\n* Rebased\n\nv4->v5:\n* This patch is added to document the logical and physical flows\n\n ovn/northd/ovn-northd.8.xml | 46 +++++++++++++++++++++++++++++++++++++++++++++\n ovn/ovn-architecture.7.xml | 26 ++++++++++++++++++++++++-\n 2 files changed, 71 insertions(+), 1 deletion(-)", "diff": "diff --git a/ovn/northd/ovn-northd.8.xml b/ovn/northd/ovn-northd.8.xml\nindex f1771c6..8fa5272 100644\n--- a/ovn/northd/ovn-northd.8.xml\n+++ b/ovn/northd/ovn-northd.8.xml\n@@ -995,6 +995,23 @@ output;\n \n <li>\n <p>\n+ For each enabled router port <var>P</var> which is connected to\n+ a VLAN network, a priority-100 flow that matches <code>inport ==\n+ <var>P</var> && flags.rcv_from_vlan == 1</code>,\n+ with action <code>next;</code>.\n+ </p>\n+\n+ <p>\n+ For the gateway port on a distributed logical router (where\n+ one of the logical router ports specifies a\n+ <code>redirect-chassis</code>), the above flow is only\n+ programmed on the gateway port instance on the\n+ <code>redirect-chassis</code>.\n+ </p>\n+ </li>\n+\n+ <li>\n+ <p>\n For each enabled router port <var>P</var> with Ethernet address\n <var>E</var>, a priority-50 flow that matches <code>inport ==\n <var>P</var> && (eth.mcast || eth.dst ==\n@@ -1146,6 +1163,18 @@ output;\n <p>\n For the gateway port on a distributed logical router (where\n one of the logical router ports specifies a\n+ <code>redirect-chassis</code>), when the ARP request is\n+ from router internal ports connected to vlan network (i.e\n+ flags.rcv_from_vlan == 1), a priority-90 flow matches\n+ <code> flags.rcv_from_vlan == 1 && arp.op == 1\n+ && arp.tpa == <var>A</var></code> will have the\n+ above action but outport set to all router internal ports\n+ which are connected to vlan network.\n+ </p>\n+\n+ <p>\n+ For the gateway port on a distributed logical router (where\n+ one of the logical router ports specifies a\n <code>redirect-chassis</code>), the above flows are only\n programmed on the gateway port instance on the\n <code>redirect-chassis</code>. This behavior avoids generation\n@@ -1839,6 +1868,23 @@ next;\n If the address <var>A</var> is in the link-local scope, the\n route will be limited to sending on the ingress port.\n </p>\n+\n+ <p>\n+ If the route's <code>outport</code> is a gateway port on a\n+ distributed logical router (where one of the logical router ports\n+ specifies a <code>redirect-chassis</code>), for the packets matching\n+ MLF_RCV_FROM_VLAN flag along with <code>ip4.dst ==\n+ <var>N</var>/<var>M</var></code>, or <code>ip6.dst ==\n+ <var>N</var>/<var>M</var></code>, add a flow with priority we get\n+ by adding 1 to number of 1-bits in M, with an action\n+ REGBIT_NAT_REDIRECT = 1; next;.\n+ By setting the <code>REGBIT_NAT_REDIRECT</code> flag, in the ingress\n+ table <code>Gateway Redirect</code> this will trigger a redirect to\n+ the instance of the gateway port on the <code>redict-chassis</code>.\n+ This flow is programmed on the gateway port instance other than the\n+ <code>redirect-chassis</code>. This flow is also added if the route\n+ is from a configured static route.\n+ </p>\n </li>\n </ul>\n \ndiff --git a/ovn/ovn-architecture.7.xml b/ovn/ovn-architecture.7.xml\nindex ae5ca8e..ad2101c 100644\n--- a/ovn/ovn-architecture.7.xml\n+++ b/ovn/ovn-architecture.7.xml\n@@ -874,6 +874,19 @@\n Encapsulations</code> for encoding details). Then the actions resubmit\n to table 33 to enter the logical egress pipeline.\n </p>\n+\n+ <p>\n+ For VLAN packets coming through localnet port from remote chassis,\n+ table 0 sets logical datapath and logical ingress port based on\n+ localnet port. If these VLAN packets have distributed gateway port MAC\n+ (gateway port on a distributed logical router where one of the logical\n+ router ports specifies a redirect-chassis) as destination MAC address,\n+ a new flow with priority 200 is added which sets logical datapath to\n+ router metadata and logical ingress port to the patch port connecting\n+ router and vlan network, resubmit into the logical router ingress\n+ pipeline i.e table 8. This flow is only programmed on the gateway\n+ port instance on the redirect-chassis.\n+ </p>\n </li>\n \n <li>\n@@ -1020,6 +1033,16 @@\n determine the output port.\n </li>\n <li>\n+ A higher-priority rule to match packets received from router ports\n+ which are connected to vlan networks, based on flag\n+ MLF_RCV_FROM_VLAN, where logical output port is a gateway port, on\n+ a distributed logical router (where one of the logical router ports\n+ specifies a redirect-chassis), but on remote hypervisor, the actions\n+ tag the packet with input network VLAN id and output the packet\n+ through input VLAN switch's localnet port. This flow is programmed\n+ on chassis other than redirect-chassis.\n+ </li>\n+ <li>\n A higher-priority rule to match packets received from ports of type\n <code>localport</code>, based on the logical input port, and resubmit\n these packets to table 33 for local delivery. Ports of type\n@@ -1153,7 +1176,8 @@\n directly to the first OpenFlow flow table in the ingress pipeline,\n setting the logical ingress port to the peer logical patch port, and\n using the peer logical patch port's logical datapath (that\n- represents the logical router).\n+ represents the logical router). If the logical datapath is a VLAN\n+ network, set the MLF_RCV_FROM_VLAN flag.\n </li>\n </ul>\n \n", "prefixes": [ "ovs-dev", "v7", "3/4" ] }