WO2006091923A1 - Hardware abstraction layer - Google Patents
Hardware abstraction layer Download PDFInfo
- Publication number
- WO2006091923A1 WO2006091923A1 PCT/US2006/006792 US2006006792W WO2006091923A1 WO 2006091923 A1 WO2006091923 A1 WO 2006091923A1 US 2006006792 W US2006006792 W US 2006006792W WO 2006091923 A1 WO2006091923 A1 WO 2006091923A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- network switch
- binding
- data plane
- interface
- information base
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
- H04L49/604—Hybrid IP/Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
Definitions
- the present invention relates to the network switches. More specifically, the present invention relates to a hardware abstraction layer for use in a network switch architecture.
- a network switch is a hardware device for making and breaking a data connection between two endpoints. Switches may be employed to crate a virtual circuit between pairs of endpoints, fulfilling a role similar to that of a router in a connectionless network by diverting data packets toward their intended destination.
- Switches traditionally have two software planes: a control plane and a data plane.
- the control plane is the portion of the system responsible for providing the actual functions and features of the system.
- the data plane is responsible for actually sending and receiving data to and from the ports that connect the switch to the outside world.
- network processors can also control these ports. From a purely architectural standpoint, the separation between the control plane and the data plane into different processors is system dependent, and may also be carried out in the operating system used on the switch.
- HAL API Hardware Abstraction Layer API
- LAN Local Area Network
- Switching functions involve the transport of packets from a source port to a destination port using a Media Access Control (MAC) address of the Ethernet frame that encapsulates the data packet.
- MAC Media Access Control
- These switches are often referred to as hubs.
- Routing involves basing forwarding decisions based on an Internet Protocol (IP) address that is assigned to a computer.
- IP Internet Protocol
- the Ethernet frame then encapsulates the IP packet and the IP address of the source and destination end-points. As a result, it takes longer to resolve packet destinations in a router than it does in a switch because the Ethernet frame has to be stripped out before the IP packet is processed.
- Virtual LANs enable the creation of virtual network topologies within the physical topology of the LAN. This enables the separation of data flows within the LAN using the same Ethernet physical links. From a topology perspective, the physical LAN topology and the Virtual LAN segments represent different Virtual LANs that are virtually independent, hence improving security. .
- a packet driver for control packet handling (a layer to intercept packets from the hardware components before they are passed to the data plane's IP forwarder/routing stack).
- An exception packet handler (to capture control packets communicating topology information that the IP routing stack does not know how to handle, examine them, and forward them to an appropriate L2 protocol for further processing).
- An interface manager layer (to facilitate the creation, handling, and management of virtual interfaces and maintain the bindings between virtual ports and physical ports, as well as handle the creation and management of aggregated physical ports into a virtual aggregated ports, the distribution of packets between these virtual ports, and maintain the administrative status of the virtual and physical port).
- a component to mirror functions between the Hardware Abstraction Layer and the Hardware Integration Plane (to extend the HAL APIs to the data plane and provide a hardware based PI to interface to the actual hardware driver's APIs).
- Chassis and stacking support including a reliable data transport mechanism and a discovery mechanism.
- Switching and routing functions may be provided in a data plane of a network switch by having all functions and algorithms needed to handle all related interface, logical and physical, under one interface manager to keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports. When the actual interface goes down, the virtual interface may go down along with it.
- the bindings may also include definitions. All of these bindings may be located in a single routing information base (RIB) database, eliminating the need for multiple bindings to be kept in various places.
- RIB routing information base
- a hardware abstraction layer in the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
- FIG. 1 is a diagram illustrating a network switch architecture in accordance with an embodiment of the present invention.
- FIG. 2 is a flow diagram illustrating a method for providing switching and routing functions in a data plane of a network switch in accordance with an embodiment of the present invention.
- the components, process steps, and/or data structures may be implemented using various types of operating systems, computing platforms, computer programs, and/or general purpose machines.
- devices of a less general purpose nature such as hardwired devices, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), or the like, may also be used without departing from the scope and spirit of the inventive concepts disclosed herein.
- Switching and routing functions may be provided in a data plane of a network switch by having all functions and algorithms needed to handle all related interface, logical and physical under one interface manager to keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports. When the actual interface goes down, the virtual interface may go down along with it.
- the bindings may also include definitions. All of these bindings may be located in a single database, eliminating the need for multiple bindings to be kept in various places.
- the control plane handles all interfaces as if they were physical interfaces, thus improving control plane routing and forwarding decisions resulting in an increased performance, network resilliancy and network stability. Additionally, bindings may be married to actual physical chips.
- a hardware abstraction layer in the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
- the Interface manager maintains a system wide forwarding information base (FIB) that is derived from the routing information base (RIB) residing in the control plane.
- FIB system wide forwarding information base
- RDB routing information base
- a new next generation of network processors are emerging with the ability to also maintain internal Forwarding Database (FDB).
- the Network processors can then make forwarding decisions at wire speeds based on their internal forwarding database.
- the Network Processor's FDB is much smaller in it's overall capacity. As a result, they are capable of only maintaining a portion of the system wide FEB. When the network processors needs to forward a packet it looks in its internal FDB for a match destination MAC or IP address match.
- the NP forwards the packet to the correct port. If a miss occurs, the NP forwards the packet to the data plane's packet handler.
- the packet hander examines the packet and checks if the IP stack can resolve the forwarding to the correct port, if not, the packet is passed to the Interface Manager. Since the Interface Manager maintains and up-to-data FD3, it has a higher probability of resolving the forwarding decision. If it does, it updates the NP FDB and also updates the IP stack's FIB using a direct access to the IP's FIB. This mechanism is unique and it enables much faster forwarding decisions and resolutions since the packets do not have to be forwarded to the control plane for further resolving the forwarding decision. Only when new hosts, network elements, or changes in the network topology occurs that packets need to be forwarded to the control plane for resolution.
- the Packet handler also intercepts control packets and send them to the Packet Handler.
- the packet Handler checks the type of control packets and if the packets are for L2 (Ethernet type control packets) the packet is passed to the Backend Socket Layer Packet Processor were it is then send to the correct L2 protocol for further processing. Control packets for routing protocols follow the normal D? based packet forwarding.
- a Platform Integration Architecture has been developed to facilitate the design of the next generation switching and routing systems.
- the Platform Integration Architecture provides a tighter coupling between the control plane and the data plane required to provide this new functionality.
- the two main components of the architecture are the Hardware Abstraction Layer (HAL) and the Hardware Integration Plane (HIP) component that resides in the data plane.
- HAL Hardware Abstraction Layer
- HIP Hardware Integration Plane
- HAL/HIP software components form a Hardware Services Layer that uniquely binds the control plane and data plane.
- HAL/HIP APIs can be extended to add advanced functionality to system to take advantage of the new network processors that are providing advanced network functions such as MPLS, Multicast, and Quality of Services and Traffic Engineering.
- FIG. 1 is a diagram illustrating a network switch architecture in accordance with an embodiment of the present invention.
- Hardware Services Shim Layer 100 The only software component that will need to be developed is the Hardware Services Shim Layer 100. This is accomplished by using the interface manager 102 to maintain bindings between virtual interface and logical interfaces, as well as their definitions, all in a single database in the data plane, as well as by replicating a hardware abstraction layer of the control plane on to a hardware abstraction layer 104 of the data plane.
- control plane protocols and applications are entirely abstracted from hardware, operating system and system infrastructure and can work in any platform with the same data plane implementation transparently. Protocols and applications can be added or removed in a granular manner independent of the underlying platform.
- This innovative implementation is based on a comprehensive architecture encompassing L2 ports, L3 interfaces, aggregates (L2 or L3), Switched- Virtual-Interface, and all possible L2/L3/VLAN/aggregate hierarchies. All these interfaces and hierarchy are represented to the control plane logically isolating all hardware platform details.
- the flexibility in changing the system configuration via single shell command allows accommodating the fast changing L2/L3 switching needs especially when network operators incorporate additional advanced functionality such as VoIP, video streaming, security and wireless.
- This advanced implementation may be architected with a distributed data plane and a central redundant control plane.
- the implementation auto-discovers hardware system topology and elects master/slave instances in supporting fully distributed data plane in a stackable or chassis based systems while having a single point of management.
- Control plane protocols and applications are entirely abstracted from HW, OS and system infrastructure in a unique and innovative way and can work across different hardware platforms and operating systems transparently.
- the implementation based on this advanced data plane architecture is highly transferable across different switching platforms allowing high degree of implementation re-use and more importantly quick time-to-market when developing new products.
- Protocols and applications can be added or removed in a granular manner independent of the underlying platform.
- This innovative implementation is based on a "holistic" approach which encompasses L2 ports, L3 interfaces, aggregates (L2 or L3), Switched- Virtual-Interface, and all possible L2/L3/VLAN/aggregate hierarchies. In this unique approach, all these interfaces and hierarchy are represented to the control plane logically isolating all hardware platform details.
- the innovative L2/L3 integration approach provides the flexibility in changing the system configuration via single shell command to allow accommodating the fast changing L2/L3 switching needs especially when network operators incorporate additional advanced functionality such as VoIP, video, security and wireless.
- control plane being hw platform independent, control plane being modular, unique L2/L3 hybrid implementation, etc.
- distributed data plane with a central control plane implementation for maximum performance and scalability by means of the unique manner in which the FIBs of the IP stack and the NP FDBs are updated and entries aged by the carefully crafted Interface Manager, Packet Exception Handler, and the HAL APIs.
- the bindings may also include definitions. All of these bindings may be located in a single database, eliminating the need for multiple bindings to be kept in various places. Additionally, bindings may be married to actual physical chips and the FIB/RIB bindings can be quickly updated as network topology changes ensue.
- the hardware abstraction layer of the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
- FIG. 2 is a flow diagram illustrating a method for providing switching and routing functions in a data plane of a network switch in accordance with an embodiment of the present invention. Each act of the method may be performed in hardware, software, or any combination thereof.
- a request for a binding between a virtual interface and one or more logical interfaces of the network switch may be received.
- the binding may include information regarding ports of the network switch that belong to the virtual interface.
- a definition for the binding may be received.
- the binding and the definition may be maintained in a single RIB database in the control plane and a derived FIB in the data plane of the network switch.
- a status for the binding may also be maintained in the single database in the data plane of the network switch.
- the binding may be linked to a physical chip.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Switching and routing functions may be provided in a data plane of a network switch by having all functions and algorithms needed to handle all related interface, logical and physical, under one interface manager to keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports. When the actual interface goes down, the virtual interface may go down along with it. The bindings may also include definitions. AU of these bindings may be located in a single routing information base (RIB) database, eliminating the need for multiple bindings to be kept in various places. Furthermore, a hardware abstraction layer in the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
Description
S P E C I F I C A T I O N
TITLE OF INVENTION HARDWARE ABSTRACTION LAYER
CROSS-RELATION TO RELATED APPLICATION
[0001] This application claims priority based on Provisional Application Serial No. 60/656,756, entitled "Hardware Abstraction Layer" by Vividh Siddha, Kunihiro Ishiguro and Willie Hernandez, filed on February 25, 2005.
FIELD OF THE INVENTION
[0002] The present invention relates to the network switches. More specifically, the present invention relates to a hardware abstraction layer for use in a network switch architecture.
BACKGROUND OF THE INVENTION
[0003] A network switch is a hardware device for making and breaking a data connection between two endpoints. Switches may be employed to crate a virtual circuit between pairs of endpoints, fulfilling a role similar to that of a router in a connectionless network by diverting data packets toward their intended destination.
[0004] Switches traditionally have two software planes: a control plane and a data plane. The control plane is the portion of the system responsible for providing the actual functions and features of the system. The data plane is responsible for actually sending and receiving data to
and from the ports that connect the switch to the outside world. In some cases, separate processors ("network processors") can also control these ports. From a purely architectural standpoint, the separation between the control plane and the data plane into different processors is system dependent, and may also be carried out in the operating system used on the switch.
[0005] Many prior art switches follow this separation of control plane and data plane. In order to facilitate the software specifically designed for the control plane, Application Programming Interfaces (APIs) have been utilized by additional software added to the control plane to interact with the data plane. These APIs are collectively referred to as the Hardware Abstraction Layer API (HAL API).
[0006] Local Area Network (LAN) technologies typically differentiate between switching functions and routing functions. Switching functions involve the transport of packets from a source port to a destination port using a Media Access Control (MAC) address of the Ethernet frame that encapsulates the data packet. These switches are often referred to as hubs. Routing, on the other hand, involves basing forwarding decisions based on an Internet Protocol (IP) address that is assigned to a computer. The Ethernet frame then encapsulates the IP packet and the IP address of the source and destination end-points. As a result, it takes longer to resolve packet destinations in a router than it does in a switch because the Ethernet frame has to be stripped out before the IP packet is processed.
[0007] Modern switching and routing systems may actually be combined to allow either switching of Ethernet frames based on the MAC address or the IP address. These capabilities are
now embodied into the actual network processors used in the switching systems that control the ports of the system. Hence, new capabilities need to be added to the data plane to facilitate this new state-of-the-art combined functionality. Additionally, Virtual LANs enable the creation of virtual network topologies within the physical topology of the LAN. This enables the separation of data flows within the LAN using the same Ethernet physical links. From a topology perspective, the physical LAN topology and the Virtual LAN segments represent different Virtual LANs that are virtually independent, hence improving security. .
[0008] The main drawback of these systems, however, comes in their design stage. Designers must implement the following components:
1. A mechanism for interfacing the routing and interface management with the control plane.
2. A mechanism to propagate configuration and logging functions from the control plane to the data plane.
3. A packet driver for control packet handling (a layer to intercept packets from the hardware components before they are passed to the data plane's IP forwarder/routing stack).
4. An exception packet handler (to capture control packets communicating topology information that the IP routing stack does not know how to handle, examine them, and forward them to an appropriate L2 protocol for further processing).
5. An interface manager layer (to facilitate the creation, handling, and management of virtual interfaces and maintain the bindings between virtual ports and physical ports, as well as handle the creation and management of aggregated physical ports into a virtual aggregated
ports, the distribution of packets between these virtual ports, and maintain the administrative status of the virtual and physical port).
6. A component to mirror functions between the Hardware Abstraction Layer and the Hardware Integration Plane (to extend the HAL APIs to the data plane and provide a hardware based PI to interface to the actual hardware driver's APIs).
7. A software shim layer between the HIP API and the hardware driver's APIs (in the data plane) to translate the HIP API to the driver's APIs.
8. Chassis and stacking support, including a reliable data transport mechanism and a discovery mechanism.
9. Extending a management interface layer from the control plane into the data plane.
[0009] Placing this much burden on the designers of a switch increases their development costs as well as development time. Traditionally, these functions are performed ad-hoc without any consideration as to the interrelationships between the abstracted functions, in many cases creating unnecessary duplication of functions, data structures, and communication paths. Additionally, many times switch software is distributed to customers who need to customize them to work with their own hardware. Thus, the design burden for all of these components is placed on the customer. What is needed is a solution that does not require designers or customers to engage in such time consuming development.
BRIEF DESCRIPTION
[0010] Switching and routing functions may be provided in a data plane of a network switch by having all functions and algorithms needed to handle all related interface, logical and physical, under one interface manager to keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports. When the actual interface goes down, the virtual interface may go down along with it. The bindings may also include definitions. All of these bindings may be located in a single routing information base (RIB) database, eliminating the need for multiple bindings to be kept in various places. Furthermore, a hardware abstraction layer in the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
BRIEF DESCRIPTION QF THE DRAWINGS
[0011] The accompanying drawings, which are incorporated into and constitute a part of this specification, illustrate one or more embodiments of the present invention and, together with the detailed description, serve to explain the principles and implementations of the invention.
FIG. 1 is a diagram illustrating a network switch architecture in accordance with an embodiment of the present invention.
FIG. 2 is a flow diagram illustrating a method for providing switching and routing functions in a data plane of a network switch in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION
[0012] Embodiments of the present invention are described herein in the context of a system of computers, servers, and software. Those of ordinary skill in the art will realize that the following detailed description of the present invention is illustrative only and is not intended to be in any way limiting. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure. Reference will now be made in detail to implementations of the present invention as illustrated in the accompanying drawings. The same reference indicators will be used throughout the drawings and the following detailed description to refer to the same or like parts.
[0013] In the interest of clarity, not all of the routine features of the implementations described herein are shown and described. It will, of course, be appreciated that in the development of any such actual implementation, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, such as compliance with application- and business-related constraints, and that these specific goals will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.
[0014] In accordance with the present invention, the components, process steps, and/or data structures may be implemented using various types of operating systems, computing platforms, computer programs, and/or general purpose machines. In addition, those of ordinary skill in the
art will recognize that devices of a less general purpose nature, such as hardwired devices, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), or the like, may also be used without departing from the scope and spirit of the inventive concepts disclosed herein.
[0015] Switching and routing functions may be provided in a data plane of a network switch by having all functions and algorithms needed to handle all related interface, logical and physical under one interface manager to keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports. When the actual interface goes down, the virtual interface may go down along with it. The bindings may also include definitions. All of these bindings may be located in a single database, eliminating the need for multiple bindings to be kept in various places. The control plane handles all interfaces as if they were physical interfaces, thus improving control plane routing and forwarding decisions resulting in an increased performance, network resilliancy and network stability. Additionally, bindings may be married to actual physical chips. Furthermore, a hardware abstraction layer in the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks. Furthermore, the Interface manager maintains a system wide forwarding information base (FIB) that is derived from the routing information base (RIB) residing in the control plane. A new next generation of network processors are emerging with the ability to also maintain internal Forwarding Database (FDB). The Network processors can then make forwarding decisions at wire speeds based on their internal forwarding database. The Network Processor's FDB is much smaller in it's overall capacity. As a result, they are capable of only maintaining a portion of the
system wide FEB. When the network processors needs to forward a packet it looks in its internal FDB for a match destination MAC or IP address match. If it finds a match, it forwards the packet to the correct port. If a miss occurs, the NP forwards the packet to the data plane's packet handler. The packet hander examines the packet and checks if the IP stack can resolve the forwarding to the correct port, if not, the packet is passe to the Interface Manager. Since the Interface Manager maintains and up-to-data FD3, it has a higher probability of resolving the forwarding decision. If it does, it updates the NP FDB and also updates the IP stack's FIB using a direct access to the IP's FIB. This mechanism is unique and it enables much faster forwarding decisions and resolutions since the packets do not have to be forwarded to the control plane for further resolving the forwarding decision. Only when new hosts, network elements, or changes in the network topology occurs that packets need to be forwarded to the control plane for resolution.
[0016] The Packet handler also intercepts control packets and send them to the Packet Handler. The packet Handler then checks the type of control packets and if the packets are for L2 (Ethernet type control packets) the packet is passed to the Backend Socket Layer Packet Processor were it is then send to the correct L2 protocol for further processing. Control packets for routing protocols follow the normal D? based packet forwarding.
[0017] These functions when working together provide a marked improvement in performance and enables optimization of the forwarding capabilities of the new generation of Network Processors capable of forwarding packets in the Tera-bits per second range. Thus,
switching and forwarding of data flows is performed at wire speeds with minimum packet delay, jitter and wonder.
[0018] A Platform Integration Architecture has been developed to facilitate the design of the next generation switching and routing systems. The Platform Integration Architecture provides a tighter coupling between the control plane and the data plane required to provide this new functionality. The two main components of the architecture are the Hardware Abstraction Layer (HAL) and the Hardware Integration Plane (HIP) component that resides in the data plane.
[0019] HAL/HIP software components form a Hardware Services Layer that uniquely binds the control plane and data plane. HAL/HIP APIs can be extended to add advanced functionality to system to take advantage of the new network processors that are providing advanced network functions such as MPLS, Multicast, and Quality of Services and Traffic Engineering.
[0020] With the HAL/HIP Hardware Services Layers system designers need to only provide the following:
1. Software shim layer between the HIP API and the hardware driver's APIs (in the data plane) to translate the HIP API to the driver's APIs.
[0021] FIG. 1 is a diagram illustrating a network switch architecture in accordance with an embodiment of the present invention.
[0022] The only software component that will need to be developed is the Hardware Services Shim Layer 100. This is accomplished by using the interface manager 102 to maintain bindings between virtual interface and logical interfaces, as well as their definitions, all in a single database in the data plane, as well as by replicating a hardware abstraction layer of the control plane on to a hardware abstraction layer 104 of the data plane.
[0023] Depending on the systems, this can represent between 40% to 50% of additional costs savings in system design' and a potential reduction of time to market between 30% and 40%.
[0024] This data plane implementation enables highly modular, flexible and optimized integration of control plane protocols and applications with OS and switching silicon platform, hi this implementation, control plane protocols and applications are entirely abstracted from hardware, operating system and system infrastructure and can work in any platform with the same data plane implementation transparently. Protocols and applications can be added or removed in a granular manner independent of the underlying platform.
[0025] This innovative implementation is based on a comprehensive architecture encompassing L2 ports, L3 interfaces, aggregates (L2 or L3), Switched- Virtual-Interface, and all possible L2/L3/VLAN/aggregate hierarchies. All these interfaces and hierarchy are represented to the control plane logically isolating all hardware platform details. The flexibility in changing
the system configuration via single shell command allows accommodating the fast changing L2/L3 switching needs especially when network operators incorporate additional advanced functionality such as VoIP, video streaming, security and wireless.
[0026] This advanced implementation may be architected with a distributed data plane and a central redundant control plane. The implementation auto-discovers hardware system topology and elects master/slave instances in supporting fully distributed data plane in a stackable or chassis based systems while having a single point of management.
[0027] The implementation based on this advanced data plane architecture is highly transferable across different switching platforms allowing high degree of implementation re-use and more importantly quick time-to-market when developing new products. This has the following benefits:
1. Control plane protocols and applications are entirely abstracted from HW, OS and system infrastructure in a unique and innovative way and can work across different hardware platforms and operating systems transparently. The implementation based on this advanced data plane architecture is highly transferable across different switching platforms allowing high degree of implementation re-use and more importantly quick time-to-market when developing new products.
2. Protocols and applications can be added or removed in a granular manner independent of the underlying platform.
3. This innovative implementation is based on a "holistic" approach which encompasses L2 ports, L3 interfaces, aggregates (L2 or L3), Switched- Virtual-Interface, and all possible L2/L3/VLAN/aggregate hierarchies. In this unique approach, all these interfaces and hierarchy are represented to the control plane logically isolating all hardware platform details.
4. The innovative L2/L3 integration approach provides the flexibility in changing the system configuration via single shell command to allow accommodating the fast changing L2/L3 switching needs especially when network operators incorporate additional advanced functionality such as VoIP, video, security and wireless.
5. The innovative approach preserves all of the above benefits (control plane being hw platform independent, control plane being modular, unique L2/L3 hybrid implementation, etc.) while allowing distributed data plane with a central control plane implementation for maximum performance and scalability by means of the unique manner in which the FIBs of the IP stack and the NP FDBs are updated and entries aged by the carefully crafted Interface Manager, Packet Exception Handler, and the HAL APIs.
[0028] This may all be accomplished by having the interface manager keep track of bindings between virtual interfaces and logical interfaces, as well as maintain the statuses of ports that belong to the virtual interface and the actual logical ports while at the same time maintaining an FIB constantly updated by the Control Plane RIB. When the actual interface goes down, the virtual interface may go down along with it. The bindings may also include definitions. All of these bindings may be located in a single database, eliminating the need for multiple bindings to
be kept in various places. Additionally, bindings may be married to actual physical chips and the FIB/RIB bindings can be quickly updated as network topology changes ensue.
[0029] The hardware abstraction layer of the control plane can also then be mirrored in the data plane, eliminating the need for the customer to create a layer performing the same tasks.
[0030] FIG. 2 is a flow diagram illustrating a method for providing switching and routing functions in a data plane of a network switch in accordance with an embodiment of the present invention. Each act of the method may be performed in hardware, software, or any combination thereof. At 200, a request for a binding between a virtual interface and one or more logical interfaces of the network switch may be received. The binding may include information regarding ports of the network switch that belong to the virtual interface. At 202, a definition for the binding may be received. At 204, the binding and the definition may be maintained in a single RIB database in the control plane and a derived FIB in the data plane of the network switch. At 206, a status for the binding may also be maintained in the single database in the data plane of the network switch. At 208, the binding may be linked to a physical chip.
[0031] At 210, it may be determined if the status for the binding indicates that a logical interface is down. If so, then at 212, a corresponding virtual interface as specified by the binding may be brought down. The RIB and FIB are immediately updated and topology changes propagated to the rest of the network.
[0032] While embodiments and applications of this invention have been shown and described, it would be apparent to those skilled in the art having the benefit of this disclosure that many more modifications than mentioned above are possible without departing from the inventive concepts herein. The invention, therefore, is not to be restricted except in the spirit of the appended claims.
Claims
1. A method for providing switching and routing functions in a data plane of a network switch, the method comprising: receiving a request for a binding between a virtual interface and one or more logical interfaces of the network switch; receiving a definition for the binding; and maintaining the binding and the definition in a single database in the data plane of the network switch.
2. The method of claim 1 , further comprising: maintaining a status for the binding in the single database in the data plane of the network switch.
3. The method of claim 1, wherein the binding is information regarding ports of the network switch that belong to the virtual interface.
4. The method of claim 2, further comprising: if the status for the binding indicates that a logical interface is down, bringing down a corresponding virtual interface as specified by the binding.
5. The method of claim 1 , further comprising: linking the binding to a physical chip.
6. The method of claim 1, further comprising: replicating a hardware abstraction layer from a control plane of the network switch on the data plane of the network switch.
7. The method of claim 1, wherein the single database is a forwarding information base and the method further comprises: deriving the forwarding information base from a routing information base.
8. The method of claim 1, further comprising: updating forwarding databases for chips of network processors and a forwarding information base for an IP stack coupled to the network switch.
9. A network switch comprising: a control plane; and a data plane coupled to the control plane and containing an interface manager, wherein the interface manager is configured to receive a request for a binding between a virtual interface and one or more logical interfaces of the network switch, receive a definition for the binding, and maintain the binding and the definition in a single database in the data plane of the network switch.
10. The network switch of claim 9, wherein the interface manager is further configured to maintain a status for the binding in the single database in the data plane of the network switch.
11. The network switch of claim 9, wherein the binding is information regarding ports of the network switch that belong to the virtual interface.
12. The network switch of claim 10, wherein the interface manager is further configured to bring down a corresponding virtual interface as specified by the binding if the status for the binding indicates that a logical interface is down.
13. The network switch of claim 9, wherein the interface manager is further configured to link the binding to a physical chip.
14. The network switch of claim 9, wherein the control plane includes a hardware abstraction layer and the data plane further includes a replicated version of the hardware abstraction layer.
15. The network switch of claim 9, wherein the single database is a forwarding information base and the interface manager is further configured to derive a forwarding information base from a routing information base.
16. The network switch of claim 9, wherein the interface manager is further configured to update forwarding databases for chips of network processors and a forwarding information base for an IP stack coupled to the network switch.
17. An apparatus for providing switching and routing functions in a data plane of a network switch, the apparatus comprising: means for receiving a request for a binding between a virtual interface and one or more logical interfaces of the network switch; means for receiving a definition for the binding; and means for maintaining the binding and the definition in a single database in the data plane of the network switch.
18. The apparatus of claim 17, further comprising: means for maintaining a status for the binding in the single database in the data plane of the network switch.
19. The apparatus of claim 17, wherein the binding is information regarding ports of the network switch that belong to the virtual interface.
20. The apparatus of claim 18, further comprising: if the status for the binding indicates that a logical interface is down, means for bringing down a corresponding virtual interface as specified by the binding.
21. The apparatus of claim 17, further comprising: means for linking the binding to a physical chip.
22. The apparatus of claim 17, further comprising: means for replicating a hardware abstraction layer from a control plane of the network switch on the data plane of the network switch.
23. The apparatus of claim 17, wherein the single database is a forwarding information base and the apparatus further comprises: means for deriving a forwarding information base from a routing information base.
24. The apparatus of claim 17, further comprising: means for updating forwarding databases for chips of network processors and a forwarding information base for an IP stack coupled to the network switch.
25. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform a method for providing switching and routing functions in a data plane of a network switch, the method comprising: receiving a request for a binding between a virtual interface and one or more logical interfaces of the network switch; receiving a definition for the binding; and maintaining the binding and the definition in a single database in the data plane of the network switch.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007557217A JP4714750B2 (en) | 2005-02-25 | 2006-02-24 | Hardware abstraction layer |
EP06736171A EP1851922A1 (en) | 2005-02-25 | 2006-02-24 | Hardware abstraction layer |
CN2006800060720A CN101129032B (en) | 2005-02-25 | 2006-02-24 | Hardware abstraction layer |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US65675605P | 2005-02-25 | 2005-02-25 | |
US60/656,756 | 2005-02-25 | ||
US11/193,134 | 2005-07-28 | ||
US11/193,134 US8254285B2 (en) | 2005-02-25 | 2005-07-28 | Hardware abstraction layer |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2006091923A1 true WO2006091923A1 (en) | 2006-08-31 |
Family
ID=36571499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2006/006792 WO2006091923A1 (en) | 2005-02-25 | 2006-02-24 | Hardware abstraction layer |
Country Status (6)
Country | Link |
---|---|
US (1) | US8254285B2 (en) |
EP (1) | EP1851922A1 (en) |
JP (1) | JP4714750B2 (en) |
CN (1) | CN101129032B (en) |
TW (1) | TW200705898A (en) |
WO (1) | WO2006091923A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100481051C (en) * | 2007-04-24 | 2009-04-22 | 杭州华三通信技术有限公司 | Method and device for implementing universal serial bus host machine controller driving universal adapting adaptation layer |
CN109446677A (en) * | 2018-11-02 | 2019-03-08 | 南京贝伦思网络科技股份有限公司 | General-purpose platform and its building method based on network chip |
Families Citing this family (131)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6553005B1 (en) * | 2000-07-26 | 2003-04-22 | Pluris, Inc. | Method and apparatus for load apportionment among physical interfaces in data routers |
US8924524B2 (en) | 2009-07-27 | 2014-12-30 | Vmware, Inc. | Automated network configuration of virtual machines in a virtual lab data environment |
US8619771B2 (en) | 2009-09-30 | 2013-12-31 | Vmware, Inc. | Private allocated networks over shared communications infrastructure |
US8892706B1 (en) | 2010-06-21 | 2014-11-18 | Vmware, Inc. | Private ethernet overlay networks over a shared ethernet in a virtual environment |
US7653057B1 (en) * | 2006-11-30 | 2010-01-26 | World Wide Packets, Inc. | Preventing forwarding of a packet to a control plane |
US9083609B2 (en) | 2007-09-26 | 2015-07-14 | Nicira, Inc. | Network operating system for managing and securing networks |
US9577842B2 (en) * | 2008-02-25 | 2017-02-21 | Cisco Technology, Inc. | Shared L2 bridging domains for L3 virtual networks |
US8195774B2 (en) | 2008-05-23 | 2012-06-05 | Vmware, Inc. | Distributed virtual switch for virtualized computer systems |
US20100058232A1 (en) * | 2008-08-26 | 2010-03-04 | Cisco Technology, Inc. | Virtual network join protocol |
US8966035B2 (en) | 2009-04-01 | 2015-02-24 | Nicira, Inc. | Method and apparatus for implementing and managing distributed virtual switches in several hosts and physical forwarding elements |
US8396960B2 (en) * | 2009-05-08 | 2013-03-12 | Canon Kabushiki Kaisha | Efficient network utilization using multiple physical interfaces |
US10103939B2 (en) | 2010-07-06 | 2018-10-16 | Nicira, Inc. | Network control apparatus and method for populating logical datapath sets |
US8964528B2 (en) | 2010-07-06 | 2015-02-24 | Nicira, Inc. | Method and apparatus for robust packet distribution among hierarchical managed switching elements |
US8837493B2 (en) | 2010-07-06 | 2014-09-16 | Nicira, Inc. | Distributed network control apparatus and method |
US9525647B2 (en) | 2010-07-06 | 2016-12-20 | Nicira, Inc. | Network control apparatus and method for creating and modifying logical switching elements |
US9680750B2 (en) | 2010-07-06 | 2017-06-13 | Nicira, Inc. | Use of tunnels to hide network addresses |
US9118591B2 (en) * | 2010-07-30 | 2015-08-25 | Broadcom Corporation | Distributed switch domain of heterogeneous components |
US9043452B2 (en) * | 2011-05-04 | 2015-05-26 | Nicira, Inc. | Network control apparatus and method for port isolation |
CN102255799B (en) * | 2011-06-23 | 2015-04-08 | 中国人民解放军国防科学技术大学 | Internal network interface mapping method and device supporting separation of forwarding and control |
US9203701B2 (en) | 2011-10-25 | 2015-12-01 | Nicira, Inc. | Network virtualization apparatus and method with scheduling capabilities |
US9137107B2 (en) | 2011-10-25 | 2015-09-15 | Nicira, Inc. | Physical controllers for converting universal flows |
US9288104B2 (en) | 2011-10-25 | 2016-03-15 | Nicira, Inc. | Chassis controllers for converting universal flows |
US9154433B2 (en) | 2011-10-25 | 2015-10-06 | Nicira, Inc. | Physical controller |
WO2013072773A2 (en) * | 2011-11-18 | 2013-05-23 | Marvell World Trade Ltd. | Data path acceleration using hw virtualization |
US8683028B2 (en) * | 2012-03-09 | 2014-03-25 | Ciena Corporation | Generic multi-layer provisioning service management layer systems and methods |
EP2748993B1 (en) | 2012-04-18 | 2015-09-02 | Nicira Inc. | Using transactions to compute and propagate network forwarding state |
US9231892B2 (en) | 2012-07-09 | 2016-01-05 | Vmware, Inc. | Distributed virtual switch configuration and state management |
JP5995279B2 (en) * | 2012-10-24 | 2016-09-21 | 日本電気株式会社 | Network device, method, and program |
US9166912B2 (en) | 2013-02-25 | 2015-10-20 | Google Inc. | Translating network forwarding plane models into target implementation using sub models and hints |
US8929362B1 (en) * | 2013-02-25 | 2015-01-06 | Google Inc. | Capability negotiation for abstract candidate device model |
US9172604B1 (en) | 2013-02-25 | 2015-10-27 | Google Inc. | Target mapping and implementation of abstract device model |
US9432215B2 (en) | 2013-05-21 | 2016-08-30 | Nicira, Inc. | Hierarchical network managers |
US10218564B2 (en) | 2013-07-08 | 2019-02-26 | Nicira, Inc. | Unified replication mechanism for fault-tolerance of state |
US9571386B2 (en) | 2013-07-08 | 2017-02-14 | Nicira, Inc. | Hybrid packet processing |
US9350657B2 (en) | 2013-07-08 | 2016-05-24 | Nicira, Inc. | Encapsulating data packets using an adaptive tunnelling protocol |
US9571304B2 (en) | 2013-07-08 | 2017-02-14 | Nicira, Inc. | Reconciliation of network state across physical domains |
US9407580B2 (en) | 2013-07-12 | 2016-08-02 | Nicira, Inc. | Maintaining data stored with a packet |
US9344349B2 (en) | 2013-07-12 | 2016-05-17 | Nicira, Inc. | Tracing network packets by a cluster of network controllers |
US9282019B2 (en) | 2013-07-12 | 2016-03-08 | Nicira, Inc. | Tracing logical network packets through physical network |
CN103428301B (en) * | 2013-08-05 | 2016-08-10 | 北京神州绿盟信息安全科技股份有限公司 | A kind of interface system and the method that packet is processed thereof |
US9952885B2 (en) | 2013-08-14 | 2018-04-24 | Nicira, Inc. | Generation of configuration files for a DHCP module executing within a virtualized container |
US9887960B2 (en) | 2013-08-14 | 2018-02-06 | Nicira, Inc. | Providing services for logical networks |
US9973382B2 (en) | 2013-08-15 | 2018-05-15 | Nicira, Inc. | Hitless upgrade for network control applications |
US9503371B2 (en) | 2013-09-04 | 2016-11-22 | Nicira, Inc. | High availability L3 gateways for logical networks |
US9577845B2 (en) | 2013-09-04 | 2017-02-21 | Nicira, Inc. | Multiple active L3 gateways for logical networks |
US9674087B2 (en) | 2013-09-15 | 2017-06-06 | Nicira, Inc. | Performing a multi-stage lookup to classify packets |
US9602398B2 (en) | 2013-09-15 | 2017-03-21 | Nicira, Inc. | Dynamically generating flows with wildcard fields |
US9667556B2 (en) | 2013-09-24 | 2017-05-30 | Nicira, Inc. | Adjusting connection validating control signals in response to changes in network traffic |
US10148484B2 (en) | 2013-10-10 | 2018-12-04 | Nicira, Inc. | Host side method of using a controller assignment list |
US10063458B2 (en) | 2013-10-13 | 2018-08-28 | Nicira, Inc. | Asymmetric connection with external networks |
US9575782B2 (en) | 2013-10-13 | 2017-02-21 | Nicira, Inc. | ARP for logical router |
US9967199B2 (en) | 2013-12-09 | 2018-05-08 | Nicira, Inc. | Inspecting operations of a machine to detect elephant flows |
US10193771B2 (en) | 2013-12-09 | 2019-01-29 | Nicira, Inc. | Detecting and handling elephant flows |
US9996467B2 (en) | 2013-12-13 | 2018-06-12 | Nicira, Inc. | Dynamically adjusting the number of flows allowed in a flow table cache |
US9569368B2 (en) | 2013-12-13 | 2017-02-14 | Nicira, Inc. | Installing and managing flows in a flow table cache |
US9419855B2 (en) | 2014-03-14 | 2016-08-16 | Nicira, Inc. | Static routes for logical routers |
US9313129B2 (en) | 2014-03-14 | 2016-04-12 | Nicira, Inc. | Logical router processing by network controller |
US9590901B2 (en) | 2014-03-14 | 2017-03-07 | Nicira, Inc. | Route advertisement by managed gateways |
US9225597B2 (en) | 2014-03-14 | 2015-12-29 | Nicira, Inc. | Managed gateways peering with external router to attract ingress packets |
US9503321B2 (en) | 2014-03-21 | 2016-11-22 | Nicira, Inc. | Dynamic routing for logical routers |
US9647883B2 (en) | 2014-03-21 | 2017-05-09 | Nicria, Inc. | Multiple levels of logical routers |
US9893988B2 (en) | 2014-03-27 | 2018-02-13 | Nicira, Inc. | Address resolution using multiple designated instances of a logical router |
US9413644B2 (en) | 2014-03-27 | 2016-08-09 | Nicira, Inc. | Ingress ECMP in virtual distributed routing environment |
US9385954B2 (en) | 2014-03-31 | 2016-07-05 | Nicira, Inc. | Hashing techniques for use in a network environment |
US10193806B2 (en) | 2014-03-31 | 2019-01-29 | Nicira, Inc. | Performing a finishing operation to improve the quality of a resulting hash |
US9985896B2 (en) | 2014-03-31 | 2018-05-29 | Nicira, Inc. | Caching of service decisions |
US10091120B2 (en) | 2014-05-05 | 2018-10-02 | Nicira, Inc. | Secondary input queues for maintaining a consistent network state |
US9742881B2 (en) | 2014-06-30 | 2017-08-22 | Nicira, Inc. | Network virtualization using just-in-time distributed capability for classification encoding |
US9875127B2 (en) | 2014-08-22 | 2018-01-23 | Nicira, Inc. | Enabling uniform switch management in virtual infrastructure |
US11178051B2 (en) | 2014-09-30 | 2021-11-16 | Vmware, Inc. | Packet key parser for flow-based forwarding elements |
US10511458B2 (en) | 2014-09-30 | 2019-12-17 | Nicira, Inc. | Virtual distributed bridging |
US9768980B2 (en) | 2014-09-30 | 2017-09-19 | Nicira, Inc. | Virtual distributed bridging |
US10250443B2 (en) | 2014-09-30 | 2019-04-02 | Nicira, Inc. | Using physical location to modify behavior of a distributed virtual network element |
US10020960B2 (en) | 2014-09-30 | 2018-07-10 | Nicira, Inc. | Virtual distributed bridging |
US10469342B2 (en) | 2014-10-10 | 2019-11-05 | Nicira, Inc. | Logical network traffic analysis |
CN105824295A (en) * | 2015-01-08 | 2016-08-03 | 中国航天科工集团第四研究院指挥自动化技术研发与应用中心 | Method, device and system for hardware device control |
US10079779B2 (en) | 2015-01-30 | 2018-09-18 | Nicira, Inc. | Implementing logical router uplinks |
US10038628B2 (en) | 2015-04-04 | 2018-07-31 | Nicira, Inc. | Route server mode for dynamic routing between logical and physical networks |
US9967134B2 (en) | 2015-04-06 | 2018-05-08 | Nicira, Inc. | Reduction of network churn based on differences in input state |
US10361952B2 (en) | 2015-06-30 | 2019-07-23 | Nicira, Inc. | Intermediate logical interfaces in a virtual distributed router environment |
US10230629B2 (en) | 2015-08-11 | 2019-03-12 | Nicira, Inc. | Static route configuration for logical router |
US10057157B2 (en) | 2015-08-31 | 2018-08-21 | Nicira, Inc. | Automatically advertising NAT routes between logical routers |
US10204122B2 (en) | 2015-09-30 | 2019-02-12 | Nicira, Inc. | Implementing an interface between tuple and message-driven control entities |
US10095535B2 (en) | 2015-10-31 | 2018-10-09 | Nicira, Inc. | Static route types for logical routers |
US10333849B2 (en) | 2016-04-28 | 2019-06-25 | Nicira, Inc. | Automatic configuration of logical routers on edge nodes |
US11019167B2 (en) | 2016-04-29 | 2021-05-25 | Nicira, Inc. | Management of update queues for network controller |
US10841273B2 (en) | 2016-04-29 | 2020-11-17 | Nicira, Inc. | Implementing logical DHCP servers in logical networks |
US10484515B2 (en) | 2016-04-29 | 2019-11-19 | Nicira, Inc. | Implementing logical metadata proxy servers in logical networks |
US10091161B2 (en) | 2016-04-30 | 2018-10-02 | Nicira, Inc. | Assignment of router ID for logical routers |
US10153973B2 (en) | 2016-06-29 | 2018-12-11 | Nicira, Inc. | Installation of routing tables for logical router in route server mode |
US10560320B2 (en) | 2016-06-29 | 2020-02-11 | Nicira, Inc. | Ranking of gateways in cluster |
US10454758B2 (en) | 2016-08-31 | 2019-10-22 | Nicira, Inc. | Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP |
US10341236B2 (en) | 2016-09-30 | 2019-07-02 | Nicira, Inc. | Anycast edge service gateways |
US10742746B2 (en) | 2016-12-21 | 2020-08-11 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
US10212071B2 (en) | 2016-12-21 | 2019-02-19 | Nicira, Inc. | Bypassing a load balancer in a return path of network traffic |
US10237123B2 (en) | 2016-12-21 | 2019-03-19 | Nicira, Inc. | Dynamic recovery from a split-brain failure in edge nodes |
US10616045B2 (en) | 2016-12-22 | 2020-04-07 | Nicira, Inc. | Migration of centralized routing components of logical router |
US10200306B2 (en) | 2017-03-07 | 2019-02-05 | Nicira, Inc. | Visualization of packet tracing operation results |
CN108322326B (en) * | 2017-06-27 | 2021-02-26 | 新华三技术有限公司 | Interface state control method, message transmission method and device |
US10681000B2 (en) | 2017-06-30 | 2020-06-09 | Nicira, Inc. | Assignment of unique physical network addresses for logical network addresses |
US10637800B2 (en) | 2017-06-30 | 2020-04-28 | Nicira, Inc | Replacement of logical network addresses with physical network addresses |
US10756969B2 (en) * | 2017-08-15 | 2020-08-25 | Nicira, Inc. | Disruption minimization for guests when applying changes to a data plane of a packet handler in a host |
US10608887B2 (en) | 2017-10-06 | 2020-03-31 | Nicira, Inc. | Using packet tracing tool to automatically execute packet capture operations |
DE102017219899A1 (en) | 2017-11-09 | 2019-05-09 | Audi Ag | Safe operation of a software application in a control unit of a vehicle |
US10374827B2 (en) | 2017-11-14 | 2019-08-06 | Nicira, Inc. | Identifier that maps to different networks at different datacenters |
US10511459B2 (en) | 2017-11-14 | 2019-12-17 | Nicira, Inc. | Selection of managed forwarding element for bridge spanning multiple datacenters |
US10999220B2 (en) | 2018-07-05 | 2021-05-04 | Vmware, Inc. | Context aware middlebox services at datacenter edge |
US11184327B2 (en) | 2018-07-05 | 2021-11-23 | Vmware, Inc. | Context aware middlebox services at datacenter edges |
US10931560B2 (en) | 2018-11-23 | 2021-02-23 | Vmware, Inc. | Using route type to determine routing protocol behavior |
US10735541B2 (en) | 2018-11-30 | 2020-08-04 | Vmware, Inc. | Distributed inline proxy |
US10797998B2 (en) | 2018-12-05 | 2020-10-06 | Vmware, Inc. | Route server for distributed routers using hierarchical routing protocol |
US10938788B2 (en) | 2018-12-12 | 2021-03-02 | Vmware, Inc. | Static routes for policy-based VPN |
US11095480B2 (en) | 2019-08-30 | 2021-08-17 | Vmware, Inc. | Traffic optimization using distributed edge services |
US11095545B2 (en) | 2019-10-22 | 2021-08-17 | Vmware, Inc. | Control packet management |
US11641305B2 (en) | 2019-12-16 | 2023-05-02 | Vmware, Inc. | Network diagnosis in software-defined networking (SDN) environments |
US11283699B2 (en) | 2020-01-17 | 2022-03-22 | Vmware, Inc. | Practical overlay network latency measurement in datacenter |
US11606294B2 (en) | 2020-07-16 | 2023-03-14 | Vmware, Inc. | Host computer configured to facilitate distributed SNAT service |
US11616755B2 (en) | 2020-07-16 | 2023-03-28 | Vmware, Inc. | Facilitating distributed SNAT service |
US11611613B2 (en) | 2020-07-24 | 2023-03-21 | Vmware, Inc. | Policy-based forwarding to a load balancer of a load balancing cluster |
US11451413B2 (en) | 2020-07-28 | 2022-09-20 | Vmware, Inc. | Method for advertising availability of distributed gateway service and machines at host computer |
US11902050B2 (en) | 2020-07-28 | 2024-02-13 | VMware LLC | Method for providing distributed gateway service at host computer |
US11558426B2 (en) | 2020-07-29 | 2023-01-17 | Vmware, Inc. | Connection tracking for container cluster |
US11196628B1 (en) | 2020-07-29 | 2021-12-07 | Vmware, Inc. | Monitoring container clusters |
US11570090B2 (en) | 2020-07-29 | 2023-01-31 | Vmware, Inc. | Flow tracing operation in container cluster |
US11736436B2 (en) | 2020-12-31 | 2023-08-22 | Vmware, Inc. | Identifying routes with indirect addressing in a datacenter |
US11336533B1 (en) | 2021-01-08 | 2022-05-17 | Vmware, Inc. | Network visualization of correlations between logical elements and associated physical elements |
US11687210B2 (en) | 2021-07-05 | 2023-06-27 | Vmware, Inc. | Criteria-based expansion of group nodes in a network topology visualization |
US11711278B2 (en) | 2021-07-24 | 2023-07-25 | Vmware, Inc. | Visualization of flow trace operation across multiple sites |
US11855862B2 (en) | 2021-09-17 | 2023-12-26 | Vmware, Inc. | Tagging packets for monitoring and analysis |
DE102021127285A1 (en) | 2021-10-21 | 2023-04-27 | Bayerische Motoren Werke Aktiengesellschaft | NETWORK |
CN114157618A (en) * | 2021-11-29 | 2022-03-08 | 上海博达数据通信有限公司 | Data exchange module and switch supporting FCoE service |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385197B1 (en) * | 1999-07-09 | 2002-05-07 | Allied Telesyn International Corp. | Virtual port trunking method and apparatus |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU697850B2 (en) * | 1995-11-15 | 1998-10-15 | Extreme Networks, Inc. | Distributed connection-oriented services for switched communications networks |
US6311288B1 (en) * | 1998-03-13 | 2001-10-30 | Paradyne Corporation | System and method for virtual circuit backup in a communication network |
US6601186B1 (en) * | 2000-05-20 | 2003-07-29 | Equipe Communications Corporation | Independent restoration of control plane and data plane functions |
US6639910B1 (en) * | 2000-05-20 | 2003-10-28 | Equipe Communications Corporation | Functional separation of internal and external controls in network devices |
US20030120822A1 (en) * | 2001-04-19 | 2003-06-26 | Langrind Nicholas A. | Isolated control plane addressing |
WO2002086712A1 (en) * | 2001-04-20 | 2002-10-31 | Egenera, Inc. | Virtual networking system and method in a processing system |
US7212526B2 (en) * | 2002-01-18 | 2007-05-01 | Hitachi, Ltd. | Method and apparatus for composing virtual links in a label switched network |
US6907039B2 (en) * | 2002-07-20 | 2005-06-14 | Redback Networks Inc. | Method and apparatus for routing and forwarding between virtual routers within a single network element |
FI20021832A0 (en) * | 2002-10-15 | 2002-10-15 | Nokia Corp | A method and system for routing packet data and monitoring the flow |
CN1503506B (en) * | 2002-11-20 | 2010-05-12 | 株式会社日立制作所 | Virtual insertion router |
-
2005
- 2005-07-28 US US11/193,134 patent/US8254285B2/en active Active
-
2006
- 2006-02-24 WO PCT/US2006/006792 patent/WO2006091923A1/en active Application Filing
- 2006-02-24 JP JP2007557217A patent/JP4714750B2/en not_active Expired - Fee Related
- 2006-02-24 CN CN2006800060720A patent/CN101129032B/en not_active Expired - Fee Related
- 2006-02-24 TW TW095106478A patent/TW200705898A/en unknown
- 2006-02-24 EP EP06736171A patent/EP1851922A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385197B1 (en) * | 1999-07-09 | 2002-05-07 | Allied Telesyn International Corp. | Virtual port trunking method and apparatus |
Non-Patent Citations (2)
Title |
---|
BERKOWITZ GETT COMMUNICATIONS E DAVIES (ED) NORTEL NETWORKS S HARES NEXTHOP TECHNOLOGIES P KRISHNASWAMY SAIC M LEPP CONSULTANT H: "Terminology for Benchmarking BGP Device Convergence in the Control Plane; draft-ietf-bmwg-conterm-06.txt;", IETF STANDARD-WORKING-DRAFT, INTERNET ENGINEERING TASK FORCE, IETF, CH, vol. bmwg, no. 6, 19 July 2004 (2004-07-19), pages 1 - 35, XP015038094, ISSN: 0000-0004 * |
KARLIN S ET AL: "VERA: an extensible router architecture", OPEN ARCHITECTURES AND NETWORK PROGRAMMING PROCEEDINGS, 2001 IEEE 27-28 APRIL 2001, PISCATAWAY, NJ, USA,IEEE, 27 April 2001 (2001-04-27), pages 3 - 14, XP010538877, ISBN: 0-7803-7064-3 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100481051C (en) * | 2007-04-24 | 2009-04-22 | 杭州华三通信技术有限公司 | Method and device for implementing universal serial bus host machine controller driving universal adapting adaptation layer |
CN109446677A (en) * | 2018-11-02 | 2019-03-08 | 南京贝伦思网络科技股份有限公司 | General-purpose platform and its building method based on network chip |
CN109446677B (en) * | 2018-11-02 | 2023-07-14 | 南京贝伦思网络科技股份有限公司 | Universal platform based on network chip and construction method thereof |
Also Published As
Publication number | Publication date |
---|---|
US20060193266A1 (en) | 2006-08-31 |
CN101129032B (en) | 2012-07-04 |
US8254285B2 (en) | 2012-08-28 |
CN101129032A (en) | 2008-02-20 |
JP4714750B2 (en) | 2011-06-29 |
EP1851922A1 (en) | 2007-11-07 |
TW200705898A (en) | 2007-02-01 |
JP2008532390A (en) | 2008-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8254285B2 (en) | Hardware abstraction layer | |
US11411770B2 (en) | Virtual port channel bounce in overlay network | |
US20220124077A1 (en) | Secure forwarding of tenant workloads in virtual networks | |
CN110120934B (en) | Method, software defined network controller and medium for applying firewall policy | |
US8576721B1 (en) | Local forwarding bias in a multi-chassis router | |
US9104643B2 (en) | OpenFlow controller master-slave initialization protocol | |
US7738457B2 (en) | Method and system for virtual routing using containers | |
US6163543A (en) | Port aggregation protocol | |
US8913613B2 (en) | Method and system for classification and management of inter-blade network traffic in a blade server | |
JP4481517B2 (en) | Internetwork apparatus and internetwork method | |
US20160218974A1 (en) | System and method for context aware network | |
US9473404B2 (en) | Symmetric flow processing in a software-defined networking (SDN) system | |
US7653057B1 (en) | Preventing forwarding of a packet to a control plane | |
US11329966B2 (en) | System and method for transferring packets between kernel modules in different network stacks | |
WO2013185715A1 (en) | Method for implementing virtual network and virtual network | |
CN111740913A (en) | System for avoiding traffic flooding due to asymmetric MAC learning | |
US11212176B2 (en) | Consistent processing of transport node network data in a physical sharding architecture | |
US20150043348A1 (en) | Traffic Flow Redirection between Border Routers using Routing Encapsulation | |
EP2369782B1 (en) | Multicasting within a distributed control plane of a switch | |
US8953599B1 (en) | Traffic cut-through within network device having multiple virtual network devices | |
KR101758207B1 (en) | Apparatus for processing network packet using service function chaining and Method for controlling the same | |
CN111756566B (en) | Software upgrade deployment in a hybrid network with and without ISSU devices | |
US11133947B2 (en) | Multicast routing | |
GB2485026A (en) | Routed Split Multi-Link Trunking (RSMLT) resiliency for Wireless Local Area Network (WLAN) split-plane environments | |
US11082259B1 (en) | System and method for centralized policy enforcement for network segmentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200680006072.0 Country of ref document: CN |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2006736171 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007557217 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |