The present application is a 371 application of International Application No. PCT/CN2013/077372 filed on Jun. 18, 2013 and entitled “Traffic Forwarding in a Layer 2 Edge Network,” which claims benefit of Chinese Patent App. No. CN 201210236710.5 filed on Jul. 10, 2012.
A data centre edge network serves as a boundary to the data centre. The edge network is connected to host devices or servers on one side, and to an edge router that serves as an outgoing interface to an external network on the other side. A first-hop gateway of the edge network may implement a redundancy protocol for establishing a fault-tolerant gateway, such as VRRP (Virtual Router Redundancy Protocol), HSRP (Hot Standby Route Protocol) etc. The fabric core of an edge network may be implemented as a layer 2 virtual private network (L2VPN). In this case, from a global perspective, the L2VPN domain may be viewed as a single virtual device such as a layer 3 switch.
Traffic forwarding within a layer 2 network of a data centre may use any suitable network protocol such as SPB (Shortest Path Bridge), TRILL (Transparent Interconnection of lots of link), VPLS (Virtual Private Label Switch) etc. These techniques support layer 2 traffic forwarding according to ECMP (Equal Cost Multi Path), shortest path and transparent switching. Internal layer 2 traffic forwarding is by way of L2VPN forwarding between physical devices. Layer 2 and layer 3 forwarding is performed via the edge network.
By way of examples, the present disclosure will be described with reference to the following drawings, in which:
In an edge network such as in
The present disclosure describes traffic forwarding in a layer 2 edge network that includes an access server device connected to a sender device and a gateway device. Instead of forwarding from ID-A to ID-C via gateway device ID-I, the present disclosure facilitates traffic forwarding using a shorter forwarding path between sender host device 111 and recipient host device 113, i.e. via ID-B (see path 154 in
In one example, forwarding information is established prior to receiving a message. The forwarding information includes information of destination IP address, destination media access control (MAC) address, destination virtual local area network identifier VLAN ID and destination device ID. A message is then received from a sender device, the message including first destination MAC address, first destination IP address, first destination VLAN ID, and first destination device ID.
It is then determined whether the first destination MAC address of a received message is a MAC address of the gateway device.
According to the above, forwarding information is established to facilitate traffic forwarding along a path that does not involve a gateway device, for example in the case of inter-VLAN traffic forwarding. This facilitates shortest hop forwarding (SHF), which is more efficient and reduces delay.
Examples will be described with reference to the accompanying drawings. In more detail,
The backbone core or fabric core of the edge network 102 may implement any suitable network protocol, such as SPB, TRILL, VPLS etc. A device identification or ID (e.g. ID-A to ID-I in
The devices 110, 120, 130 and 140 are connected to each other via their respective outgoing interfaces. In the example in
Host devices (or servers) 111, 112, 113 and 114 are connected to the edge network 102 via access server devices ID-A, ID-B, ID-C and ID-D respectively. Host devices 111, 112 and 114 belong to VLAN10, while host device 113 belongs to VLAN20. Both VLANs are configured with shortest hop forwarding. The host devices 111, 112, 113 and 114 have the following address information:
Access server devices ID-A, ID-B, ID-C and ID-D are connected to gateway devices ID-H and ID-I via transient devices ID-E, ID-F and ID-G. The gateway devices 140 have the following address information:
VLAN10 and VLAN20 are enabled or configured with SHF which generally refers to traffic forwarding to a destination via the lowest number of hops. For example, in the case of VLAN10, gateway device ID-I is configured as a ‘master’ gateway device while gateway device ID-H as a ‘backup’ gateway device for VLAN20. Master gateway device ID-I is responsible for generating forwarding information, calculating paths, forwarding traffic and responding to address resolution protocol (ARP) requests for VLAN10. The backup gateway device serves as a backup, ready to assume the role of master should the current master fails.
In one example, a ‘sender device’ such as a host device on a VLAN (e.g. 111 on VLAN10) sends a message via an ingress access server device (e.g. ID-A). There are several possible scenarios:
In the second example scenario, since the destination MAC address of the message is the MAC address of a gateway device (e.g. ID-I), the message is conventionally forwarded by the access server device (e.g. ID-A) to the gateway device (e.g. ID-I) before being forwarded to the host device (e.g. 113) via other devices (e.g. ID-F and ID-C).
The example method facilitates shortest hop forwarding, which is more efficient and reduces delay during traffic forwarding. In the second example scenario, it is not necessary for the access server device (e.g. ID-A) to forward the received message via a gateway device (e.g. ID-I) although, in this example, the message is for a host device on a different VLAN in the edge network 102.
Forwarding Information
The information may be gathered, sent and received using any suitable interior gateway protocol (IGP), such as Intermediate-System to Intermediate System (ISIS), Open Shortest Path Forwarding (OSPF) etc.
Although some examples are provided below, it will be appreciated that the different types of information may be combined or divided in any suitable way. For example, a single combined table may be created to include the global host information 310, layer 3 host route forwarding information and next hop adjacency information.
L2VPN forwarding information may include information relating to layer 2 forwarding within the edge network 102. Entries may be in the form of (destination device ID, next hop device ID, outgoing interface label). In the example in
The entries specify that ID-A is connected to destination device ID-B via interface ‘g3/1/1’; destination device ID-C via next-hop device ID-B and interface ‘g3/1/1’; destination device ID-F via next-hop device ID-B and interface ‘g3/1/1’; and destination device ID-F via next-hop device ID-G and interface ‘g3/1/2’.
An example global host information (310 in
Host entries:
Gateway entries:
‘Host’ and ‘GW’ refer to the device type, i.e. host device or gateway device. The ‘Host’ entries include address information of host devices 111, 112, 113, 114 while ‘GW’ entries include address information of gateway devices ID-H and ID-I. In
An example layer 3 host route forwarding information (320 in
(IP-a, MAC-a, VLAN10, N/A)
(IP-b, MAC-b, VLAN10, ID-B)
(IP-c, MAC-c, VLAN20, ID-C)
(IP-d, MAC-d, VLAN10, ID-D)
(IP-v20, MAC-v20, VLAN20, ID-H)
(IP-v10, MAC-v10, VLAN10, ID-I)
The master gateway device (e.g. ID-I) also establishes and synchronizes next hop adjacency information for all devices in the network. Each device receives the next hop adjacency information through IGP, and establishes local next hop adjacency information. Entries of the next hop adjacency information (330 in
Using the next hop adjacency information, an access server device (e.g. ID-A) is able to determine the MAC address, VLAN ID and outgoing interface of the next hop device based on a destination device ID for forwarding the message.
Traffic Forwarding
Referring also to
Based on the above example, the message is sent from ID-A to ID-C via ID-B before reaching host device 113. Messages sent by host device 113 on VLAN20 to host device 111 on VLAN10 are forwarded in a similar way without first sending it to gateway device ID-H.
Default Routing Information
In a third example scenario (see 510 in
To facilitate traffic forwarding to a recipient on an external network via a gateway device, each access server device (e.g. ID-A) may further establish default routing information, for example at block 205 in
(0, N/A, N/A, ID-I) for VLAN10
(0, N/A, N/A, ID-H) for VLAN20
In this case, the access server device (e.g. ID-A) first determines, from the default routing information, the destination gateway device ID (e.g. ID-I) based on the first destination VLAN ID (e.g. VLAN10) in the received message. The message is then encapsulated according to the destination gateway device ID (e.g. ID-I) and device ID of the access server device (e.g. ID-A).
The access server device (e.g. ID-A) then looks up the next hop adjacency information for the destination gateway device ID (e.g. ID-I) in the next hop adjacency information 330. For example, for ID-A to reach ID-I, the next hop device ID is ID-G and the outgoing interface is ‘g3/1/2’.
Network Device 600
The above examples can be implemented by hardware, software or firmware or a combination thereof. Referring to
The example network device 600 includes a processor 610, a memory 620 and a network interface device 640 that communicate with each other via bus 630. The memory 620 stores any necessary forwarding information 622 and machine-readable instructions 624 to perform any of the processes described in the present disclosure.
The processor 610 is further to perform processes described herein. In one example, the processor 610 is to:
The forwarding information 622 in the memory 620 may be established according to block 205 in
The memory 620 may store machine-readable instructions 624 to cause the processor 610 to perform processes described herein. The network device 600 in
The methods, processes and functional units described herein may be implemented by hardware (including hardware logic circuitry), software or firmware or a combination thereof. The term ‘processor’ is to be interpreted broadly to include a processing unit, ASIC, logic unit, or programmable gate array etc. The processes, methods and functional units may all be performed by the one or more processors 610; reference in this disclosure or the claims to a ‘processor’ should thus be interpreted to mean ‘one or more processors’.
Although one network interface device 640 is shown in
Further, the processes, methods and functional units described in this disclosure may be implemented in the form of a computer software product. The computer software product is stored in a storage medium and comprises a plurality of instructions for making a processor to implement the methods recited in the examples of the present disclosure.
The figures are only illustrations of an example, wherein the units or procedure shown in the figures are not necessarily essential for implementing the present disclosure. Those skilled in the art will understand that the units in the device in the example can be arranged in the device in the examples as described, or can be alternatively located in one or more devices different from that in the examples. The units in the examples described can be combined into one module or further divided into a plurality of sub-units.
Although the flowcharts described show a specific order of execution, the order of execution may differ from that which is depicted. For example, the order of execution of two or more blocks may be changed relative to the order shown. Also, two or more blocks shown in succession may be executed concurrently or with partial concurrence. All such variations are within the scope of the present disclosure.
It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the above-described embodiments, without departing from the broad general scope of the present disclosure. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.
Number | Date | Country | Kind |
---|---|---|---|
2012 1 0236710 | Jul 2012 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2013/077372 | 6/18/2013 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2014/008802 | 1/16/2014 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7801123 | Dharanikota et al. | Sep 2010 | B2 |
20020191572 | Weinstein et al. | Dec 2002 | A1 |
20120014386 | Xiong et al. | Jan 2012 | A1 |
20120106347 | Allan et al. | May 2012 | A1 |
20120281700 | Koganti et al. | Nov 2012 | A1 |
20130003738 | Koganti et al. | Jan 2013 | A1 |
Number | Date | Country |
---|---|---|
101848161 | Sep 2010 | CN |
WO2008125603 | Oct 2008 | WO |
Entry |
---|
International Search Report and Written Opinion dated Sep. 19, 2013 issued on PCT Patent Application No. PCT/CN2013/077372 dated Jun. 18, 2013, The State Intellectual Property Office. P.R China. |
Number | Date | Country | |
---|---|---|---|
20150016462 A1 | Jan 2015 | US |