From patchwork Mon Jun 18 14:36:31 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?N=C3=A9lio_Laranjeiro?= X-Patchwork-Id: 41229 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8162014E8; Mon, 18 Jun 2018 16:36:37 +0200 (CEST) Received: from mail-wr0-f178.google.com (mail-wr0-f178.google.com [209.85.128.178]) by dpdk.org (Postfix) with ESMTP id 41074DED for ; Mon, 18 Jun 2018 16:36:36 +0200 (CEST) Received: by mail-wr0-f178.google.com with SMTP id d2-v6so17088139wrm.10 for ; Mon, 18 Jun 2018 07:36:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=j4jr3uNVaLGiKDnFGxY39yDzMRnji99l2HxIwdyyHjk=; b=FzoKu4hKxlzPDyKqNpMdIfu3ZQc/Bcu9hAaJs9BCwxuCTfTurjCxiN6IKclozOZYaa 4m+QcVlNySdzKPUhbU/xpklfsgCvRzwgEeFzs+9ZXm7e3i7htHRfVh+FniE8WJWRUki3 1XsI5ihgpI2Om0yBebfZR7xS7BE3z8xidq81ISP0ZF9up7fgjrznl26/nPP+QqS+7CXG DBq7PAShshZPQ6PjRE1Zd9YFegpIPcMXlwCh5t6WPbgJ8YgHoqTdRnjwBHhCgJPBbcAW dbKXE3lRZqVfqP52MYWmYZ6n+gAOOWKQHKKUQdMjpDxm5IgpHWTDpaiV9OaW7oH4OfRq U/7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=j4jr3uNVaLGiKDnFGxY39yDzMRnji99l2HxIwdyyHjk=; b=FVJJbhZHqZ8UzHl6UyVcpsiPPgkAd0EeIVTUr4kEn6kYnio9xgDusxrKGtxtneIhY3 kSRign4bKh1LbdiqS/ZqSg88dLpwSy/KxW9fxXc3MsE8ChDNnv6VcasNMNZDm1BcsrFq udNVnuIduscFYpIR/xixASnHuj/SbbgivpFyIjpT7QHIS/Tsa1WREqK/lfw9ZLKojjeF VhL/uIXhZOFCX0BxNKPdUQUJ+pRsFz6LuSRxzVfYVEHfDlMEGLHBo/8f/UuUb9Qdv/vx n1zi+g/2ecTxYDZkKhcY4cQ2GRbuPdhVFaI7+x3hvFqnn463qjBtTBcmsG8WIbPEqZgL kXXw== X-Gm-Message-State: APt69E1+zaztaPA/Us1NrGPChfAvqSLoNyCxg/e7NntEfuruXTD9fQYv DcOzRd4mIA7HsrBuPTztHcIjhI23Jg== X-Google-Smtp-Source: ADUXVKKfnJKCowG1uVc1ZWgOhvviJNTQ2h6viWjx7X6AClpKKCVLVn4vrYhQ17bkrjTxK7LXinjYjw== X-Received: by 2002:adf:b0da:: with SMTP id j26-v6mr9957222wra.3.1529332595659; Mon, 18 Jun 2018 07:36:35 -0700 (PDT) Received: from laranjeiro-vm.dev.6wind.com (host.78.145.23.62.rev.coltfrance.com. [62.23.145.78]) by smtp.gmail.com with ESMTPSA id a9-v6sm8609895wmh.38.2018.06.18.07.36.34 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 18 Jun 2018 07:36:35 -0700 (PDT) From: Nelio Laranjeiro To: dev@dpdk.org, Adrien Mazarguil , Wenzhuo Lu , Jingjing Wu , Bernard Iremonger , Mohammad Abdul Awal Date: Mon, 18 Jun 2018 16:36:31 +0200 Message-Id: X-Mailer: git-send-email 2.17.1 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v3 0/2] app/testpmd implement VXLAN/NVGRE Encap/Decap X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This series adds an easy and maintainable configuration version support for those two actions for 18.08 by using global variables in testpmd to store the necessary information for the tunnel encapsulation. Those variables are used in conjunction of RTE_FLOW_ACTION_{VXLAN,NVGRE}_ENCAP action to create easily the action for flows. A common way to use it: set vxlan ipv4 4 4 4 127.0.0.1 128.0.0.1 11:11:11:11:11:11 22:22:22:22:22:22 flow create 0 ingress pattern end actions vxlan_encap / queue index 0 / end set vxlan ipv6 4 4 4 ::1 ::2222 11:11:11:11:11:11 22:22:22:22:22:22 flow create 0 ingress pattern end actions vxlan_encap / queue index 0 / end set nvgre ipv4 4 127.0.0.1 128.0.0.1 11:11:11:11:11:11 22:22:22:22:22:22 flow create 0 ingress pattern end actions nvgre_encap / queue index 0 / end set nvgre ipv6 4 ::1 ::2222 11:11:11:11:11:11 22:22:22:22:22:22 flow create 0 ingress pattern end actions nvgre_encap / queue index 0 / end This also replace the proposal done by Mohammad Abdul Awal [1] which handles in a more complex way for the same work. Note this API has already a modification planned for 18.11 [2] thus those series should have a limited life for a single release. [1] https://dpdk.org/ml/archives/dev/2018-May/101403.html [2] https://dpdk.org/ml/archives/dev/2018-June/103485.html Changes in v3: - support VLAN in the outer encapsulation. - fix the documentation with missing arguments. Changes in v2: - add default IPv6 values for NVGRE encapsulation. - replace VXLAN to NVGRE in comments concerning NVGRE layer. Nelio Laranjeiro (2): app/testpmd: add VXLAN encap/decap support app/testpmd: add NVGRE encap/decap support app/test-pmd/cmdline.c | 242 ++++++++++++++++++ app/test-pmd/cmdline_flow.c | 268 ++++++++++++++++++++ app/test-pmd/testpmd.c | 32 +++ app/test-pmd/testpmd.h | 32 +++ doc/guides/testpmd_app_ug/testpmd_funcs.rst | 27 ++ 5 files changed, 601 insertions(+)