From patchwork Thu Jul 25 11:28:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shibir Basak X-Patchwork-Id: 1964701 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=proofpoint20171006 header.b=BRZCSTG2; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=selector1 header.b=b8GMRfDT; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=2605:bc80:3010::136; helo=smtp3.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=patchwork.ozlabs.org) Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WV7v50r6Gz1yXp for ; Thu, 25 Jul 2024 21:29:03 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 2D00C60A6A; Thu, 25 Jul 2024 11:29:01 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id Ww28l3nL94n0; Thu, 25 Jul 2024 11:28:59 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.9.56; helo=lists.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org A0EA06069D Authentication-Results: smtp3.osuosl.org; dkim=fail reason="signature verification failed" (2048-bit key, unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=proofpoint20171006 header.b=BRZCSTG2; dkim=fail reason="signature verification failed" (2048-bit key, unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=selector1 header.b=b8GMRfDT Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by smtp3.osuosl.org (Postfix) with ESMTPS id A0EA06069D; Thu, 25 Jul 2024 11:28:59 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 3C68DC002B; Thu, 25 Jul 2024 11:28:59 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137]) by lists.linuxfoundation.org (Postfix) with ESMTP id CAD75C002A for ; Thu, 25 Jul 2024 11:28:57 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp4.osuosl.org (Postfix) with ESMTP id B291F40902 for ; Thu, 25 Jul 2024 11:28:57 +0000 (UTC) X-Virus-Scanned: amavis at osuosl.org Received: from smtp4.osuosl.org ([127.0.0.1]) by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP id 51dpqFai0FBC for ; Thu, 25 Jul 2024 11:28:56 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=148.163.155.12; helo=mx0b-002c1b01.pphosted.com; envelope-from=shibir.basak@nutanix.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp4.osuosl.org 145B14086C Authentication-Results: smtp4.osuosl.org; dmarc=pass (p=none dis=none) header.from=nutanix.com DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 145B14086C Authentication-Results: smtp4.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=proofpoint20171006 header.b=BRZCSTG2; dkim=pass (2048-bit key, unprotected) header.d=nutanix.com header.i=@nutanix.com header.a=rsa-sha256 header.s=selector1 header.b=b8GMRfDT Received: from mx0b-002c1b01.pphosted.com (mx0b-002c1b01.pphosted.com [148.163.155.12]) by smtp4.osuosl.org (Postfix) with ESMTPS id 145B14086C for ; Thu, 25 Jul 2024 11:28:54 +0000 (UTC) Received: from pps.filterd (m0127842.ppops.net [127.0.0.1]) by mx0b-002c1b01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 46P0nHbP016842 for ; Thu, 25 Jul 2024 04:28:53 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nutanix.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=proofpoint20171006; bh=LRTTbp7EWC0b+ l7duwyfOb8hMaXU03DwFGr017sA8U4=; b=BRZCSTG2KcguKq68vyOYLnDz6UDKD Zirers8MNrBmzjZKXrXnxkVTjMdFBVPGrljv6kRGQGHviEZRm3VTQV5W2wyUKt/e JmPkyfaJdeBEz1QlRCx+VSeOwErOSrSv7DWSJr43VhlFBOHWEEP4kbUb3D88Ak/6 MTfvapFO4xkgNpnWz2J4Myc2S0iU7imdIJnwxyjF04OtcdJUiJFTic3YKpjNS9Ho 9pt9kDYl7G79bPcUFsLtxLSwbYi6wKxNzToZJAH1CmXHn84FL8VN4R4+Ub+2jByP fiX6K/xmCL14YwWoKKScPSgt2oRI2RJAYpX6PC/BlhR0SNhrt/PDG2bXQ== Received: from bn1pr04cu002.outbound.protection.outlook.com (mail-eastus2azlp17010000.outbound.protection.outlook.com [40.93.12.0]) by mx0b-002c1b01.pphosted.com (PPS) with ESMTPS id 40kc8p122w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 25 Jul 2024 04:28:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BsYe7xqJAfVDDJK9nVfa1OGn6aej9UfMz5zh1rLV6v+OWtL+WcD8JRfcDcF6qdsqgqD51yFrDKY0TL0ufrGye4do036soqcPuJW07mZenrANGfXOoQQV/LknK9Hp5NRcmwkcvlTyOtaBnQajjVA6EtzkgFpal/Cuidi9IhHgGjICygJ20ravzhnj22UZse77f2WPIiKjuBYI9/Y+b4+QgAbPQ+9Pf8lbt2MLoEz185qHK7rE6o86wzZeyWqTF04uoVR0ojvpVQFKXcpnrtcKnwcBpOOMHnJlD/xd/fxCW6/KIW7t+/M9E6TDQB2J3LQ1lCH4IZBMoQiFeKcsWD0+PQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LRTTbp7EWC0b+l7duwyfOb8hMaXU03DwFGr017sA8U4=; b=E8eoM0C9m3p85cOJlcLOsaFJtDJtatcRWbQb8SbUmJ8lokQVPqlZkELsPbJX5oadUxP7nqt8X3kboDRNcJLJeuokOEXCCu7WivKqGiF+4vwZjLd11dQ2iBMyDfv0x0BlXUCQNCwAmJMKxdysUW28rPeAjvU1XPEb6W4wwss/JiTYj88wBtt0Hvdji9x2e+fySMqmQ8YMmdhV92KcqOLGZ9X1NH6WeEMtdx9XdwJJu4vl0/t7Ez+gNhbRJukz8VM/tawGIJAs29idoCuLCDplH4Pen8Gz1CKltIlp6JeNakcLOnGyYfOO/vfyV+6S0FMAh9fsRHz5AJ9pKBdrYuxVZA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nutanix.com; dmarc=pass action=none header.from=nutanix.com; dkim=pass header.d=nutanix.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nutanix.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LRTTbp7EWC0b+l7duwyfOb8hMaXU03DwFGr017sA8U4=; b=b8GMRfDT0O4g86MB+pP9/m5/WJE/2vXWSMQxfmml40StFTVjRMalMvRpdrL0A5SDKXzIwHZutu2RQApZ7VGmShxy5GAHwX3Na0FvA+O8ooueGtCHR4X/MNRQtGrCTlX5i2jyfcRYx2HiOKAoPi/wQR7pEXylSahMhvwyw/prlFyQ2FpsurhEvKLAraV+un8114YQHlXVBeXZ75teccW1afEZ6HWfxnRtRHJ9j4NwxcZZElb4HSlRKoZCy4b25e5CkuGfuzX92X382oKGCjxL+3akNx15gFUA9iZcDMoolyAo91m/IptzIFaMFy9ohHEC1CF8Opia0DiNATFwnSZyog== Received: from DM6PR02MB5529.namprd02.prod.outlook.com (2603:10b6:5:30::11) by BN0PR02MB8031.namprd02.prod.outlook.com (2603:10b6:408:16e::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.28; Thu, 25 Jul 2024 11:28:50 +0000 Received: from DM6PR02MB5529.namprd02.prod.outlook.com ([fe80::baa7:c095:e8a8:5c0c]) by DM6PR02MB5529.namprd02.prod.outlook.com ([fe80::baa7:c095:e8a8:5c0c%6]) with mapi id 15.20.7784.016; Thu, 25 Jul 2024 11:28:50 +0000 From: Shibir Basak To: dev@openvswitch.org Date: Thu, 25 Jul 2024 11:28:42 +0000 Message-Id: <20240725112842.197565-1-shibir.basak@nutanix.com> X-Mailer: git-send-email 2.22.3 X-ClientProxiedBy: BYAPR07CA0040.namprd07.prod.outlook.com (2603:10b6:a03:60::17) To DM6PR02MB5529.namprd02.prod.outlook.com (2603:10b6:5:30::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR02MB5529:EE_|BN0PR02MB8031:EE_ X-MS-Office365-Filtering-Correlation-Id: 85d9618f-d500-40e1-c186-08dcac9cf4f7 x-proofpoint-crosstenant: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|1800799024|366016|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: EY4Dd8IP1pabS3j8vrB70IpAGlfZ8RGe8Lvt4DMw4QwjVjN4eAjQgTQN57OkN8Ub7HNP2yJawcyYekGXtg2i1m4fI4fK5jCGksEhRdYW9XYIK4BBMXxzxBPLhS+udKrZd2FrmNwxCfRyXmuYNA1PC+ANlPmJ6mQCIBUNTWWQsHANNMszU2KgPPdkwnICYRcTfSsMnkFh/gxo8lovcCGSqvKBwsfRaeVIofuNHUkGN9MGS266M/bfbB2cGwgu32z+53MRVeamOE/dXDGnSkRuGn9nZUgvE+HeGqe7X9FqV9isEx95X/V8xskfimM/pDW7cjrAjCeDurD06nsGs5jHpuJf2p5eS0i9GEVd2exyxlkwK8Xq9Dn7Ik4lt5nCNLzGAF8q8RNT3AFWX2K3FwwNjQi7BmNrHRJyQwXZzunmgpIKR4OHU8Ra5YZL7R04SROEsaniyQeFXgn5b9hCS48AoPT87Zv5Rb6EavrAH7ncbg6ZsM/UIoMtQUNzjmKlEMY867oRs24PSal9dyRWoG+wJ1qj4q/pOLmpa4un6QQL190xnISJvYMRYzTY1HAG+58Z7wm1Fo3BSNuyzQpD2IGAiNGYckM7Z260zBsSeQ/R+LbcqhUd0PgG1thoh9Gs61Rsm/NRSzlaNa37D/9UcHtxNRDrh7zOw902g3kKn3A9LWPcr0QDYLg0lxCa6CcxRkGPIRI9S1Vr9pb+C8aelupWcMN7qEiGZsfW5Zg+2wpZD9GMpKTno/3xp+q6gUS1aKKeu3sxkm/Q91ihiYHQkISwC1roUgTXmz3Wt4W87lBEU5LyiGNNae5ZHhsxeRPBxJiSejxNeJHOcwZrCWBCMIu/bn+JqWWyq8ThsJDLTnjgyuq8ngUztJH1AN94s/0UprpaKVlzy4nTKWX9nauyI64FsNd9mUKOUlpkpyR0IVEHpY0W/8b2vsaajoMVQHFClV5871WT2GWlFB+JQ8kPVx4Ee1Gc1A5/7MfAfWXlXInVJHX9B7G0T6a5g24GSy+5DLDc0FZtcAKR/YvkiiMKiUzsXSOPqAl8bwrH+4y4nN/AgiS+VoPYl3qNrad10qiabxiuRzRT1G6urAY9+X795EykShQd3VZGzuwAopWddXh4gIPqR+oE5f0FOmY+7HlcGJnjkRCXGDJRsLp87nWEwhiV1ZEo3yxMKZm8hsiSUTMXHOWA8k0NLtxQSM/+0MiUN3hsiDoLjtlUHJJ8BzwjzlE7uvQcWvq4oaqeA678heguLpUZ2sXcf9e9v8jM2LwNI9/MfC+we2STkDHIaD4cR+JeAKo1KCn4HMJJ6XxZw+IqzpfJ/owjycnFfARxBlJ+gDa1uh1jStCa0u4yZsilqAqkByc8vulgtWn6AHhwqQyF9k0/F3sFENxkMYhsnMYpr2RJuUnZg/GAuS0CAO6iMyXl1A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR02MB5529.namprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014)(52116014)(38350700014); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: qTp+Ts7gJE2qie0c2T0qZqwLS4XKZlUzU/wYqQossKvaxvOar8qsdBe/ERPKk4l8tTitAgtocR2jXWATPbXj0NYFWpPMKLzjI/9RUwPAvTD1KArg7sYQb7IOqbgy0offQZosFtm51rOj36ju7gS3DVOnHpbDF3B/buLQcrgtAoj4C12yYtKIc2UQrhlawEeO0+xaiIyHS/3tq1bPoQH/uQFYWGQzT+EqwDweVKUOG2G3HiVSSRzA/cEqi3jpVt6xoVgpHEY8PL6WWpnw3eHH75jZ9kycEpAkgsDnY/gWkp8WaMx7klBr5zF4/8+B9qkJTP8/Fh8aOhgQe3a/xIQujUU0up40u8kg5L60KRR91L1yvK0+mNIVscJ87E7z8WOqZON5CQ0riCWK5NiPBFYhV+lzXLwHl6+K+ffpXOAa/bwvUzNcv4IDbcW8sOEQUeVc/5hYXDXQUrhkM690TxJ8ICwG/BuAQhNk0ruNSJ8TL0tD1LGnpF087n+UqEmmvcr9uIKfKia2UQXR7OK3gjiPE1JXJpdBfDthHg0ApTL3WaD9GhGJ/s9A3SUYJGVyLiRr03/pfEE43Ayw3V4avQz3veSMcOdffVoOYUrDAJDD4fAGzO6s8poXWIG/Lf+Zbqy8JBHS+izFemQHhqMciFctK3OHgOBT0NFymDiEHzsNAVkIshnQrPnBkjtIT5Zuu7RYAw48q//5um9KAZSRXM21Ls/NTrRqN6WlFwIdX4xoFFrIG7G4V8Y57XaMjtYR9IhYAZeN5kr7gWd0d2GL4219E7xPYcvEFg2s6B0iVXtJBLmctGddsN1Xfp6LdghtyguKaWpBCqtPCDrGpYhQW5w1TEE8XQJhjYP3XVLnKYBesSUEE6hWfxn9CysS9Ogzix2CIKJMsrAOm6rSK7XkLaHus+9DZMO3a2rs2hPtErvx8kC0JEIz0M3crRXH4I9vUxKJzLJ2UerBS/XTdH3AWkSZ5kG1LlifV6jEki0jqZ429E4niLFDpwrVxZKkV3Es9Y0TZxKxDsVjqPj18DTtqWCI1D321pp2QmI4AuPeIcFGrboIKgLvdho0ByLEssLzmiCyoNzXgR78CUNeije8WR8VqA2jFuOqAlI+TuXCQKAIKu/vyhfh89SmA4dQ1TvI+HkI+2JAGxRi1+TtLG6p18pHo83olIWettH+TXrq3gEHuJEiS4ZXonY9bYOt6gkyFIE7ni4hTZe/T/JcVAwy01ydHI1EVHMcOmWe7/HjjGQ8B7ezB44AOVHL2h/DG40eF/7445i6AVwq20xMqET47BjGBNtCcj8yM7FN7Ealymyee1o9rO3WyuvalgI7rVmvQc3kp+n9Rq0nIU85WfBiG6Nvo7uwqT13I092AYnKQ8HVy1MPOSAuLEA85wZvLHqjFLMDYUcXLvKL0EDXc1KuWapbQpriHKuXiRnI7MVI2IUiaxRcmCileo1VQnTN2Q8U/5+zPhCdmWKXRL4AXVXzeoWekfVscCWOA56etR6njK7SVeDDw9ippoS7a8MFDs3Rlldfse/GaIJOd1jK2It7XFBagHdFUhP/OWIb4k+R0ds9s8p2Hwvajdnnb3UAEqLrc4O+Kkl252mWGCmKprOQgkOPNw== X-OriginatorOrg: nutanix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 85d9618f-d500-40e1-c186-08dcac9cf4f7 X-MS-Exchange-CrossTenant-AuthSource: DM6PR02MB5529.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jul 2024 11:28:50.6455 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bb047546-786f-4de1-bd75-24e5b6f79043 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: P9sORkbRCYRNP63Z1sCevyjqJu5om588YAHdjAiP8EHli7udPyuraWWbIYh32XBptqpW2ckh/ocUtHlIzAQ+63SFLQ+qSltWVogIrOFizQI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR02MB8031 X-Proofpoint-GUID: rFRWLqBbdcjQTaEA6oVve7LWEJYUahu5 X-Proofpoint-ORIG-GUID: rFRWLqBbdcjQTaEA6oVve7LWEJYUahu5 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-07-25_11,2024-07-25_02,2024-05-17_01 X-Proofpoint-Spam-Reason: safe Subject: [ovs-dev] [PATCH ovn v2] controller: Add lsp option disable_garp_rarp. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Shibir Basak Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" If the lsp option 'disable_garp_rarp' is set to true, GARP and RARP announcements are not sent by ovn when a VIF port is created on a bridged logical switch. Usecase ======== This option is useful during VM migration to let the hypervisor/VM send the RARP/GARP once VM is ready to process the packets post migration. This helps to reduce downtime during VM migration. Signed-off-by: Shibir Basak Acked-by: Naveen Yerramneni --- v2: Rebase on top of latest main Updated NEWS --- NEWS | 3 ++ controller/pinctrl.c | 4 +-- ovn-nb.xml | 7 +++++ tests/ovn.at | 68 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 80 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 72933b5b9..435e6f773 100644 --- a/NEWS +++ b/NEWS @@ -42,6 +42,9 @@ Post v24.03.0 true, the traffic destined to a logical port of a provider logical switch (having a localnet port) will be tunnelled instead of sending it via the localnet port. + - A new LSP option "disable_garp_rarp" has been added to prevent OVN from + sending GARP or RARP announcements when a VIF is created on a bridged + logical switch. OVN v24.03.0 - 01 Mar 2024 -------------------------- diff --git a/controller/pinctrl.c b/controller/pinctrl.c index 6a4299b82..7cbb0cf81 100644 --- a/controller/pinctrl.c +++ b/controller/pinctrl.c @@ -6612,7 +6612,7 @@ send_garp_rarp_prepare(struct ovsdb_idl_txn *ovnsb_idl_txn, SSET_FOR_EACH (iface_id, &localnet_vifs) { const struct sbrec_port_binding *pb = lport_lookup_by_name( sbrec_port_binding_by_name, iface_id); - if (pb) { + if (pb && !smap_get_bool(&pb->options, "disable_garp_rarp", false)) { send_garp_rarp_update(ovnsb_idl_txn, sbrec_mac_binding_by_lport_ip, local_datapaths, pb, &nat_addresses, @@ -6625,7 +6625,7 @@ send_garp_rarp_prepare(struct ovsdb_idl_txn *ovnsb_idl_txn, SSET_FOR_EACH (gw_port, &local_l3gw_ports) { const struct sbrec_port_binding *pb = lport_lookup_by_name(sbrec_port_binding_by_name, gw_port); - if (pb) { + if (pb && !smap_get_bool(&pb->options, "disable_garp_rarp", false)) { send_garp_rarp_update(ovnsb_idl_txn, sbrec_mac_binding_by_lport_ip, local_datapaths, pb, &nat_addresses, garp_max_timeout, garp_continuous); diff --git a/ovn-nb.xml b/ovn-nb.xml index 0f9a1005a..fd6d42afd 100644 --- a/ovn-nb.xml +++ b/ovn-nb.xml @@ -1306,6 +1306,13 @@ The default value is false. + + If set to true, GARP and RARP announcements are not + sent when a VIF port is created on a bridged logical switch. + The default value is false. + + If set to mc_unknown, packets going to this VIF get cloned to all diff --git a/tests/ovn.at b/tests/ovn.at index 2ced7c0b2..207ecf769 100644 --- a/tests/ovn.at +++ b/tests/ovn.at @@ -25008,6 +25008,74 @@ OVN_CLEANUP([hv1]) AT_CLEANUP ]) +OVN_FOR_EACH_NORTHD([ +AT_SETUP([Disabling RARP/GARP announcements]) +ovn_start + +# In this test case we create 1 switch and bring up 4 VIFs on it. +# Two VIFs will be assigned MAC addresses only (i.e. without ips) +# and two VIFs will be assigned IP addresses along with MAC addresses. +# VIFs with IPs are supposed to send GARPs and VIFs with only MAC +# addresses are supposed to send RARP. However, we test the lsp +# option disable_garp_rarp, which when set to true for an lsp does +# not send the GARP/RARP announcements. + +ovn-nbctl ls-add ls1 +ovn-nbctl lsp-add ls1 ln1 "" 101 +ovn-nbctl lsp-set-addresses ln1 unknown +ovn-nbctl lsp-set-type ln1 localnet +ovn-nbctl lsp-set-options ln1 network_name=phys + +ovn-nbctl lsp-add ls1 lp11 +ovn-nbctl lsp-set-addresses lp11 "f0:00:00:00:00:11" + +ovn-nbctl lsp-add ls1 lp12 +ovn-nbctl lsp-set-addresses lp12 "f0:00:00:00:00:12" +ovn-nbctl set logical_switch_port lp12 options:disable_garp_rarp=true + +ovn-nbctl lsp-add ls1 lp13 +ovn-nbctl lsp-set-addresses lp13 "f0:00:00:00:00:13 192.168.1.3" + +ovn-nbctl lsp-add ls1 lp14 +ovn-nbctl lsp-set-addresses lp14 "f0:00:00:00:00:14 192.168.1.4" +ovn-nbctl set logical_switch_port lp14 options:disable_garp_rarp=true + +net_add n1 + +sim_add hv1 +as hv1 +ovs-vsctl add-br br-phys +ovs-vsctl set open . external-ids:ovn-bridge-mappings=phys:br-phys +ovn_attach n1 br-phys 192.168.0.1 + +AT_CHECK([ovs-vsctl add-port br-phys snoopvif -- set Interface snoopvif options:tx_pcap=hv1/snoopvif-tx.pcap options:rxq_pcap=hv1/snoopvif-rx.pcap]) + +ovs-vsctl add-port br-int vif11 -- \ + set Interface vif11 external-ids:iface-id=lp11 + +ovs-vsctl add-port br-int vif12 -- \ + set Interface vif12 external-ids:iface-id=lp12 + +ovs-vsctl add-port br-int vif13 -- \ + set Interface vif13 external-ids:iface-id=lp13 + +ovs-vsctl add-port br-int vif14 -- \ + set Interface vif14 external-ids:iface-id=lp14 + +wait_for_ports_up +ovn-nbctl --wait=sb sync + +# RARP packet for lp11 +echo "fffffffffffff000000000118100006580350001080006040003f0000000001100000000f0000000001100000000" > expected +# GARP packet for lp13 +echo "fffffffffffff000000000138100006508060001080006040001f00000000013c0a80103000000000000c0a80103" >> expected +OVN_CHECK_PACKETS_UNIQ([hv1/snoopvif-tx.pcap], [expected]) + +OVN_CLEANUP([hv1]) + +AT_CLEANUP +]) + OVN_FOR_EACH_NORTHD([ AT_SETUP([Stateless Floating IP]) ovn_start