From 6ff37ea3949f134753b486851d76be8f57f4cf0f Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Tue, 14 Apr 2020 15:35:22 -0700 Subject: [PATCH 1/9] Mclag Enhancements HLD This HLD captures details of MCLAG enhancements. --- doc/mclag/mclag-enhancements/MCLAG_HLD.md | 813 ++++++++++++++++++ .../images/DesignOverviewDiagram.png | Bin 0 -> 88260 bytes .../images/LocalDynamicMacUpstreamFlow.png | Bin 0 -> 160812 bytes .../images/LocalStaticMacUpdateFlow.png | Bin 0 -> 172908 bytes .../images/MclagArpFdbKernelUpdate.png | Bin 0 -> 161870 bytes .../images/PortIsolationAdd.png | Bin 0 -> 49599 bytes .../images/RemoteMCLAGMacDownload.png | Bin 0 -> 159435 bytes 7 files changed, 813 insertions(+) create mode 100644 doc/mclag/mclag-enhancements/MCLAG_HLD.md create mode 100644 doc/mclag/mclag-enhancements/images/DesignOverviewDiagram.png create mode 100644 doc/mclag/mclag-enhancements/images/LocalDynamicMacUpstreamFlow.png create mode 100644 doc/mclag/mclag-enhancements/images/LocalStaticMacUpdateFlow.png create mode 100644 doc/mclag/mclag-enhancements/images/MclagArpFdbKernelUpdate.png create mode 100644 doc/mclag/mclag-enhancements/images/PortIsolationAdd.png create mode 100644 doc/mclag/mclag-enhancements/images/RemoteMCLAGMacDownload.png diff --git a/doc/mclag/mclag-enhancements/MCLAG_HLD.md b/doc/mclag/mclag-enhancements/MCLAG_HLD.md new file mode 100644 index 00000000000..cd5d811fc8d --- /dev/null +++ b/doc/mclag/mclag-enhancements/MCLAG_HLD.md @@ -0,0 +1,813 @@ +# MCLAG Enhancements +Rev 0.1 + +# Table of Contents +- **[List of Tables](#List-of-Tables)** +- **[Revision](#Revision)** +- **[About this Manual](#About-this-Manual)** +- **[Definition/Abbreviation](#DefinitionAbbreviation)** + - [Table 1: Abbreviations](#Table-1:-Abbreviations) +- **[1 Feature Overview](#1-Feature-Overview)** + - [1.1 Functional Requirements](#1_1-Functional-Requirements) + - [1.1.1 Static MAC support over MCLAG](#1_1_1-Static-MAC-support-over-MCLAG) + - [1.1.2 Configuration and Management Requirements](#1_1_2-Configuration-and-Management-Requirements) + - [1.1.3 Performance and Scalability Requirements](#1_1_3-Performance-and-Scalability-Requirements) + - [1.1.4 Warm Boot Requirements](#1_1_4-Warm-Boot-Requirements) + - [1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements](#1_1_5-Unique-IP-for-supporting-L3-protocol-over-MCLAG-VLAN-interface-Requirements) +- **[2 Functionality](#2-Functionality)** + - [2.1 Functional Description](#2_1-Functional-Description) + - [2.1.1 Dynamic configuration of MCLAG](#2_1_1-Dynamic-configuration-of-MCLAG) + - [2.1.2 Dynamic configuration of mclag_interface](#2_1_2-Dynamic-configuration-of-mclag_interface) + - [2.1.3 Keep-alive timer configuration](#2_1_3-Keep-alive-timer-configuration) + - [2.1.4 Session timeout configuration](#2_1_4-Session-timeout-configuration) + - [2.1.5 Static MAC support](#2_1_5-Static-MAC-support) + - [2.1.6 Aging disable for ICCP learned MAC addresses](#2_1_6-Aging-disable-for-ICCP-learned-MAC-addresses) + - [2.1.7 Performance improvements](#2_1_7-Performance-improvements) + - [2.1.8 Isolation group support](#2_1_8-Isolation-group-support) + - [2.1.9 Unique IP enhancements](#2_1_9-Unique-IP-enhancements) +- **[3 Design](#3-Design)** + - [3.1 Overview](#3_1-Overview) + - [3.2 DB Changes](#3_2-DB-Changes) + - [3.2.1 CONFIG DB](#3_2_1-CONFIG-DB) + - *[3.2.1.1 MCLAG Domain table](#3_2_1_1-MCLAG-Domain-table)* + - *[3.2.1.2 MCLAG Interface Table](#3_2_1_2-MCLAG-Interface-Table)* + - *[3.2.1.3 MCLAG UniqueIP Table](#3_2_1_3-MCLAG-UniqueIP-Table)* + - [3.2.2 APP DB](#3_2_2-APP-DB) + - *[3.2.2.1 ISOLATION_GROUP_TABLE table](#3_2_2_1-ISOLATION_GROUP_TABLE-table)* + - *[3.2.2.2 APP_LAG_TABLE](#3_2_2_2-APP_LAG_TABLE)* + - *[3.2.2.3 APP_MCLAG_FDB_TABLE](#3_2_2_3-APP_MCLAG_FDB_TABLE)* + - [3.2.3 STATE DB](#3_2_3-STATE-DB) + - *[3.2.3.1 STATE_MCLAG_TABLE](#3_2_3_1-STATE_MCLAG_TABLE)* + - *[3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE](#3_2_3_2-STATE_MCLAG_REMOTE_INTF_TABLE)* + - *[3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE](#3_2_3_3-STATE_MCLAG_ARP_FDB_TABLE)* + - [3.3 ICCP Changes](#3_3-ICCP-Changes) + - [3.3.1 MCLAG interface flap handling](#3_3_1-MCLAG-interface-flap-handling) + - [3.3.2 MCLAG configuration change handling](#3_3_2-MCLAG-configuration-change-handling) + - [3.3.3 FDB handling changes](#3_3_3-FDB-handling-changes) + - *[3.3.3.1 Static MAC handling](#3_3_3_1-Static-MAC-handling)* + - *[3.3.3.2 Data structure and data type modifications](#3_3_3_2-Data-structure-and-data-type-modifications)* + - *[3.3.3.3 MAC sync optimizations](#3_3_3_3-MAC-sync-optimizations)* + - [3.3.4 Port Isolation changes](#3_3_4-Port-Isolation-changes) + - [3.3.5 MCLAG Domain State](#3_3_5-MCLAG-Domain-State) + - [3.3.6 Unique IP Changes](#3_3_6-Unique-IP-Changes) + - [3.4 Switch State Service Design](#3_4-Switch-State-Service-Design) + - [3.4.1 Orchestration Agent](#3_4_1-Orchestration-Agent) + - *[3.4.1.1 Isolation group orch agent](#3_4_1_1-Isolation-group-orch-agent)* + - *[3.4.1.2 PortsOrch Changes](#3_4_1_2-PortsOrch-Changes)* + - *[3.4.1.3 FdbOrch Changes](#3_4_1_3-FdbOrch-Changes)* + - *[3.4.1.4 MCLAG ARP MAC update to Kernel](#3_4_1_4-MCLAG-ARP-MAC-update-to-Kernel)* + - [3.5 SyncD](#3_5-SyncD) + - [3.6 MclagSyncD](#3_6-MclagSyncD) + - [3.6.1 FDB Changes](#3_6_1-FDB-Changes) + - *[3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE](#3_6_1_1-Local-MAC-upstream-using-STATE_DB-FDB_TABLE)* + - *[3.6.1.2 Removal of FDB table in MclagSyncd](#3_6_1_2-Removal-of-FDB-table-in-MclagSyncd)* + - *[3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE](#3_6_1_3-Populating-ICCP-MAC-updates-to-APP_DB-MCLAG_FDB_TABLE)* + - *[3.6.1.4 Populating ICCP and MCLAG interface state information](#3_6_1_4-Populating-ICCP-and-MCLAG-interface-state-information)* + - [3.6.2 MCLAG config handling](#3_6_2-MCLAG-config-handling) + - [3.7 SAI](#3_7-SAI) + - [3.7.1 Port Isolation](#3_7_1-Port-Isolation) + - [3.8 CLI](#3_8-CLI) + - [3.8.1 Click based CLI](#3_8_1-Click-based-CLI) + - *[3.8.1.1 Configuration commands](#3_8_1_1-Configuration-commands)* + - *[3.8.1.1.1 MCLAG Domain configuration](#3_8_1_1_1-MCLAG-Domain-configuration)* + - *[3.8.1.1.2 MCLAG interface configuration](#3_8_1_1_2-MCLAG-interface-configuration)* + - *[3.8.1.1.3 MCLAG unique IP configuration](#3_8_1_1_3-MCLAG-unique-IP-configuration)* + - [3.8.2 SONiC CLI](#3_8_2-SONiC-CLI) + - *[3.8.2.1 Configuration commands](#3_8_2_1-Configuration-commands)* + - *[3.8.2.1.1 MCLAG Domain configuration](#3_8_2_1_1-MCLAG-Domain-configuration)* + - *[3.8.2.1.2 MCLAG Interface configuration](#3_8_2_1_2-MCLAG-Interface-configuration)* + - *[3.8.2.2 Show commands](#3_8_2_2-Show-commands)* +- **[4 Flow Diagrams](#4-Flow-Diagrams)** + - [4.1 FDB Flow Diagrams](#4_1-FDB-Flow-Diagrams) + - [4.1.1 Local Static MAC upstream](#4_1_1-Local-Static-MAC-upstream) + - [4.1.2 Local Dynamic MAC update](#4_1_2-Local-Dynamic-MAC-update) + - [4.1.3 Remote MAC Processing](#4_1_3-Remote-MAC-Processing) + - [4.2 Port Isolation group processing](#4_2-Port-Isolation-group-processing) +- **[5 Serviceability and Debug](#5-Serviceability-and-Debug)** +- **[6 Warm Boot Support](#6-Warm-Boot-Support)** +- **[7 Scalability](#7-Scalability)** +- **[8 Upgrade/Downgrade considerations](#8-UpgradeDowngrade-considerations)** +- **[9 Unit Test](#9-Unit-Test)** + - [9.1 DB table updates](#9_1-DB-table-updates) + - [9.2 FDB](#9_2-FDB) + - [9.3 Config handling](#9_3-Config-handling) + - [9.4 Port Isolation](#9_4-Port-Isolation) + - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) + - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) +- **[10 Internal Design Information](#10-Internal-Design-Information)** + +# List of Tables + +[Table 1: Abbreviations](#table-1-abbreviations) + +# Revision +| Rev | Date | Author | Change Description | +| ---- | ---------- | ---------------------------------------- | ------------------ | +| 0.1 | 08/02/2019 | Lisa Nguyen, Praveen Elagala, Abhishek Dharwadkar, Sabarivel Sakthivel, Adam Yeung | Initial draft | +| 0.2 | 10/22/2018 | Tapash Das | L3 Protocol support enhancement | + +# About this Manual +This document provides general information about SONiC MCLAG feature enhancements. The original MCLAG feature is described at https://github.com/Azure/SONiC/blob/f478fe7cbc03c144f3b147e9638f460f764ce4b7/doc/Sonic-mclag-hld.md + + +# Definition/Abbreviation +## Table 1: Abbreviations +| **Term** | **Definition** | +| -------- | ------------------------------------ | +| MCLAG | Multi-Chassis Link Aggregation Group | +| ICCP | Inter-Chassis Communication Protocol | +| FDB | Layer-2 (MAC) based forwarding table | + +# 1 Feature Overview + +This document captures the feature enhancements of SONiC ICCP MCLAG. This includes data structure changes, MAC event handling optimizations for scaling performance, support of static MAC address over MCLAG, port isolation ACL, and traffic recovery sequencing for traffic loop prevention. + +## 1.1 Functional Requirements + +### 1.1.1 Static MAC support over MCLAG +- Advertise locally configured Static MAC address to peer MCLAG node +- Withdraw MAC from peer MCLAG node when static MAC address is un-configured +- Dynamic MAC move is prohibited on Static MAC over MCLAG +- Support bridge-port isolation group for BUM control to MHD. + +### 1.1.2 Configuration and Management Requirements +- Add CLI to configure MCLAG domain and corresponding attributes domain-id, local-ip-address and peer-ip-address + +- Add CLI to configure optional attribute [peer-interface] + +- Add CLI to configure keep-alive timer value + +- Add CLI to configure session-timeout value + +- Add CLI to support addition/deletion of mclag_interfaces + +### 1.1.3 Performance and Scalability Requirements +- Optimize code flow and data structures to improve scaling performance +- Support 40K FDB entries +- Support 4K VLAN's + +### 1.1.4 Warm Boot Requirements +- MCLAG peer nodes should reconcile the local FDB table upon completion of warm boot, as the MAC learn and age updates from peer would be lost during the time ICCP control session is down due to warm boot. + +### 1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements +- For vlans associated with MCLAG interface, allow configuration of Unique IP address on VLAN interface of Peer nodes. +- Provide mechanism for running L3 protocols such as BGP, BFD between both Peer nodes VLAN interface. +- Provide mechanism for running L3 protocols such as BGP, BFD between Peer node VLAN interface and device connected to MCLAG Client. +- For MCLAG gateway functionality (Data path) Static Anycast Gateway (SAG) or VRRP configuration will be mandatory, SAG is preferred for active-active forwarding. + +# 2 Functionality + +## 2.1 Functional Description +### 2.1.1 Dynamic configuration of MCLAG +- Current MCLAG configuration is generated from config_db.json file with no CLI support. New CLIs will be added to configure MCLAG which includes domain-id, local ip address, peer ip address and peer_link. peer_link configuration is mandatory for Layer2 MCLAG while optional for Layer3 MCLAG. + +### 2.1.2 Dynamic configuration of mclag_interface +- In the current implementation the mclag_interfaces configuration is generated from config_db.json file no CLI support is present, a new configuration command is introduced to dynamically add/delete the mclag_interfaces. + +### 2.1.3 Keep-alive timer configuration +- In current implementation the keep-alive timer is hardcoded to 1 second. A new CLI command will be introduced to allow the configuration of range of values for keep-alive timer. + +### 2.1.4 Session timeout configuration +- In current implementation the session time out 15 seconds after the last keep-alive messages exchange, the timeout duration is hardcoded. A new CLI command will be added to allow a configurable duration for session timeout, session timeout has to be configured in multiples keep-alive timer value. + +### 2.1.5 Static MAC support +- Current implementation does not support static MAC address over MCLAG. Static MAC information is not exchanged in the FDB TLV between the MCLAG peer nodes. Changes will be added to support Static MAC with TLV. +- Changes will be added to support the static MAC syncing from local MCLAG node to peer MCLAG node. +- Changes will be added to handle the MAC move scenarios in presence of remote Static MAC. + +### 2.1.6 Aging disable for ICCP learned MAC addresses +- In the current implementation, MAC addresses learned in the control plane from the MCLAG peer are installed as dynamic entries. Therefore, if no local traffic from these MAC addresses is seen for the ageing period then they will age out, causing a notification back to ICCPd. However if the mac is learned from peer then it will immediately re-program MAC . The result is transient flooding for the MAC and some unnecessary control plane overhead. +- When the local MCLAG node learns the MAC addresses from peer MCLAG node the type of the MAC set as dynamic. For the remote MAC addresses learned via ICCP if no traffic received on local MCLAG interface MAC addresses get age out from HW. ICCPd process the age notifications as the MAC address is peer learned re-installs MAC address back to HW. Transient traffic flooding can occur during remote MAC re-installation. +- The process of remote MAC aging and re-installation is repetitive causing un-necessary messaging between modules and processing. +- To suppress the unwanted MAC age events, the new implementation programs remote MAC addresses with aging disabled. For the MAC address learned from ICCPd, FdbOrch to set new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE while programming, which causes SAI to not age out the MAC, but allows it to move. + +### 2.1.7 Performance improvements + +The following improvements are made in this enhancement: + +- Convert FDB and VLAN related linked list to binary trees to improve scaling performance +- When MCLAG node learns a new MAC address via ICCP from peer MCLAG node learned over remote orphan port, it sends a age notification back to peer to indicate MAC is locally aged, this updated is not necessary as MAC not learned locally. Avoid sending the local age notification back to peer MCLAG node each time a MAC address is learned from peer. + +### 2.1.8 Isolation group support + +To control the BUM traffic towards the MHD bridge-port isolation groups is used. The isolation group is applied on the ingress side of peer-link port to filter traffic towards the MHD to avoid duplicate traffic received at MHD. + +### 2.1.9 Unique IP enhancements + +- Current design mandates configuring same IP address on the VLAN interface for each VLAN of which an MCLAG is a member. +- L3 protocols such as BGP, BFD, VRRP etc cannot be configured on the VLAN interface associated with MCLAG interface because such protocols cannot address the individual routers. +- A new configuration command is introduced for allowing separate per-peer IP configuration on the VLAN interfaces associated with MCLAG interface. +- Both same IP configuration and unique IP configuration will co-exist based on the new configuration. + + +# 3 Design + +## 3.1 Overview +New changes will be added on top of the existing MCLAG implementation. +Following diagram captures the high level module changes made for the MCLAG enhancements. + +![Design overview diagram](images/DesignOverviewDiagram.png "Overview of module changes") + +**Figure 1: Overview of module changes** + +Below is the summary of the changes for each flow number mentioned in the above diagram. + +1. New CLI commands are introduced to configure MCLAG and its related attributes. Two new tables are added in CONFIG_DB to store the MCLAG configuration and mclag_interface configuration generated from CLI. +2. MclagSyncd receives the new MCLAG configuration updates. +3. MclagSyncd receives new local (both static and dynamic) MAC updates from STATE_DB FDB_TABLE +4. MclagSyncd sends new MCLAG configuration to ICCPd. +5. ICCPd sends new remote static MAC updates, ICCP session and MCLAG remote interface state information updates to MclagSyncd. +6. ICCPd sets new static MAC flag in FDB TLV for local static MAC addresses advertisement. +7. MclagSyncd updates ICCP session and MCLAG remote interface state information to STATE_DB FDB_TABLE and MCLAG_REMOTE_INTF_TABLE +8. MclagSyncd updates MAC addresses learned from peer MCLAG node to new MCLAG FDB table . +9. FdbOrch registers for new MCLAG FDB table updates to process MAC updates from peer MCLAG node, ISOGRP Orch process new updates from MclagSyncd. +10. FdbOrch updates remote MAC addresses with new SAI attribute not to age out them. +11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . +12. Syncd programs the remote MAC to HW +13. FdbOrch registers with NeighborOrch for all the ICCP learned remote MAC addresses. +14. NeighborOrch update the MAC address to STATE_DB MCLAG ARP MAC Table. +15. FdbSycd gets the MAC updates from STATE_DB MCLAG ARP MAC Table. +16. FdbSyncd programs the MAC updates to kernel. + +## 3.2 DB Changes + +### 3.2.1 CONFIG DB +#### 3.2.1.1 MCLAG Domain table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store MCLAG domain configuration. Applications can use it to get MCLAG configuration + +``` +;New MCLAG Domain Table +key = MCLAG_DOMAIN|domain_id ; DIGIT 1-4095 + +;field = value +source_ip = IP ; local ip address +peer_ip = IP ; peer ip address +peer_link = port_name ; peer link name +keepalive_interval = time_in_secs ; keepalive time in seconds +session_timeout = time_in_secs ; session timeout in multiple of + ; keepalive_interval. + +;value annotations +port_name = 1*64VCHAR ; name of the port, must be unique +time_in_secs = dec-octet ; time in seconds +IP = IPV4address +IPv4address = dec-octet "." dec-octet "." dec-octet "." dec-octet " + + dec-octet = DIGIT ; 0-9 + / %x31-39 DIGIT ; 10-99 + / "1" 2DIGIT ; 100-199 + / "2" %x30-34 DIGIT ; 200-249 + / "25" %x30-35 ; 250-255 +``` +#### 3.2.1.2 MCLAG Interface Table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store MCLAG interfaces for a MCLAG domain. MCLAG applications can query this table to check whether a interface is configured as MCLAG interface + +``` +;New MCLAG Interface Table +key = MCLAG_INTERFACE|domain_id|ifname ; + +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) + +``` + +#### 3.2.1.3 MCLAG UniqueIP Table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store L3 VLAN interfaces that will have unique IP configuration. MCLAG applications can query this table to check whether a interface is configured for L3 protocol support. + +``` +;New MCLAG UniqueIP Table +key = MCLAG_UNIQUEIP_TABLE|ifname ; Only VLAN interface supported currently + +``` + +### 3.2.2 APP DB + +#### 3.2.2.1 ISOLATION_GROUP_TABLE table + +Producer: MclagSyncd +Consumer: Isolation Group Orch Agent +Description: Isolation group table contains information about the Isolation group type, members and ports. + +``` +key = ISOLATION_GROUP_TABLE:name + +;field = value +Description = 1*255VCHAR +TYPE = "port" / "bridge-port" +PORTS = [0-max_ports]*port_name ; Ports on which this port isolation group + ; is applied +MEMBERS = [0-max_ports]*port_name ; Port isolation group members + +;value annotations +port_name = 1*64VCHAR ; name of the port, must be unique +max_ports = 1*5DIGIT ; number of ports supported on the chip +``` + +#### 3.2.2.2 APP_LAG_TABLE +``` +;Add one new attribute to existing LAG_TABLE to control whether traffic collection and distribution should be disabled for all LAG member ports. +traffic_disable = "true"/"false" ;default is false +``` +#### 3.2.2.3 APP_MCLAG_FDB_TABLE + +Producer: MclagSyncd +Consumer: FdbOrch agent +Description: New table to stores the MAC addresses learned via ICCP. FdbOrch processes the FDB updates to program in HW. + +``` +; Stores MCLAG FDB entries which were learned via ICCP +; Notes: +; - only unicast FDB entries supported +key = FDB_TABLE:"Vlan"vlanid:mac_address ; +;fields +port = ifName ; interface where the entry is bound to +type = "static" / "dynamic" ; type of the entry +``` + +### 3.2.3 STATE DB + +#### 3.2.3.1 STATE_MCLAG_TABLE +Producer: MclagSyncd +Consumer: Applications over MCLAG +Description: New table to provide MCLAG domain states to applications running over MCLAG + +``` +;New STATE_MCLAG_TABLE +key = MCLAG_TABLE|domain_id +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +;fields +oper_status = "down"/"up" +role = "active"/"standby" +system_mac = 12HEXDIG +``` +#### 3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE +Producer: MclagSyncd +Consumer: Applications over MCLAG +Description: New table to provide remote MCLAG interface state received by ICCP +Schema: + +``` +; New STATE_MCLAG_REMOTE_INTF_TABLE +key = MCLAG_REMOTE_INTF_TABLE|domain_id|ifname +oper_status = "down"/"up" + +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) + +``` + +#### 3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE + +Producer: FdbOrch +Consumer: NeighborOrch +Description: New table to populate the ICCP learned remote MAC entries which have ARP entries are associated. +Schema: + +``` +; New STATE_MCLAG_ARP_FDB_TABLE +key = MCLAG_ARP_FDB_TABLE:"Vlan"vlanid:mac_address + +;value annotations +vlanid = DIGIT 1-4095 ; VLAN id. +mac_address = 12HEXDIG ; MAC address. + +;fields +port = 1*64VCHAR ; name of the L2 Port +type = "static/dynamic" ; tpye of the MAC address. + +``` + + + +## 3.3 ICCP Changes +### 3.3.1 MCLAG interface flap handling + +In the current implementation, in normal operation, a port isolation filter is applied on both peers to ensure that traffic received from the peer-link is never forwarded to local MCLAG member ports. This ensures loop-free and packet duplication-free operation. Then, if all ports in an MCLAG on one peer go down (MCLAG PortChannel is down), this filter is removed on the other peer, allowing traffic destined to the MCLAG to cross the peer link, maintaining connectivity to the MCLAG. Later, when at least one member port comes back up (MCLAG PortChannel is up) on the first peer, then the filter must be re-applied on the other peer. However, this can cause transient loops if the MCLAG member ports come up before the filter is re-applied on the remote peer. + +In this enhancement, acknowledgements are added to interface state notifications in ICCP, and these are used to ensure that the remote filter is applied before enabling traffic on the upcoming MCLAG member interface(s), thereby eliminating the possibility of loops and duplicates. + +### 3.3.2 MCLAG configuration change handling +ICCP is extended to dynamically handle changes in MCLAG configurations. In the current implementation, MCLAG config attributes local ip, peer ip, peer interface and MCLAG interface configuration has to be done prior to bringing up ICCP docker. To handle configuration changes, MclagSyncd subscribes to CONFIG_DB MCLAG changes, saves configuration data in internal cache and notifies ICCPd. In this enhancement, Pre-provisioning support for MCLAG interfaces and peer interfaces is added. + + +### 3.3.3 FDB handling changes +ICCPd will be extended to support static MAC addresses, data structure changes, data type changes and MAC syncing optimizations. More details are captured in the below sections. + +#### 3.3.3.1 Static MAC handling +Changes will be added to extend the current FDB TLV to notify with a static MAC flag. ICCP MAC processing will be extended for local and remote static MAC addresses handling. Local and remote static MAC move scenarios will be handled. + +#### 3.3.3.2 Data structure and data type modifications +In current ICCPd implementation MAC entries are stored in linked lists which can be costly in MAC scale scenarios for lookups. The existing linked list structures will be modified to binary trees for better add, delete and lookup operations. The MAC address entry is stored as 32 byte string in the messaging and local cache, the address will be converted to 6 bytes to optimize the space messages size while syncing the MAC addresses between MCLAG peer nodes. + +#### 3.3.3.3 MAC sync optimizations +When MCLAG node learns a new MAC address via ICCP from peer MCLAG node ( MAC learned on remote orphan port ), MAC address is added locally and an age notification is sent back to peer MCLAG node. These age notifications are not required to be sent, additional checks are added to stop sending such unwanted MAC updates. + +### 3.3.4 Port Isolation changes +In this enhancement, the port isolation logic is updated to use [SAI Port Isolation](https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h) instead of Egress ACL. Using isolation group, unwanted traffic can be dropped at the ingress, i.e. before it gets queued etc. This will give better performance as unnecessary traffic will filtered at ingress. + +### 3.3.5 MCLAG Domain State +To support applications running over MCLAG, MCLAG domain states such as ICCP state, active and standby role, system MAC, and remote MCLAG interface state are populated in the STATE_DB for applications to consume. + +### 3.3.6 Unique IP Changes +To support Unique IP configuration on VLAN interface for the VLAN's associated with MCLAG interface following changes will be done. +- In Standby node, disable active node's MAC programming into MY Station TCAM. Also disable updating VLAN interface MAC in kernel. +- Add code to Sync VLAN interface MAC between Peers and program L2 Table with Peers VLAN interface MAC pointing to Peer Link. This is required since MAC learning is disabled for Peer Link. +- Add code to do ARP/ND sync for Local VLAN interface IP. + +For MCLAG gateway functionality (Data path) Static Anycast Gateway or VRRP configuration will be mandatory. + +## 3.4 Switch State Service Design + +### 3.4.1 Orchestration Agent + +#### 3.4.1.1 Isolation group orch agent + +A new isolation group orch agent will be added. Isolation group orch agent is the consumer of ISOLATION_GROUP_TABLE in APP DB. MclagSyncd will produce the isolation group configuration in the APP DB and isolation group will program it in the ASIC DB. Only bridge port isolation group will be supported and will be used by MclagSyncd. + +#### 3.4.1.2 PortsOrch Changes + +To allow ICCP to control when traffic should be enabled on a LAG interface, PortsOrch is extended to support a new traffic disable attribute. When traffic disable attribute is set to true, LAG members are not added to hardware. They are kept in a temporary set until the traffic disable attribute is set to false. + + +#### 3.4.1.3 FdbOrch Changes + +As part of enhancements MclagSyncd populates the ICCP learned MAC addresses into the APP_DB MCLAG_FDB_TABLE instead of populating to APP_FDB_TABLE, FdbOrch registers to APP_DB MCLAG_FDB_TABLE to process the MAC updates from ICCP. + +Advertised FDB cache entries will now be marked about the learn source, MAC entries learned from APP_DB MCLAG_FDB_TABLE will be marked as learned from ICCP, these MAC addresses will be updated to ASIC_DB FDB_TABLE with new SAI attributes. + +Advertised FDB entries with type static will be programmed to HW similar to local static MAC addresses to avoid any dynamic MAC move to other interfaces. + +When a static MAC address is configured locally and same MAC address is learned as advertised, FdbOrch to discard moving the MAC address. When static MAC address is deleted FdbOrch to re-program the advertised MAC address to HW. + +If the ICCP learned MAC is static, then any dynamic MAC move will be discarded by FdbOrch. + +#### 3.4.1.4 MCLAG ARP MAC update to Kernel + +ARP entries present in the system will need the associated MAC entries to be programmed in kernel to allow the local system and applications to reach the associated IP address. When ICCP receives a MAC update, if an ARP entry is associated with the MAC address then the MAC address needs to be programmed in kernel. FdbOrch notifies NeighborOrch when MAC is learned via ICCP and NeighborOrch updates the MCLAG_ARP_FDB_TABLE in STATE_DB accordingly. FDBSyncd subscribes to this table and programs the kernel as required. A similar path is used to update kernel MAC entry If there is an interface change associated with the MAC or when the MAC address is deleted. + +Below Diagram show the remote ICCP MAC update to Kernel. + +![MCLAG ARP MAC kernel update Diagram](images/MclagArpFdbKernelUpdate.png "MCLAG ARP interested MAC kernel programming Flow") + +**Figure 2: MCLAG ARP interested MAC kernel programming Flow** + +## 3.5 SyncD +No change to SyncD + +## 3.6 MclagSyncD +### 3.6.1 FDB Changes +MclagSyncd is extended to optimize the FDB events handling. + +The changes include: - + +- sending local MAC updates to ICCPd from STATE_DB FDB_TABLE instead of ASIC_DB FDB_TABLE +- sending of the MAC entries is event driven instead of the periodic 60 seconds polling +- removal of the FDB cache in the MclagSyncd +- adding the ICCP learned MAC addresses to APP_DB MCLAG_FDB_TABLE + +#### 3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE +To distribute the local MAC addresses to ICCPd MclagSyncd will now listen for the STATE_DB FDB_TABLE updates. Current approach of periodic MAC table retrieval by polling and compare to find the MAC latest updates is costly in the scale scenarios. In the new approach STATE_DB FDB_TABLE MAC processing is event driven at MclagSyncd and no periodic polling is done. + +#### 3.6.1.2 Removal of FDB table in MclagSyncd +With the above change to event-driven updates, MclagSyncd no longer needs a local FDB table copy - it can update directly between ICCPd and FdbOrch. + +#### 3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE + +In current implementation MclagSyncd updates the MAC addresses into the existing APP_DB FDB_TABLE. In this enhancement, a new APP_DB MCLAG_FBD_TABLE is used. This allows clients to distinguish between local and remote (ICCP received) MAC address. + +#### 3.6.1.4 Populating ICCP and MCLAG interface state information + +MclagSyncd is extended to receive the ICCP session related information from ICCPd and to populate this information in STATE_DB STATE_MCLAG_TABLE. MclagSyncd also receives MCLAG remote interface information which is populated in STATE_DB STATE_MCLAG_REMOTE_INTF_TABLE. + +### 3.6.2 MCLAG config handling +MclagSyncd will be enhanced to listen to CONFIG_DB changes in MCLAG domain table and MCLAG_INTF_TABLE and notify ICCPd. ICCPd is enhanced to process the configuration and handle config changes accordingly. + +## 3.7 SAI +### 3.7.1 Port Isolation +The following SAI definitions will be used and no enhancements necessary + +- https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h + +## 3.8 CLI +### 3.8.1 Click based CLI + +#### 3.8.1.1 Configuration commands + +Two new sets of configuration commands are introduced to configure MCLAG domain attributes and domain's MCLAG interfaces + +##### 3.8.1.1.1 MCLAG Domain configuration +``` +config mclag {add | del} \ \ \ \ [\] + +- domain-id MCLAG node's unique domain-id + +- local_ip MCLAG node's local ipv4 address + +- peer_ip MCLAG node's peer ipv4 address + +- peer_ifname MCLAG peer interface name; optional for L3 MCLAG, mandatory for L2 MCLAG config + +``` + + +##### 3.8.1.1.2 MCLAG interface configuration +``` +config mclag member {add | del} \ + +- comma seperated MCLAG interfaces for given MCLAG domain; MCLAG interfaces can be only portchannels +``` + +**MCLAG Keepalive/session timeout configuration** +``` +config mclag keepalive-interval \ \ +config mclag session-timeout \ \ + +- keepalive-timer in the range of 1 to 60 seconds with default value of 1 seconds. +- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds +- session-timeout should be at least greater than 3 times keepalive-timer value +``` +##### 3.8.1.1.3 MCLAG unique IP configuration +``` +config mclag unique-ip {add | del} + +- Vlan-interface : VLAN interface for which unique IP can be configured. + +``` +### 3.8.2 SONiC CLI + +#### 3.8.2.1 Configuration commands + +Following KLISH based CLI configuration commands are introduced to configure MCLAG domain attributes and MCLAG interfaces. + +##### 3.8.2.1.1 MCLAG Domain configuration +``` +To configure and unconfigure MCLAG domain at global configuration level use below command. Config command creates MCLAG domain and enters domain configuration mode. + +sonic(config)#[no] mclag domain + +domain-id is a integer in the range of 1 to 4095 +``` + + +To configure MCLAG attributes enter MCLAG domain configuration mode and enter following command +``` +sonic(config-mclag-domain)#[no] source-address + +sonic(config-mclag-domain)#[no] peer-address + +sonic(config-mclag-domain)#[no] peer-link +``` + + +To configure MCLAG session keepalive interval and session timeout use following commands +``` +sonic(config-mclag-domain)#[no] keepalive-interval + +sonic(config-mclag-domain)#[no] session-timeout + +- Keepalive interval in the range of 1 to 60 seconds with default value of 1 seconds. + +- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds + +- session-timeout should be multipler of keepalive-timer value + +``` + +##### 3.8.2.1.2 MCLAG Interface configuration + +To configure/unconfigure MCLAG interfaces use following command. MCLAG interfaces can only be portchannels. Configure MCLAG interface under the portchannel interface configuration mode. + +**sonic(config-if-PortChannelx)# [no] mclag [domain-id] + + +#### 3.8.2.2 Show commands + +Following new KLISH based show commands are introduced + +Displays brief information about MCLAG domain + +``` +1. show mclag brief + +Sonic#show mclag brief + + Domain ID : 5 + Role : Active + Session Status : Up + Peer Link Status : Up + Source Address : 192.168.1.1 + Peer Address : 192.168.1.2 + Peer Link : PortChannel30 + Keepalive Interval : 1 secs + Session Timeout : 15 secs + System MAC : b8:6a:97:73:6c:96 + Number of MCLAG Interfaces : 2 + MCLAG Interface Local/Remote Status + PortChannel50 Up/Up + PortChannel60 Up/Up + +``` + +2. **Show mclag interface ** +``` + Sonic#show mclag interface 5 PortChannel50 + Local/Remote Status : Up/Up + IsolateWithPeerLink : Yes + TrafficDisable : No +``` + +# 4 Flow Diagrams +## 4.1 FDB Flow Diagrams +### 4.1.1 Local Static MAC upstream + Below diagram shows the flow for local static MAC addresses upstream to ICCPd. + +![Local Static MAC Update to ICCPd Flow Diagram](images/LocalStaticMacUpdateFlow.png "Local Static MAC upstream to ICCPd Flow Diagram") + +**Figure 3: Local Static MAC upstream to ICCPd Flow Diagram** + +### 4.1.2 Local Dynamic MAC update + Below diagram shows the flow for local dynamic MAC addresses update to ICCPd. + +![Local Dynamic MAC upstream to ICCPd Flow Diagram](images/LocalDynamicMacUpstreamFlow.png "Local Dynamic MAC upstream to ICCPd Flow Diagram") + +**Figure 4: Local Dynamic MAC upstream to ICCPd Flow Diagram** + +### 4.1.3 Remote MAC Processing +Below diagram shows the flow of MAC address programing learned from ICCP. + +![Peer MCLAG MAC programming flow Diagram](images/RemoteMCLAGMacDownload.png "Peer MCLAG MAC programming flow Diagram") + +**Figure 5: Peer MCLAG MAC programming flow Diagram** + +## 4.2 Port Isolation group processing +Below diagram show the flow of Port Isolation group from App DB to SyncD + +![Port Isolation group processing](images/PortIsolationAdd.png "Port Isolation group processing") + +**Figure 6: Port Isolation group processing** + +# 5 Serviceability and Debug +- Existing mclagdctl dump commands output will be extended with additional debug state information. + +Mclagdctl dump state command is added with new field to show the sync state. +``` +Example output: +root@sonic:/home/admin# mclagdctl -i 5 dump state +The MCLAG's keepalive is: OK +**MCLAG info sync is: completed** +Domain id: 5 +Local Ip: 192.168.1.1 +Peer Ip: 192.168.1.2 +Peer Link Interface: PortChannel30 +Keepalive time: 1 +sesssion Timeout : 15 +Peer Link Mac: b8:6a:97:73:6c:96 +Role: Active +MCLAG Interface: PortChannel50 +root@sonic:/home/admin# +``` + Mclagdctl is extended with new option to dump the debug counters information. + +``` +Example Output: +root@sonic:/home/admin# mclagdctl -i 5 dump debug counters +ICCP session down: 1 +Peer link down: 0 +Warmboot: 0 + +ICCP to MclagSyncd TX_OK TX_ERROR +------------------ ----- -------- +PortIsolation 13 0 +MacLearnMode 1 0 +FlushFdb 1 0 +SetIfMac 0 0 +SetFdb 226003 0 +SetL2mc 0 0 +TrafficDistEnable 1 0 +TrafficDistDisable 1 0 +SetIccpState 2 0 +SetIccpRole 1 0 +SetSystemId 0 0 +DelIccpInfo 0 0 +SetRemoteIntfSts 9 0 +DelRemoteIntf 0 0 + +MclagSyncd to ICCP RX_OK RX_ERROR +------------------ ----------- -------- +FdbChange 161616 0 +CfgMclag 1 0 +CfgMclagIface 1 0 + +ICCP to Peer TX_OK RX_OK TX_ERROR RX_ERROR +------------ ----- ----- -------- -------- +SysConfig 2 2 0 0 +AggrConfig 2 1 0 0 +AggrState 7 9 0 0 +MacInfo 160896 142183 0 0 +ArpInfo 0 0 0 0 +L2mcInfo 0 0 0 0 +PoInfo 2 1 0 0 +PeerLinkInfo 2 2 0 0 +Heartbeat 2533 2533 0 0 +Nak 0 0 0 0 +SyncData 2 2 0 0 +SyncReq 1 0 0 0 +Warmboot 0 0 0 0 +IfUpAck 4 3 0 0 + +``` + + + +# 6 Warm Boot Support +- After a warm boot is completed, the FDB table is reconciled with the MCLAG peer. ICCP is extended to advertise the local FDB table. + +# 7 Scalability +- Support scale of 40K MAC addresses. + +# 8 Upgrade/Downgrade considerations + +As part of the current enhancements MCLAG configuration can be provisioned dynamically, MclagSyncd reads the MCLAG configuration from CONFIG_DB and updates to ICCPd. The older way of reading the configuration from configdb.json file during the ICCPd startup is deprecated. + +Upgrade/downgrade from/to the older version is not supported with new enhanced version. + +# 9 Unit Test + +## 9.1 DB table updates +1. Verify that MCLAG configuration of add/delete is updated in CONFIG_DB MCLAG Domain table. +2. Verify that mclag_interface configuration add/delete is updated properly in CONFIG_DB MCLAG interface table. +3. Verify that keep-alive and session-timeout values are updated properly in CONFIG_DB table. +4. Verify that MAC address updates received from peer MCLAG nodes is updated to APP MCLAG FDB table. +5. Verify that ICCP session state information is updated to STATE_MCLAG_TABLE. +6. Verify that MCLAG interface state information is updated to STATE_MCLAG_REMOTE_INTF_TABLE +7. Verify that Unique IP configuration if add/delete is updated in CONFIG_DB MCLAG UNIQUEIP TABLE + +## 9.2 FDB + +1. Verify that MAC address learned locally on orphan port are synced to the peer MCLAG node. +2. Verify that MAC address aged locally on orphan ports are withdrawn to peer MCLAG node. +3. Verify that MAC address learned locally on MCLAG portchannel are synced to the peer MCLAG node. +4. Verify that MAC address aged locally on MCLAG portchannel ports are withdrawn to peer MCLAG node. +5. Verify that when MCLAG portchannel is down MAC addresses pointing to the MCLAG portchannel are updated to point to peer-link interface. +6. Verify that when MClag portchannel is up MAC addresses pointing to peer-link interface are updated to point to MCLAG portchannel. +7. Verify that when peer-link is down MAC addresses pointing to peer-link are deleted on both the MCLAG peer nodes. +8. Verify that when clear FDB is executed local MAC addresses are cleared locally and withdrawn to the peer MCLAG node. Relearn the MAC addresses and advertise to peer MCLAG node. +9. Verify that static MAC configured locally is advertised to peer MCLAG node. +10. Verify that static MAC deleted locally is withdrawn to peer MCLAG node. +11. Verify that in presence of remote static MAC addresses any dynamic local MAC move is not allowed. +12. Verify MAC learn with scale of 40K MAC entries. + +## 9.3 Config handling + +1. Verify MCLAG domain configuration with local, peer ip, peer interface, MCLAG interface configures ICCP +2. Verify adding MCLAG interface to existing MCLAG domain +3. Verify deleting one MCLAG interface from existing MCLAG domain +4. Verify modifying local ip configuration for an existing MCLAG domain +5. Verify modifying peer interface for given MCLAG domain +6. Verify configuration change of MCLAG keep-alive timer value to min/max values are reflected +7. Verify configuration change of MCLAG session timeout value to min/max values are reflected +8. Verify deletion of existing MCLAG domain +9. Verify adding MCLAG domain without peer interface +10. Verify adding MCLAG peer interface later after adding MCLAG domain +11. Verify deleting MCLAG interfaces with synced up MAC addresses and make sure behavior is similar to having MCLAG interface down +12. Verify Unique IP configuration on vlan interface + +## 9.4 Port Isolation + +1. Configure Port Isolation group with members apply it to ingress port. Send unicast and BUM traffic and verify traffic is not seen at any member ports. +2. Dynamically add and delete the Port Isolation group members and verify unicast and BUM traffic again. +3. Remove Port Isolation group from ingress interface and verify traffic unicast and BUM again. +4. Send traffic from interface which doesn't have any port isolation group attached and verify unicast and BUM traffic. + +## 9.5 MCLAG Interface Flap + +1. Verify traffic is disabled until interface up ack is received from remote MCLAG peer when MCLAG interface flaps +2. Verify traffic is re-enabled on MCLAG interface which is waiting for interface up ack from peer when ICCP goes down +3. Verify traffic is disabled on a port when it is added to a MCLAG interface which is waiting for interface up ack from peer +4. Verify traffic is re-enabled on a LAG interface when it is unconfigured as MCLAG interface +5. Verify mclagdctl dump local interface output shows traffic is disabled on MCLAG interface which is waiting for interface up ack from peer + +## 9.6 MCLAG Unique IP enhancements +1. Verify ARP and ND Sync. +2. Verify IPv4 and IPv6 routing with traffic +3. Veirfy Ping / Ping6 between Peer nodes VLAN interface +4. Veirfy Ping / Ping6 between Peer node VLAN interface and MCLAG Client device +5. Verify BGP session up on VLAN interface + + +# 10 Internal Design Information + +NA + diff --git a/doc/mclag/mclag-enhancements/images/DesignOverviewDiagram.png b/doc/mclag/mclag-enhancements/images/DesignOverviewDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..a918f2022e32191c6f29586073332a2928da079f GIT binary patch literal 88260 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 z z73|aVc!j!jQ=m!MoBk}^Jhk%{3em*}Tk9@0Bqdvq%z6`ja$C2T!0S_-!KSDNqyd@w z&70dd{9LMJnS_1GAY{rPxt5&3M!vqEzN$NgrQnS*dvRFb@U=@cHq0n^L3he?2()NN z9ulUy7v6zKuZJIF!VIPi=__3=Pkhg_WlT#|qu#2bJ)W5+Ts>caYEU0b zgV9k68ho?^?EkpjFfc6pCObKtMiC(~98N3{U)TOdi*5nQxzGoyrtg5yuSq8QDYQ*! z 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/mclag-enhancements/images/LocalDynamicMacUpstreamFlow.png b/doc/mclag/mclag-enhancements/images/LocalDynamicMacUpstreamFlow.png new file mode 100644 index 0000000000000000000000000000000000000000..df07c8db478a0e27667d91260762671491b50a62 GIT binary patch literal 160812 zcmeFZXIN8Pw>E4?P{amqq^cl_6cuTqNhi{!2?$XUX+i`-Z;B#CI#L7zQZxbrB27wy z4UiTwbOMReLkkcf^t?0ZZtC-$bN+n4o*(<#d#{VEwdS0o+~XeOUZHwA>dZ_>nYL`% z!VJ|=xx8fyW7d`}I|g=d16PjkUI_vJ+Uj~)U1>`JmXiejXNQfVw&Ip8MNxa!uI~i@ z&v-|})OE`izA^egTLZ0ja&Fl|dj?feH1xEbTxU!@+=1SRGVw1AU`veI?ex*QZ@=Dw z-NzdbUSxdAE3;eCeZT1r{R?-6m=3)Abi*+4!70Jr`sWUY?#X-`!NK%xE?zTSjaPqv zkKy!=Z`v_KoR{!<9-=&NH-@_(+G7ihY z?RhPM`K!bGJ)+gG1pjDC6r~boH)F8!HouyU6$g0iwU0Ns=Xa?KpXHg=JBx{uTTJRQ zdL1|$_C3k%^(!5nmfFxIaKx0pmHng~>xY(a*j9IjyEV%5+Kk1kYxlaCSZ7vuvHVdO zI9O^TeAel~@E3KS1rhf@z+ZfwT_1|mt;TqSOKs3T?I3ZiX18rUH{?THO{4AusNn7` z?;kJF$b51B8q=;VLjt|79-K4*atHg}>K!$Lh8mM~XA1jxH=g}<+X)LhoVRD4-NJi0K@>Kv&FaN6a{le!=hwDe^gozY zf#1=*%1e7!$ix~*bJ$`|zu(y?lRsRS-o4tgYai#>!rPCB27MqlEy?^M0_Xy>owXN5 zt9c8O#JuOnjNW~%Xp-UD%z3ecXGV8=leJmH$6D^^RNVHgF)AkCe>&Dao(pNm`On3r zhit@hg`0fG2~S5IHqSnliLC3c4s6O?c*cq zHE~58yUa1t%l(_%zU0>ukRqvA2(t4riDRVZZJU{WcCK^*nkwxLu4YuT#$uU52R(zb zi?2P%HrTfL$Y_KM6V&DoQwM-n7grzywVWHtyrghsG{SiI<{j2BBQ-54PfY+8+Mg1Q zxU~uJf<2deSNO1;a^R{S0o)+yqjR+q&h)Gj?({wQ{@W2I8W8EAY%!^zae#$*{kUdt z>VMxkHE*1 zd`Q#ppv4kXCLb!M{ux|-Tn=9Jm@{W#G=eQW8gc0>#}4yB)>s{#W2C)082~CC)_|#3 zCw+h&;zJf40$a8TRPPbH*2=vO&4cwEx&f{VZQ{cHqA>IHk595j!PQ1{a2C;0kznb2 z)HERcGt7bcvrJF{R5W52N)KQ=rtHEKmd)P^8Dp{Cj9|+)@9>uFuz{~;^akr;ECN^A zHi2A7Vqw1SK=T(0xH_B<&O(E;9xQ$52|nb(rCskj!5PLGXh7~8yZ{Hg6W4V>bY!M$ z2h?Wr0obz5JA9>z(;Nvq&|p0ex*ueV?b*ykADg;51)N95mci9IV{jIHkzncAzyq;5 zjK24;Ie;^4IL(KAciIpf>^9Ow$Pw2ihrnzxclwrX-eG1nnI-`bv;^x>x~+tJvUAh; z28JCb;-p;XeZf^P@S>~->%r1(-tC5>c3>1=iGwp7Ivk7rdN>yx?7jb*@BhYpZSDwj zDqK!I<2`7;bLW9yEH0%x+qG{iig2xb;7F;O*GJ9PAY(7+6KsA0n>_mU=3v<5Nq*`w0KBiDrLo^!RwuA{Mk_C8DMhv4<9 zo9!9OSlGruIM>7lyMe>3UiCTVT_k*$X?6GV_!-)w62m^J`wTuDi40sf$MkG!nMS`V z(x#h#HJ=mO5SEvo?suvZ29`*M3gk(NuJ)9^n$_Nlwte|m2k??CLD_A3zs3a{oODrp z1x0hTZW%k=k1QT%G9P77#d>L{)>-9jaatL}^FxNuk~qx=+DYcd?DZ9|f?VtO(RM|r z{pCf{U^Byk^U1-?2aU3!qlGNKggbY5oY!LDw4QPa3p5*+m4kTJYwx<$#3vI49-pc! zN_p+Vew6`KqC*)bQbGpZtLg#2I%u937B>4KGtRDQ1zo94tZ6Biu>U!T#QADKXbYk! zSdHP?Co#tPsZ@gNc6}n|axhDk>8*S-!Xi7^Vy~}TZD{^9jAE<~G)oP;vaoUD4n3;= zJ4BQwA#&+kr4Hx0GS_>Ycwn!%Ytkz8WwQFtZd-g7|4JY0<=n?y}PYe~(QrUw1W?swta{##^NfHv~ zC$?*+s`OW4Ej*;#o>x@T{87rmhTAT|M?Qb{bsgPU$2yjKr5uPqBV$ojS@meJb*s@M z3CC1Nd?emN8#3DL{3zRg_|j-med;mg)PWmt4)0>`1!wiIAgufpp_>vASa!Fj+#V`a zIQh=%`hEW|rKTSmQEvk7owCKxH0rX+4akI)ZLF^pZ^xHC{cxPreCXGNxfeS6@iJ;O z&nfJ*bY4N*jL2xEU79`BS&(a$d`v$pOUxyO#w%@75Q}A0Pfgdp6XlBS&~Y}PYTrMA zm19^>snyK#sE|Y*)PVG8U_rbV695NvU}+8j9*62iO13MmjQPlg>ac{XeJ{TZO{EMa z$h)P;C{JqKY*0awiN-Z1lD#93b8R9m%W>riia!VYk50G>Z#O~t+xSkj$@%qy7A~38 zFIi~Eu&`9sM{D@UkKcTbXEiLCY)&PK=u7f)$xl{qR2o#3m7A_EVzJ1aQhVI;B0gtW zeyTVA{CICiPx;b{jzMzlscK3&zk9&pvz%WQ&)SVcvqq^er^5(#&N#Hk3>%H zK!-<$W{ZK~^K+It&xiCgMg=zaqLCRX{gZ9wEpN8#P!*(YxK|Z!Ei7V@GVAyuX}gZKJ34iP$ug!z8E0H4n1 zk`z&vJ?*yiit_0Mp#{l&R4Uy!*38Ikyg9|hefNr}t>b9Fhd~}rRi;dKam#xK9z-PP zYyyK81iHFd!7iW}WLkl%Nl^a<)D$jc8`zSY_Uwx94}c;ZJMR$ZP`(_tw*A!%dB)Q5 z`$B%ZU1~_gKH5j=s(W|t6d=vswM3pMm+t8Gw@~!v(oSci|5eW$pvB>^fLRC3ss=Pj5yX)R|?94a9 zVo6qYzH1Yk?*@I;vpP$Rusv#`+y&W^N{YF0?T~qET_}tJT*;|npexDV7t|mChge~!y+uqQ^kX| z%b18D+as@&{2fGlwI-FW`jPk%(NSrsZio&FW-92#kfDF>&JNZ7pgz)FOvDr5r9a^$ zwPZx2K-Iy8;9V=*uo)@noAV5+I)(8$!yZ%4C!m>xYm(X3>oBY?gS3F5yZ9YPd$A&G zd_7XLw=yr}QZ3fHzps9DMadY3lb(IiMzcUoZy_%l^ipvJ?2B`u_J;NAyY5g!t31fA z{>u@rc1Ni7d(5RgCTHL;!zR6JhS{{bjdG^1x(164h)MFqONL6MOcEcd$Piu={4P$L zy7fEm?oDjGLkZif8b5qMKv;vT;lc^7BhSmO({U?+`nA!BeOH!^C_dZ@HBdZ{ks!xT z&e8d!ZVuExzAT592m9T*a@%!6hF=_Cfu^?avELY2)^>rV@5(25T&F~qn0E9sudaFF zTT6q-=Mgm@7ONf1n0*~S&n!HXOLQu5rEsCr$nt5cs{*X7lDGTkHdGOJh|Uil7RvNm zzpFAlD9GZdn`$&Mo)@e`S{)5oDLZ_0W#ipM!1^|>xJWIIHp?N^$e~BsVkc&X6+d@% zddAbBsI`6A@7YvaB=P9$ft_YPPUv0_-x)Qe$kdo$ofe`qrqEx0(VaRLsa&ZSV<#AEV~+2eld<L7Txymq!V~PXI9vv~?74UQd zn3drdP~yU}w0L~20JS*mISyaY}^pZki?b}T|em6eDW{{Oyn_?p0`s-B_>BXDSGw;n}5HWw2qa8>R1_B_bk^4s$|= zU`+tF{8U0p7RF-X8*7NfTV1VnMtP}~PK5g|71jO4V;>Ja^r%eRSL)Dn$Y-PE+EkyN za&Kb)tn-=}ydkj@%i))IMHN1#j-z2J^~iUX&XZEx%gv`AeJ+Fz4vdmH)|V-iG25o+ zk#=rITt%JbgWn|6QzVvd6@`^~IXCu~?D29mJ#RDe3UgfKS%8ACZ)IOliRZwn1FpGM z(O>ddBH;kVyuL5ZLg=0NWd6CqVl3Q9fqdJ{a`|x_&zolgT)}k5w=md_f-VE%opAQ^sGYsJHV>Ty4Hm6tSk%D%jCq*vwh|F5>L! zOBbF8XAa6QOehR*6}|n<$rr~yeQSGHCDmhJ|D?!);7l&KcLTmwz^mSV*nawmd05bS zlu%*gp?xx4+OCqk{+EfQ#Z2?;FI9av=VQwXNDEQ7bRcBHX#2QnnR!naGAuLpq3_TI zPGm+PpJ{#iJ{Pj9c43xAPzNM(9p>Q}=REC_IhvQYhwBn|0w`$cr7J-1HlqRrk=$|j zeld|e;s9nR8b&xjlP|ZO*r(d$P%x-BeURp+4s($BAkf>nW*{ZOuk|9C>Z)MLS-xCqBCIbQwLu>QK7guzES@mZQ2Zt9~kfmro5X)qog% zZMvUUm_I8>i_>{xeQ8_TuI$$pUFmQj{cwsqCcW4}FS5Y&)D;@>{E6CJSp~80vb|3o`>@?O-(@^{F@KS#NjnH*xq&E5(5~GD z5-@)v-0W=Lty$@kS1sZT7%d;YsRFc?0%4RKN(3r77rA&v|E*C@PM2P8RR^zYO9m_v%OUy`# zG8YGNb9ldG)M1Q04r=WnjRvVi7*t%uP`Jq#e&h#v*~^7BDQv0UiY?rl5-VN)ciw#4?ZGQWD#?`;zB($hJfpF$ zI1M|~8tbH6Xe7xN8&&WufP}tsDi)iWTZ^)|T(!L9h2c0?CA_Aml8>1$X=zUUc*wSp zUEXbMm0{TB^5LjcJ) z>uYv=eO27r|1`J8#HxP0tY>+Jm~S4P1Nt`#e#wVak9-s5&nje|V8(6CAqnZ|BVJAw zu}FnuW(%1MzCuU8eZcm6_?Ra@?o;^%;=(cf$n)Bdb(7_m>SCdORi$s{!kR>+OweBp z!Xky{_D&2Ey-^7{n$GzyuhEC=_ z_%w)xNVxzrUN#(ubMPr7I{b6WI=+oXH2IE9yn*~%W3$g3ehziy!N>RV%p`98TCjn` zIDhNJ`(3xr+r=Ho@xI`#tk4({1jte)nJ3n{2VwqR#ukzfIg5!FncS}$qypSEj-s2; z{c$fk>mv019H530isjGhg=@Tm%BzQ)2NU*`&dLWPK9~^&ajh)`X5@op1fl4|8LcV8 zw5#o~%jxBa40iYf{_~ys{sJ!wL3&(#wwba>QnIv<~aq7xqx~^9x zWsMf=VEwdvDUy9$I7tcEh5)w(ehK@;B}0oHL@K$Z8ccjs&@P&FK!n6J!@5oT%Pxl= z)QyZa9X;_T!;ZDI3WZ$5<4=u3Gk3V=SpI%POsK&vL<`+*r1KS!Ri3T z?g&ieiY3l8Ls0e_h$nuM2qs6^O4Thl(JW@Ot6sGQ*1Aibw;s!?4xOs`YH$)sBAO)Y zs}sDPZhzJ(@hf%By%l~9O7maux#!r=qMh@=P={#7{o8Y&OA-J4a!S6fqgax8lk5j8)|dP7dje#A0Hqwz-BhxbQ-vMO_HlSX}UA65C3o+VJA72BJ9%CfS0uB zd#S(T0{rABQk$P7E27gB&vb$$>)XA&<~sV00oiB`>$5Z*5;7ZloUkG}_$89ddZ$|| zaedl@VDvKNSCs9V@b2V!lwx&nOknTJIcW{XQ}RO4aY} z1b))|z_Y8Q0y!stHCsO9oICW%Vnge6xEc0Ujn|%MH*<3dUy>~5?ha2Km;9830611H zTV=2)2UW|YE##K0>uj?A^b@+x(87%>Po0Jiyl0!1%NiHV!D{v~?-nOL_6WQc%54{a z@p;B;CZh@Ia=&q5LnBKr3O{KLX%fyQ8I^7bDa+=m}8pxFuCxwh$StOP*RGtmuSZ6#@2-nFyo~DH+|^E>60wP`_%hbAiw* zG+sK{CT8E6HRVu35?>Ns^>YYPDPl~4+RXAB-i56V93eb23NcYQ&#+09H=MKa!qb=VFQEd}lA~LRf{+hZKJNCWHSP-(EL*+)Y*5xbMnC^3 z0aBk~p@wjxtSBE^T(eVL`CvCJ_jD_xr?5+&$#dd~KG8Q{xBc$eiDR)kUNzV1ZlA9j znhGUlSkzs+{5+T4pdq}G`)2Ix+h@OpP>NrxYd*JmqI90Y@$CEc5uJ*w@&_a}rLC{! zoJ5}Y-mBy-%UKq=9E~6>vY^Jg$?EuWIJMVd{#tcdvPK*hR4LUu)b2a^rfuoX( zc47{uHC^Q_Fpu`~qE_Iji1D4%9-}KxZyrY#puc52b2)Ze?$i8fzxxR_bMj4lk}lyQ zOJp1ayhh(C6Xd>{pEr6Wg;?pws;c$^1NSwK*~^g#BtJIrGK@b_(?-P z-ol~&hlNaC`sVajmaI_jJ(7VXc7v1nQ5eV7cX8NAF66>Qet(PCSae%usY$F^sr^)c zRaaFQYfN`q!(Pz9gSRJr@7KgWl zOyoN@VP3fsBbraD{nJxn@`W%=dSbkz&=3LpAR+-=RRC-X?e)Vex=cd zuq%7ZCZ%oACwj<(M63z0v&-qS%wiZcYX5XjU{tq|wQ>O&TjzmY(|`8bCgikXj&UAI zlm|-Nz-EwnUiMqa|5>`PQrARY_1(D`r?%I9;N^r0F^4Y8mkA6t?Dr_}i-=`W_~lpn|$O@)k&$ z>ZGL}euu^r5lL}xe?Df(%IrAAl%ezFZKB8%5ihYZmax>VWG?e0UFc{8rGI#9M#OOB zy;!Uj{?l8RwPU09QzuwE&ax<;`#zerE-h`&Y6&VrjlrE zSbC+KQAe%@BFuxq81}zud1-wkzuM10zOu}cRs^8<@p8UlDDHH6NK-n(_z%~Ev*YR` zn|B8de zUJ5#D015F!7V&SC4nqm&y!^#RBc}-OCo{N&GlqxrTTV?K)*}?M?_a>^=I%2Jd(nB4 z((*KWQn!$qRj%$Fsf5Gz;2(vV4+Th%k7A~6L9C?tHnu6`;8m8M2R~ki5uKg3Q!8-i zO%F#EXw&9&V%2axukWT=a`27t4Rk~`e;)&I26XR$Y3X$DYjSUDiQ@;r(`52=z^4t% z`69f@;w$>{62^XM!YM8XT@Q|_%c@NMV_e`iKXQ|0*Ebxhp2yK?yl)?-nV;&)etY~l zn@z;R4A6L_UUAzSmCjjWH$#fOT*obOvbqpvtKXc6F3uE$Hm@u=D@W8=-^f=Ef?u%a z$^K((ShVY_zAGJd0=Eoh>etPXci&|%Z$<4JKYb*3g*x$h-|Y#1r{h+d%U63Wg;S;# z+<8!fW*T|z7J`ST&S(4ej8;V!-yZ*?NQLu3^(X!Q?t&6vMZY@_04-peUM@z|yfc0d zV)i$3+T1No?{QMA&I*8*f(^^m&6O*qX|8zG#%5e>B!A_rw>;BNmTWm?#vhjLpD4f; z9I5u$=F<3dzlHl%T+c|iRVqXjD*RHf2#mZWQASeWBT>?f;U@YYQW2M!{b*msKcMl= z97JgY3vpjRyFr;-tuE}kVO3{EZxftb$Nk0=_#(0m2m#QY(J9t3S`bmEFT)Aq#HCKA zAhhlU0j7WX&ma8AxN>;q8`BeJ<~1heq}B5NvJu_+jXyh7&yEH*rYP!uM=48X;bs+K z(v0&bxHA|3F{n`%tAks!`uy3B(6>CWht`Wg&&PUj*nUm})EwbG=wPu~(+=>DwB#)* zz5z%7hzq3DE8``I!R?8lwRMiTBB{}}StG`W zAr*O^(@*mxr}NQ7xw$C@RmBg|=)=+B{u1vjG!W+F!a}-ePoQM6HSCKWyA3q`}PR(ES& zJY(X{ChQW)E$5Vt!+P?jR8W#|<+%)oSNf!{j+q6zXK>ZNPas5Gd2;{qGC!SVXsoib6Lvh2 zm^WVCoo|(>@Ft#B6CBTTg%Y+wqy1pKLp2exc(rml_gx&FtNc8dk1oKw)s(_AzlBfD={Hm)dUn42TNQ7AjPr6BdeQdM(uaEF626 z2HOTcfdPrtmnUG$5+~eJCN@s@)V3UDhLukCc~2MaJYRH$^l$HbbBC%ZBr38;W0rCIJo zZn{TV_e;OQJok-R>iDiR+{vemmk;XU0Bt$Z`|>*ep-HF6s#(iDNAtDSg}v{x$)`(4 z82BE#+ggA@i;6H6g?)lPhSD-t?^d(ifx8O%@Mq89PEcbJd8LIW4mBG*5n;5+ogi9#c0vmD$=;zMx5~ zZ0);LmpWg=i~b#)8qbbvw<+Z~$0TAmLC67p#DEmW;QkkL0t@ICk*V>%3d$R1!M#({ zgwbi$XcMwzKOQV(uL1B$xj1_woJwsJ%83QppD)8nIaF-P9vpwYxF_Gt*5YRsN2gF5oaM^DxVV89J9 zZT)GMXQrEOpS?NPN@ZE;+y{es51uIWrSW<2zHuM$C7R)wSt^L5h+h6uQM)O5_Gh=M zFaXF6;2&nkAYyx)eW6#n#vwOnV2e$|+4SP<)ss~LZdId4RiXr5Hg`~4-`35u-Cl7n z)E#xdRdA~^j$LAeuQkAnJ{dPFXbByC6Gc=2ouLxNxNqBQ<8CvEn2+JrZ09TEQHFAH z?e_0&dnbcc1sG0WEO<;wirX9o{l`oj7)jwnuQ~}%^5vSK9u8}zjErxr_WQ`G)s?^G9hF9ENG7x+jSGf;2sEWg-Lw{yR{xN+5 zS}>#{{re9~;6}ckq#N5a9f}{qs?UD*h~^T-!kvd%OUgheNzDUJ1BjZsX7?_E-xZLe z=IhnP99PX8L8huLH|!LWw^=9q3w!v&vD=U1vm6t&xhPmGDy{2;!3&LEhR4v+?lh#W zQPjjy+Hef)3nshN74;?R#?;d?;hVd?hw?{H&Wo(_b~^V;RJ*jmpSRY5_PdXuZeHHF z-c~kUPW~I3frO9;E?`1o%rGPf(QU%RNdx_;O@xPTRRfZH(jb%ZGoHk-c%y-qI%Y0R!24WwO0xZk>gn z7sXT6qag6=Z-hURgBs)e@yeQ))>cQ%aZm6`aT>Qj-`oYnQj+$~-v^2T>*x+fGW-@D z*KK`>2ObzJ$eJ>%@PoX2g;oViEbza#xWE>FY?{Z2qNE7SYI3=4+tl{P>^T3ckl})G zbz9<+AnZyNC8`D$M6eHPM5R_=o1FOom#2OkZ0k@CEhO|U23K&UWXtbeBaSc$e|74%9s%3>?5+C0vFA= z&cmIf@M-lZLCisXY<-T6xJ$_!DsWn}2NQ7lONTOQ3G=?VOEX>14lR7x-!R7|kAcm@ zf536pDjSNj{MWJT#4dU3C;~R&Ihi7#~0n3cx$x)zL|0TpIkFj-Ht<~wt5LRAI;brNX#4>$EQ zd|N3y(wLVmHu@WQJ#`Xk0`qQY-Ioswuni!O(_XgIQ8Xcn+&>%uvp8jJ$El|csXZ`uwrEL^2KX{$G9HsQ)QTUOf?@q`y0@1tqBQI z3m7I8UqKc6n4`Y_IW>y(4`^`jx)zjyJe=>i`odm6yrob0 zc^%UjDeM-~o!g^g=K%@1q7g(Y`Bd?y^azqo(#?M(nz}R76qwM*tm*sq0TKl1QF{*# zCF48I=j-7Q4gXar+UC5;2c4A8PPgVY!HxIhu7=!3x=9gj&4D@CUohkcdn(|uzyC13k79qg|s(!~u&3!@PuD*E(|`pe0J3AK+IxM%!1F5>J= z?3=xMtP>skD?6%`wrqLZG&kH-dqo9at?H#~FQSZNw1Y-S^Z3o{7hd1G<)T)|V4q`P zDiySh#tQnK5_(*ow=H>GrW=gen=^uO7m~m1zkdzlAP=4IWxbruAn6#R1^0qeC;_q!`@&$BFg3UIXfj zY0}Nk5MgW&bKfBy8W`_@;cZG+(J3lO%!VkN@ZOyj^dAZC1|o_%N*XqWwnTLumqcB* zXf5f#8xLFVJgI(uM0R;7Zee=l@Sh2db((bH@Q41?ZJVqBc=+G?g0{-c$X}5Z&{W`z z5x+C2Se;v-+hf+khU&|?+;1n=)gn*s9ekeFCHFN|ugAhNr#nK{PloMoAl)Q3(|coj zwkrUe)OCu&Dtg81QG+hh9qK4}88icQYRsqbLeiJ5uvB6IvFe)HUoRZ1bExRoFbiZM z?zQ`WYlPV-jo*}u0Cuh&^>}M1U%RXrBQ@)vYv|#P8Q+zOK@Sw@(U2Kr|4DoMiX5bLs!+5*0TS~ltm-V4(tA=`r$)HKLk4q^44Es zt3PELW?w#Drk=#6M|fZ>%u@ZSPFT%eh$D{&nLO`!bqmub`4_mqepWCb7E1_NnG|qK z(Sy?SR*U<3rRXyJW2$uM-}RspE=OSG*Ju%#-Imb(o0=Y|Pu_Q( z0o(o)xv>K(P?Plg#{@nS{tu54nA)VW>2(u$jQVEY{tPU9hXzH%nX9?Irik2L5_%Q9^a8 ze{1`!{!(07C&vGNWsl8=H;KQU$LInnovIrl|9qHfhOdWfrW{4@-|{Pg`;-6SF){i7 z;W5g?f^@t2@t8*g|MICP79^H@RiBZJf2zkqIps+4yY8G~>c4Yes$OSdykq${CJ7{q z-`0&=Ff4)DX-mUrzet2EQ$~G+AMW`j6bx4r?GxH;Sa*=}M)Pu#T;JZ^YPqLv=Xa*5 z;T);~Sq#CN?<^uUZl#8Z!3+%#+x?AJ<3XDoyV5aZ)WmBfsX)QclSfqkdSCc4J|wTb zefx{qsDQN(GUV!C*qLT)UYRwJn|>i!YpYpYBENxL@f~poovRnoC$^lvNE5=22(O&T+wfya)Gy(Cr?fZ(a zHy7;&q4cjDP?yT24`TY%li(kkt#djMnE$f%Ikncam$plaeOC;>CxaPoO9(!6>eyy$ zZtg8vQ#m2&$PWQ&@@MOYCs8{>=lWk=-(JW39ixOKiblBI;LesLWJZ6?!z58ZY$FQ2 zG%c=kxKan8;Wnh}mjF^k`6<4&h1$_usY|{JtCM2n^D28cq1!XIQ!Dc5S+*dR&qr!T zZ`!P{ED)YRcJ+#}{E%E)r6O=!j;ZN-4+`JlD-wQ4Z%}PAW6r5Znw!Gie>7+5lK_eu zy|N)*3PPLz9b!cj7cFMArKgPVNa*%*GM!UPF^>ikM$uSot1rMPLrF6=+EyPjMJ;T} zvBh`YYZ-mB2FU@ms;=j87esf@k2_f2l7pQaNuu{V&-)_2ROx>V4x>|$2m2r0iPdw=DJXaaEWp4lMkgrZ_)WxlB7(buF1~skf z5k*%$BJZ`-9kC-VDLySqTh~E_+jKjyc4b?1j5!?L;c(^~VA*$=V@_V{+tSl8>b#vU zi3M$WX0^8u?z->1yGsM|;fCd{&D--Kw+!v)Lms$CUjbh_W1?(*Mk9BlaH$TJ_ zKct$AugdRkWa#fC?fN1_ox+cn8j7?=Jq>JEwMkcHx{XVMj!w^I?j1nvzEIp!tEt)z4oc~OWa|t5jBSE0L9QRr$d>aS z&saJhBY5!`=>f0YF;aV8q1O{_znIpGUSL>m|6?Ey4nN#3x%)L}{l|fsyMr4m$%#EX z9?^Bbo3F>nDF9NtJir8x-01paD`!3&x7>oBZ;S@(Q?ORLfN`8|C(kh&woj{pVt02V zPzI|pjdScU1rQU;1~j|@el438{p0l#c0|U36{SZb9@bXU#m7Zb2koNLyiZ{?vYCLm z@|cFM24sQmss=E=3wngzP=Ou8Ko)#r=K^ye_^b?;Zx0mppoYHZ@91Br*?c`sVA%jz zf?s~P(N9+%U*QZbQP-6_4CA}J^AuQXHV|Wb)3+=~^x)A`@CV@NTmT%230&Ew2)^KB z6C0Fm@cvJu`0;xD_Xhc5bv}V#UN4%a%Z`O2ReG~f++m^zbG97@YsDRk)j`v@to;Zh z^J7W+(NzHDvW6nv=z#S$0Ok3&Li(P+qJOq$^YvoiIv@OD2Un5shnYUsf|$I#;(ThaIuHpahp^e2==Jf(g4Xt`kHtW1hMdo$C%JKywn3&< z%SZ3I-LhvJ+NcnzcDic=+zRFInp7g#0}#2MnVRf{__X!kAn9TTg9SzS(4k zmcQ)%Ak+qko2rkg9b2UxslIi1YXhm~Z$AyqrX-j<&DJGedy#JP5wT&-T?o=RZ&Nrh zUEsaTvQE4|zH{)eICB%X+<2yN4gQC%5asU`$os8$S_}lxs7<0Z^MrU^C^WQ-!R21Q zm*P`NmcLvw7CNdxTh^to;M<4bzgJ+BBH>tF0P2;{U_MLAQ|Z4V>v7Ur&u9M;=5tIv zw3@HtS-UlKHlfG&Knvb-`>wq+U-?2deBh8J^4Ji>(8$V z{KK;!^cL6KbzDldqcX3L;dzgPz^hRvV*B3h>s>L=S023%UGDN5-8G8)Kp28^U-%xT zG`&Gnqn4ldB$X_ZNM3FWG&bot&_rThKV_ntF&7qNaex(Uc-q+8FdK$)hts*nV7^(w ze?$_){LGELT_+W$u;pp#C+O^J!jD*FK1E8_L*Ie1$9_;G?izUE#ln9m2ww!wOt zmK2%zGd>(9h0_S~G#KOcU5F1@Mfj}>BehU)*ywm3x}VWo;l>W5&Im1Ed>mMRgzjs- ztCNU{5h2S-?!I!kyQwZDQN-dBjm(6d?yo|h%-pG4l`LzTL{LGn~qqV>}i`gcyD&)qR1<8(WGm6%{k`; zx)@u4z{v;fFzBqe4}~SG3Z(H~1ucd3hj{^ziU8`LicE{StM<7j$KF|GaGpe#RCUWs z&3#&af^Z^K_i*qA76FJ|XiYh2q0m?mFDB4{RlShs)3f-jhT>?I34UO2kQ4pYQd$e5 zU8#FD7TcL`?qk7!*7A_eyG~i#M;|*SO`xN%qWaIC=iU5Z!k~guWu^|K-gjdD%5*!= zc&h7UK##&H7p%j;g+CNgwQf{Lo*W<*jyNhl_b}NpT851NWVTqlhu^P;wA=5p5x*3A~s)mZ4{AUN-L>gq70%+Np>Fth}L4Tfu$5I~5 z`Y%k`S{x@$_E(ilVs==KVv&~kFpjbnf6jVN(-EnY$T*MNxrEG|Q#IEg0gp%}yn<&FNcORR$5-rn1ePCpcNVw zH>kKnKZ0O|rtKw@ni?(9Fl5+8yuld$13QHy96H5?{7B}vf^Pq|4my{WZSI&b@ z03_LK-w}Po``Ka^Z%|?(k<|-*pbh$<@Mcf@IZTTd0DLm9Tk82qALTYNx?-o~6X>WM z1CnDzDn1N-;%4?GH&okk4^1NG03#K_6x$Z?9XX9aaXqdiA{LG_KAaKHb;$GnO1t#d&S& z(pmW=V=d9C7FCgWq>3g^EI&MYk5^1qpClMqYMp+>R#EY?Pwo*wf*JGK#hOP@lcL;f zjh@znX^4c!tz+c)V>0c=pp8@G!wEhb^N-yIZM=#lA?lHLOr+kI-@w#o&MHuJ-8Agt zsO?SVL*h5imVXRGXG(Fx^W&{SjU1uWrF~Sr@;BlY^l0Nb$4oi8P z?K&?q8g`A=bn<98qAp=6YJU)@8vov1W%}-pfEL;Q;Rc-!NW_W|aU3tFzw7|-?|UCAe@S&bEl!!ia-g*5CGtabipeG?8YZEm zOS+w%wmp63$oR(E(M4D#FWYrckG%Rf=IipunVOB?3bt>Cl6~gy9JzeXqyX_;*TcSJ z&X{q!x=q^itlNY6Nz|KecCk8BOrPAgb(!1U&Q$M}gS_G_dB!cKZ(92`?Q5B+8`5r6 zwTRSwbAu`ypw&C|7)(eQ;op3zVGk9thB)g&a^#w@N-c9hSn*lGV;`3boR~egM$)Yh zsuDJnl5q!{0zTU`r1Cxaz#|VP!(m<{&mA~ItqwYJSXPWk8eogZK7ZO#W8q7)xj?)~rnh}BU{o6q8n^-wU8LD_#!r)gEAn$Xq_oWz9Xry-TP z`{H!srtfFBssAXJKdq?6AdCw}5Ld_Kx0J~;dy2NAWA*uvR+@eF9l3^r?nk4Xd8{;d zW(5>hwgeQ88hwyXy9p*Zqfvc+;v^MM2VYXp^z1}PDLGNeNFV{W|33f!T?w)HlWA+y5 zpOgt<1;$ACzixgcunSQqJ>A0_jcFD@B@yFE3?OYICS3M#ykb3>w%ze zc?ry(vpMODW7&iWsP!AlhjlXJfFlMRzkXDZTHcu zPvWUq9hhKFeyRYN`9MZ~_Vi%{hEX?3g-duRQVfPS)2b5)LE2b=x&CP!J>-Qc8(5Fl z;Sumbw26&Lm>VAUr@rz7c80+-7 zqK<-4qqSUQWT zfADl_ICm}<+w-hSrbTC+VHAYq@_;eS{5Gwn+eq)Byp=`IS3~I-$2p)<{kh0(g4)>S zh@B9>SaGgyq$LM!$R#)K&y{ua<8E>p)^9a6k_#R5@u}jlf6OQWopUYxN@cq_Hy>%9 zUn}k;SK?WHsHI;AskftQq1etqGBEQ7_}H3~J@`CC_aM{C;sT87hzClg%IAZ1@s5US zV0J@$A}cC&b`Y6YxLB5B+3$F*hPF-^V6Z>&QOUR!a9M=>jwGQPrtXC;`kdgd_!k26Io#hh0CRI7Uyil{c5Q23C zLTg8$8k+X;qp-4Q8}jrngO4K|NS{Ov?im94pZ*Pxdg}CXmMi7GJHe!|cg8l!o z_ttSy@9WyI-597KB?u_eA|uO9#;JwWJ_qtkn} zjgfuw=H!*Y1Sj?zCwucR^#UnK#Kw-o#FK8$u)7JLw58Z9V9`+UfrKyrY_poi#EZjUv2plwmQyzVadYZbc~ro)MLH|Hzug;LcSyu(+)cy@m$ZnTsKrW zqTXVC6;CGL^$DTtwJ;&~^*oAHYuvjZeeSZZv;WPecFOu2A z(BiSwp3vLf?H1qMoM#)JGnOJW)nc`CfTPgL0i$Z2WN6dS)?l=Ljq1sjN=)I$yf?v0 zS=7h)NOLT^gs0rr#&YYgVYs8xd(Txe8jrCtriufl6ys;?x2iIkA=H5OVIOz$uHvl9 zoUIA{|h=?T)q`H zmzCqY)cUNy!Z!W^4Xez-L8RKsYznQp;7H=QvZTGgf6{aBsG&(}+adr90c&m-WX@p zvB~a&X=3k&5Q#IP=4t*cCe&)oeR#H>bZu=4Kl`+CEl+FgUJd?S#}a(R;LPa9W+Nuk zK^6oikqAU41^_FIw*FBw>}+xPkArsuYUnvvrgaQ@6+4*dD>~ z0_SAcSDhFs4aHhK|YdpNmEBQ{-^}M-A8-kR2#GGh)dgZJn1m^M1STdxM4vW z(+jkV&RpBigyJ>S9;%=y3S;%>3_1zxVP*bXeHy$wNZhf#VkEbol1Py?iPj&Hj3Q@} zj#lO_6gnP9RBS!}Az|c&E`oo(`0J}nMt+_Wo{{bRYNfRk`_)6wlt z-0Pp}HB&}T;9d!G%;EJ>0A>PMQPQifyW4k6A!9KFwrLV5B$~5S&ROOjxL_ZXvowKV zn6Kmz@)PkD2=kC6hg~Jryfg&v_G~aC?Roh~G#jvhapEX#=dQHJaNe<9V0;+Z7UT1B zu4c{_U6Spj32Li!_|5rj;zP@+v6#qz=ZAg2v+;b*2OW~DsS@t%ykwnUwU(?YntXGR> zy$?F{+c%JE?5Gh4V4Gi{9sP21YipLg!z;3*R08=q*IV9CcK1?T-08fV8n;8AIzyLQ z>DgNb|ICNeCWhsmhk2dR)%OR5h7TijzW~cEVJ1;8b2-|f`AqYhDQ#rkYjZvAG2>dd zW#jUJ>7s(n+?jpcCvyo%@%B_nWnS#1u3-om?ge=nIVmhWC(y-hfU;}b^Q9rU>xF=T zh>9Qz_^%{W;%}R?l)tg7sjeSam%2*vF}obfv}T^n(?;y=#93@C#VDl_2(~TieYBO< zU)$BM_RTmQo{ZN4qvYq|o7ygu7!=QPT-yC1_&5yL%gV24wz<9lc}c2PITAGLleVHL zDZg0MJBuVW8f@E9d9XA>u4kK2iQ=7$R@Dajzs{`nwx>nP{=MdM3!_~?hQq}wPfaO= zYbYICkY(>(ubn&jdE6=kInL0M%Yx9YHgt{0y-?U@z+~V_*Tq|GFhcFfp4~Ae9L{2M zg@_Te_~r6x)QnsjzW+gTPSgtQpnS8&*?^MKv-@tS50J>dz)~hYy@E!3{NC*}6vDvr zZtm+0*)-ekAwKPra~cmqs&R+Ange;OZEAKGY|lyCar_5*jdZG`rp& zI_NqHel>>TyGN`=k<@LI zPg~`^^#o)3q5Q2W;K^XtLh}`vTa6n~3$)@0h{?N2Q<#-cG5$4yKhn&%y4jxG-x5c)_ne^CqV zL1k=43*>J+it6YDHq`jplXKT+?30q*rfVb!H3~J3DU$XDDg&+Fcvb^RcXBVY<#ZOM zLH<)J{!q5 z({6UCFVXI%lK4>i^Q<+UvPTxPC*`pxW)bcRdo)ragi|sW%14k6%XiaOYDq_O@+$D6 z`u)B4$3jCfd_6#KODUf)Ze~1kko*q9_e;fCbJ^@xX zeU@$3w;%BhFelC&q@F4g?QtCL=BO32E3JL=jO|M8a@P7tLT6M+IBOVP?}mve2l=d;g!d*u@}zmUVo}bot7OzEu|Ki^H?-6Ib~)3$;sgr<6*Sq*MlFQN zdIzxkn@C~*yaaVzq&?)RgOfgOE@#;>^xLv^!<_Vu}1fb*E*`v{fkQ6{l%ZK}bydXbfjaOjj(l4`2abv(2+Hsa>mDJdMyx zXeg+_Z*f`>iku+>fb3Y&1T~;J$02ym`_}`Z#;f+RW*23(=Lgnm9h8M(4>Ctr*lVvI z0RN2liySN1AviW+7XXOs&4s zmhZG%L(B&tg*krc8O>{ySv9=xp;p@CYRs7qhs6ex3Rx}bGyZU zEd5qWd%#!wy==!tg)b;iULa>sRA;|jPM?N=sdeqzbQM8_58g@%do-51$evOcIF1njxe^;$i0@;UUms~Lysmlf8^FbR+BNYu&OTrbP6w?9r4^&_rryG)CrzYnRv z#_Sl#9NrwB7V?d8K%$IY1PdPH>2FzIl)XAcIt*z$)#u?3xuk1j&bmV$#kO3SPh)Ik zZI`UkvPGrF6^Q-zFBqvDM~7S4F86xckL;02LfKNpt6DT(!dc2jUAN$kn4Eu>(-Y8Z zX?Mn=VB`s1Wv@Gv#Bbq>m)g7GE;Xew*G%cmR5E?Tn>Lz3tGfs7%&bgAu}8>@cYjR0 zq*ZTeKO`9iOEaqN`d&8cdZ;BsDgJtjn-iU(Zq&3RtVp+4?=3bn|Y2iplFx;v|pNGu5!QYbtry4SFiEwd}Pw zM#^eX?btS>s`19!=PlQ@Z}7KKAog~N|1*1OJD~OH;z<9x)Fkm0gUh0V^S+MGG_o1- z25mjG&6ropd1(8KdfKp{EtGFLZ_23Az;8Be^89o{|EZubB{9^M)1hNW6$4n!cyH1P zO}}n;L!g!m+vjX4Ij2vw;VTmX zgi}SOzWlx`2bHsmpJ2O%5=g6_*ASm!P_*ZoiA7!A_8AOPHLV%igq=~ zW?xmy$Pak&6lejM!pf4aI~38%sG|cpa%HV3yEEh}c7NREY0%mftL3w6U~7qN@jb(G z(WB+2^NYot_aR%m9rLWGNSVhEN9)7Gh!et}xA3-U(FLA|8x(e&+zru5VM;mE3579o z_Ofi;NPdr=SV4>hb(;(So8|KG7*XZ`7Zm?~2;t5-5LB$FxiOT@dG7pgUbQxh6QO=T z;aS1v*)k4y{dpy?1Lb6h?F8Xu>$-bP6-AmJN7%n(F`3;rHR zhTabkIh68E16g0ngosqn4a}qki}tbjLvIzR_jVJupiMQ<7~A2=h&Fr!(tCMJ)a+5D z>(H3Q+fT^i-AMg)xa|WcnMJDd5^LMI6QpdVQ z-{ePW1@B&16-|-lwrFISq|Q$@ozBy&bqi4{nVQ5FM(M-=r4H=o=a6M9M; zQVaCnxTCnSpmy+d~r{bF$y+nIuf#Tt}~0qu3ftY~%A2 zAyJw+l{r@Ae7Ticx4&Kbjh_pHL}QWJId1v+xVxw3^OF!GKwk3l=@WJ%R%x5wt4980 z)YVDDt8ivYyECLq3p~5XhSWaE4pCiY1(?u#nCEUZo;3;(3`MVEM0^#9STg8CF-H>E z-HzoTfjbcI9_CGhGf%v9A1>BLbF9Ex{>z)=*OO&dBO8SJsd5yBieLyVr(%(uO+by| zH-SS0cH&rAneSLj>lmM>9>?#y0ZVV8!+lz+Sd7wE!{_9CpnX zw(DP<*J#VBbUwW<-(eXpqVi_>ZgVv-JZ0q9paP#;5$J-Th24tjS}Us|6Q)m4wVN_Z zk{h9~YB4mCW_TRqL%pHV@Et4#Cl2UJWcNzG>n^dA4L_XJ7e_*%34&?W{J5Nezm;^b zuktvHwL*g*G!*@-^dz}XSu-c!mx0r45otrGMWUS-(HVZ0*{k46v*|%<%WPwd;X0Es zRM=@ulmp*cM0?P3=)*l3XHk=#270efW8^uXO;kOqBvq;-v)HeI5;S_f z?v-0TQ^a?uYI(VaMqa%uvP&U1`o=T68NW`e>k58K2N;z{lf}`2yHrG?#JMA_ls@}W z8CWpuO3h4$6&-DZHS8R#o+uvrEQv$}ihRPaW5I5QyZlkFZgq@6Ayo~BtVGm;ebGi3 zms96>(%N#ZYEb@G73B})7a@A9*4H1wzhP1uFiFMPjfmTL&yC8|AA>`7o>w7OCw`zx zxL{w&BpN3a>Ry@8Ylt?@l9z8$;f=FAGSe$~U2NXSOQzG1Foiam_|`xLmMwX1;0A=% zXx5y<<LS_?RK6G5DtFqYi~#I$qY|q2A#8k-9ftopc0HO z0Ggs!+vdSBqM#>1F*-N+f&9j`LbPbT{ODM;`TmRl)u01qgH>)zoND17V%r+q=P`^g z{_rUA9EOF>GT*|i#JDM-lLj+a+LD6yk?MR2<=}*>@ID3M-P~g_vp&+Y(vGp`-A+!D zXmzkzIUf>!Kp3=EtI-%m)&*9f^k$kDnTy>YZYZ93##%SPL`(C>5_*IV`_D`h=&NRCX11VT<%HROZEq#oKX0g7cn?hlybqnTsGTtc zhGj)cYEB@8FeC}*OhD%7J0lz7Z-2nsFAdmroqjkGxetMQ=4I}W`nH7qKI!tAxv8MF z8-oxZ9Ss2{8l)P#R{FRGS~3#qD)c;x1^0}78XooTM(C!%8{Nd4!eDe+wtA*4#N1oC zVb1@s#WKH^glspe7Pm)r>2McIEb(Qu{$OUj@h20Z1N-g0 zgHw{NU`MgAAEH?*22+dm8+u9tJC^hK^=;zjHZtzY&)g10Dr8V{!wl%W!|^Ec6yE@z zo$MLp`7w^;sLgOB@=5;yWJW^>`}_Bw-do=#nIA_nEW))u6=|=`%Pd^G8XkNP()%ww zGZ2MP%T+^ehx{Z1)NwMw+Tzg(&NenlwbGmUP{8d;H#02dgo;X^N$YRfKIn3Iw+fzL zJyTnN%j-ulR(S)52WxEWId3n7E|A3|3*N|299V8r36rt!xWHgr@;Vo}D|yym>9zSX zEt;UfaStG_mwp@;c;_)Z8M4${RX3+4RSFw)OU@*keh(iR4GI*AM0;6TU)QG(9m{yI zmp?aO!g?QYAu1P1uUeujtm+0dOG3UxW>L8t*;*}#;l_a`*Bq_CLs5m#)-d1;{VbIc-i4oDuFJ2kQ-zK5Z#=<1;ak-$j(t#MW zmqtE((bTM@Z7~5CoQya8A^XeDJl0vO#d!!<#PM_Y#er?^MKFd(9 z`3zb0Yo1mAQMY+NCU#8gg){?s7HpXxdMc6}fZv zjYh0kaO!4%*ukte{DsM*eR0k9ttHp4@z$VmfJc;uZv%GOU2UfuF6) zNUyD@1alk3MMxAANaRToHcre2_KIpFQT|eRhN7pSMD+uM3cKS3-ZsdiV1B2btbj|* zq5#Iz=A6g!c)rSF>G+8x{^y0bP}OhDR4xkTL@GE3YYBIrzG!2#v#5KF4}G-Ud)x(8 z@3Y+rBTB%@;NNkez;U!|J^Crgy46)=6GCqdNeP)$)9|VT(Du9GfGE6fx zanvNCf@4J;5NW&{H0>hWEdO#H+%6R`Cetl8pKFI}jIq6(agn0y!`-u3`Z<(#;ccR7dAKSODqfc(GuZR*EHOx_>Ojh(b=d3=MHd}?J7 z+s#{C(|v8P7BD3m(0?kBgW|_3W+!<4CYRTaxSM$|GqtNjfFlrTDpv15ZwUGQ*Y%>M z-OBN#ZHr9YTDPdVy;laFTEi$~Dw$aXLmzi=ETJ!80SHGk4Skodf1cTv3=@gQ2W?EK z<#g(04z2Xq@5MxP{Oy`b;T+?eR=9Kqdx|~HvA%()xlIkmG?#`^)WwcX?EGALFKxW) zSYlfx_%cPuv5G8lPr*d+{vvH@h%w$>)`#Mo2%X)X5xwO!hYJ}KXT-dPqX{^f+jbr~ zDZfl2JEDCwUhT-_u%=EtGy{#-oH)UNvSXg9;Wfniw)PkVGJ^G%Kfde$!gGrLK;~sEB2r;51!cGcrwXf*Ih|UGZf*-N|qCEGzZ%EP?#q zKbFL+pq~M4wxC+DNc(JKXV;i|{NE%=X%o&dDqXRn2t!Z2Wcq6(0vxSAEG0DzsKR^EBX?My4c zMD)cY5e5rHYA&G6hQFU?bpr_1ZJ0d{HMS16P%O)^@PhJ|o9uSZtWbPRoU=jqEdi?_ zH(dN@nOUELrbw{Zk`u4_-lP(a2|`wdJI@Z_GHEMFX_21vVjM-JHI6W-Icj4yzrfcw z>PkAC;CSv5VUn_yQ1REkQ76~D*-gUL(`?G0R?KmIRb_XU*ERmVD&IEaD%Pof8 zKwc$@Pn1t;yEivs+-P_1YrWd`{;n4L>1QN3)5#WZf$X2%w zy9AZkaJ6o{Gv>Rz6~&%&%M!JLum^r5k_Q|=nY=h6kcGN(lj`N+$f_82|r%)_Z;rOu!7 ziJ7f>H7LvGWY8S-RIX?u&B=Z_=6u&Ϧ+=P>jMCOZBK2HkShdMvri1~~5o#OJS{ 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/mclag-enhancements/images/LocalStaticMacUpdateFlow.png b/doc/mclag/mclag-enhancements/images/LocalStaticMacUpdateFlow.png new file mode 100644 index 0000000000000000000000000000000000000000..d6dd8d0293ad74761f265409b534f3148f6ffc0d GIT binary patch literal 172908 zcmeFZc{r5s-#?6q5=z-aeN-Z$Y+1$>g_12KS%!on`#zXaipo~WzGdG+CHtNb#=d18 zvW&5fof*db&Y?c_{e18Hdq2+~&+$8+nc}oQBWK_K|!%^n2rkk#!oxd8~j7*bW2%*BDeK87FMzb82VZAoOhmIEu-)Jcx?%gHr_Ei0 zij(c?wbKt4KTT}uk=kN2rH5Tgvr1>sJw`a32XAbyy!S|c?`NXAt}F~Z(LeuC+V2R^ zL}e!2f1Gz{F^sbEVzu7>%_a&M$LP6zUgkdk(=X2)q?$_kAOF{XaX-Jn&A&|45B|Sc z>hGI;doJ?7i~bKb|6lX|KXBy#b)^3}#Q)ck{@0QICoXwT_)gA;WiGk<;)C`R1#juKOeyncj;b7*yHC*+Ak*LYrjW_@&Hl=Zr)IJx4}D{H z4pDz|buXJ4hvAh)SOl8;)pxl|QKi2{W<=tu!9-r#`wl?n}+__QrFiHLqU z^D*T9?^59Ra$OgP{_-ko$8pP&c=Y9!WF!tj;qv1Je^yNx&6b|uP5d(c3glI)39s)=`REtKVP5{hefSbR1D;IAkQNg*V>z(l&)R>Bp<)o*+u87Bj{=90f{ zFGp0RWL~L0M8ixqrCCkBp=2z&iDC+XhWh6NA|BUI>4Yg%3o-qM4mzLn;3QT*owbNT zJL*(T@slRu)Rk0=e?NxOv4f{iQlpk`g>6O5O8uq#?HssZP8OlEIQ#Uls6SQZ#rsV~ zW81g)i&kB%mQw0QG^+lUn01WG!s9nWNlfzY*(wrE$*LMc@SS~@bbvDd)FO*d8`I2V zA)2k``3p&!XAhh-3697bsxquPlBr-!zF_x0BC2@usgLxr#jumwl?<4oi#~V&fi5Ji zs~R&O&`muo+Pv>K5Mr6n9;teEQkOWn&UHoLm>ON=>Bo5#UI2QE%4!KhK1bSF(1X}rw8 zy|t^w=NvLYnETiTW)R;*TvgB&phhkKhINY9wz4+tOjUG|B}667gV&BySzI4IN0GqW zy-)w(dc>gF)kIBZh3exXx+TaG1mCS^<>ZSCguhJu6u|qP9X+R*=Ec=&XHKyKAfnmT z`H1pU%vm?UzS90ikAeew6-au;EJE|V)RS9hqYsO!Qo$%Ux8L!6yY-=Jh==dsvp0vS zrra}|h|OzUuLUPqz{QIWDb4De2$rk1(9(xzkCk0ALChEQb>G=Xaer(j22Mfo;mcOt z^OK2IEVQU|x8G}aF@Y%aIrtP^l}XD&w`Z|V%6v{k3c=&@&`Ud7MR@p9uis8z+i*W4FyUZy2NsdINl!G46&h2jB&|h5tcYWk`YCH*R zI5YQG?mMKgM&5b%Eq|s|RLVb>yu=$5S7D=FNlE7}~YV;ZHzJuxmX? z6JLETwLwG}FcVGWSn>{wHmK?@z;e;gbx!VH1Xj{T+C)PJbFAj>U}p1L(p6;LWb!Je zP?2NK3v=Dw#iwH=oYZAoO0Z`viEzt4;rw#ep7n{))^D%Xy(_i^lX6?7Hw-b4X=6pI z#OaZQOasd+-*Pp0F~PD!7wfZ`|ISIvBYI5tYqpyx(Ck`Ur$t^I%Ffdx-Ft+NH;joG z*tan|m^qyEB6*}3*C3nV@y$K#!(marf4HyI#+h?NB;0>UDeX58P&&OZA=T57Bk_py zN*{9ek}I{Y#G`)Zae=(nNN<*~L?jjyQ~2nC)FV;IT$O!rQDET#~vByL`=wvp1=P_e0-$(9<& zrSI?bx&>L99ovn1Hp+Z81my~s-KF`#GL4=dX(;~1N)7Eo56anV%N3J{bjdAittgCS zhmQ1@7A)zOxk@)jWLw8+$hP2H>|#YKH8r$|Bz!{atCI`bIzBJ4^zU4%x3^bjp0oB> zY=81RBG!=^>e>HU>xApCB$-z>*tH5hMFmP&)~fEVkDTKc6^U_pv9Z}|$wM%iY(rec zZkH-DC0Sz87{tW}gA;FiN2IIpZW~vskL%O@Bk)tvQ%~WC1OG#nixxO(B79^H%{~T- zgT#|08dQWFX?EDE(rA%+;+m|yyvsmpNw4&IPnU$PMiM*Cl=sJl;>X_D{u)(Qc8$8f zt76Q-{iqnJF87iK&voY!c=l2;D=f{>U^cvDt+zg7Gfc0$2HO=w-FA1dP+Dqel=a;` zok*s;R2IEkIN9OS5}I(K3kffc=pq#ZyDTr1@)rBvJTbTsJYd$j0f6nj`GegI8Qyp7fq;lM$`g*hi#n-!WbktT4huu%bzaD)xBFV7YH8=) z30H91vwB1FW}DRnR)0+Ncsr9*EAR4xuc|X;t6#-u$jk>R9O(eGY$eJ+p13r3q@uK! zrW(P@0Zw0Gq23dy1ZCIu-P zNS8L7h(IjDi%U@PbmsP`Eq6jB)NBxU`&g%gYQ7e00m{f`4!tIojGY7+o%C z^6}JO-XFD16!(s=1<0!XLFx2{foH1`;toch7seuwP`8;qs% z!jadZo-mc@%?2ZW4gJe)JZ>WsOCsJ*BTZFaMb~1IJ(;++5)72&D&rY@#oh9H2QVK> zLxn3HP}(ueFvP-3XweL^QrLBz8gZs2v9YXgy@^QMUjKZ)e~M|2S` zPHxATXc(1Quyt1BuW{&I=lwuDjW1BN?Hki#wZhyKUhgc8iS&ckqtT$vvQ7EX%K!fUyV2Rs2aSX}CUF-9_V$ zM2j`kL-criD4b^~my5sUJUqVkwLR&yb!CAi14Ne4$W)Pc+GufZim#O6on_`B$VB@_ zd#JjsCl-0UJ&h>u-=p;mosGLmlc6ApZHeSBFRy40D_YXt;x^JajfD}Sf>&e93@uTs z%vJ}u({F2Ohj7VER!eec6r{J7klr0F{mUfy(7IiqJpf^xS30OH-oVu5++S>M@ak~E zGH-^3K11B*?@DipjV7(3$oXOy$M>ggkGj_GPd8KE7@g?}s(bRFM{q;esH_zB{gIrx zUWboI1Eb~L1=7)Jv}TkW^?!00AIg=%W+dEe__fYWH;1Q+=_X;HNcw^iFNm5m49`H+tX)+UnTyE;HLC`yjt`_oTe z@0-Hf?To!EY+!dQof_CYfj+mj7|h=~u*h%Z!*oj*K)Lr!XHNZUUt^Z{O%+(jO|`^H z+Qe3Er+&P1_&kbegN?kF)x_@&f* z`#C6BZJg5XefdnY<0;RM4wYpF;?T3a*}S8C1o=TJL;Ls*p5fImb)h0D2O{6?G~iAp2rj#z~e@gf9e2f7g6o*7>9oG1qz0n2$;XLbr6>JY>7lcNwn9wT$`MfxUf<2^TuNrp zt;9N{g9=L8dGKUtJ;^jiSnT82&i7Rj{;$VHJwraMdKWeZhZwGI<(%ItCGBhGC}fRz z|Im1FvMHgnmOf$YM+VP=6m6_S^9{QTHbFkp7r$3s_yQVKE9z^Ek!$o@BC*L#V8hdE zW#hj^NX!O=Rp?(tUmjG6I|`Z)(7=+REZBmTwld{`LYwX237?li*A-LWj$KksE!(^A8EU%#@(7)+J<-J9aoj>L z>s?t~LnMw9vKJ@$fSb>K^hB_uJPJ+qG?fZScZk)SI~CL4%0DU=L3<_wQY$*^!VM*R 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/mclag-enhancements/images/MclagArpFdbKernelUpdate.png b/doc/mclag/mclag-enhancements/images/MclagArpFdbKernelUpdate.png new file mode 100644 index 0000000000000000000000000000000000000000..2d9c97072085ede8d9556dc13dca591edb772439 GIT binary patch literal 161870 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/mclag-enhancements/images/PortIsolationAdd.png b/doc/mclag/mclag-enhancements/images/PortIsolationAdd.png new file mode 100644 index 0000000000000000000000000000000000000000..08f11d7a3bf6a9e663a72b4328ec24e94f062783 GIT binary patch literal 49599 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 z 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/mclag-enhancements/images/RemoteMCLAGMacDownload.png b/doc/mclag/mclag-enhancements/images/RemoteMCLAGMacDownload.png new file mode 100644 index 0000000000000000000000000000000000000000..e0df5bc37437cb8323ab15e85cc61f7170a2c440 GIT binary patch literal 159435 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%0DGK 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 QDXHa4S1pPBe*4e=2gU1 Date: Tue, 14 Apr 2020 15:38:51 -0700 Subject: [PATCH 2/9] Updated HLD Removed unwanted text. --- doc/mclag/mclag-enhancements/MCLAG_HLD.md | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/doc/mclag/mclag-enhancements/MCLAG_HLD.md b/doc/mclag/mclag-enhancements/MCLAG_HLD.md index cd5d811fc8d..5c505f8f49f 100644 --- a/doc/mclag/mclag-enhancements/MCLAG_HLD.md +++ b/doc/mclag/mclag-enhancements/MCLAG_HLD.md @@ -6,6 +6,7 @@ Rev 0.1 - **[Revision](#Revision)** - **[About this Manual](#About-this-Manual)** - **[Definition/Abbreviation](#DefinitionAbbreviation)** + - [Table 1: Abbreviations](#Table-1:-Abbreviations) - **[1 Feature Overview](#1-Feature-Overview)** - [1.1 Functional Requirements](#1_1-Functional-Requirements) @@ -94,7 +95,8 @@ Rev 0.1 - [9.4 Port Isolation](#9_4-Port-Isolation) - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) -- **[10 Internal Design Information](#10-Internal-Design-Information)** + + # List of Tables @@ -804,10 +806,5 @@ Upgrade/downgrade from/to the older version is not supported with new enhanced v 2. Verify IPv4 and IPv6 routing with traffic 3. Veirfy Ping / Ping6 between Peer nodes VLAN interface 4. Veirfy Ping / Ping6 between Peer node VLAN interface and MCLAG Client device -5. Verify BGP session up on VLAN interface - - -# 10 Internal Design Information - -NA +5. Verify BGP session up on VLAN interface. From bd606e4fd9b264a42b33f58505afb12279777d1a Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Thu, 30 Apr 2020 18:30:09 -0700 Subject: [PATCH 3/9] Moved to parent directory per Guohan suggestion --- .../MCLAG_HLD.md => MCLAG_Enhancements_HLD.md} | 2 +- .../images/DesignOverviewDiagram.png | Bin .../images/LocalDynamicMacUpstreamFlow.png | Bin .../images/LocalStaticMacUpdateFlow.png | Bin .../images/MclagArpFdbKernelUpdate.png | Bin .../images/PortIsolationAdd.png | Bin .../images/RemoteMCLAGMacDownload.png | Bin 7 files changed, 1 insertion(+), 1 deletion(-) rename doc/mclag/{mclag-enhancements/MCLAG_HLD.md => MCLAG_Enhancements_HLD.md} (99%) rename doc/mclag/{mclag-enhancements => }/images/DesignOverviewDiagram.png (100%) rename doc/mclag/{mclag-enhancements => }/images/LocalDynamicMacUpstreamFlow.png (100%) rename doc/mclag/{mclag-enhancements => }/images/LocalStaticMacUpdateFlow.png (100%) rename doc/mclag/{mclag-enhancements => }/images/MclagArpFdbKernelUpdate.png (100%) rename doc/mclag/{mclag-enhancements => }/images/PortIsolationAdd.png (100%) rename doc/mclag/{mclag-enhancements => }/images/RemoteMCLAGMacDownload.png (100%) diff --git a/doc/mclag/mclag-enhancements/MCLAG_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md similarity index 99% rename from doc/mclag/mclag-enhancements/MCLAG_HLD.md rename to doc/mclag/MCLAG_Enhancements_HLD.md index 5c505f8f49f..5233685e411 100644 --- a/doc/mclag/mclag-enhancements/MCLAG_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -106,7 +106,7 @@ Rev 0.1 | Rev | Date | Author | Change Description | | ---- | ---------- | ---------------------------------------- | ------------------ | | 0.1 | 08/02/2019 | Lisa Nguyen, Praveen Elagala, Abhishek Dharwadkar, Sabarivel Sakthivel, Adam Yeung | Initial draft | -| 0.2 | 10/22/2018 | Tapash Das | L3 Protocol support enhancement | +| 0.2 | 10/22/2019 | Tapash Das | L3 Protocol support enhancement | # About this Manual This document provides general information about SONiC MCLAG feature enhancements. The original MCLAG feature is described at https://github.com/Azure/SONiC/blob/f478fe7cbc03c144f3b147e9638f460f764ce4b7/doc/Sonic-mclag-hld.md diff --git a/doc/mclag/mclag-enhancements/images/DesignOverviewDiagram.png b/doc/mclag/images/DesignOverviewDiagram.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/DesignOverviewDiagram.png rename to doc/mclag/images/DesignOverviewDiagram.png diff --git a/doc/mclag/mclag-enhancements/images/LocalDynamicMacUpstreamFlow.png b/doc/mclag/images/LocalDynamicMacUpstreamFlow.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/LocalDynamicMacUpstreamFlow.png rename to doc/mclag/images/LocalDynamicMacUpstreamFlow.png diff --git a/doc/mclag/mclag-enhancements/images/LocalStaticMacUpdateFlow.png b/doc/mclag/images/LocalStaticMacUpdateFlow.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/LocalStaticMacUpdateFlow.png rename to doc/mclag/images/LocalStaticMacUpdateFlow.png diff --git a/doc/mclag/mclag-enhancements/images/MclagArpFdbKernelUpdate.png b/doc/mclag/images/MclagArpFdbKernelUpdate.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/MclagArpFdbKernelUpdate.png rename to doc/mclag/images/MclagArpFdbKernelUpdate.png diff --git a/doc/mclag/mclag-enhancements/images/PortIsolationAdd.png b/doc/mclag/images/PortIsolationAdd.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/PortIsolationAdd.png rename to doc/mclag/images/PortIsolationAdd.png diff --git a/doc/mclag/mclag-enhancements/images/RemoteMCLAGMacDownload.png b/doc/mclag/images/RemoteMCLAGMacDownload.png similarity index 100% rename from doc/mclag/mclag-enhancements/images/RemoteMCLAGMacDownload.png rename to doc/mclag/images/RemoteMCLAGMacDownload.png From b3e2d73667edf839fb6d405f65e6915e04f70c7d Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Tue, 5 May 2020 07:37:41 -0700 Subject: [PATCH 4/9] Corrected Table of contents and other typos. --- doc/mclag/MCLAG_Enhancements_HLD.md | 38 +- doc/mclag/MCLAG_Enhancements_HLD_old.md | 809 ++++++++++++++++++++++++ 2 files changed, 828 insertions(+), 19 deletions(-) create mode 100644 doc/mclag/MCLAG_Enhancements_HLD_old.md diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index 5233685e411..6e33a95d121 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -5,8 +5,7 @@ Rev 0.1 - **[List of Tables](#List-of-Tables)** - **[Revision](#Revision)** - **[About this Manual](#About-this-Manual)** -- **[Definition/Abbreviation](#DefinitionAbbreviation)** - +- **[Definition/Abbreviation](#Definition_Abbreviation)** - [Table 1: Abbreviations](#Table-1:-Abbreviations) - **[1 Feature Overview](#1-Feature-Overview)** - [1.1 Functional Requirements](#1_1-Functional-Requirements) @@ -19,7 +18,7 @@ Rev 0.1 - [2.1 Functional Description](#2_1-Functional-Description) - [2.1.1 Dynamic configuration of MCLAG](#2_1_1-Dynamic-configuration-of-MCLAG) - [2.1.2 Dynamic configuration of mclag_interface](#2_1_2-Dynamic-configuration-of-mclag_interface) - - [2.1.3 Keep-alive timer configuration](#2_1_3-Keep-alive-timer-configuration) + - [2.1.3 Keep-alive timer configuration](#2_1_3-Keep_alive-timer-configuration) - [2.1.4 Session timeout configuration](#2_1_4-Session-timeout-configuration) - [2.1.5 Static MAC support](#2_1_5-Static-MAC-support) - [2.1.6 Aging disable for ICCP learned MAC addresses](#2_1_6-Aging-disable-for-ICCP-learned-MAC-addresses) @@ -87,7 +86,7 @@ Rev 0.1 - **[5 Serviceability and Debug](#5-Serviceability-and-Debug)** - **[6 Warm Boot Support](#6-Warm-Boot-Support)** - **[7 Scalability](#7-Scalability)** -- **[8 Upgrade/Downgrade considerations](#8-UpgradeDowngrade-considerations)** +- **[8 Upgrade/Downgrade considerations](#8-Upgrade_Downgrade-considerations)** - **[9 Unit Test](#9-Unit-Test)** - [9.1 DB table updates](#9_1-DB-table-updates) - [9.2 FDB](#9_2-FDB) @@ -95,8 +94,7 @@ Rev 0.1 - [9.4 Port Isolation](#9_4-Port-Isolation) - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) - - +- **[10 Internal Design Information](#10-Internal-Design-Information)** # List of Tables @@ -119,10 +117,11 @@ This document provides general information about SONiC MCLAG feature enhancement | MCLAG | Multi-Chassis Link Aggregation Group | | ICCP | Inter-Chassis Communication Protocol | | FDB | Layer-2 (MAC) based forwarding table | +| MHD | Multi Home Device | # 1 Feature Overview -This document captures the feature enhancements of SONiC ICCP MCLAG. This includes data structure changes, MAC event handling optimizations for scaling performance, support of static MAC address over MCLAG, port isolation ACL, and traffic recovery sequencing for traffic loop prevention. +This document captures the feature enhancements of SONiC ICCP MCLAG. This includes MCLAG configuration support, data structure changes, MAC event handling optimizations for scaling performance, support of static MAC address over MCLAG, support bridge-port isolation group for BUM control to MCLAG, and traffic recovery sequencing for traffic loop prevention. ## 1.1 Functional Requirements @@ -130,18 +129,17 @@ This document captures the feature enhancements of SONiC ICCP MCLAG. This includ - Advertise locally configured Static MAC address to peer MCLAG node - Withdraw MAC from peer MCLAG node when static MAC address is un-configured - Dynamic MAC move is prohibited on Static MAC over MCLAG -- Support bridge-port isolation group for BUM control to MHD. ### 1.1.2 Configuration and Management Requirements -- Add CLI to configure MCLAG domain and corresponding attributes domain-id, local-ip-address and peer-ip-address +- Configure MCLAG domain and corresponding attributes domain-id, local-ip-address and peer-ip-address -- Add CLI to configure optional attribute [peer-interface] +- Configure optional attribute [peer-interface] -- Add CLI to configure keep-alive timer value +- Configure keep-alive timer value -- Add CLI to configure session-timeout value +- Configure session-timeout value -- Add CLI to support addition/deletion of mclag_interfaces +- Add support for addition/deletion of mclag_interfaces under MCLAG domain ### 1.1.3 Performance and Scalability Requirements - Optimize code flow and data structures to improve scaling performance @@ -152,7 +150,7 @@ This document captures the feature enhancements of SONiC ICCP MCLAG. This includ - MCLAG peer nodes should reconcile the local FDB table upon completion of warm boot, as the MAC learn and age updates from peer would be lost during the time ICCP control session is down due to warm boot. ### 1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements -- For vlans associated with MCLAG interface, allow configuration of Unique IP address on VLAN interface of Peer nodes. +- For VLAN's associated with MCLAG interface, allow configuration of Unique IP address on VLAN interface of Peer nodes. - Provide mechanism for running L3 protocols such as BGP, BFD between both Peer nodes VLAN interface. - Provide mechanism for running L3 protocols such as BGP, BFD between Peer node VLAN interface and device connected to MCLAG Client. - For MCLAG gateway functionality (Data path) Static Anycast Gateway (SAG) or VRRP configuration will be mandatory, SAG is preferred for active-active forwarding. @@ -167,10 +165,10 @@ This document captures the feature enhancements of SONiC ICCP MCLAG. This includ - In the current implementation the mclag_interfaces configuration is generated from config_db.json file no CLI support is present, a new configuration command is introduced to dynamically add/delete the mclag_interfaces. ### 2.1.3 Keep-alive timer configuration -- In current implementation the keep-alive timer is hardcoded to 1 second. A new CLI command will be introduced to allow the configuration of range of values for keep-alive timer. +- In current implementation the keep-alive timer is hardcoded to 1 second. A new CLI command will be introduced to allow the configuration range of values from 1 to 60 seconds for keep-alive timer. ### 2.1.4 Session timeout configuration -- In current implementation the session time out 15 seconds after the last keep-alive messages exchange, the timeout duration is hardcoded. A new CLI command will be added to allow a configurable duration for session timeout, session timeout has to be configured in multiples keep-alive timer value. +- In current implementation the session time out 15 seconds after the last keep-alive messages exchange, the timeout duration is hardcoded. A new CLI command will be added to allow a configurable duration for session timeout with the supported range of 3 to 3600 seconds. Session timeout has to be configured in multiples keep-alive timer value. ### 2.1.5 Static MAC support - Current implementation does not support static MAC address over MCLAG. Static MAC information is not exchanged in the FDB TLV between the MCLAG peer nodes. Changes will be added to support Static MAC with TLV. @@ -223,7 +221,7 @@ Below is the summary of the changes for each flow number mentioned in the above 7. MclagSyncd updates ICCP session and MCLAG remote interface state information to STATE_DB FDB_TABLE and MCLAG_REMOTE_INTF_TABLE 8. MclagSyncd updates MAC addresses learned from peer MCLAG node to new MCLAG FDB table . 9. FdbOrch registers for new MCLAG FDB table updates to process MAC updates from peer MCLAG node, ISOGRP Orch process new updates from MclagSyncd. -10. FdbOrch updates remote MAC addresses with new SAI attribute not to age out them. +10. FdbOrch updates remote MAC addresses with new SAI attribute not to age them out. 11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . 12. Syncd programs the remote MAC to HW 13. FdbOrch registers with NeighborOrch for all the ICCP learned remote MAC addresses. @@ -731,7 +729,9 @@ IfUpAck 4 3 0 0 ``` +- MCLAG debug guide can be referred for trouble shooting issues. Below is the link to debug guide. + https://docs.google.com/document/d/1exNQ1po7TYmVtctq59aSUeBsZYKctbHMkwStNVNgSrU/edit # 6 Warm Boot Support - After a warm boot is completed, the FDB table is reconciled with the MCLAG peer. ICCP is extended to advertise the local FDB table. @@ -784,7 +784,7 @@ Upgrade/downgrade from/to the older version is not supported with new enhanced v 9. Verify adding MCLAG domain without peer interface 10. Verify adding MCLAG peer interface later after adding MCLAG domain 11. Verify deleting MCLAG interfaces with synced up MAC addresses and make sure behavior is similar to having MCLAG interface down -12. Verify Unique IP configuration on vlan interface +12. Verify Unique IP configuration on VLAN interface ## 9.4 Port Isolation @@ -806,5 +806,5 @@ Upgrade/downgrade from/to the older version is not supported with new enhanced v 2. Verify IPv4 and IPv6 routing with traffic 3. Veirfy Ping / Ping6 between Peer nodes VLAN interface 4. Veirfy Ping / Ping6 between Peer node VLAN interface and MCLAG Client device -5. Verify BGP session up on VLAN interface. +5. Verify BGP session up on VLAN interface diff --git a/doc/mclag/MCLAG_Enhancements_HLD_old.md b/doc/mclag/MCLAG_Enhancements_HLD_old.md new file mode 100644 index 00000000000..878e73398d0 --- /dev/null +++ b/doc/mclag/MCLAG_Enhancements_HLD_old.md @@ -0,0 +1,809 @@ +# MCLAG Enhancements +Rev 0.1 + +# Table of Contents +- **[List of Tables](#List-of-Tables)** +- **[Revision](#Revision)** +- **[About this Manual](#About-this-Manual)** +- **[Definition/Abbreviation](#DefinitionAbbreviation)** + + - [Table 1: Abbreviations](#Table-1:-Abbreviations) +- **[1 Feature Overview](#1-Feature-Overview)** + - [1.1 Functional Requirements](#1_1-Functional-Requirements) + - [1.1.1 Static MAC support over MCLAG](#1_1_1-Static-MAC-support-over-MCLAG) + - [1.1.2 Configuration and Management Requirements](#1_1_2-Configuration-and-Management-Requirements) + - [1.1.3 Performance and Scalability Requirements](#1_1_3-Performance-and-Scalability-Requirements) + - [1.1.4 Warm Boot Requirements](#1_1_4-Warm-Boot-Requirements) + - [1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements](#1_1_5-Unique-IP-for-supporting-L3-protocol-over-MCLAG-VLAN-interface-Requirements) +- **[2 Functionality](#2-Functionality)** + - [2.1 Functional Description](#2_1-Functional-Description) + - [2.1.1 Dynamic configuration of MCLAG](#2_1_1-Dynamic-configuration-of-MCLAG) + - [2.1.2 Dynamic configuration of mclag_interface](#2_1_2-Dynamic-configuration-of-mclag_interface) + - [2.1.3 Keep-alive timer configuration](#2_1_3-Keep-alive-timer-configuration) + - [2.1.4 Session timeout configuration](#2_1_4-Session-timeout-configuration) + - [2.1.5 Static MAC support](#2_1_5-Static-MAC-support) + - [2.1.6 Aging disable for ICCP learned MAC addresses](#2_1_6-Aging-disable-for-ICCP-learned-MAC-addresses) + - [2.1.7 Performance improvements](#2_1_7-Performance-improvements) + - [2.1.8 Isolation group support](#2_1_8-Isolation-group-support) + - [2.1.9 Unique IP enhancements](#2_1_9-Unique-IP-enhancements) +- **[3 Design](#3-Design)** + - [3.1 Overview](#3_1-Overview) + - [3.2 DB Changes](#3_2-DB-Changes) + - [3.2.1 CONFIG DB](#3_2_1-CONFIG-DB) + - *[3.2.1.1 MCLAG Domain table](#3_2_1_1-MCLAG-Domain-table)* + - *[3.2.1.2 MCLAG Interface Table](#3_2_1_2-MCLAG-Interface-Table)* + - *[3.2.1.3 MCLAG UniqueIP Table](#3_2_1_3-MCLAG-UniqueIP-Table)* + - [3.2.2 APP DB](#3_2_2-APP-DB) + - *[3.2.2.1 ISOLATION_GROUP_TABLE table](#3_2_2_1-ISOLATION_GROUP_TABLE-table)* + - *[3.2.2.2 APP_LAG_TABLE](#3_2_2_2-APP_LAG_TABLE)* + - *[3.2.2.3 APP_MCLAG_FDB_TABLE](#3_2_2_3-APP_MCLAG_FDB_TABLE)* + - [3.2.3 STATE DB](#3_2_3-STATE-DB) + - *[3.2.3.1 STATE_MCLAG_TABLE](#3_2_3_1-STATE_MCLAG_TABLE)* + - *[3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE](#3_2_3_2-STATE_MCLAG_REMOTE_INTF_TABLE)* + - *[3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE](#3_2_3_3-STATE_MCLAG_ARP_FDB_TABLE)* + - [3.3 ICCP Changes](#3_3-ICCP-Changes) + - [3.3.1 MCLAG interface flap handling](#3_3_1-MCLAG-interface-flap-handling) + - [3.3.2 MCLAG configuration change handling](#3_3_2-MCLAG-configuration-change-handling) + - [3.3.3 FDB handling changes](#3_3_3-FDB-handling-changes) + - *[3.3.3.1 Static MAC handling](#3_3_3_1-Static-MAC-handling)* + - *[3.3.3.2 Data structure and data type modifications](#3_3_3_2-Data-structure-and-data-type-modifications)* + - *[3.3.3.3 MAC sync optimizations](#3_3_3_3-MAC-sync-optimizations)* + - [3.3.4 Port Isolation changes](#3_3_4-Port-Isolation-changes) + - [3.3.5 MCLAG Domain State](#3_3_5-MCLAG-Domain-State) + - [3.3.6 Unique IP Changes](#3_3_6-Unique-IP-Changes) + - [3.4 Switch State Service Design](#3_4-Switch-State-Service-Design) + - [3.4.1 Orchestration Agent](#3_4_1-Orchestration-Agent) + - *[3.4.1.1 Isolation group orch agent](#3_4_1_1-Isolation-group-orch-agent)* + - *[3.4.1.2 PortsOrch Changes](#3_4_1_2-PortsOrch-Changes)* + - *[3.4.1.3 FdbOrch Changes](#3_4_1_3-FdbOrch-Changes)* + - *[3.4.1.4 MCLAG ARP MAC update to Kernel](#3_4_1_4-MCLAG-ARP-MAC-update-to-Kernel)* + - [3.5 SyncD](#3_5-SyncD) + - [3.6 MclagSyncD](#3_6-MclagSyncD) + - [3.6.1 FDB Changes](#3_6_1-FDB-Changes) + - *[3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE](#3_6_1_1-Local-MAC-upstream-using-STATE_DB-FDB_TABLE)* + - *[3.6.1.2 Removal of FDB table in MclagSyncd](#3_6_1_2-Removal-of-FDB-table-in-MclagSyncd)* + - *[3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE](#3_6_1_3-Populating-ICCP-MAC-updates-to-APP_DB-MCLAG_FDB_TABLE)* + - *[3.6.1.4 Populating ICCP and MCLAG interface state information](#3_6_1_4-Populating-ICCP-and-MCLAG-interface-state-information)* + - [3.6.2 MCLAG config handling](#3_6_2-MCLAG-config-handling) + - [3.7 SAI](#3_7-SAI) + - [3.7.1 Port Isolation](#3_7_1-Port-Isolation) + - [3.8 CLI](#3_8-CLI) + - [3.8.1 Click based CLI](#3_8_1-Click-based-CLI) + - *[3.8.1.1 Configuration commands](#3_8_1_1-Configuration-commands)* + - *[3.8.1.1.1 MCLAG Domain configuration](#3_8_1_1_1-MCLAG-Domain-configuration)* + - *[3.8.1.1.2 MCLAG interface configuration](#3_8_1_1_2-MCLAG-interface-configuration)* + - *[3.8.1.1.3 MCLAG unique IP configuration](#3_8_1_1_3-MCLAG-unique-IP-configuration)* + - [3.8.2 SONiC CLI](#3_8_2-SONiC-CLI) + - *[3.8.2.1 Configuration commands](#3_8_2_1-Configuration-commands)* + - *[3.8.2.1.1 MCLAG Domain configuration](#3_8_2_1_1-MCLAG-Domain-configuration)* + - *[3.8.2.1.2 MCLAG Interface configuration](#3_8_2_1_2-MCLAG-Interface-configuration)* + - *[3.8.2.2 Show commands](#3_8_2_2-Show-commands)* +- **[4 Flow Diagrams](#4-Flow-Diagrams)** + - [4.1 FDB Flow Diagrams](#4_1-FDB-Flow-Diagrams) + - [4.1.1 Local Static MAC upstream](#4_1_1-Local-Static-MAC-upstream) + - [4.1.2 Local Dynamic MAC update](#4_1_2-Local-Dynamic-MAC-update) + - [4.1.3 Remote MAC Processing](#4_1_3-Remote-MAC-Processing) + - [4.2 Port Isolation group processing](#4_2-Port-Isolation-group-processing) +- **[5 Serviceability and Debug](#5-Serviceability-and-Debug)** +- **[6 Warm Boot Support](#6-Warm-Boot-Support)** +- **[7 Scalability](#7-Scalability)** +- **[8 Upgrade/Downgrade considerations](#8-UpgradeDowngrade-considerations)** +- **[9 Unit Test](#9-Unit-Test)** + - [9.1 DB table updates](#9_1-DB-table-updates) + - [9.2 FDB](#9_2-FDB) + - [9.3 Config handling](#9_3-Config-handling) + - [9.4 Port Isolation](#9_4-Port-Isolation) + - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) + - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) + + + +# List of Tables + +[Table 1: Abbreviations](#table-1-abbreviations) + +# Revision +| Rev | Date | Author | Change Description | +| ---- | ---------- | ---------------------------------------- | ------------------ | +| 0.1 | 08/02/2019 | Lisa Nguyen, Praveen Elagala, Abhishek Dharwadkar, Sabarivel Sakthivel, Adam Yeung | Initial draft | +| 0.2 | 10/22/2019 | Tapash Das | L3 Protocol support enhancement | + +# About this Manual +This document provides general information about SONiC MCLAG feature enhancements. The original MCLAG feature is described at https://github.com/Azure/SONiC/blob/f478fe7cbc03c144f3b147e9638f460f764ce4b7/doc/Sonic-mclag-hld.md + + +# Definition/Abbreviation +## Table 1: Abbreviations +| **Term** | **Definition** | +| -------- | ------------------------------------ | +| MCLAG | Multi-Chassis Link Aggregation Group | +| ICCP | Inter-Chassis Communication Protocol | +| FDB | Layer-2 (MAC) based forwarding table | + +# 1 Feature Overview + +This document captures the feature enhancements of SONiC ICCP MCLAG. This includes data structure changes, MAC event handling optimizations for scaling performance, support of static MAC address over MCLAG, Support bridge-port isolation group for BUM control to MCLAG, and traffic recovery sequencing for traffic loop prevention. + +## 1.1 Functional Requirements + +### 1.1.1 Static MAC support over MCLAG +- Advertise locally configured Static MAC address to peer MCLAG node +- Withdraw MAC from peer MCLAG node when static MAC address is un-configured +- Dynamic MAC move is prohibited on Static MAC over MCLAG + +### 1.1.2 Configuration and Management Requirements +- Add CLI to configure MCLAG domain and corresponding attributes domain-id, local-ip-address and peer-ip-address + +- Add CLI to configure optional attribute [peer-interface] + +- Add CLI to configure keep-alive timer value + +- Add CLI to configure session-timeout value + +- Add CLI to support addition/deletion of mclag_interfaces + +### 1.1.3 Performance and Scalability Requirements +- Optimize code flow and data structures to improve scaling performance +- Support 40K FDB entries +- Support 4K VLAN's + +### 1.1.4 Warm Boot Requirements +- MCLAG peer nodes should reconcile the local FDB table upon completion of warm boot, as the MAC learn and age updates from peer would be lost during the time ICCP control session is down due to warm boot. + +### 1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements +- For vlans associated with MCLAG interface, allow configuration of Unique IP address on VLAN interface of Peer nodes. +- Provide mechanism for running L3 protocols such as BGP, BFD between both Peer nodes VLAN interface. +- Provide mechanism for running L3 protocols such as BGP, BFD between Peer node VLAN interface and device connected to MCLAG Client. +- For MCLAG gateway functionality (Data path) Static Anycast Gateway (SAG) or VRRP configuration will be mandatory, SAG is preferred for active-active forwarding. + +# 2 Functionality + +## 2.1 Functional Description +### 2.1.1 Dynamic configuration of MCLAG +- Current MCLAG configuration is generated from config_db.json file with no CLI support. New CLIs will be added to configure MCLAG which includes domain-id, local ip address, peer ip address and peer_link. peer_link configuration is mandatory for Layer2 MCLAG while optional for Layer3 MCLAG. + +### 2.1.2 Dynamic configuration of mclag_interface +- In the current implementation the mclag_interfaces configuration is generated from config_db.json file no CLI support is present, a new configuration command is introduced to dynamically add/delete the mclag_interfaces. + +### 2.1.3 Keep-alive timer configuration +- In current implementation the keep-alive timer is hardcoded to 1 second. A new CLI command will be introduced to allow the configuration of range of values for keep-alive timer. + +### 2.1.4 Session timeout configuration +- In current implementation the session time out 15 seconds after the last keep-alive messages exchange, the timeout duration is hardcoded. A new CLI command will be added to allow a configurable duration for session timeout, session timeout has to be configured in multiples keep-alive timer value. + +### 2.1.5 Static MAC support +- Current implementation does not support static MAC address over MCLAG. Static MAC information is not exchanged in the FDB TLV between the MCLAG peer nodes. Changes will be added to support Static MAC with TLV. +- Changes will be added to support the static MAC syncing from local MCLAG node to peer MCLAG node. +- Changes will be added to handle the MAC move scenarios in presence of remote Static MAC. + +### 2.1.6 Aging disable for ICCP learned MAC addresses +- In the current implementation, MAC addresses learned in the control plane from the MCLAG peer are installed as dynamic entries. Therefore, if no local traffic from these MAC addresses is seen for the ageing period then they will age out, causing a notification back to ICCPd. However if the mac is learned from peer then it will immediately re-program MAC . The result is transient flooding for the MAC and some unnecessary control plane overhead. +- When the local MCLAG node learns the MAC addresses from peer MCLAG node the type of the MAC set as dynamic. For the remote MAC addresses learned via ICCP if no traffic received on local MCLAG interface MAC addresses get age out from HW. ICCPd process the age notifications as the MAC address is peer learned re-installs MAC address back to HW. Transient traffic flooding can occur during remote MAC re-installation. +- The process of remote MAC aging and re-installation is repetitive causing un-necessary messaging between modules and processing. +- To suppress the unwanted MAC age events, the new implementation programs remote MAC addresses with aging disabled. For the MAC address learned from ICCPd, FdbOrch to set new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE while programming, which causes SAI to not age out the MAC, but allows it to move. + +### 2.1.7 Performance improvements + +The following improvements are made in this enhancement: + +- Convert FDB and VLAN related linked list to binary trees to improve scaling performance +- When MCLAG node learns a new MAC address via ICCP from peer MCLAG node learned over remote orphan port, it sends a age notification back to peer to indicate MAC is locally aged, this updated is not necessary as MAC not learned locally. Avoid sending the local age notification back to peer MCLAG node each time a MAC address is learned from peer. + +### 2.1.8 Isolation group support + +To control the BUM traffic towards the MHD bridge-port isolation groups is used. The isolation group is applied on the ingress side of peer-link port to filter traffic towards the MHD to avoid duplicate traffic received at MHD. + +### 2.1.9 Unique IP enhancements + +- Current design mandates configuring same IP address on the VLAN interface for each VLAN of which an MCLAG is a member. +- L3 protocols such as BGP, BFD, VRRP etc cannot be configured on the VLAN interface associated with MCLAG interface because such protocols cannot address the individual routers. +- A new configuration command is introduced for allowing separate per-peer IP configuration on the VLAN interfaces associated with MCLAG interface. +- Both same IP configuration and unique IP configuration will co-exist based on the new configuration. + + +# 3 Design + +## 3.1 Overview +New changes will be added on top of the existing MCLAG implementation. +Following diagram captures the high level module changes made for the MCLAG enhancements. + +![Design overview diagram](images/DesignOverviewDiagram.png "Overview of module changes") + +**Figure 1: Overview of module changes** + +Below is the summary of the changes for each flow number mentioned in the above diagram. + +1. New CLI commands are introduced to configure MCLAG and its related attributes. Two new tables are added in CONFIG_DB to store the MCLAG configuration and mclag_interface configuration generated from CLI. +2. MclagSyncd receives the new MCLAG configuration updates. +3. MclagSyncd receives new local (both static and dynamic) MAC updates from STATE_DB FDB_TABLE +4. MclagSyncd sends new MCLAG configuration to ICCPd. +5. ICCPd sends new remote static MAC updates, ICCP session and MCLAG remote interface state information updates to MclagSyncd. +6. ICCPd sets new static MAC flag in FDB TLV for local static MAC addresses advertisement. +7. MclagSyncd updates ICCP session and MCLAG remote interface state information to STATE_DB FDB_TABLE and MCLAG_REMOTE_INTF_TABLE +8. MclagSyncd updates MAC addresses learned from peer MCLAG node to new MCLAG FDB table . +9. FdbOrch registers for new MCLAG FDB table updates to process MAC updates from peer MCLAG node, ISOGRP Orch process new updates from MclagSyncd. +10. FdbOrch updates remote MAC addresses with new SAI attribute not to age out them. +11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . +12. Syncd programs the remote MAC to HW +13. FdbOrch registers with NeighborOrch for all the ICCP learned remote MAC addresses. +14. NeighborOrch update the MAC address to STATE_DB MCLAG ARP MAC Table. +15. FdbSycd gets the MAC updates from STATE_DB MCLAG ARP MAC Table. +16. FdbSyncd programs the MAC updates to kernel. + +## 3.2 DB Changes + +### 3.2.1 CONFIG DB +#### 3.2.1.1 MCLAG Domain table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store MCLAG domain configuration. Applications can use it to get MCLAG configuration + +``` +;New MCLAG Domain Table +key = MCLAG_DOMAIN|domain_id ; DIGIT 1-4095 + +;field = value +source_ip = IP ; local ip address +peer_ip = IP ; peer ip address +peer_link = port_name ; peer link name +keepalive_interval = time_in_secs ; keepalive time in seconds +session_timeout = time_in_secs ; session timeout in multiple of + ; keepalive_interval. + +;value annotations +port_name = 1*64VCHAR ; name of the port, must be unique +time_in_secs = dec-octet ; time in seconds +IP = IPV4address +IPv4address = dec-octet "." dec-octet "." dec-octet "." dec-octet " + + dec-octet = DIGIT ; 0-9 + / %x31-39 DIGIT ; 10-99 + / "1" 2DIGIT ; 100-199 + / "2" %x30-34 DIGIT ; 200-249 + / "25" %x30-35 ; 250-255 +``` +#### 3.2.1.2 MCLAG Interface Table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store MCLAG interfaces for a MCLAG domain. MCLAG applications can query this table to check whether a interface is configured as MCLAG interface + +``` +;New MCLAG Interface Table +key = MCLAG_INTERFACE|domain_id|ifname ; + +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) + +``` + +#### 3.2.1.3 MCLAG UniqueIP Table + +Producer: Configuration +Consumer: MclagSyncd +Description: New table to store L3 VLAN interfaces that will have unique IP configuration. MCLAG applications can query this table to check whether a interface is configured for L3 protocol support. + +``` +;New MCLAG UniqueIP Table +key = MCLAG_UNIQUEIP_TABLE|ifname ; Only VLAN interface supported currently + +``` + +### 3.2.2 APP DB + +#### 3.2.2.1 ISOLATION_GROUP_TABLE table + +Producer: MclagSyncd +Consumer: Isolation Group Orch Agent +Description: Isolation group table contains information about the Isolation group type, members and ports. + +``` +key = ISOLATION_GROUP_TABLE:name + +;field = value +Description = 1*255VCHAR +TYPE = "port" / "bridge-port" +PORTS = [0-max_ports]*port_name ; Ports on which this port isolation group + ; is applied +MEMBERS = [0-max_ports]*port_name ; Port isolation group members + +;value annotations +port_name = 1*64VCHAR ; name of the port, must be unique +max_ports = 1*5DIGIT ; number of ports supported on the chip +``` + +#### 3.2.2.2 APP_LAG_TABLE +``` +;Add one new attribute to existing LAG_TABLE to control whether traffic collection and distribution should be disabled for all LAG member ports. +traffic_disable = "true"/"false" ;default is false +``` +#### 3.2.2.3 APP_MCLAG_FDB_TABLE + +Producer: MclagSyncd +Consumer: FdbOrch agent +Description: New table to stores the MAC addresses learned via ICCP. FdbOrch processes the FDB updates to program in HW. + +``` +; Stores MCLAG FDB entries which were learned via ICCP +; Notes: +; - only unicast FDB entries supported +key = FDB_TABLE:"Vlan"vlanid:mac_address ; +;fields +port = ifName ; interface where the entry is bound to +type = "static" / "dynamic" ; type of the entry +``` + +### 3.2.3 STATE DB + +#### 3.2.3.1 STATE_MCLAG_TABLE +Producer: MclagSyncd +Consumer: Applications over MCLAG +Description: New table to provide MCLAG domain states to applications running over MCLAG + +``` +;New STATE_MCLAG_TABLE +key = MCLAG_TABLE|domain_id +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +;fields +oper_status = "down"/"up" +role = "active"/"standby" +system_mac = 12HEXDIG +``` +#### 3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE +Producer: MclagSyncd +Consumer: Applications over MCLAG +Description: New table to provide remote MCLAG interface state received by ICCP +Schema: + +``` +; New STATE_MCLAG_REMOTE_INTF_TABLE +key = MCLAG_REMOTE_INTF_TABLE|domain_id|ifname +oper_status = "down"/"up" + +;value annotations +domain_id = DIGIT 1-4095 ; domain_id for the MCLAG +ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) + +``` + +#### 3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE + +Producer: FdbOrch +Consumer: NeighborOrch +Description: New table to populate the ICCP learned remote MAC entries which have ARP entries are associated. +Schema: + +``` +; New STATE_MCLAG_ARP_FDB_TABLE +key = MCLAG_ARP_FDB_TABLE:"Vlan"vlanid:mac_address + +;value annotations +vlanid = DIGIT 1-4095 ; VLAN id. +mac_address = 12HEXDIG ; MAC address. + +;fields +port = 1*64VCHAR ; name of the L2 Port +type = "static/dynamic" ; tpye of the MAC address. + +``` + + + +## 3.3 ICCP Changes +### 3.3.1 MCLAG interface flap handling + +In the current implementation, in normal operation, a port isolation filter is applied on both peers to ensure that traffic received from the peer-link is never forwarded to local MCLAG member ports. This ensures loop-free and packet duplication-free operation. Then, if all ports in an MCLAG on one peer go down (MCLAG PortChannel is down), this filter is removed on the other peer, allowing traffic destined to the MCLAG to cross the peer link, maintaining connectivity to the MCLAG. Later, when at least one member port comes back up (MCLAG PortChannel is up) on the first peer, then the filter must be re-applied on the other peer. However, this can cause transient loops if the MCLAG member ports come up before the filter is re-applied on the remote peer. + +In this enhancement, acknowledgements are added to interface state notifications in ICCP, and these are used to ensure that the remote filter is applied before enabling traffic on the upcoming MCLAG member interface(s), thereby eliminating the possibility of loops and duplicates. + +### 3.3.2 MCLAG configuration change handling +ICCP is extended to dynamically handle changes in MCLAG configurations. In the current implementation, MCLAG config attributes local ip, peer ip, peer interface and MCLAG interface configuration has to be done prior to bringing up ICCP docker. To handle configuration changes, MclagSyncd subscribes to CONFIG_DB MCLAG changes, saves configuration data in internal cache and notifies ICCPd. In this enhancement, Pre-provisioning support for MCLAG interfaces and peer interfaces is added. + + +### 3.3.3 FDB handling changes +ICCPd will be extended to support static MAC addresses, data structure changes, data type changes and MAC syncing optimizations. More details are captured in the below sections. + +#### 3.3.3.1 Static MAC handling +Changes will be added to extend the current FDB TLV to notify with a static MAC flag. ICCP MAC processing will be extended for local and remote static MAC addresses handling. Local and remote static MAC move scenarios will be handled. + +#### 3.3.3.2 Data structure and data type modifications +In current ICCPd implementation MAC entries are stored in linked lists which can be costly in MAC scale scenarios for lookups. The existing linked list structures will be modified to binary trees for better add, delete and lookup operations. The MAC address entry is stored as 32 byte string in the messaging and local cache, the address will be converted to 6 bytes to optimize the space messages size while syncing the MAC addresses between MCLAG peer nodes. + +#### 3.3.3.3 MAC sync optimizations +When MCLAG node learns a new MAC address via ICCP from peer MCLAG node ( MAC learned on remote orphan port ), MAC address is added locally and an age notification is sent back to peer MCLAG node. These age notifications are not required to be sent, additional checks are added to stop sending such unwanted MAC updates. + +### 3.3.4 Port Isolation changes +In this enhancement, the port isolation logic is updated to use [SAI Port Isolation](https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h) instead of Egress ACL. Using isolation group, unwanted traffic can be dropped at the ingress, i.e. before it gets queued etc. This will give better performance as unnecessary traffic will filtered at ingress. + +### 3.3.5 MCLAG Domain State +To support applications running over MCLAG, MCLAG domain states such as ICCP state, active and standby role, system MAC, and remote MCLAG interface state are populated in the STATE_DB for applications to consume. + +### 3.3.6 Unique IP Changes +To support Unique IP configuration on VLAN interface for the VLAN's associated with MCLAG interface following changes will be done. +- In Standby node, disable active node's MAC programming into MY Station TCAM. Also disable updating VLAN interface MAC in kernel. +- Add code to Sync VLAN interface MAC between Peers and program L2 Table with Peers VLAN interface MAC pointing to Peer Link. This is required since MAC learning is disabled for Peer Link. +- Add code to do ARP/ND sync for Local VLAN interface IP. + +For MCLAG gateway functionality (Data path) Static Anycast Gateway or VRRP configuration will be mandatory. + +## 3.4 Switch State Service Design + +### 3.4.1 Orchestration Agent + +#### 3.4.1.1 Isolation group orch agent + +A new isolation group orch agent will be added. Isolation group orch agent is the consumer of ISOLATION_GROUP_TABLE in APP DB. MclagSyncd will produce the isolation group configuration in the APP DB and isolation group will program it in the ASIC DB. Only bridge port isolation group will be supported and will be used by MclagSyncd. + +#### 3.4.1.2 PortsOrch Changes + +To allow ICCP to control when traffic should be enabled on a LAG interface, PortsOrch is extended to support a new traffic disable attribute. When traffic disable attribute is set to true, LAG members are not added to hardware. They are kept in a temporary set until the traffic disable attribute is set to false. + + +#### 3.4.1.3 FdbOrch Changes + +As part of enhancements MclagSyncd populates the ICCP learned MAC addresses into the APP_DB MCLAG_FDB_TABLE instead of populating to APP_FDB_TABLE, FdbOrch registers to APP_DB MCLAG_FDB_TABLE to process the MAC updates from ICCP. + +Advertised FDB cache entries will now be marked about the learn source, MAC entries learned from APP_DB MCLAG_FDB_TABLE will be marked as learned from ICCP, these MAC addresses will be updated to ASIC_DB FDB_TABLE with new SAI attributes. + +Advertised FDB entries with type static will be programmed to HW similar to local static MAC addresses to avoid any dynamic MAC move to other interfaces. + +When a static MAC address is configured locally and same MAC address is learned as advertised, FdbOrch to discard moving the MAC address. When static MAC address is deleted FdbOrch to re-program the advertised MAC address to HW. + +If the ICCP learned MAC is static, then any dynamic MAC move will be discarded by FdbOrch. + +#### 3.4.1.4 MCLAG ARP MAC update to Kernel + +ARP entries present in the system will need the associated MAC entries to be programmed in kernel to allow the local system and applications to reach the associated IP address. When ICCP receives a MAC update, if an ARP entry is associated with the MAC address then the MAC address needs to be programmed in kernel. FdbOrch notifies NeighborOrch when MAC is learned via ICCP and NeighborOrch updates the MCLAG_ARP_FDB_TABLE in STATE_DB accordingly. FDBSyncd subscribes to this table and programs the kernel as required. A similar path is used to update kernel MAC entry If there is an interface change associated with the MAC or when the MAC address is deleted. + +Below Diagram show the remote ICCP MAC update to Kernel. + +![MCLAG ARP MAC kernel update Diagram](images/MclagArpFdbKernelUpdate.png "MCLAG ARP interested MAC kernel programming Flow") + +**Figure 2: MCLAG ARP interested MAC kernel programming Flow** + +## 3.5 SyncD +No change to SyncD + +## 3.6 MclagSyncD +### 3.6.1 FDB Changes +MclagSyncd is extended to optimize the FDB events handling. + +The changes include: - + +- sending local MAC updates to ICCPd from STATE_DB FDB_TABLE instead of ASIC_DB FDB_TABLE +- sending of the MAC entries is event driven instead of the periodic 60 seconds polling +- removal of the FDB cache in the MclagSyncd +- adding the ICCP learned MAC addresses to APP_DB MCLAG_FDB_TABLE + +#### 3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE +To distribute the local MAC addresses to ICCPd MclagSyncd will now listen for the STATE_DB FDB_TABLE updates. Current approach of periodic MAC table retrieval by polling and compare to find the MAC latest updates is costly in the scale scenarios. In the new approach STATE_DB FDB_TABLE MAC processing is event driven at MclagSyncd and no periodic polling is done. + +#### 3.6.1.2 Removal of FDB table in MclagSyncd +With the above change to event-driven updates, MclagSyncd no longer needs a local FDB table copy - it can update directly between ICCPd and FdbOrch. + +#### 3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE + +In current implementation MclagSyncd updates the MAC addresses into the existing APP_DB FDB_TABLE. In this enhancement, a new APP_DB MCLAG_FBD_TABLE is used. This allows clients to distinguish between local and remote (ICCP received) MAC address. + +#### 3.6.1.4 Populating ICCP and MCLAG interface state information + +MclagSyncd is extended to receive the ICCP session related information from ICCPd and to populate this information in STATE_DB STATE_MCLAG_TABLE. MclagSyncd also receives MCLAG remote interface information which is populated in STATE_DB STATE_MCLAG_REMOTE_INTF_TABLE. + +### 3.6.2 MCLAG config handling +MclagSyncd will be enhanced to listen to CONFIG_DB changes in MCLAG domain table and MCLAG_INTF_TABLE and notify ICCPd. ICCPd is enhanced to process the configuration and handle config changes accordingly. + +## 3.7 SAI +### 3.7.1 Port Isolation +The following SAI definitions will be used and no enhancements necessary + +- https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h + +## 3.8 CLI +### 3.8.1 Click based CLI + +#### 3.8.1.1 Configuration commands + +Two new sets of configuration commands are introduced to configure MCLAG domain attributes and domain's MCLAG interfaces + +##### 3.8.1.1.1 MCLAG Domain configuration +``` +config mclag {add | del} \ \ \ \ [\] + +- domain-id MCLAG node's unique domain-id + +- local_ip MCLAG node's local ipv4 address + +- peer_ip MCLAG node's peer ipv4 address + +- peer_ifname MCLAG peer interface name; optional for L3 MCLAG, mandatory for L2 MCLAG config + +``` + + +##### 3.8.1.1.2 MCLAG interface configuration +``` +config mclag member {add | del} \ + +- comma seperated MCLAG interfaces for given MCLAG domain; MCLAG interfaces can be only portchannels +``` + +**MCLAG Keepalive/session timeout configuration** +``` +config mclag keepalive-interval \ \ +config mclag session-timeout \ \ + +- keepalive-timer in the range of 1 to 60 seconds with default value of 1 seconds. +- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds +- session-timeout should be at least greater than 3 times keepalive-timer value +``` +##### 3.8.1.1.3 MCLAG unique IP configuration +``` +config mclag unique-ip {add | del} + +- Vlan-interface : VLAN interface for which unique IP can be configured. + +``` +### 3.8.2 SONiC CLI + +#### 3.8.2.1 Configuration commands + +Following KLISH based CLI configuration commands are introduced to configure MCLAG domain attributes and MCLAG interfaces. + +##### 3.8.2.1.1 MCLAG Domain configuration +``` +To configure and unconfigure MCLAG domain at global configuration level use below command. Config command creates MCLAG domain and enters domain configuration mode. + +sonic(config)#[no] mclag domain + +domain-id is a integer in the range of 1 to 4095 +``` + + +To configure MCLAG attributes enter MCLAG domain configuration mode and enter following command +``` +sonic(config-mclag-domain)#[no] source-address + +sonic(config-mclag-domain)#[no] peer-address + +sonic(config-mclag-domain)#[no] peer-link +``` + + +To configure MCLAG session keepalive interval and session timeout use following commands +``` +sonic(config-mclag-domain)#[no] keepalive-interval + +sonic(config-mclag-domain)#[no] session-timeout + +- Keepalive interval in the range of 1 to 60 seconds with default value of 1 seconds. + +- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds + +- session-timeout should be multipler of keepalive-timer value + +``` + +##### 3.8.2.1.2 MCLAG Interface configuration + +To configure/unconfigure MCLAG interfaces use following command. MCLAG interfaces can only be portchannels. Configure MCLAG interface under the portchannel interface configuration mode. + +**sonic(config-if-PortChannelx)# [no] mclag [domain-id] + + +#### 3.8.2.2 Show commands + +Following new KLISH based show commands are introduced + +Displays brief information about MCLAG domain + +``` +1. show mclag brief + +Sonic#show mclag brief + + Domain ID : 5 + Role : Active + Session Status : Up + Peer Link Status : Up + Source Address : 192.168.1.1 + Peer Address : 192.168.1.2 + Peer Link : PortChannel30 + Keepalive Interval : 1 secs + Session Timeout : 15 secs + System MAC : b8:6a:97:73:6c:96 + Number of MCLAG Interfaces : 2 + MCLAG Interface Local/Remote Status + PortChannel50 Up/Up + PortChannel60 Up/Up + +``` + +2. **Show mclag interface ** +``` + Sonic#show mclag interface 5 PortChannel50 + Local/Remote Status : Up/Up + IsolateWithPeerLink : Yes + TrafficDisable : No +``` + +# 4 Flow Diagrams +## 4.1 FDB Flow Diagrams +### 4.1.1 Local Static MAC upstream + Below diagram shows the flow for local static MAC addresses upstream to ICCPd. + +![Local Static MAC Update to ICCPd Flow Diagram](images/LocalStaticMacUpdateFlow.png "Local Static MAC upstream to ICCPd Flow Diagram") + +**Figure 3: Local Static MAC upstream to ICCPd Flow Diagram** + +### 4.1.2 Local Dynamic MAC update + Below diagram shows the flow for local dynamic MAC addresses update to ICCPd. + +![Local Dynamic MAC upstream to ICCPd Flow Diagram](images/LocalDynamicMacUpstreamFlow.png "Local Dynamic MAC upstream to ICCPd Flow Diagram") + +**Figure 4: Local Dynamic MAC upstream to ICCPd Flow Diagram** + +### 4.1.3 Remote MAC Processing +Below diagram shows the flow of MAC address programing learned from ICCP. + +![Peer MCLAG MAC programming flow Diagram](images/RemoteMCLAGMacDownload.png "Peer MCLAG MAC programming flow Diagram") + +**Figure 5: Peer MCLAG MAC programming flow Diagram** + +## 4.2 Port Isolation group processing +Below diagram show the flow of Port Isolation group from App DB to SyncD + +![Port Isolation group processing](images/PortIsolationAdd.png "Port Isolation group processing") + +**Figure 6: Port Isolation group processing** + +# 5 Serviceability and Debug +- Existing mclagdctl dump commands output will be extended with additional debug state information. + +Mclagdctl dump state command is added with new field to show the sync state. +``` +Example output: +root@sonic:/home/admin# mclagdctl -i 5 dump state +The MCLAG's keepalive is: OK +**MCLAG info sync is: completed** +Domain id: 5 +Local Ip: 192.168.1.1 +Peer Ip: 192.168.1.2 +Peer Link Interface: PortChannel30 +Keepalive time: 1 +sesssion Timeout : 15 +Peer Link Mac: b8:6a:97:73:6c:96 +Role: Active +MCLAG Interface: PortChannel50 +root@sonic:/home/admin# +``` + Mclagdctl is extended with new option to dump the debug counters information. + +``` +Example Output: +root@sonic:/home/admin# mclagdctl -i 5 dump debug counters +ICCP session down: 1 +Peer link down: 0 +Warmboot: 0 + +ICCP to MclagSyncd TX_OK TX_ERROR +------------------ ----- -------- +PortIsolation 13 0 +MacLearnMode 1 0 +FlushFdb 1 0 +SetIfMac 0 0 +SetFdb 226003 0 +SetL2mc 0 0 +TrafficDistEnable 1 0 +TrafficDistDisable 1 0 +SetIccpState 2 0 +SetIccpRole 1 0 +SetSystemId 0 0 +DelIccpInfo 0 0 +SetRemoteIntfSts 9 0 +DelRemoteIntf 0 0 + +MclagSyncd to ICCP RX_OK RX_ERROR +------------------ ----------- -------- +FdbChange 161616 0 +CfgMclag 1 0 +CfgMclagIface 1 0 + +ICCP to Peer TX_OK RX_OK TX_ERROR RX_ERROR +------------ ----- ----- -------- -------- +SysConfig 2 2 0 0 +AggrConfig 2 1 0 0 +AggrState 7 9 0 0 +MacInfo 160896 142183 0 0 +ArpInfo 0 0 0 0 +L2mcInfo 0 0 0 0 +PoInfo 2 1 0 0 +PeerLinkInfo 2 2 0 0 +Heartbeat 2533 2533 0 0 +Nak 0 0 0 0 +SyncData 2 2 0 0 +SyncReq 1 0 0 0 +Warmboot 0 0 0 0 +IfUpAck 4 3 0 0 + +``` + + + +# 6 Warm Boot Support +- After a warm boot is completed, the FDB table is reconciled with the MCLAG peer. ICCP is extended to advertise the local FDB table. + +# 7 Scalability +- Support scale of 40K MAC addresses. + +# 8 Upgrade/Downgrade considerations + +As part of the current enhancements MCLAG configuration can be provisioned dynamically, MclagSyncd reads the MCLAG configuration from CONFIG_DB and updates to ICCPd. The older way of reading the configuration from configdb.json file during the ICCPd startup is deprecated. + +Upgrade/downgrade from/to the older version is not supported with new enhanced version. + +# 9 Unit Test + +## 9.1 DB table updates +1. Verify that MCLAG configuration of add/delete is updated in CONFIG_DB MCLAG Domain table. +2. Verify that mclag_interface configuration add/delete is updated properly in CONFIG_DB MCLAG interface table. +3. Verify that keep-alive and session-timeout values are updated properly in CONFIG_DB table. +4. Verify that MAC address updates received from peer MCLAG nodes is updated to APP MCLAG FDB table. +5. Verify that ICCP session state information is updated to STATE_MCLAG_TABLE. +6. Verify that MCLAG interface state information is updated to STATE_MCLAG_REMOTE_INTF_TABLE +7. Verify that Unique IP configuration if add/delete is updated in CONFIG_DB MCLAG UNIQUEIP TABLE + +## 9.2 FDB + +1. Verify that MAC address learned locally on orphan port are synced to the peer MCLAG node. +2. Verify that MAC address aged locally on orphan ports are withdrawn to peer MCLAG node. +3. Verify that MAC address learned locally on MCLAG portchannel are synced to the peer MCLAG node. +4. Verify that MAC address aged locally on MCLAG portchannel ports are withdrawn to peer MCLAG node. +5. Verify that when MCLAG portchannel is down MAC addresses pointing to the MCLAG portchannel are updated to point to peer-link interface. +6. Verify that when MClag portchannel is up MAC addresses pointing to peer-link interface are updated to point to MCLAG portchannel. +7. Verify that when peer-link is down MAC addresses pointing to peer-link are deleted on both the MCLAG peer nodes. +8. Verify that when clear FDB is executed local MAC addresses are cleared locally and withdrawn to the peer MCLAG node. Relearn the MAC addresses and advertise to peer MCLAG node. +9. Verify that static MAC configured locally is advertised to peer MCLAG node. +10. Verify that static MAC deleted locally is withdrawn to peer MCLAG node. +11. Verify that in presence of remote static MAC addresses any dynamic local MAC move is not allowed. +12. Verify MAC learn with scale of 40K MAC entries. + +## 9.3 Config handling + +1. Verify MCLAG domain configuration with local, peer ip, peer interface, MCLAG interface configures ICCP +2. Verify adding MCLAG interface to existing MCLAG domain +3. Verify deleting one MCLAG interface from existing MCLAG domain +4. Verify modifying local ip configuration for an existing MCLAG domain +5. Verify modifying peer interface for given MCLAG domain +6. Verify configuration change of MCLAG keep-alive timer value to min/max values are reflected +7. Verify configuration change of MCLAG session timeout value to min/max values are reflected +8. Verify deletion of existing MCLAG domain +9. Verify adding MCLAG domain without peer interface +10. Verify adding MCLAG peer interface later after adding MCLAG domain +11. Verify deleting MCLAG interfaces with synced up MAC addresses and make sure behavior is similar to having MCLAG interface down +12. Verify Unique IP configuration on vlan interface + +## 9.4 Port Isolation + +1. Configure Port Isolation group with members apply it to ingress port. Send unicast and BUM traffic and verify traffic is not seen at any member ports. +2. Dynamically add and delete the Port Isolation group members and verify unicast and BUM traffic again. +3. Remove Port Isolation group from ingress interface and verify traffic unicast and BUM again. +4. Send traffic from interface which doesn't have any port isolation group attached and verify unicast and BUM traffic. + +## 9.5 MCLAG Interface Flap + +1. Verify traffic is disabled until interface up ack is received from remote MCLAG peer when MCLAG interface flaps +2. Verify traffic is re-enabled on MCLAG interface which is waiting for interface up ack from peer when ICCP goes down +3. Verify traffic is disabled on a port when it is added to a MCLAG interface which is waiting for interface up ack from peer +4. Verify traffic is re-enabled on a LAG interface when it is unconfigured as MCLAG interface +5. Verify mclagdctl dump local interface output shows traffic is disabled on MCLAG interface which is waiting for interface up ack from peer + +## 9.6 MCLAG Unique IP enhancements +1. Verify ARP and ND Sync. +2. Verify IPv4 and IPv6 routing with traffic +3. Veirfy Ping / Ping6 between Peer nodes VLAN interface +4. Veirfy Ping / Ping6 between Peer node VLAN interface and MCLAG Client device +5. Verify BGP session up on VLAN interface. + From ad37d709a1f4a6c789908c71e50b1da70b484c96 Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Tue, 19 May 2020 16:02:20 -0700 Subject: [PATCH 5/9] Addressed review comments Updated HLD to address community HLD review comments. --- doc/mclag/MCLAG_Enhancements_HLD.md | 10 +- doc/mclag/MCLAG_Enhancements_HLD_old.md | 809 ------------------------ 2 files changed, 7 insertions(+), 812 deletions(-) delete mode 100644 doc/mclag/MCLAG_Enhancements_HLD_old.md diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index 6e33a95d121..6e3d12fb785 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -192,6 +192,8 @@ The following improvements are made in this enhancement: To control the BUM traffic towards the MHD bridge-port isolation groups is used. The isolation group is applied on the ingress side of peer-link port to filter traffic towards the MHD to avoid duplicate traffic received at MHD. +Existing ACL based support will continue to support. + ### 2.1.9 Unique IP enhancements - Current design mandates configuring same IP address on the VLAN interface for each VLAN of which an MCLAG is a member. @@ -417,6 +419,8 @@ When MCLAG node learns a new MAC address via ICCP from peer MCLAG node ( MAC lea ### 3.3.4 Port Isolation changes In this enhancement, the port isolation logic is updated to use [SAI Port Isolation](https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h) instead of Egress ACL. Using isolation group, unwanted traffic can be dropped at the ingress, i.e. before it gets queued etc. This will give better performance as unnecessary traffic will filtered at ingress. +MclagSyncd is enhanced to check the platform capabilities for Isolationgroup support, platform not supporting isolation group will continue to use existing approach of using ACL's. + ### 3.3.5 MCLAG Domain State To support applications running over MCLAG, MCLAG domain states such as ICCP state, active and standby role, system MAC, and remote MCLAG interface state are populated in the STATE_DB for applications to consume. @@ -496,7 +500,9 @@ MclagSyncd will be enhanced to listen to CONFIG_DB changes in MCLAG domain table ## 3.7 SAI ### 3.7.1 Port Isolation -The following SAI definitions will be used and no enhancements necessary +For controlling the BUM traffic received on the peer_link towards MCLAG portChannels, one isolation group is allocated of type SAI_ISOLATION_GROUP_TYPE_BRIDGE_PORT. All MCLAG PortChannel member ports get added to MLCAG isolation group , ports are set with attribute SAI_BRIDGE_PORT_ATTR_ISOLATION_GROUP. + +The following SAI definitions will be used and no enhancements necessary. - https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h @@ -729,9 +735,7 @@ IfUpAck 4 3 0 0 ``` -- MCLAG debug guide can be referred for trouble shooting issues. Below is the link to debug guide. - https://docs.google.com/document/d/1exNQ1po7TYmVtctq59aSUeBsZYKctbHMkwStNVNgSrU/edit # 6 Warm Boot Support - After a warm boot is completed, the FDB table is reconciled with the MCLAG peer. ICCP is extended to advertise the local FDB table. diff --git a/doc/mclag/MCLAG_Enhancements_HLD_old.md b/doc/mclag/MCLAG_Enhancements_HLD_old.md deleted file mode 100644 index 878e73398d0..00000000000 --- a/doc/mclag/MCLAG_Enhancements_HLD_old.md +++ /dev/null @@ -1,809 +0,0 @@ -# MCLAG Enhancements -Rev 0.1 - -# Table of Contents -- **[List of Tables](#List-of-Tables)** -- **[Revision](#Revision)** -- **[About this Manual](#About-this-Manual)** -- **[Definition/Abbreviation](#DefinitionAbbreviation)** - - - [Table 1: Abbreviations](#Table-1:-Abbreviations) -- **[1 Feature Overview](#1-Feature-Overview)** - - [1.1 Functional Requirements](#1_1-Functional-Requirements) - - [1.1.1 Static MAC support over MCLAG](#1_1_1-Static-MAC-support-over-MCLAG) - - [1.1.2 Configuration and Management Requirements](#1_1_2-Configuration-and-Management-Requirements) - - [1.1.3 Performance and Scalability Requirements](#1_1_3-Performance-and-Scalability-Requirements) - - [1.1.4 Warm Boot Requirements](#1_1_4-Warm-Boot-Requirements) - - [1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements](#1_1_5-Unique-IP-for-supporting-L3-protocol-over-MCLAG-VLAN-interface-Requirements) -- **[2 Functionality](#2-Functionality)** - - [2.1 Functional Description](#2_1-Functional-Description) - - [2.1.1 Dynamic configuration of MCLAG](#2_1_1-Dynamic-configuration-of-MCLAG) - - [2.1.2 Dynamic configuration of mclag_interface](#2_1_2-Dynamic-configuration-of-mclag_interface) - - [2.1.3 Keep-alive timer configuration](#2_1_3-Keep-alive-timer-configuration) - - [2.1.4 Session timeout configuration](#2_1_4-Session-timeout-configuration) - - [2.1.5 Static MAC support](#2_1_5-Static-MAC-support) - - [2.1.6 Aging disable for ICCP learned MAC addresses](#2_1_6-Aging-disable-for-ICCP-learned-MAC-addresses) - - [2.1.7 Performance improvements](#2_1_7-Performance-improvements) - - [2.1.8 Isolation group support](#2_1_8-Isolation-group-support) - - [2.1.9 Unique IP enhancements](#2_1_9-Unique-IP-enhancements) -- **[3 Design](#3-Design)** - - [3.1 Overview](#3_1-Overview) - - [3.2 DB Changes](#3_2-DB-Changes) - - [3.2.1 CONFIG DB](#3_2_1-CONFIG-DB) - - *[3.2.1.1 MCLAG Domain table](#3_2_1_1-MCLAG-Domain-table)* - - *[3.2.1.2 MCLAG Interface Table](#3_2_1_2-MCLAG-Interface-Table)* - - *[3.2.1.3 MCLAG UniqueIP Table](#3_2_1_3-MCLAG-UniqueIP-Table)* - - [3.2.2 APP DB](#3_2_2-APP-DB) - - *[3.2.2.1 ISOLATION_GROUP_TABLE table](#3_2_2_1-ISOLATION_GROUP_TABLE-table)* - - *[3.2.2.2 APP_LAG_TABLE](#3_2_2_2-APP_LAG_TABLE)* - - *[3.2.2.3 APP_MCLAG_FDB_TABLE](#3_2_2_3-APP_MCLAG_FDB_TABLE)* - - [3.2.3 STATE DB](#3_2_3-STATE-DB) - - *[3.2.3.1 STATE_MCLAG_TABLE](#3_2_3_1-STATE_MCLAG_TABLE)* - - *[3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE](#3_2_3_2-STATE_MCLAG_REMOTE_INTF_TABLE)* - - *[3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE](#3_2_3_3-STATE_MCLAG_ARP_FDB_TABLE)* - - [3.3 ICCP Changes](#3_3-ICCP-Changes) - - [3.3.1 MCLAG interface flap handling](#3_3_1-MCLAG-interface-flap-handling) - - [3.3.2 MCLAG configuration change handling](#3_3_2-MCLAG-configuration-change-handling) - - [3.3.3 FDB handling changes](#3_3_3-FDB-handling-changes) - - *[3.3.3.1 Static MAC handling](#3_3_3_1-Static-MAC-handling)* - - *[3.3.3.2 Data structure and data type modifications](#3_3_3_2-Data-structure-and-data-type-modifications)* - - *[3.3.3.3 MAC sync optimizations](#3_3_3_3-MAC-sync-optimizations)* - - [3.3.4 Port Isolation changes](#3_3_4-Port-Isolation-changes) - - [3.3.5 MCLAG Domain State](#3_3_5-MCLAG-Domain-State) - - [3.3.6 Unique IP Changes](#3_3_6-Unique-IP-Changes) - - [3.4 Switch State Service Design](#3_4-Switch-State-Service-Design) - - [3.4.1 Orchestration Agent](#3_4_1-Orchestration-Agent) - - *[3.4.1.1 Isolation group orch agent](#3_4_1_1-Isolation-group-orch-agent)* - - *[3.4.1.2 PortsOrch Changes](#3_4_1_2-PortsOrch-Changes)* - - *[3.4.1.3 FdbOrch Changes](#3_4_1_3-FdbOrch-Changes)* - - *[3.4.1.4 MCLAG ARP MAC update to Kernel](#3_4_1_4-MCLAG-ARP-MAC-update-to-Kernel)* - - [3.5 SyncD](#3_5-SyncD) - - [3.6 MclagSyncD](#3_6-MclagSyncD) - - [3.6.1 FDB Changes](#3_6_1-FDB-Changes) - - *[3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE](#3_6_1_1-Local-MAC-upstream-using-STATE_DB-FDB_TABLE)* - - *[3.6.1.2 Removal of FDB table in MclagSyncd](#3_6_1_2-Removal-of-FDB-table-in-MclagSyncd)* - - *[3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE](#3_6_1_3-Populating-ICCP-MAC-updates-to-APP_DB-MCLAG_FDB_TABLE)* - - *[3.6.1.4 Populating ICCP and MCLAG interface state information](#3_6_1_4-Populating-ICCP-and-MCLAG-interface-state-information)* - - [3.6.2 MCLAG config handling](#3_6_2-MCLAG-config-handling) - - [3.7 SAI](#3_7-SAI) - - [3.7.1 Port Isolation](#3_7_1-Port-Isolation) - - [3.8 CLI](#3_8-CLI) - - [3.8.1 Click based CLI](#3_8_1-Click-based-CLI) - - *[3.8.1.1 Configuration commands](#3_8_1_1-Configuration-commands)* - - *[3.8.1.1.1 MCLAG Domain configuration](#3_8_1_1_1-MCLAG-Domain-configuration)* - - *[3.8.1.1.2 MCLAG interface configuration](#3_8_1_1_2-MCLAG-interface-configuration)* - - *[3.8.1.1.3 MCLAG unique IP configuration](#3_8_1_1_3-MCLAG-unique-IP-configuration)* - - [3.8.2 SONiC CLI](#3_8_2-SONiC-CLI) - - *[3.8.2.1 Configuration commands](#3_8_2_1-Configuration-commands)* - - *[3.8.2.1.1 MCLAG Domain configuration](#3_8_2_1_1-MCLAG-Domain-configuration)* - - *[3.8.2.1.2 MCLAG Interface configuration](#3_8_2_1_2-MCLAG-Interface-configuration)* - - *[3.8.2.2 Show commands](#3_8_2_2-Show-commands)* -- **[4 Flow Diagrams](#4-Flow-Diagrams)** - - [4.1 FDB Flow Diagrams](#4_1-FDB-Flow-Diagrams) - - [4.1.1 Local Static MAC upstream](#4_1_1-Local-Static-MAC-upstream) - - [4.1.2 Local Dynamic MAC update](#4_1_2-Local-Dynamic-MAC-update) - - [4.1.3 Remote MAC Processing](#4_1_3-Remote-MAC-Processing) - - [4.2 Port Isolation group processing](#4_2-Port-Isolation-group-processing) -- **[5 Serviceability and Debug](#5-Serviceability-and-Debug)** -- **[6 Warm Boot Support](#6-Warm-Boot-Support)** -- **[7 Scalability](#7-Scalability)** -- **[8 Upgrade/Downgrade considerations](#8-UpgradeDowngrade-considerations)** -- **[9 Unit Test](#9-Unit-Test)** - - [9.1 DB table updates](#9_1-DB-table-updates) - - [9.2 FDB](#9_2-FDB) - - [9.3 Config handling](#9_3-Config-handling) - - [9.4 Port Isolation](#9_4-Port-Isolation) - - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) - - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) - - - -# List of Tables - -[Table 1: Abbreviations](#table-1-abbreviations) - -# Revision -| Rev | Date | Author | Change Description | -| ---- | ---------- | ---------------------------------------- | ------------------ | -| 0.1 | 08/02/2019 | Lisa Nguyen, Praveen Elagala, Abhishek Dharwadkar, Sabarivel Sakthivel, Adam Yeung | Initial draft | -| 0.2 | 10/22/2019 | Tapash Das | L3 Protocol support enhancement | - -# About this Manual -This document provides general information about SONiC MCLAG feature enhancements. The original MCLAG feature is described at https://github.com/Azure/SONiC/blob/f478fe7cbc03c144f3b147e9638f460f764ce4b7/doc/Sonic-mclag-hld.md - - -# Definition/Abbreviation -## Table 1: Abbreviations -| **Term** | **Definition** | -| -------- | ------------------------------------ | -| MCLAG | Multi-Chassis Link Aggregation Group | -| ICCP | Inter-Chassis Communication Protocol | -| FDB | Layer-2 (MAC) based forwarding table | - -# 1 Feature Overview - -This document captures the feature enhancements of SONiC ICCP MCLAG. This includes data structure changes, MAC event handling optimizations for scaling performance, support of static MAC address over MCLAG, Support bridge-port isolation group for BUM control to MCLAG, and traffic recovery sequencing for traffic loop prevention. - -## 1.1 Functional Requirements - -### 1.1.1 Static MAC support over MCLAG -- Advertise locally configured Static MAC address to peer MCLAG node -- Withdraw MAC from peer MCLAG node when static MAC address is un-configured -- Dynamic MAC move is prohibited on Static MAC over MCLAG - -### 1.1.2 Configuration and Management Requirements -- Add CLI to configure MCLAG domain and corresponding attributes domain-id, local-ip-address and peer-ip-address - -- Add CLI to configure optional attribute [peer-interface] - -- Add CLI to configure keep-alive timer value - -- Add CLI to configure session-timeout value - -- Add CLI to support addition/deletion of mclag_interfaces - -### 1.1.3 Performance and Scalability Requirements -- Optimize code flow and data structures to improve scaling performance -- Support 40K FDB entries -- Support 4K VLAN's - -### 1.1.4 Warm Boot Requirements -- MCLAG peer nodes should reconcile the local FDB table upon completion of warm boot, as the MAC learn and age updates from peer would be lost during the time ICCP control session is down due to warm boot. - -### 1.1.5 Unique IP for supporting L3 protocol over MCLAG VLAN interface Requirements -- For vlans associated with MCLAG interface, allow configuration of Unique IP address on VLAN interface of Peer nodes. -- Provide mechanism for running L3 protocols such as BGP, BFD between both Peer nodes VLAN interface. -- Provide mechanism for running L3 protocols such as BGP, BFD between Peer node VLAN interface and device connected to MCLAG Client. -- For MCLAG gateway functionality (Data path) Static Anycast Gateway (SAG) or VRRP configuration will be mandatory, SAG is preferred for active-active forwarding. - -# 2 Functionality - -## 2.1 Functional Description -### 2.1.1 Dynamic configuration of MCLAG -- Current MCLAG configuration is generated from config_db.json file with no CLI support. New CLIs will be added to configure MCLAG which includes domain-id, local ip address, peer ip address and peer_link. peer_link configuration is mandatory for Layer2 MCLAG while optional for Layer3 MCLAG. - -### 2.1.2 Dynamic configuration of mclag_interface -- In the current implementation the mclag_interfaces configuration is generated from config_db.json file no CLI support is present, a new configuration command is introduced to dynamically add/delete the mclag_interfaces. - -### 2.1.3 Keep-alive timer configuration -- In current implementation the keep-alive timer is hardcoded to 1 second. A new CLI command will be introduced to allow the configuration of range of values for keep-alive timer. - -### 2.1.4 Session timeout configuration -- In current implementation the session time out 15 seconds after the last keep-alive messages exchange, the timeout duration is hardcoded. A new CLI command will be added to allow a configurable duration for session timeout, session timeout has to be configured in multiples keep-alive timer value. - -### 2.1.5 Static MAC support -- Current implementation does not support static MAC address over MCLAG. Static MAC information is not exchanged in the FDB TLV between the MCLAG peer nodes. Changes will be added to support Static MAC with TLV. -- Changes will be added to support the static MAC syncing from local MCLAG node to peer MCLAG node. -- Changes will be added to handle the MAC move scenarios in presence of remote Static MAC. - -### 2.1.6 Aging disable for ICCP learned MAC addresses -- In the current implementation, MAC addresses learned in the control plane from the MCLAG peer are installed as dynamic entries. Therefore, if no local traffic from these MAC addresses is seen for the ageing period then they will age out, causing a notification back to ICCPd. However if the mac is learned from peer then it will immediately re-program MAC . The result is transient flooding for the MAC and some unnecessary control plane overhead. -- When the local MCLAG node learns the MAC addresses from peer MCLAG node the type of the MAC set as dynamic. For the remote MAC addresses learned via ICCP if no traffic received on local MCLAG interface MAC addresses get age out from HW. ICCPd process the age notifications as the MAC address is peer learned re-installs MAC address back to HW. Transient traffic flooding can occur during remote MAC re-installation. -- The process of remote MAC aging and re-installation is repetitive causing un-necessary messaging between modules and processing. -- To suppress the unwanted MAC age events, the new implementation programs remote MAC addresses with aging disabled. For the MAC address learned from ICCPd, FdbOrch to set new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE while programming, which causes SAI to not age out the MAC, but allows it to move. - -### 2.1.7 Performance improvements - -The following improvements are made in this enhancement: - -- Convert FDB and VLAN related linked list to binary trees to improve scaling performance -- When MCLAG node learns a new MAC address via ICCP from peer MCLAG node learned over remote orphan port, it sends a age notification back to peer to indicate MAC is locally aged, this updated is not necessary as MAC not learned locally. Avoid sending the local age notification back to peer MCLAG node each time a MAC address is learned from peer. - -### 2.1.8 Isolation group support - -To control the BUM traffic towards the MHD bridge-port isolation groups is used. The isolation group is applied on the ingress side of peer-link port to filter traffic towards the MHD to avoid duplicate traffic received at MHD. - -### 2.1.9 Unique IP enhancements - -- Current design mandates configuring same IP address on the VLAN interface for each VLAN of which an MCLAG is a member. -- L3 protocols such as BGP, BFD, VRRP etc cannot be configured on the VLAN interface associated with MCLAG interface because such protocols cannot address the individual routers. -- A new configuration command is introduced for allowing separate per-peer IP configuration on the VLAN interfaces associated with MCLAG interface. -- Both same IP configuration and unique IP configuration will co-exist based on the new configuration. - - -# 3 Design - -## 3.1 Overview -New changes will be added on top of the existing MCLAG implementation. -Following diagram captures the high level module changes made for the MCLAG enhancements. - -![Design overview diagram](images/DesignOverviewDiagram.png "Overview of module changes") - -**Figure 1: Overview of module changes** - -Below is the summary of the changes for each flow number mentioned in the above diagram. - -1. New CLI commands are introduced to configure MCLAG and its related attributes. Two new tables are added in CONFIG_DB to store the MCLAG configuration and mclag_interface configuration generated from CLI. -2. MclagSyncd receives the new MCLAG configuration updates. -3. MclagSyncd receives new local (both static and dynamic) MAC updates from STATE_DB FDB_TABLE -4. MclagSyncd sends new MCLAG configuration to ICCPd. -5. ICCPd sends new remote static MAC updates, ICCP session and MCLAG remote interface state information updates to MclagSyncd. -6. ICCPd sets new static MAC flag in FDB TLV for local static MAC addresses advertisement. -7. MclagSyncd updates ICCP session and MCLAG remote interface state information to STATE_DB FDB_TABLE and MCLAG_REMOTE_INTF_TABLE -8. MclagSyncd updates MAC addresses learned from peer MCLAG node to new MCLAG FDB table . -9. FdbOrch registers for new MCLAG FDB table updates to process MAC updates from peer MCLAG node, ISOGRP Orch process new updates from MclagSyncd. -10. FdbOrch updates remote MAC addresses with new SAI attribute not to age out them. -11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . -12. Syncd programs the remote MAC to HW -13. FdbOrch registers with NeighborOrch for all the ICCP learned remote MAC addresses. -14. NeighborOrch update the MAC address to STATE_DB MCLAG ARP MAC Table. -15. FdbSycd gets the MAC updates from STATE_DB MCLAG ARP MAC Table. -16. FdbSyncd programs the MAC updates to kernel. - -## 3.2 DB Changes - -### 3.2.1 CONFIG DB -#### 3.2.1.1 MCLAG Domain table - -Producer: Configuration -Consumer: MclagSyncd -Description: New table to store MCLAG domain configuration. Applications can use it to get MCLAG configuration - -``` -;New MCLAG Domain Table -key = MCLAG_DOMAIN|domain_id ; DIGIT 1-4095 - -;field = value -source_ip = IP ; local ip address -peer_ip = IP ; peer ip address -peer_link = port_name ; peer link name -keepalive_interval = time_in_secs ; keepalive time in seconds -session_timeout = time_in_secs ; session timeout in multiple of - ; keepalive_interval. - -;value annotations -port_name = 1*64VCHAR ; name of the port, must be unique -time_in_secs = dec-octet ; time in seconds -IP = IPV4address -IPv4address = dec-octet "." dec-octet "." dec-octet "." dec-octet " - - dec-octet = DIGIT ; 0-9 - / %x31-39 DIGIT ; 10-99 - / "1" 2DIGIT ; 100-199 - / "2" %x30-34 DIGIT ; 200-249 - / "25" %x30-35 ; 250-255 -``` -#### 3.2.1.2 MCLAG Interface Table - -Producer: Configuration -Consumer: MclagSyncd -Description: New table to store MCLAG interfaces for a MCLAG domain. MCLAG applications can query this table to check whether a interface is configured as MCLAG interface - -``` -;New MCLAG Interface Table -key = MCLAG_INTERFACE|domain_id|ifname ; - -;value annotations -domain_id = DIGIT 1-4095 ; domain_id for the MCLAG -ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) - -``` - -#### 3.2.1.3 MCLAG UniqueIP Table - -Producer: Configuration -Consumer: MclagSyncd -Description: New table to store L3 VLAN interfaces that will have unique IP configuration. MCLAG applications can query this table to check whether a interface is configured for L3 protocol support. - -``` -;New MCLAG UniqueIP Table -key = MCLAG_UNIQUEIP_TABLE|ifname ; Only VLAN interface supported currently - -``` - -### 3.2.2 APP DB - -#### 3.2.2.1 ISOLATION_GROUP_TABLE table - -Producer: MclagSyncd -Consumer: Isolation Group Orch Agent -Description: Isolation group table contains information about the Isolation group type, members and ports. - -``` -key = ISOLATION_GROUP_TABLE:name - -;field = value -Description = 1*255VCHAR -TYPE = "port" / "bridge-port" -PORTS = [0-max_ports]*port_name ; Ports on which this port isolation group - ; is applied -MEMBERS = [0-max_ports]*port_name ; Port isolation group members - -;value annotations -port_name = 1*64VCHAR ; name of the port, must be unique -max_ports = 1*5DIGIT ; number of ports supported on the chip -``` - -#### 3.2.2.2 APP_LAG_TABLE -``` -;Add one new attribute to existing LAG_TABLE to control whether traffic collection and distribution should be disabled for all LAG member ports. -traffic_disable = "true"/"false" ;default is false -``` -#### 3.2.2.3 APP_MCLAG_FDB_TABLE - -Producer: MclagSyncd -Consumer: FdbOrch agent -Description: New table to stores the MAC addresses learned via ICCP. FdbOrch processes the FDB updates to program in HW. - -``` -; Stores MCLAG FDB entries which were learned via ICCP -; Notes: -; - only unicast FDB entries supported -key = FDB_TABLE:"Vlan"vlanid:mac_address ; -;fields -port = ifName ; interface where the entry is bound to -type = "static" / "dynamic" ; type of the entry -``` - -### 3.2.3 STATE DB - -#### 3.2.3.1 STATE_MCLAG_TABLE -Producer: MclagSyncd -Consumer: Applications over MCLAG -Description: New table to provide MCLAG domain states to applications running over MCLAG - -``` -;New STATE_MCLAG_TABLE -key = MCLAG_TABLE|domain_id -;value annotations -domain_id = DIGIT 1-4095 ; domain_id for the MCLAG -;fields -oper_status = "down"/"up" -role = "active"/"standby" -system_mac = 12HEXDIG -``` -#### 3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE -Producer: MclagSyncd -Consumer: Applications over MCLAG -Description: New table to provide remote MCLAG interface state received by ICCP -Schema: - -``` -; New STATE_MCLAG_REMOTE_INTF_TABLE -key = MCLAG_REMOTE_INTF_TABLE|domain_id|ifname -oper_status = "down"/"up" - -;value annotations -domain_id = DIGIT 1-4095 ; domain_id for the MCLAG -ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) - -``` - -#### 3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE - -Producer: FdbOrch -Consumer: NeighborOrch -Description: New table to populate the ICCP learned remote MAC entries which have ARP entries are associated. -Schema: - -``` -; New STATE_MCLAG_ARP_FDB_TABLE -key = MCLAG_ARP_FDB_TABLE:"Vlan"vlanid:mac_address - -;value annotations -vlanid = DIGIT 1-4095 ; VLAN id. -mac_address = 12HEXDIG ; MAC address. - -;fields -port = 1*64VCHAR ; name of the L2 Port -type = "static/dynamic" ; tpye of the MAC address. - -``` - - - -## 3.3 ICCP Changes -### 3.3.1 MCLAG interface flap handling - -In the current implementation, in normal operation, a port isolation filter is applied on both peers to ensure that traffic received from the peer-link is never forwarded to local MCLAG member ports. This ensures loop-free and packet duplication-free operation. Then, if all ports in an MCLAG on one peer go down (MCLAG PortChannel is down), this filter is removed on the other peer, allowing traffic destined to the MCLAG to cross the peer link, maintaining connectivity to the MCLAG. Later, when at least one member port comes back up (MCLAG PortChannel is up) on the first peer, then the filter must be re-applied on the other peer. However, this can cause transient loops if the MCLAG member ports come up before the filter is re-applied on the remote peer. - -In this enhancement, acknowledgements are added to interface state notifications in ICCP, and these are used to ensure that the remote filter is applied before enabling traffic on the upcoming MCLAG member interface(s), thereby eliminating the possibility of loops and duplicates. - -### 3.3.2 MCLAG configuration change handling -ICCP is extended to dynamically handle changes in MCLAG configurations. In the current implementation, MCLAG config attributes local ip, peer ip, peer interface and MCLAG interface configuration has to be done prior to bringing up ICCP docker. To handle configuration changes, MclagSyncd subscribes to CONFIG_DB MCLAG changes, saves configuration data in internal cache and notifies ICCPd. In this enhancement, Pre-provisioning support for MCLAG interfaces and peer interfaces is added. - - -### 3.3.3 FDB handling changes -ICCPd will be extended to support static MAC addresses, data structure changes, data type changes and MAC syncing optimizations. More details are captured in the below sections. - -#### 3.3.3.1 Static MAC handling -Changes will be added to extend the current FDB TLV to notify with a static MAC flag. ICCP MAC processing will be extended for local and remote static MAC addresses handling. Local and remote static MAC move scenarios will be handled. - -#### 3.3.3.2 Data structure and data type modifications -In current ICCPd implementation MAC entries are stored in linked lists which can be costly in MAC scale scenarios for lookups. The existing linked list structures will be modified to binary trees for better add, delete and lookup operations. The MAC address entry is stored as 32 byte string in the messaging and local cache, the address will be converted to 6 bytes to optimize the space messages size while syncing the MAC addresses between MCLAG peer nodes. - -#### 3.3.3.3 MAC sync optimizations -When MCLAG node learns a new MAC address via ICCP from peer MCLAG node ( MAC learned on remote orphan port ), MAC address is added locally and an age notification is sent back to peer MCLAG node. These age notifications are not required to be sent, additional checks are added to stop sending such unwanted MAC updates. - -### 3.3.4 Port Isolation changes -In this enhancement, the port isolation logic is updated to use [SAI Port Isolation](https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h) instead of Egress ACL. Using isolation group, unwanted traffic can be dropped at the ingress, i.e. before it gets queued etc. This will give better performance as unnecessary traffic will filtered at ingress. - -### 3.3.5 MCLAG Domain State -To support applications running over MCLAG, MCLAG domain states such as ICCP state, active and standby role, system MAC, and remote MCLAG interface state are populated in the STATE_DB for applications to consume. - -### 3.3.6 Unique IP Changes -To support Unique IP configuration on VLAN interface for the VLAN's associated with MCLAG interface following changes will be done. -- In Standby node, disable active node's MAC programming into MY Station TCAM. Also disable updating VLAN interface MAC in kernel. -- Add code to Sync VLAN interface MAC between Peers and program L2 Table with Peers VLAN interface MAC pointing to Peer Link. This is required since MAC learning is disabled for Peer Link. -- Add code to do ARP/ND sync for Local VLAN interface IP. - -For MCLAG gateway functionality (Data path) Static Anycast Gateway or VRRP configuration will be mandatory. - -## 3.4 Switch State Service Design - -### 3.4.1 Orchestration Agent - -#### 3.4.1.1 Isolation group orch agent - -A new isolation group orch agent will be added. Isolation group orch agent is the consumer of ISOLATION_GROUP_TABLE in APP DB. MclagSyncd will produce the isolation group configuration in the APP DB and isolation group will program it in the ASIC DB. Only bridge port isolation group will be supported and will be used by MclagSyncd. - -#### 3.4.1.2 PortsOrch Changes - -To allow ICCP to control when traffic should be enabled on a LAG interface, PortsOrch is extended to support a new traffic disable attribute. When traffic disable attribute is set to true, LAG members are not added to hardware. They are kept in a temporary set until the traffic disable attribute is set to false. - - -#### 3.4.1.3 FdbOrch Changes - -As part of enhancements MclagSyncd populates the ICCP learned MAC addresses into the APP_DB MCLAG_FDB_TABLE instead of populating to APP_FDB_TABLE, FdbOrch registers to APP_DB MCLAG_FDB_TABLE to process the MAC updates from ICCP. - -Advertised FDB cache entries will now be marked about the learn source, MAC entries learned from APP_DB MCLAG_FDB_TABLE will be marked as learned from ICCP, these MAC addresses will be updated to ASIC_DB FDB_TABLE with new SAI attributes. - -Advertised FDB entries with type static will be programmed to HW similar to local static MAC addresses to avoid any dynamic MAC move to other interfaces. - -When a static MAC address is configured locally and same MAC address is learned as advertised, FdbOrch to discard moving the MAC address. When static MAC address is deleted FdbOrch to re-program the advertised MAC address to HW. - -If the ICCP learned MAC is static, then any dynamic MAC move will be discarded by FdbOrch. - -#### 3.4.1.4 MCLAG ARP MAC update to Kernel - -ARP entries present in the system will need the associated MAC entries to be programmed in kernel to allow the local system and applications to reach the associated IP address. When ICCP receives a MAC update, if an ARP entry is associated with the MAC address then the MAC address needs to be programmed in kernel. FdbOrch notifies NeighborOrch when MAC is learned via ICCP and NeighborOrch updates the MCLAG_ARP_FDB_TABLE in STATE_DB accordingly. FDBSyncd subscribes to this table and programs the kernel as required. A similar path is used to update kernel MAC entry If there is an interface change associated with the MAC or when the MAC address is deleted. - -Below Diagram show the remote ICCP MAC update to Kernel. - -![MCLAG ARP MAC kernel update Diagram](images/MclagArpFdbKernelUpdate.png "MCLAG ARP interested MAC kernel programming Flow") - -**Figure 2: MCLAG ARP interested MAC kernel programming Flow** - -## 3.5 SyncD -No change to SyncD - -## 3.6 MclagSyncD -### 3.6.1 FDB Changes -MclagSyncd is extended to optimize the FDB events handling. - -The changes include: - - -- sending local MAC updates to ICCPd from STATE_DB FDB_TABLE instead of ASIC_DB FDB_TABLE -- sending of the MAC entries is event driven instead of the periodic 60 seconds polling -- removal of the FDB cache in the MclagSyncd -- adding the ICCP learned MAC addresses to APP_DB MCLAG_FDB_TABLE - -#### 3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE -To distribute the local MAC addresses to ICCPd MclagSyncd will now listen for the STATE_DB FDB_TABLE updates. Current approach of periodic MAC table retrieval by polling and compare to find the MAC latest updates is costly in the scale scenarios. In the new approach STATE_DB FDB_TABLE MAC processing is event driven at MclagSyncd and no periodic polling is done. - -#### 3.6.1.2 Removal of FDB table in MclagSyncd -With the above change to event-driven updates, MclagSyncd no longer needs a local FDB table copy - it can update directly between ICCPd and FdbOrch. - -#### 3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE - -In current implementation MclagSyncd updates the MAC addresses into the existing APP_DB FDB_TABLE. In this enhancement, a new APP_DB MCLAG_FBD_TABLE is used. This allows clients to distinguish between local and remote (ICCP received) MAC address. - -#### 3.6.1.4 Populating ICCP and MCLAG interface state information - -MclagSyncd is extended to receive the ICCP session related information from ICCPd and to populate this information in STATE_DB STATE_MCLAG_TABLE. MclagSyncd also receives MCLAG remote interface information which is populated in STATE_DB STATE_MCLAG_REMOTE_INTF_TABLE. - -### 3.6.2 MCLAG config handling -MclagSyncd will be enhanced to listen to CONFIG_DB changes in MCLAG domain table and MCLAG_INTF_TABLE and notify ICCPd. ICCPd is enhanced to process the configuration and handle config changes accordingly. - -## 3.7 SAI -### 3.7.1 Port Isolation -The following SAI definitions will be used and no enhancements necessary - -- https://github.com/opencomputeproject/SAI/blob/master/inc/saiisolationgroup.h - -## 3.8 CLI -### 3.8.1 Click based CLI - -#### 3.8.1.1 Configuration commands - -Two new sets of configuration commands are introduced to configure MCLAG domain attributes and domain's MCLAG interfaces - -##### 3.8.1.1.1 MCLAG Domain configuration -``` -config mclag {add | del} \ \ \ \ [\] - -- domain-id MCLAG node's unique domain-id - -- local_ip MCLAG node's local ipv4 address - -- peer_ip MCLAG node's peer ipv4 address - -- peer_ifname MCLAG peer interface name; optional for L3 MCLAG, mandatory for L2 MCLAG config - -``` - - -##### 3.8.1.1.2 MCLAG interface configuration -``` -config mclag member {add | del} \ - -- comma seperated MCLAG interfaces for given MCLAG domain; MCLAG interfaces can be only portchannels -``` - -**MCLAG Keepalive/session timeout configuration** -``` -config mclag keepalive-interval \ \ -config mclag session-timeout \ \ - -- keepalive-timer in the range of 1 to 60 seconds with default value of 1 seconds. -- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds -- session-timeout should be at least greater than 3 times keepalive-timer value -``` -##### 3.8.1.1.3 MCLAG unique IP configuration -``` -config mclag unique-ip {add | del} - -- Vlan-interface : VLAN interface for which unique IP can be configured. - -``` -### 3.8.2 SONiC CLI - -#### 3.8.2.1 Configuration commands - -Following KLISH based CLI configuration commands are introduced to configure MCLAG domain attributes and MCLAG interfaces. - -##### 3.8.2.1.1 MCLAG Domain configuration -``` -To configure and unconfigure MCLAG domain at global configuration level use below command. Config command creates MCLAG domain and enters domain configuration mode. - -sonic(config)#[no] mclag domain - -domain-id is a integer in the range of 1 to 4095 -``` - - -To configure MCLAG attributes enter MCLAG domain configuration mode and enter following command -``` -sonic(config-mclag-domain)#[no] source-address - -sonic(config-mclag-domain)#[no] peer-address - -sonic(config-mclag-domain)#[no] peer-link -``` - - -To configure MCLAG session keepalive interval and session timeout use following commands -``` -sonic(config-mclag-domain)#[no] keepalive-interval - -sonic(config-mclag-domain)#[no] session-timeout - -- Keepalive interval in the range of 1 to 60 seconds with default value of 1 seconds. - -- session-timeout in the range of 1 to 3600 seconds with default value of 15 seconds - -- session-timeout should be multipler of keepalive-timer value - -``` - -##### 3.8.2.1.2 MCLAG Interface configuration - -To configure/unconfigure MCLAG interfaces use following command. MCLAG interfaces can only be portchannels. Configure MCLAG interface under the portchannel interface configuration mode. - -**sonic(config-if-PortChannelx)# [no] mclag [domain-id] - - -#### 3.8.2.2 Show commands - -Following new KLISH based show commands are introduced - -Displays brief information about MCLAG domain - -``` -1. show mclag brief - -Sonic#show mclag brief - - Domain ID : 5 - Role : Active - Session Status : Up - Peer Link Status : Up - Source Address : 192.168.1.1 - Peer Address : 192.168.1.2 - Peer Link : PortChannel30 - Keepalive Interval : 1 secs - Session Timeout : 15 secs - System MAC : b8:6a:97:73:6c:96 - Number of MCLAG Interfaces : 2 - MCLAG Interface Local/Remote Status - PortChannel50 Up/Up - PortChannel60 Up/Up - -``` - -2. **Show mclag interface ** -``` - Sonic#show mclag interface 5 PortChannel50 - Local/Remote Status : Up/Up - IsolateWithPeerLink : Yes - TrafficDisable : No -``` - -# 4 Flow Diagrams -## 4.1 FDB Flow Diagrams -### 4.1.1 Local Static MAC upstream - Below diagram shows the flow for local static MAC addresses upstream to ICCPd. - -![Local Static MAC Update to ICCPd Flow Diagram](images/LocalStaticMacUpdateFlow.png "Local Static MAC upstream to ICCPd Flow Diagram") - -**Figure 3: Local Static MAC upstream to ICCPd Flow Diagram** - -### 4.1.2 Local Dynamic MAC update - Below diagram shows the flow for local dynamic MAC addresses update to ICCPd. - -![Local Dynamic MAC upstream to ICCPd Flow Diagram](images/LocalDynamicMacUpstreamFlow.png "Local Dynamic MAC upstream to ICCPd Flow Diagram") - -**Figure 4: Local Dynamic MAC upstream to ICCPd Flow Diagram** - -### 4.1.3 Remote MAC Processing -Below diagram shows the flow of MAC address programing learned from ICCP. - -![Peer MCLAG MAC programming flow Diagram](images/RemoteMCLAGMacDownload.png "Peer MCLAG MAC programming flow Diagram") - -**Figure 5: Peer MCLAG MAC programming flow Diagram** - -## 4.2 Port Isolation group processing -Below diagram show the flow of Port Isolation group from App DB to SyncD - -![Port Isolation group processing](images/PortIsolationAdd.png "Port Isolation group processing") - -**Figure 6: Port Isolation group processing** - -# 5 Serviceability and Debug -- Existing mclagdctl dump commands output will be extended with additional debug state information. - -Mclagdctl dump state command is added with new field to show the sync state. -``` -Example output: -root@sonic:/home/admin# mclagdctl -i 5 dump state -The MCLAG's keepalive is: OK -**MCLAG info sync is: completed** -Domain id: 5 -Local Ip: 192.168.1.1 -Peer Ip: 192.168.1.2 -Peer Link Interface: PortChannel30 -Keepalive time: 1 -sesssion Timeout : 15 -Peer Link Mac: b8:6a:97:73:6c:96 -Role: Active -MCLAG Interface: PortChannel50 -root@sonic:/home/admin# -``` - Mclagdctl is extended with new option to dump the debug counters information. - -``` -Example Output: -root@sonic:/home/admin# mclagdctl -i 5 dump debug counters -ICCP session down: 1 -Peer link down: 0 -Warmboot: 0 - -ICCP to MclagSyncd TX_OK TX_ERROR ------------------- ----- -------- -PortIsolation 13 0 -MacLearnMode 1 0 -FlushFdb 1 0 -SetIfMac 0 0 -SetFdb 226003 0 -SetL2mc 0 0 -TrafficDistEnable 1 0 -TrafficDistDisable 1 0 -SetIccpState 2 0 -SetIccpRole 1 0 -SetSystemId 0 0 -DelIccpInfo 0 0 -SetRemoteIntfSts 9 0 -DelRemoteIntf 0 0 - -MclagSyncd to ICCP RX_OK RX_ERROR ------------------- ----------- -------- -FdbChange 161616 0 -CfgMclag 1 0 -CfgMclagIface 1 0 - -ICCP to Peer TX_OK RX_OK TX_ERROR RX_ERROR ------------- ----- ----- -------- -------- -SysConfig 2 2 0 0 -AggrConfig 2 1 0 0 -AggrState 7 9 0 0 -MacInfo 160896 142183 0 0 -ArpInfo 0 0 0 0 -L2mcInfo 0 0 0 0 -PoInfo 2 1 0 0 -PeerLinkInfo 2 2 0 0 -Heartbeat 2533 2533 0 0 -Nak 0 0 0 0 -SyncData 2 2 0 0 -SyncReq 1 0 0 0 -Warmboot 0 0 0 0 -IfUpAck 4 3 0 0 - -``` - - - -# 6 Warm Boot Support -- After a warm boot is completed, the FDB table is reconciled with the MCLAG peer. ICCP is extended to advertise the local FDB table. - -# 7 Scalability -- Support scale of 40K MAC addresses. - -# 8 Upgrade/Downgrade considerations - -As part of the current enhancements MCLAG configuration can be provisioned dynamically, MclagSyncd reads the MCLAG configuration from CONFIG_DB and updates to ICCPd. The older way of reading the configuration from configdb.json file during the ICCPd startup is deprecated. - -Upgrade/downgrade from/to the older version is not supported with new enhanced version. - -# 9 Unit Test - -## 9.1 DB table updates -1. Verify that MCLAG configuration of add/delete is updated in CONFIG_DB MCLAG Domain table. -2. Verify that mclag_interface configuration add/delete is updated properly in CONFIG_DB MCLAG interface table. -3. Verify that keep-alive and session-timeout values are updated properly in CONFIG_DB table. -4. Verify that MAC address updates received from peer MCLAG nodes is updated to APP MCLAG FDB table. -5. Verify that ICCP session state information is updated to STATE_MCLAG_TABLE. -6. Verify that MCLAG interface state information is updated to STATE_MCLAG_REMOTE_INTF_TABLE -7. Verify that Unique IP configuration if add/delete is updated in CONFIG_DB MCLAG UNIQUEIP TABLE - -## 9.2 FDB - -1. Verify that MAC address learned locally on orphan port are synced to the peer MCLAG node. -2. Verify that MAC address aged locally on orphan ports are withdrawn to peer MCLAG node. -3. Verify that MAC address learned locally on MCLAG portchannel are synced to the peer MCLAG node. -4. Verify that MAC address aged locally on MCLAG portchannel ports are withdrawn to peer MCLAG node. -5. Verify that when MCLAG portchannel is down MAC addresses pointing to the MCLAG portchannel are updated to point to peer-link interface. -6. Verify that when MClag portchannel is up MAC addresses pointing to peer-link interface are updated to point to MCLAG portchannel. -7. Verify that when peer-link is down MAC addresses pointing to peer-link are deleted on both the MCLAG peer nodes. -8. Verify that when clear FDB is executed local MAC addresses are cleared locally and withdrawn to the peer MCLAG node. Relearn the MAC addresses and advertise to peer MCLAG node. -9. Verify that static MAC configured locally is advertised to peer MCLAG node. -10. Verify that static MAC deleted locally is withdrawn to peer MCLAG node. -11. Verify that in presence of remote static MAC addresses any dynamic local MAC move is not allowed. -12. Verify MAC learn with scale of 40K MAC entries. - -## 9.3 Config handling - -1. Verify MCLAG domain configuration with local, peer ip, peer interface, MCLAG interface configures ICCP -2. Verify adding MCLAG interface to existing MCLAG domain -3. Verify deleting one MCLAG interface from existing MCLAG domain -4. Verify modifying local ip configuration for an existing MCLAG domain -5. Verify modifying peer interface for given MCLAG domain -6. Verify configuration change of MCLAG keep-alive timer value to min/max values are reflected -7. Verify configuration change of MCLAG session timeout value to min/max values are reflected -8. Verify deletion of existing MCLAG domain -9. Verify adding MCLAG domain without peer interface -10. Verify adding MCLAG peer interface later after adding MCLAG domain -11. Verify deleting MCLAG interfaces with synced up MAC addresses and make sure behavior is similar to having MCLAG interface down -12. Verify Unique IP configuration on vlan interface - -## 9.4 Port Isolation - -1. Configure Port Isolation group with members apply it to ingress port. Send unicast and BUM traffic and verify traffic is not seen at any member ports. -2. Dynamically add and delete the Port Isolation group members and verify unicast and BUM traffic again. -3. Remove Port Isolation group from ingress interface and verify traffic unicast and BUM again. -4. Send traffic from interface which doesn't have any port isolation group attached and verify unicast and BUM traffic. - -## 9.5 MCLAG Interface Flap - -1. Verify traffic is disabled until interface up ack is received from remote MCLAG peer when MCLAG interface flaps -2. Verify traffic is re-enabled on MCLAG interface which is waiting for interface up ack from peer when ICCP goes down -3. Verify traffic is disabled on a port when it is added to a MCLAG interface which is waiting for interface up ack from peer -4. Verify traffic is re-enabled on a LAG interface when it is unconfigured as MCLAG interface -5. Verify mclagdctl dump local interface output shows traffic is disabled on MCLAG interface which is waiting for interface up ack from peer - -## 9.6 MCLAG Unique IP enhancements -1. Verify ARP and ND Sync. -2. Verify IPv4 and IPv6 routing with traffic -3. Veirfy Ping / Ping6 between Peer nodes VLAN interface -4. Veirfy Ping / Ping6 between Peer node VLAN interface and MCLAG Client device -5. Verify BGP session up on VLAN interface. - From 176cf4f5a8ee6ecfd8a478573ffc92f0eb23b4e6 Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Fri, 29 May 2020 17:35:22 -0700 Subject: [PATCH 6/9] Review comments incorporated Review comments incorporated --- doc/mclag/MCLAG_Enhancements_HLD.md | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index 6e3d12fb785..1ad9de5ac8e 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -6,7 +6,7 @@ Rev 0.1 - **[Revision](#Revision)** - **[About this Manual](#About-this-Manual)** - **[Definition/Abbreviation](#Definition_Abbreviation)** - - [Table 1: Abbreviations](#Table-1:-Abbreviations) + - [Table 1: Abbreviations](#Table-1-Abbreviations) - **[1 Feature Overview](#1-Feature-Overview)** - [1.1 Functional Requirements](#1_1-Functional-Requirements) - [1.1.1 Static MAC support over MCLAG](#1_1_1-Static-MAC-support-over-MCLAG) @@ -59,10 +59,9 @@ Rev 0.1 - [3.5 SyncD](#3_5-SyncD) - [3.6 MclagSyncD](#3_6-MclagSyncD) - [3.6.1 FDB Changes](#3_6_1-FDB-Changes) - - *[3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE](#3_6_1_1-Local-MAC-upstream-using-STATE_DB-FDB_TABLE)* - - *[3.6.1.2 Removal of FDB table in MclagSyncd](#3_6_1_2-Removal-of-FDB-table-in-MclagSyncd)* - - *[3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE](#3_6_1_3-Populating-ICCP-MAC-updates-to-APP_DB-MCLAG_FDB_TABLE)* - - *[3.6.1.4 Populating ICCP and MCLAG interface state information](#3_6_1_4-Populating-ICCP-and-MCLAG-interface-state-information)* + - *[3.6.1.1 Removal of FDB table in MclagSyncd](#3_6_1_1-Removal-of-FDB-table-in-MclagSyncd)* + - *[3.6.1.2 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE](#3_6_1_2-Populating-ICCP-MAC-updates-to-APP_DB-MCLAG_FDB_TABLE)* + - *[3.6.1.3 Populating ICCP and MCLAG interface state information](#3_6_1_3-Populating-ICCP-and-MCLAG-interface-state-information)* - [3.6.2 MCLAG config handling](#3_6_2-MCLAG-config-handling) - [3.7 SAI](#3_7-SAI) - [3.7.1 Port Isolation](#3_7_1-Port-Isolation) @@ -94,7 +93,6 @@ Rev 0.1 - [9.4 Port Isolation](#9_4-Port-Isolation) - [9.5 MCLAG Interface Flap](#9_5-MCLAG-Interface-Flap) - [9.6 MCLAG Unique IP enhancements](#9_6-MCLAG-Unique-IP-enhancements) -- **[10 Internal Design Information](#10-Internal-Design-Information)** # List of Tables @@ -476,22 +474,18 @@ MclagSyncd is extended to optimize the FDB events handling. The changes include: - -- sending local MAC updates to ICCPd from STATE_DB FDB_TABLE instead of ASIC_DB FDB_TABLE - sending of the MAC entries is event driven instead of the periodic 60 seconds polling - removal of the FDB cache in the MclagSyncd - adding the ICCP learned MAC addresses to APP_DB MCLAG_FDB_TABLE -#### 3.6.1.1 Local MAC upstream using STATE_DB FDB_TABLE -To distribute the local MAC addresses to ICCPd MclagSyncd will now listen for the STATE_DB FDB_TABLE updates. Current approach of periodic MAC table retrieval by polling and compare to find the MAC latest updates is costly in the scale scenarios. In the new approach STATE_DB FDB_TABLE MAC processing is event driven at MclagSyncd and no periodic polling is done. - -#### 3.6.1.2 Removal of FDB table in MclagSyncd +#### 3.6.1.1 Removal of FDB table in MclagSyncd With the above change to event-driven updates, MclagSyncd no longer needs a local FDB table copy - it can update directly between ICCPd and FdbOrch. -#### 3.6.1.3 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE +#### 3.6.1.2 Populating ICCP MAC updates to APP_DB MCLAG_FDB_TABLE In current implementation MclagSyncd updates the MAC addresses into the existing APP_DB FDB_TABLE. In this enhancement, a new APP_DB MCLAG_FBD_TABLE is used. This allows clients to distinguish between local and remote (ICCP received) MAC address. -#### 3.6.1.4 Populating ICCP and MCLAG interface state information +#### 3.6.1.3 Populating ICCP and MCLAG interface state information MclagSyncd is extended to receive the ICCP session related information from ICCPd and to populate this information in STATE_DB STATE_MCLAG_TABLE. MclagSyncd also receives MCLAG remote interface information which is populated in STATE_DB STATE_MCLAG_REMOTE_INTF_TABLE. From 2619f40a233c9b6ae0e3f2605f83e3b7c4ea4264 Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Tue, 10 Nov 2020 14:53:28 -0800 Subject: [PATCH 7/9] Update MCLAG_Enhancements_HLD.md --- doc/mclag/MCLAG_Enhancements_HLD.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index 1ad9de5ac8e..cb25e5389d4 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -184,7 +184,7 @@ This document captures the feature enhancements of SONiC ICCP MCLAG. This includ The following improvements are made in this enhancement: - Convert FDB and VLAN related linked list to binary trees to improve scaling performance -- When MCLAG node learns a new MAC address via ICCP from peer MCLAG node learned over remote orphan port, it sends a age notification back to peer to indicate MAC is locally aged, this updated is not necessary as MAC not learned locally. Avoid sending the local age notification back to peer MCLAG node each time a MAC address is learned from peer. +- When MCLAG node learns a new MAC address via ICCP from peer MCLAG node learned over remote orphan port, it sends a age notification back to peer to indicate MAC is locally aged, this update is not necessary as MAC not learned locally. Avoid sending the local age notification back to peer MCLAG node each time a MAC address is learned from peer. ### 2.1.8 Isolation group support @@ -278,6 +278,8 @@ ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) ``` +Note: Same PortChannel name (ifname) is required to configure across all the MCLAG peer nodes towards MHD. + #### 3.2.1.3 MCLAG UniqueIP Table Producer: Configuration @@ -322,7 +324,7 @@ traffic_disable = "true"/"false" ;default is false Producer: MclagSyncd Consumer: FdbOrch agent -Description: New table to stores the MAC addresses learned via ICCP. FdbOrch processes the FDB updates to program in HW. +Description: New table to store the MAC addresses learned via ICCP. FdbOrch processes the FDB updates to program in HW. ``` ; Stores MCLAG FDB entries which were learned via ICCP From 28b13e135a7729108fc75d3d0a64904f50d5ca65 Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Thu, 19 Nov 2020 10:33:54 -0800 Subject: [PATCH 8/9] Updated the details of Remote MAC progragming to kernel. Updated the details of Remote MAC progragming to kernel. --- doc/mclag/MCLAG_Enhancements_HLD.md | 27 +++++++----------- doc/mclag/images/DesignOverviewDiagram.png | Bin 88260 -> 84591 bytes .../images/DesignOverviewDiagram_old.png | Bin 0 -> 88260 bytes doc/mclag/images/MclagArpFdbKernelUpdate.png | Bin 161870 -> 0 bytes 4 files changed, 11 insertions(+), 16 deletions(-) create mode 100644 doc/mclag/images/DesignOverviewDiagram_old.png delete mode 100644 doc/mclag/images/MclagArpFdbKernelUpdate.png diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index cb25e5389d4..593e2dbed2c 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -39,7 +39,7 @@ Rev 0.1 - [3.2.3 STATE DB](#3_2_3-STATE-DB) - *[3.2.3.1 STATE_MCLAG_TABLE](#3_2_3_1-STATE_MCLAG_TABLE)* - *[3.2.3.2 STATE_MCLAG_REMOTE_INTF_TABLE](#3_2_3_2-STATE_MCLAG_REMOTE_INTF_TABLE)* - - *[3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE](#3_2_3_3-STATE_MCLAG_ARP_FDB_TABLE)* + - *[3.2.3.3 STATE_MCLAG_REMOTE_FDB_TABLE](#3_2_3_3-STATE_MCLAG_REMOTE_FDB_TABLE)* - [3.3 ICCP Changes](#3_3-ICCP-Changes) - [3.3.1 MCLAG interface flap handling](#3_3_1-MCLAG-interface-flap-handling) - [3.3.2 MCLAG configuration change handling](#3_3_2-MCLAG-configuration-change-handling) @@ -55,7 +55,7 @@ Rev 0.1 - *[3.4.1.1 Isolation group orch agent](#3_4_1_1-Isolation-group-orch-agent)* - *[3.4.1.2 PortsOrch Changes](#3_4_1_2-PortsOrch-Changes)* - *[3.4.1.3 FdbOrch Changes](#3_4_1_3-FdbOrch-Changes)* - - *[3.4.1.4 MCLAG ARP MAC update to Kernel](#3_4_1_4-MCLAG-ARP-MAC-update-to-Kernel)* + - *[3.4.1.4 MCLAG REMOTE MAC update to Kernel](#3_4_1_4-MCLAG-REMOTE-MAC-update-to-Kernel)* - [3.5 SyncD](#3_5-SyncD) - [3.6 MclagSyncD](#3_6-MclagSyncD) - [3.6.1 FDB Changes](#3_6_1-FDB-Changes) @@ -224,9 +224,8 @@ Below is the summary of the changes for each flow number mentioned in the above 10. FdbOrch updates remote MAC addresses with new SAI attribute not to age them out. 11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . 12. Syncd programs the remote MAC to HW -13. FdbOrch registers with NeighborOrch for all the ICCP learned remote MAC addresses. -14. NeighborOrch update the MAC address to STATE_DB MCLAG ARP MAC Table. -15. FdbSycd gets the MAC updates from STATE_DB MCLAG ARP MAC Table. +14. FdbOrch update the MAC address to STATE_DB MCLAG REMOTE FDB Table. +15. FdbSycd gets the MAC updates from STATE_DB MCLAG REMOTE FDB Table. 16. FdbSyncd programs the MAC updates to kernel. ## 3.2 DB Changes @@ -370,16 +369,16 @@ ifname = 1*64VCHAR ; name of the MCLAG Interface (PortChannel) ``` -#### 3.2.3.3 STATE_MCLAG_ARP_FDB_TABLE +#### 3.2.3.3 STATE_MCLAG_REMOTE_FDB_TABLE_NAME Producer: FdbOrch -Consumer: NeighborOrch -Description: New table to populate the ICCP learned remote MAC entries which have ARP entries are associated. +Consumer: FdbSyncd +Description: New table to populate the ICCP learned remote MAC entries for kernel programming. Schema: ``` -; New STATE_MCLAG_ARP_FDB_TABLE -key = MCLAG_ARP_FDB_TABLE:"Vlan"vlanid:mac_address +; New STATE_MCLAG_REMOTE_FDB_TABLE_NAME +key = MCLAG_REMOTE_FDB_TABLE:"Vlan"vlanid:mac_address ;value annotations vlanid = DIGIT 1-4095 ; VLAN id. @@ -457,15 +456,11 @@ When a static MAC address is configured locally and same MAC address is learned If the ICCP learned MAC is static, then any dynamic MAC move will be discarded by FdbOrch. -#### 3.4.1.4 MCLAG ARP MAC update to Kernel +#### 3.4.1.4 MCLAG remote FDB update to Kernel -ARP entries present in the system will need the associated MAC entries to be programmed in kernel to allow the local system and applications to reach the associated IP address. When ICCP receives a MAC update, if an ARP entry is associated with the MAC address then the MAC address needs to be programmed in kernel. FdbOrch notifies NeighborOrch when MAC is learned via ICCP and NeighborOrch updates the MCLAG_ARP_FDB_TABLE in STATE_DB accordingly. FDBSyncd subscribes to this table and programs the kernel as required. A similar path is used to update kernel MAC entry If there is an interface change associated with the MAC or when the MAC address is deleted. +MCLAG remote MAC entries to be programmed in kernel to allow the local system and applications to reach the associated IP address. ICCP received MAC address needs to be programmed in kernel. FdbOrch updates the MCLAG_REMOTE_FDB_TABLE in STATE_DB accordingly. FDBSyncd subscribes to this table and programs the kernel as required. A similar path is used to update kernel MAC entry If there is an interface change associated with the MAC or when the MAC address is deleted. -Below Diagram show the remote ICCP MAC update to Kernel. -![MCLAG ARP MAC kernel update Diagram](images/MclagArpFdbKernelUpdate.png "MCLAG ARP interested MAC kernel programming Flow") - -**Figure 2: MCLAG ARP interested MAC kernel programming Flow** ## 3.5 SyncD No change to SyncD diff --git a/doc/mclag/images/DesignOverviewDiagram.png b/doc/mclag/images/DesignOverviewDiagram.png index a918f2022e32191c6f29586073332a2928da079f..6b24b2d8cf0ed59a1606dbbcb285bc1a9b15681e 100644 GIT binary patch literal 84591 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 literal 88260 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 z z73|aVc!j!jQ=m!MoBk}^Jhk%{3em*}Tk9@0Bqdvq%z6`ja$C2T!0S_-!KSDNqyd@w z&70dd{9LMJnS_1GAY{rPxt5&3M!vqEzN$NgrQnS*dvRFb@U=@cHq0n^L3he?2()NN z9ulUy7v6zKuZJIF!VIPi=__3=Pkhg_WlT#|qu#2bJ)W5+Ts>caYEU0b zgV9k68ho?^?EkpjFfc6pCObKtMiC(~98N3{U)TOdi*5nQxzGoyrtg5yuSq8QDYQ*! z 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 diff --git a/doc/mclag/images/DesignOverviewDiagram_old.png b/doc/mclag/images/DesignOverviewDiagram_old.png new file mode 100644 index 0000000000000000000000000000000000000000..a918f2022e32191c6f29586073332a2928da079f GIT binary patch literal 88260 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 z z73|aVc!j!jQ=m!MoBk}^Jhk%{3em*}Tk9@0Bqdvq%z6`ja$C2T!0S_-!KSDNqyd@w z&70dd{9LMJnS_1GAY{rPxt5&3M!vqEzN$NgrQnS*dvRFb@U=@cHq0n^L3he?2()NN z9ulUy7v6zKuZJIF!VIPi=__3=Pkhg_WlT#|qu#2bJ)W5+Ts>caYEU0b zgV9k68ho?^?EkpjFfc6pCObKtMiC(~98N3{U)TOdi*5nQxzGoyrtg5yuSq8QDYQ*! z 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 literal 0 HcmV?d00001 diff --git a/doc/mclag/images/MclagArpFdbKernelUpdate.png b/doc/mclag/images/MclagArpFdbKernelUpdate.png deleted file mode 100644 index 2d9c97072085ede8d9556dc13dca591edb772439..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 161870 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 From 06eb457929bc0788b30e24a1cc36267651271851 Mon Sep 17 00:00:00 2001 From: Praveen-Brcm <51765988+Praveen-Brcm@users.noreply.github.com> Date: Tue, 23 Feb 2021 09:17:11 -0800 Subject: [PATCH 9/9] Update MCLAG_Enhancements_HLD.md Addressed latest review comments --- doc/mclag/MCLAG_Enhancements_HLD.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/mclag/MCLAG_Enhancements_HLD.md b/doc/mclag/MCLAG_Enhancements_HLD.md index 593e2dbed2c..7530fadeaef 100644 --- a/doc/mclag/MCLAG_Enhancements_HLD.md +++ b/doc/mclag/MCLAG_Enhancements_HLD.md @@ -177,7 +177,7 @@ This document captures the feature enhancements of SONiC ICCP MCLAG. This includ - In the current implementation, MAC addresses learned in the control plane from the MCLAG peer are installed as dynamic entries. Therefore, if no local traffic from these MAC addresses is seen for the ageing period then they will age out, causing a notification back to ICCPd. However if the mac is learned from peer then it will immediately re-program MAC . The result is transient flooding for the MAC and some unnecessary control plane overhead. - When the local MCLAG node learns the MAC addresses from peer MCLAG node the type of the MAC set as dynamic. For the remote MAC addresses learned via ICCP if no traffic received on local MCLAG interface MAC addresses get age out from HW. ICCPd process the age notifications as the MAC address is peer learned re-installs MAC address back to HW. Transient traffic flooding can occur during remote MAC re-installation. - The process of remote MAC aging and re-installation is repetitive causing un-necessary messaging between modules and processing. -- To suppress the unwanted MAC age events, the new implementation programs remote MAC addresses with aging disabled. For the MAC address learned from ICCPd, FdbOrch to set new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE while programming, which causes SAI to not age out the MAC, but allows it to move. +- To suppress the unwanted MAC age events, the new implementation programs remote MAC addresses with aging disabled. For the MAC address learned from ICCPd, FdbOrch to set new SAI attribute SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE while programming, which causes SAI to not age out the MAC, but allows it to move. ### 2.1.7 Performance improvements @@ -222,7 +222,7 @@ Below is the summary of the changes for each flow number mentioned in the above 8. MclagSyncd updates MAC addresses learned from peer MCLAG node to new MCLAG FDB table . 9. FdbOrch registers for new MCLAG FDB table updates to process MAC updates from peer MCLAG node, ISOGRP Orch process new updates from MclagSyncd. 10. FdbOrch updates remote MAC addresses with new SAI attribute not to age them out. -11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_TYPE_STATIC_MACMOVE set . +11. Syncd gets the ICCP learned remote MAC addresses with new SAI attribute SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE set . 12. Syncd programs the remote MAC to HW 14. FdbOrch update the MAC address to STATE_DB MCLAG REMOTE FDB Table. 15. FdbSycd gets the MAC updates from STATE_DB MCLAG REMOTE FDB Table. @@ -287,7 +287,7 @@ Description: New table to store L3 VLAN interfaces that will have unique IP conf ``` ;New MCLAG UniqueIP Table -key = MCLAG_UNIQUEIP_TABLE|ifname ; Only VLAN interface supported currently +key = MCLAG_UNIQUE_IP_TABLE|ifname ; Only VLAN interface supported currently ```