NETWORKING AGGREGATION SYNCHRONIZATION SYSTEM
20210377159 · 2021-12-02
Inventors
Cpc classification
G06F16/27
PHYSICS
H04L2101/622
ELECTRICITY
H04L61/103
ELECTRICITY
International classification
G06F16/27
PHYSICS
Abstract
A system includes a first aggregated networking device that is coupled to a second aggregated networking device via an inter-aggregated-networking-device link and that is configured to provide a first portion of a link aggregation to a connected device, The first aggregated networking device receives a first packet via a first aggregated port that is included in the first aggregated networking device and that provides the first portion of the link aggregation to the connected device. The first packet includes first information for synchronizing at least one process running in the first aggregated networking device with respective corresponding processes running in the second aggregated networking device. The first aggregated networking device copies, using a first network processing system, the first packet to provide a first copied packet and provides, using the first network processing system, the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link.
Claims
1. A networking aggregation synchronization system, comprising: a second aggregated networking device that is configured to provide a second portion of a link aggregation to a connected device; and a first aggregated networking device that is coupled to the second aggregated networking device via an inter-aggregated-networking-device link and that is configured to provide a first portion of the link aggregation to the connected device, wherein the first aggregated networking device is configured to: receive a first packet via a first aggregated port that is included in the first aggregated networking device and that provides the first portion of the link aggregation to the connected device, wherein the first packet includes first information for synchronizing at least one first aggregated networking device process running in the first aggregated networking device with respective corresponding second aggregated networking device processes running in the second aggregated networking device; copy, using a first network processing system included in the first aggregated networking device, the first packet to provide a first copied packet; and provide, using the first network processing system, the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link, wherein the second aggregated networking device is configured to: receive, via the inter-aggregated-networking-device link using a second network processing system included in the second aggregated networking device, the first copied packet; and synchronize, using a second central processing system included in the second aggregated networking device and the first information included in the first copied packet, the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process running in the first aggregated networking device.
2. The system of claim 1, wherein the second aggregated networking device is configured to: receive a second packet on a second aggregated port that provides the first portion of the link aggregation to the connected device, wherein the second packet includes second information for the respective corresponding second aggregated networking device processes; copy, using the second network processing system, the second packet to provide a second copied packet; and provide, using the second network processing system, the second copied packet to the first aggregated networking device via the inter-aggregated-networking-device link, wherein the first aggregated networking device is configured to: receive, via the inter-aggregated-networking-device link, the second copied packet; and synchronize, using a first central processing system included in the first aggregated networking device and the second information included in the second copied packet, the at least one first aggregated networking device process with the respective corresponding second aggregated networking device processes.
3. The system of claim 1, wherein the first aggregated networking device is configured to: provide the first packet to a first central processing system included in the first aggregated networking device; and update, using the first central processing system, the at least one first aggregated networking device process.
4. The system of claim 1, wherein the providing the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link includes: providing, using the first network processing system, the first copied packet to a first queue that is coupled to a first inter-aggregated-networking-device port included in the inter-aggregated-networking-device link; and outputting, via the first queue and the first inter-aggregated-networking-device port, the first copied packet to the inter-aggregated-networking-device link.
5. The system of claim 1, wherein the first aggregated networking device is configured to: encapsulate the first copied packet with ingress information, wherein the ingress information is used by the second central processing system to synchronize the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process.
6. The system of claim 1, wherein the at least one first aggregated networking device process includes at least one of a Media Access Control (MAC) address process, an Address Resolution Protocol (ARP) process, and a multicast routing process.
7. The system of claim 1, wherein the second aggregated networking device is designated as a primary aggregated networking device, and wherein the first aggregated networking device is designated as a secondary aggregated networking device.
8. An Information Handling System (IHS), comprising: a central processing system; a network processing system; and a memory system that is coupled to the network processing system and the central processing system and that includes instructions that, when executed by the network processing system, cause the network processing system to provide a network synchronization engine that is configured to: receive a first packet on a first aggregated port that provides a first portion of a link aggregation to a connected device, wherein the first packet includes first information for synchronizing at least one first aggregated networking device process running in at least one of the central processing system or the network processing system with respective corresponding second aggregated networking device processes running in a first aggregated networking device that is coupled to the network processing system via an inter-aggregated-networking-device link; copy the first packet to provide a first copied packet; and provide the first copied packet to the first aggregated networking device via the inter-aggregated-networking-device link without processing the first copied packet using the central processing system.
9. The IHS of claim 8, wherein the network synchronization engine is configured to: receive, via the inter-aggregated-networking-device link from the first aggregated networking device, a second copied packet; and synchronize, using the central processing system and second information included in the second copied packet, the at least one first aggregated networking device process with the respective corresponding second aggregated networking device processes.
10. The IHS of claim 8, wherein the network synchronization engine is configured to: provide the first packet to the central processing system; and update, using the central processing system, the at least one first aggregated networking device process.
11. The IHS of claim 8, wherein the providing the first copied packet to the first aggregated networking device via the inter-aggregated-networking-device link includes: providing, using the network processing system, the first copied packet to a first queue that is coupled to a first inter-aggregated-networking-device port included in the inter-aggregated-networking-device link; and outputting, via the first queue and the first inter-aggregated-networking-device port, the first copied packet to the inter-aggregated-networking-device link.
12. The IHS of claim 8, wherein the network synchronization engine is configured to: encapsulate the first copied packet with ingress information, wherein the ingress information is used by a second central processing system to synchronize the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process.
13. The IHS of claim 8, wherein the at least one first aggregated networking device process includes at least one of a Media Access Control (MAC) address process, an Address Resolution Protocol (ARP) process, and a multicast routing process.
14. A method of synchronizing aggregated networking devices, comprising: receiving, by a first network processing system included in a first aggregated networking device, a first packet on a first aggregated port that provides a first portion of a link aggregation to a connected device, wherein the first packet includes first information for synchronizing at least one first aggregated networking device process running in the first aggregated networking device with respective corresponding second aggregated networking device processes running in a second aggregated networking device that is coupled to the first aggregated networking device via an inter-aggregated-networking-device link; copying, by the first network processing system, the first packet to provide a first copied packet; and providing, by the first network processing system, the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link without processing the first copied packet using a first central processing system included in the first aggregated networking device.
15. The method of claim 14, further comprising: receiving, by the first aggregated networking device via the inter-aggregated-networking-device link from the second aggregated networking device, a second copied packet; and synchronize, by the first aggregated networking device using the first central processing system and second information included in the second copied packet, the at least one first aggregated networking device process with the respective corresponding second aggregated networking device processes.
16. The method of claim 14, further comprising: providing, by the first network processing system, the first packet to the first central processing system; and updating, using the first central processing system, the at least one first aggregated networking device process.
17. The method of claim 14, wherein the providing the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link includes: providing, using the first network processing system, the first copied packet to a first queue that is coupled to a first inter-aggregated-networking-device port included in the inter-aggregated-networking-device link; and outputting, via the first queue and the first inter-aggregated-networking-device port, the first copied packet to the inter-aggregated-networking-device link.
18. The method of claim 14, further comprising: encapsulating, using the first network processing system, the first copied packet with ingress information, wherein the ingress information is used by a second central processing system included on the second aggregated networking device to synchronize the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process.
19. The method of claim 14, wherein the at least one first aggregated networking device process includes at least one of a Media Access Control (MAC) address process, an Address Resolution Protocol (ARP) process, and a multicast routing process.
20. The method of claim 14, wherein the second aggregated networking device is designated as a primary aggregated networking device, and wherein the first aggregated networking device is designated as a secondary aggregated networking device.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
DETAILED DESCRIPTION
[0020] For purposes of this disclosure, an information handling system may include any instrumentality or aggregate of instrumentalities operable to compute, calculate, determine, classify, process, transmit, receive, retrieve, originate, switch, store, display, communicate, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, or other purposes. For example, an information handling system may be a personal computer (e.g., desktop or laptop), tablet computer, mobile device (e.g., personal digital assistant (PDA) or smart phone), server (e.g., blade server or rack server), a network storage device, or any other suitable device and may vary in size, shape, performance, functionality, and price. The information handling system may include random access memory (RAM), one or more processing resources such as a central processing unit (CPU) or hardware or software control logic, ROM, and/or other types of nonvolatile memory. Additional components of the information handling system may include one or more disk drives, one or more network ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, a mouse, touchscreen and/or a video display. The information handling system may also include one or more buses operable to transmit communications between the various hardware components.
[0021] In one embodiment, IHS 100,
[0022] Referring now to
[0023] In the illustrated embodiment, the networking aggregation synchronization system 200 also incudes a Top of Rack (TOR) networking device 204 that is coupled to the host device 202. In an embodiment, the TOR networking device 204 may be provided by the IHS 100 discussed above with reference to
[0024] In the illustrated embodiment, the networking aggregation synchronization system 200 includes an aggregated networking device domain 206 that is provided by a pair of aggregated networking devices 206a and 206b that are coupled together by a plurality of inter-networking-device links 208a, 208b, and up to 208c that have been aggregated into an Inter-Chassis Link (ICL) 208. In the illustrated embodiment, the aggregated networking device 206a is coupled to the TOR networking device 204 by at least one link 210a, and the aggregated networking device 206b is coupled to the TOR networking device 204 by at least one link 210b, with the links 210a and 210b having been aggregated into a Link Aggregation Group (LAG) 210 between the TOR networking device 204 and the aggregated networking device domain 206. In an embodiment, either or both of the aggregated networking devices 206a and 206b may be provided by the IHS 100 discussed above with reference to
[0025] In a specific example, the networking aggregation synchronization system 200 may utilize the Virtual Link Trunking (VLT) protocol, which as discussed above is a proprietary aggregation protocol available in switch devices provided by DELL® Inc. of Round Rock, Tex., United States, and operates to provide a redundant, load-balancing connection in a loop-free environment that eliminates the need to use the Spanning Tree Protocol (STP), as well as including other VLT functionality known in the art. As such, with reference to
[0026] In the illustrated embodiment, the networking aggregation synchronization system 200 includes a pair of core networking devices 212a and 212b, with the core networking device 212a coupled to the aggregated networking device 206a, and the core networking device 212b coupled to the aggregated networking device 206b. In an embodiment, either or both of the core networking devices 212a and 212b may be provided by the IHS 100 discussed above with reference to
[0027] Referring now to
[0028] In addition, the memory system that is housed in the chassis 302 and coupled to the processing system may include instructions that, when executed by the processing system, cause the processing system to provide one or more process engine(s) 306 that are configured to perform the functionality of the process engines and/or aggregated networking devices discussed below. In different embodiments, and as discussed in more detail in some of the examples provided below, the process engine(s) 306 may include a Media Access Control (MAC) address manager engine that provides a MAC address manager process, an Address Resolution Protocol (ARP) manager engine that provides an ARP manager process, a multicast routing protocol engine that provides a multicast routing protocol process, an aggregation Spanning Tree Protocol (xSTP) engine that provides an aggregation xSTP process, an Internet Group Management Protocol (IGMP) snooping engine that provides an IGMP snooping process, a Dynamic Host Configuration Protocol (DHCP) snooping engine that provides a DHCP snooping process, and/or other aggregated networking device processes that would be apparent to one of skill in the art in possession of the present disclosure. In the example, the processing system that provides the process engine(s) 306 may include the central processing system.
[0029] The chassis 302 may also house a storage system (not illustrated, but which may include the storage 108 discussed above with reference to
[0030] The chassis 302 may also house a communication system 310 that is coupled to the aggregation manager engine 304 (e.g., via a coupling between the communication system 310 and the processing system) and that may be provided by a Network Interface Controller (NIC), wireless communication systems (e.g., BLUETOOTH®, Near Field Communication (NFC) components, WiFi components, etc.), and/or any other communication components that would be apparent to one of skill in the art in possession of the present disclosure. As such, one of skill in the art in possession of the present disclosure will appreciate that the communication system 310 may include ports that may be utilized to provide any of the links discussed above between the aggregated networking devices 206a/206b and the TOR networking device 204 and core networking devices 212a and 212b. To provide a specific example, the port 310a may be coupled to one of the core networking devices 212a and 212b, the port 310b may be coupled to the TOR networking device 204, the port 310c may be coupled to the inter-networking-device link 208a, the port 310d may be coupled to the inter-networking-device link 208b, and the port 310e may be coupled to the inter-networking-device link 208c.
[0031] In the illustrated example, the communication system 310 may include or is coupled to a processing system (not illustrated, but which may include the processor 102 discussed above with reference to
[0032] In the illustrated example, the processing system that provides the network synchronization engine 312 may include a Network Processing Unit (NPU) 311 such as, for example, an NPU provided by BROADCOM® Inc. of San Jose, Calif., United States. As such, the NPU 311 (or some other processing system included in the aggregated networking device 300 other than the processing system that provides the process engines 306 and the aggregation manager engine 304) may include or be coupled to a memory system (not illustrated, but which may include the memory 114 discussed above with reference to
[0033] In the illustrated embodiment, the NPU 311 may include or be coupled to a storage system (not illustrated, but which may include the storage device 108 discussed above with reference to
[0034] In the illustrated embodiment, the network synchronization engine 312 in the NPU 311 is configured to provide one or more queues (e.g., egress queues) for the ports 310a-e. For example, in the illustrated embodiment, one or more queues 312a are provided for the port 310e. However, while one queue (e.g., queue 312a) is illustrated, one of skill in the art in possession of the present disclosure will recognize that queue(s) may be provided for one or more of the ports 310a-310d, as well. In some of the specific examples discussed below, each of the ports 310a-310e are provided eight queues, although the provisioning of any number of queues for each of the ports 310a-310e is envisioned as falling within the scope of the present disclosure as well. While a specific aggregated networking device 300 has been illustrated, one of skill in the art in possession of the present disclosure will recognize that aggregated networking devices (or other devices operating according to the teachings of the present disclosure in a manner similar to that described below for the aggregated networking device 300) may include a variety of components and/or component configurations for providing conventional aggregated networking device functionality, as well as the functionality discussed below, while remaining within the scope of the present disclosure as well.
[0035] Referring now to
[0036] The second aggregated networking device may receive the first copied packet via the inter-aggregated-networking-device link (e.g., a link of an ICL) using a second network processing system included in the second aggregated networking device, and then use a second central processing system included in the second aggregated networking device and the information included in the first copied packet to synchronize the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process running in the first aggregated networking device. As such, the first aggregated networking device may copy the packet in its network hardware (e.g., the first network processing system) without having to process the packet for synchronization at an application level with its first central processing system. As will be appreciated by one of skill in the art in possession of the present disclosure, bypassing the central processing system in the first aggregated networking device reduces the number of processes and workloads required from the aggregated networking device processes. Furthermore, providing a copied packet directly from network hardware without the use of central processing systems speeds up the synchronization process.
[0037] The method 400 begins at block 402 where a first aggregated networking device receives a first packet via a first aggregated port that is included on a first aggregated networking device and that provides a first portion of a link aggregation to a connected device. With reference to the example illustrated in
[0038] The method 400 then proceeds to block 404 where the first aggregated networking device copies the first packet in network hardware to provide a first copied packet. In an embodiment, at block 404, the network synchronization engine 312 provided by the network processing system (e.g., the NPU 311) included in the aggregated networking device 206b/300 may copy the packet 502 to provide a copied packet 502a, as illustrated in
[0039] Furthermore, one or more sets of access control list (ACL) rules may be configured in an ACL stored in the aggregation manager database 308. In an embodiment, a set of ACL rules may be created for each protocol requiring synchronization associated with that protocol's aggregated networking device process. For example, the set of ACL rules may include a first rule for the network synchronization engine 312 to provide the packet 502 to the central processing system of the aggregated networking device 206b/300 to update processes on the aggregated networking device 206b/300, may include a second rule for the network synchronization engine 312 to copy the packet 502 to the central processing system of the aggregated networking device 206a/300, and/or may include other ACL rules that one of skill in the art in possession of the present disclosure would recognize as providing the functionality discussed below.
[0040] In a specific example, the packet 502 may be L2 data traffic that requires a source MAC learn. As would be recognized by one of skill in the art in possession of the present disclosure, in conventional aggregated networking devices utilizing the DELL® OS10 discussed above, the DELL® OS10 may include one ACL rule to provide the L2 packets to the aggregation manager engine 304 provided by the central processing system. However, in the DELL® OS10 provided according to the present disclosure, the ACL may include a set of ACL rules for the L2 data traffic. For example, using the DELL® OS10 provided according to the present disclosure, the aggregation manager engine 304 included on the aggregated networking device 206b/300 may learn the source MAC from the packet 502 based on the set of ACL rules for L2 data traffic, while the process engine(s) 306 may add the MAC to the MAC table stored in the aggregation manager database 308. The network synchronization engine 312 may also determine, based on the set of ACL rules and/or any other hardware table coupled to the NPU 311, that the aggregated networking device 206a/300 requires that the source MAC be learnt. Specifically, the ACL may include a first ACL rule that includes an inport member as an orphan port with a COPYTOCPU function (e.g., a local CPU option), a second ACL rule that includes an inport member as a VLT port-channel port with a COPYTOCPU function (e.g., a remote CPU option), and/or other ACL rules that one of skill in the art in possession of the present disclosure would recognize as providing the functionality discussed below. Furthermore, similar sets of ACL rules may be created for other protocols that require synchronization or that require processing by the primary VLT peer device (e.g., IGMP).
[0041] In response to determining that the aggregated networking device 206a requires that the source MAC be learnt, the network synchronization engine 312 may copy the packet 502 to produce the copied packet 502a, and may then redirect the copied packet 502a to the aggregated networking device 206a via the port 310e designated as the remote CPU port using the second ACL rule. In an embodiment, when providing the copied packet 502a to the remote CPU port, the network synchronization engine 312 may be configured to send the copied packet 502a to a currently unused queue included in the queue(s) 312a to ensure that the copied packet 502a does not affect any other control packets provided on the ICL 208. In various embodiments, the copied packet 502a in that queue included in the queue(s) 312a must egress through the port 310e designated as the remote CPU port.
[0042] In various embodiments, before the copied packet 502a is provided to the inter-networking-device link 208c, the network synchronization engine 312 may modify a header on the copied packet to provide a modified header. For example, a HiGig header included in the copied packet 502a may be appended to provide a remote CPU header in the copied packet 502a before the copied packet 502a is sent on the port 310e via the queue 312a. Specifically, the appending to provide the remote CPU header may include encapsulating the header with a CPU Management Interface Controller (CMIC) header and/or other headers that would be apparent to one of skill in the art in possession of the present disclosure. A CMIC interface included in the network synchronization engine 312 may know where to send the copied packet based on a destination that the CMIC interface may add to the header. In an embodiment, the modified header (e.g., the remote CPU header) may include information to derive the original incoming port information for the packet (e.g., a VLAN identifier, source port identifier identifying the port from which the packet 502 originated, and/or any other information that would be apparent to one of skill in the art in possession of the present disclosure). This information may be different on each packet and each port.
[0043] The method 400 then proceeds to block 406 where the first aggregated networking device provides the first copied packet to the second aggregated networking device via the inter-aggregated-networking-device link. In an embodiment, at block 406 and as illustrated in
[0044] The method 400 then proceeds to block 408 where the second aggregated networking device receives the first copied packet via the inter-aggregated-networking-device link using a second network processing system included in the second aggregated networking device. In an embodiment, at block 408 and as illustrated in
[0045] While embodiments herein describe the copied packet 502a being provided directly to the central processing system that provides the aggregation manager engine 304 and the process engine(s) 306 on the aggregated networking device 206a/300 (e.g., via a CMIC operation), in some embodiments the packet 502 may be provided directly to the central processing system that provides the aggregation manager engine 304 and the process engine(s) 306 on the aggregated networking device 206a/300. The packet 502 will not reach the central processing system on the aggregated networking device 206b/300 on which the packet was first received. The network synchronization engine 312 will check the content of the packet 502 and decide whether it is for the local central processing system or the remote processing system and send the packet 502 to the appropriate central processing system.
[0046] The method 400 then proceeds to block 410 where the second aggregated networking device synchronizes the respective corresponding second aggregated networking device processes with the at least one first aggregated networking device process running in the first aggregated networking device using the second central processing system and the first information included in the copied packet. In an embodiment, at block 410 and with reference to
[0047] In a specific example, the process engine(s) 306 in the aggregated networking device 206a/300 include a Media Access Control (MAC) address manager engine, an Address Resolution Protocol (ARP) manager engine, a multicast routing protocol engine, aggregation Spanning Tree Protocol (xSTP) engine, an Internet Group Management Protocol (IGMP) snooping engine and up to an Dynamic Host Configuration Protocol (DHCP) snooping engine, as well as any other process engine that would be apparent to one of skill in the art in possession of the present disclosure) while remaining within the scope of the present disclosure as well. As will also be appreciated by one of skill in the art in possession of the present disclosure, the MAC address manager engines in the aggregated networking devices 206a and 206b, respectively, may operate to provide corresponding respective MAC address manager processes that run on each of the aggregated networking devices 206a and 206b and that may operate to perform a variety of MAC address manager process operations known in the art. For example, in some embodiments, information (e.g., a source MAC address) included in the copied packet 502 and provided to the MAC address manager via the synchronization initiation message 504 may result in the programming of MAC addresses in the aggregated networking device 206a for the purposes of subsequent data packet forwarding of data packets associated with the same MAC address.
[0048] As illustrated in
[0049] In an embodiment, at block 410 and with reference to
[0050] As illustrated in
[0051] In various embodiments of method 400, the synchronization of peer aggregated networking devices 206a and 206b included in the networking aggregation synchronization system 200 may be configured to handle an event such the ICL 208 going down or otherwise becoming unavailable in a manner that is similar to when an ICL goes down or otherwise becomes unavailable in conventional systems. For example, in the event that the ICL 208 goes down or otherwise becomes unavailable, the remote CPU port (e.g., the port 310e) may goes down or otherwise become unavailable as well. In this scenario, the copied packet 502a cannot be transferred from the aggregated networking device 206b to the aggregated networking device 206a, and thus the synchronization of processes discussed above cannot be completed, which is similar to what occurs in conventional process synchronization when an ICL between peer aggregated networking devices goes down or otherwise becomes unavailable. Furthermore, while the method 400 is described from the point of view of the aggregated networking device 206b receiving the packet 502 and providing the copied packet 502a to the aggregated networking device 206a, one of skill in the art in possession of the present disclosure will recognize that the aggregated networking device 206a may receive a packet with information that requires synchronization with the aggregated networking device 206b, copy that packet, and provide a copy of that packet to the aggregated networking device 206b according to the method 400 discussed above.
[0052] Thus, systems and methods have been described that provide for the synchronization of processes running in VLT peer devices that provide an VLT domain. For example, a VLT domain may include a secondary VLT peer device that is configured to provide a first portion of a VLT LAG to a TOR switch device, and a primary VLT peer device that is coupled to the secondary VLT peer device and that is configured to provide a second portion of the VLT LAG to the TOR switch device. The secondary VLT peer device may establish an ICL/VLTi with the primary VLT peer device, and may receive a first packet via a VLT LAG port that is included in the secondary VLT peer device and that provides the first portion of the VLT LAG to the TOR switch device. The first packet may include first information for synchronizing at least one process running in the secondary VLT peer device with respective corresponding processes running in the primary VLT peer device, and an NPU included in the secondary VLT peer device may copy the packet and provide the copied packet to the primary VLT peer device via the ICL/VLTi.
[0053] The primary VLT peer device may receive the first copied packet via a designated link on the ICL/VLTi, and then use a CPU included in the primary VLT peer device and the information included in the first copied packet to synchronize the respective corresponding primary VLT peer device processes with the at least one secondary VLT peer device process running in the secondary VLT peer device. As such, the secondary VLT peer device can copy the packet in its network hardware (e.g., the NPU) without having to process the packet for synchronization at an application level with its CPU. As will be appreciated by one of skill in the art in possession of the present disclosure, bypassing the CPU reduces the number of processes and workloads running on the secondary VLT peer device, and providing a copied packet directly from network hardware without the use of the CPU speeds up the synchronization process by providing the copied packet directly from the network hardware in the secondary VLT peer device to the primary VLT peer device instead of using the CPU to provide the packet back through the network hardware to the primary VLT peer device.
[0054] Although illustrative embodiments have been shown and described, a wide range of modification, change and substitution is contemplated in the foregoing disclosure and in some instances, some features of the embodiments may be employed without a corresponding use of other features. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the embodiments disclosed herein.