From patchwork Sun Sep 16 16:53:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ori Kam X-Patchwork-Id: 44764 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 A88DF56A3; Sun, 16 Sep 2018 18:55:53 +0200 (CEST) Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00074.outbound.protection.outlook.com [40.107.0.74]) by dpdk.org (Postfix) with ESMTP id CF7025688 for ; Sun, 16 Sep 2018 18:55:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=hYgcKVIPznmpJhD6tD6snXBbs4DPznRZJhqaZkAg4nQ=; b=qAdK0fs3+D0SgcL5Gksg1h7vIuHPHXnioSNLy66UB58gqLZ9On3G1y9noGJ3ZyiqRNfRWmImRUmAMvRyWLFCMZ9GY0nws4FnuYdgydSrS1CACfXzFEajqZLD7Jgmd807Ttr++Fj9Y1Ljq0tyzMbWRuL4djWBFhpxRpVg9dzJuiM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=orika@mellanox.com; Received: from mellanox.com (37.142.13.130) by HE1PR05MB3434.eurprd05.prod.outlook.com (2603:10a6:7:33::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1143.15; Sun, 16 Sep 2018 16:55:47 +0000 From: Ori Kam To: arybchenko@solarflare.com, ferruh.yigit@intel.com, stephen@networkplumber.org, adrien.mazarguil@6wind.com Cc: dev@dpdk.org, dekelp@mellanox.com, thomas@monjalon.net, nelio.laranjeiro@6wind.com, yskoh@mellanox.com, orika@mellanox.com Date: Sun, 16 Sep 2018 16:53:41 +0000 Message-Id: <1537116824-191205-1-git-send-email-orika@mellanox.com> X-Mailer: git-send-email 1.8.3.1 MIME-Version: 1.0 X-Originating-IP: [37.142.13.130] X-ClientProxiedBy: DB6P193CA0021.EURP193.PROD.OUTLOOK.COM (2603:10a6:6:29::31) To HE1PR05MB3434.eurprd05.prod.outlook.com (2603:10a6:7:33::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 0c3e9331-94bf-41a1-31db-08d61bf54136 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:HE1PR05MB3434; X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3434; 3:FW9lwBiZK6/0y9FN1wIYR9ojZB80BmpLR4LOnbURk/xHubiC2bXFkmu7rlpmmls+3ekUyR+aTIE0gU+peCA7Qaj8+dkR9ukUFqDaFcTQyJR519uQZC31XqQ/htjtfX+t8bs6soYNEkjEiFzsWzK86RtuU8X47Xi5atHJRlwdiLWwKkAJnpPe3ErOEa519u+xwbpHSFIJnpuK9UfMG+vP9/Z9v7sVtSg06c9JlR2j3WMoa54SeijJaSAClVHNElYQ; 25:sxr7zSzH7cHJETty9Sg3Q90FdT/VoHq7qp2LTjcUvfemtBkfaOgWhg0QzfZZYk6ufdTi/2ViUrnfoMZEdhkbE7Wxkt6fTfEqfF++qcBrAl46CaONCUBDlmd6XVyP3Pb6wJEsZ4ElmeoAC1cYLQBoBxvUPhyDubOyYdw2Ycw2BxWvoyuYhiX+KWsI2GT1gn6peeXaLJnTVBqrc+FbtyXvh9modNSUe8ygMVjbP63M4PphNLD6bj2OkopgwgUj7YLl250jCHI/ggXmRh7WfBdILlt2i96/cjWrVaKRZbkV+GcRNXMYrbbiU/2sEz8sergrFuawaPbwwO+vuhCHktYxng==; 31:m9DEXQTQkKBhMze99R3Gb+NGjkrYdQuJEg1kNNXeqax3Y1He59trlQotIBDTx3v+7lT4RUnt9SPkdzAmnkhICaPjMtWcT1MHwOds4qlGCogcqqNHQOqrmJqoGzREpC96jkpSfVGhroMeWII5TLjA8PRpXMK7pTSRnow2H+Sx/YX3u6SM/RF0LpWEEJg86EUChe9+qmowSt+tMwcatuOGspnp/hFU/MfrP3WxMje95Ls= X-MS-TrafficTypeDiagnostic: HE1PR05MB3434: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3434; 20:Bd+HAGg4e/v1mXvVucDKYW2qM4QHvf5kRgxWAdQrvj/C1XsUub41FYv4WoFfyKvT4YcqsU2v2kS2kB2/LIxoVieKUAJ9GXO9bDGe/cwhVoYQBIlIr2piYQglye/ySlswE5WCoz/n/OOlgbAJtUgPhf2hC3tJl1TVDRqXrMplwWsAJ3pb6k/7oX1Sbi9e9VVrpu+OYHIvLtTn+ed//vrRjF/TQIySiq5FWhWQF49wrgOGI9N+cZtJ6G1HJE5jN2+RZfc3NBr49cOucIeBbGubGC9+jcJAQ1y5sA+cfEddBR456peAJ6TgEn2QQmVSHBHqgOH4mys7yUHxY22oTlWoP0PHHS647X89vqC7OupaXFqssLUP+zWMaYbcdwTDPKkVXVqN7EesUEJjzv0MXLCQJsCamMwfVQFIy54AiUczqt7dojoHGAERQ+gXGZFKRY2VG8MUc8A20DPCy9ktk1BebsLk8/D9BdVcWLL578BZD9247FGk+gSwXa80cn7Qft//; 4:zRZ1sK4r/ZO8QATmzlzM55bj1n/5NzrWVJSGlx7eYk8kaTkyF82/4kCvUB+fL+LYipHDaFHhc+R79Liv9mvJG7BWHFtOU28PVFQhkpKx9HzzFczUUzJW5wJE3503Sry0MgW9v7mgJDhgXUeuSEPVNmAj85XNlF6/uavQPH4RlaAxeHSyPCx2M5rAMER9sGmTtvGkEUJzwCEXVAPfZ7zNDmEcCMlT+94/ACBuDwgJS9DjdqfXnxgwUIFqbquhguJkgbA1mNwjOAzcjGAxoTQjQg== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231355)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123560045)(20161123562045)(20161123564045)(201708071742011)(7699050); SRVR:HE1PR05MB3434; BCL:0; PCL:0; RULEID:; SRVR:HE1PR05MB3434; X-Forefront-PRVS: 079756C6B9 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(136003)(346002)(366004)(396003)(39860400002)(376002)(189003)(199004)(16586007)(47776003)(81156014)(6666003)(50226002)(8936002)(25786009)(5660300001)(68736007)(81166006)(8676002)(4326008)(106356001)(105586002)(2906002)(4720700003)(69596002)(316002)(21086003)(305945005)(8886007)(7736002)(66066001)(33026002)(107886003)(956004)(3846002)(476003)(48376002)(51416003)(478600001)(97736004)(7696005)(52116002)(55016002)(6306002)(53936002)(26005)(36756003)(186003)(16526019)(386003)(50466002)(2616005)(86362001)(6116002)(486006)(41533002); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR05MB3434; H:mellanox.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR05MB3434; 23:64W0cGYQG8AZkd6xiJq1NnE3cyymC2KGxncr/aGhE?= 9H7P6wSzThFYIouur/RA56QAKrvmGQq7gWHnaUw+kZasUwMJMfENV6ygkxR3NAoeRhb6ByIJN+v8xX7R+Pz91qpLbJrYoNvLljKJiK+gVQgirjPmVhA/hLdmsSQsShQ+MaegXDUi4EOwEv6k8WymB3j9MFTBmAMErUlOivhOGL/v9UqnGdAF3f1DclAJpreFXIuKErKdYt4mVnYDL19c5Xs4Jh4V7/FyjeEoi/tn2WPlqKZYF4y2jRIcoXDkJyQNgBmDUCaqVzG0A+g96adfztxlbcP+AnyZ394U5ccHMkHGnEikBUWolCkFi1lKAM8v+ckXzF6DqmSy8CXKMsDZAygDeKRSNk8RJP0MQYYRy2kqskFYljsWoGb7dcvNbJwT8rf3HmV/YDC0JSPip+kNnORadhcwEYaeWlIllbJt0vU3vQmw6QJiR8ZHfTbX9MMoSX7UPJRj3j+0UGvsnfF4ordDloWdpxK+R+mzsxYyKxbUOcunq9POirzDwckZZ6Ef/5C2gtS+Er6O/LEInLdcvwNcJxDxyIjACAEGdQt8968scb0Ex6TZfsBdapcAoaEEKsrb1yhyrV/6GQkk5BcKHU1Bi/lVwNc6dgibiMG6SL9nkcFkFOfTF10ZGSbmlWQ2dEFRK20fNdwBQLp85RXmKZyt5LIzyisTsIqAQk/No6PE1dvk3uhR58/LMMXm/mtbRCiJl1V7laiQFC7QCqZfelDGqJw608TUGqPF6fjaBQM/53k0lSHCJqH4Tgllt+ZOKGvEFFgPvn6Ni5NXTlgIXIEIU8psrY5ysP2EY3HuREVvE2iQCRbVMPXqUUxEAp0Htlm92jLuGIgVcvQhb+mnXRFuc3TSxJjOvBUoPdtZvjCK9MZADtmIXN0C6MzCPRTdlUQhzYanK6FIRe2Mr27CaOIT9hq+o5+2xRvKNihS3pPMLHPFw1yonae9oHctjuOMSRpTXeh/EGpvTnSXqg32/WeLgExldPhtxl9HLfo1N9/akz3kYimr6UywTQlKHPTETXIPkd1vMnb0hESgR3V6KulBIcOhAId7X/aDC+hpzQ0ZGQ+8G/ka8zstnh7I+f/9DxvcSIZwz+TKHbrRuE5ndqxueykDUI4BuV07uD7ds5tN2hU/RqHhI3H8UfSo5rwvsCFBzz670riSIkdzk3RqPeHl06SYzqyvvK0uLwM5WXSRwkV6+LmhhNYgYuqw/P3Fpg= X-Microsoft-Antispam-Message-Info: LxFrghhPEYQBot0wfRzwwaFKqEn4T45Lojx5Tc/ctoCSR6IqJssWzmQrVnM6SNopxGJNwU5b9P0O9sL55HOIpDU49Y53kmy/ehKYuVX+kTvbCDXEkSCCOjOZGIpd2+BNxIiJvmLWntLjRFaTOJxV9xnNk3D5UgDyEV2yn2RQm1Oitfgu2ygn2mb8OK9VN2qqAcwWCEcEjF13TfxgiuxSct+n0h+aFAsCx/sIUPtwtaZG3bSbmrqXPzA4MJ1mUhCcfJSEF/K4cWWDN3QxKefA0tn2ngj2zr0AI3YQLNtR1kMn+ox1aMxCmkN652f1vbjwxpkgYtlfwC+VYysGLt6ObA6IqIO+ip3PewQedAuHbyg= X-Microsoft-Exchange-Diagnostics: 1; HE1PR05MB3434; 6:5QRalfksIKCP+JrNxdqwVdDbfkEAx45jFkkzpYC5kpqNEcR8/0MA1Vmj20GeQ6IQSZ+SBdzy0+EfB1L2dRwOgRDsAiWgYBBogRn+hBIWZZ0DIIof/Earhu/DjTxBUpe3z9Er7rNwysuChqdWH0zC7CzCq1nWk45hm9UO61sqk/prxArzlyYcX+8g+mthTf2n0OjtPABLX6wxsXOXGlbzC8bCzjiJ2HDNurEFI4Y7UjP7psc9itOEzxDGR/xn08g/3WR3ZIzPGlX0BAbViD53sWuol1uO/pxwL+GA7rrogqa+6tkClm1jg4uWhS7A5D5LsOu0hqBPabkv0gbnKUzBMyLei2aL3mQVgA7B/glIZlii1a6u+aZA78NXUa1BKP9GFJjKuffihs7wY9/xe++WIUbli0MbcMn5Nst24+KB4wCjygt0fbBq1479NgeJjf2ZG1yrJjtUg7LTyOH4gwZO/Q==; 5:5GfjOauvIzW7QnKeyiPpif6VAGyYx5lRvUaZd+/wjNeSaW0HguygOasYHmvycnE47s8UmgApfrUCOVhaXRd4D0QYrrroP0SzKR5bJ6HDsM838PPscS2IGzxyJTMVCEYwTKWyk/2DhDAdWl9Srn1vonXAwMARjov/Y3LuF6q80No=; 7:Oy6pfV6du/lulbJVCINP51GRlqK9g8iwzALDg0uAWbvTtSo73B9XIFiZed6R+mioyRdtgCjEcOhRDQ5HjXjldpWbp8i+T2bDtuFjoR4+Rwf8OwG/vROHVRUrSZD6esFOVPdRR/mBAbtgZY6sNyvE9HlBG8UiGZpP8EqG3soZKbTODGzYbUEL7li8y6Zu+C9pz5TtL4HIcmlWvf2vpJzc6G2IFfBVT9xXNpun2fzr8c6AqDPyuBhhBcvP422IHNnr SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2018 16:55:47.6074 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0c3e9331-94bf-41a1-31db-08d61bf54136 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR05MB3434 Subject: [dpdk-dev] [PATCH 0/3] add generic L2/L3 tunnel encapsulation actions 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 implement the generic L2/L3 tunnel encapsulation actions and is based on rfc [1] "add generic L2/L3 tunnel encapsulation actions" Currenlty the encap/decap actions only support encapsulation of VXLAN and NVGRE L2 packets (L2 encapsulation is where the inner packet has a valid Ethernet header, while L3 encapsulation is where the inner packet doesn't have the Ethernet header). In addtion the parameter to to the encap action is a list of rte items, this results in 2 extra translation, between the application to the action and from the action to the NIC. This results in negetive impact on the insertion performance. Looking forward there are going to be a need to support many more tunnel encapsulations. For example MPLSoGRE, MPLSoUDP. Adding the new encapsulation will result in duplication of code. For example the code for handling NVGRE and VXLAN are exactly the same, and each new tunnel will have the same exact structure. This series introduce a generic encapsulation for L2 tunnel types, and generic encapsulation for L3 tunnel types. In addtion the new encapsulations commands are using raw buffer inorder to save the converstion time, both for the application and the PMD. [1]https://mails.dpdk.org/archives/dev/2018-August/109944.html Ori Kam (3): ethdev: add generic L2/L3 tunnel encapsulation actions ethdev: convert testpmd encap commands to new API ethdev: remove vxlan and nvgre encapsulation commands app/test-pmd/cmdline_flow.c | 294 +++++++++++++++++-------------------- doc/guides/prog_guide/rte_flow.rst | 105 +++++-------- lib/librte_ethdev/rte_flow.h | 66 ++++++--- 3 files changed, 219 insertions(+), 246 deletions(-)