1. Technical Field
The present invention relates to computer networking.
2. Description of the Related Art
Data management within organizations is an ever increasing concern, especially with the rise of the Internet information age. The heart of this data management function is sometimes known as a data center. Over the last decade, data centers have evolved into the strategic focus of Information Technology (IT) efforts to protect, optimize, and grow the organization.
Overview
In one embodiment, a solution is provided wherein redundant routers are treated as a single emulated switch. When a packet is received at a layer 2 edge switch from a host, the layer 2 edge switch may determine a switch identifier for the emulated switch using a destination anycast hardware address contained in the packet. The anycast hardware address may identify an emulated switch comprising a plurality of routers. Then a header may be added to the packet, the header including the switch identifier. Following that, the packet may be forwarded to another layer 2 switch along a shortest path from the layer 2 edge switch to the emulated switch.
Example Embodiments
In this application, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be obvious, however, to one skilled in the art, that the present invention may be practiced without some or all of these specific details. In other instances, well known process steps have not been described in detail in order to not obscure the present invention.
Data center managers face several challenges in fulfilling the goals of data centers. Most enterprise data centers grew rapidly to meet the explosive economic growth of recent times. Consequently, applications commonly stand alone in underutilized, isolated infrastructure silos. Each infrastructure silo is designed based on the inclination of the specific application being deployed, so that a typical data center supports a broad assortment of operating systems, computing platforms, and storage systems. The disparate infrastructures supporting different application “islands” are difficult to change or expand and expensive to manage, integrate, secure, and back up.
One solution to this problem is to design a data center environment that is highly scalable, resilient, secure, and able to integrate multiple applications and protocols. One such solution is known as the Data Center Network Architecture. A specific implementation of the Data Center Network Architecture is known as Data Center Ethernet (DCE). DCE allows for consolidation of input and output, and improved forwarding of communications within the network. This may be accomplished via specialized protocols and functionality operated by switches within a DCE network via network layer 2. Each of the switches within the DCE network may be a layer 2 device.
Rather than operate routers 216 and 218 independently, it is often beneficial to link the routers so that one router can act as a backup to the other router in case of router or link failure. This linking may be accomplished via another routing protocol, such as Hot Standby Routing Protocol (HSRP). Other hot standby routing protocols include Virtual Router Redundancy Protocol (VRRP) and Gateway Load Balancing Protocol (GLBP). In these protocols, several routers are connected to the same subnet of a network and work together to present the appearance of a single virtual router. Typically, a single virtual IP address is assigned to the routers, which the links to a single virtual MAC address. The single virtual MAC address, however, points to a particular one of the routers, designated as the “active” router, whereas the other router(s) are designated as “backup.” If one router goes down, another takes over and the virtual MAC address is mapped to the backup router. However, while both are running, only one is being used for outbound communications. This can be inefficient for several reasons.
First of all, using just one of a plurality of redundant routers as the active router for outbound communications can create a bottleneck at the single router or on one of its associated links. It would be much more efficient to load balance between the redundant routers. Second of all, even if a hot routing protocol is utilized to load balance between redundant routers, the traffic generated by these protocols can be wasteful. Third of all, the amount of time for a router to switch from active to backup is non-trivial. If faster convergence is desired, a different solution is required.
A solution is provided wherein the redundant routers are treated as a single emulated switch. This allows for both a failure recovery and a load-balancing mechanism for host-switch-router connectivity through a protocol, such as DCE, used in network containing layer 2 switches. Through the use of this solution, hot standby routing protocols such as HSRP, VRRP, and GLBP can be eliminated.
Configuration of the network may be accomplished by first assigning the same IP address to all routers in the emulated switch. This IP address may be known as the “router anycast address.” Additionally, the same MAC address may be assigned to all routers in the emulated switch. This MAC address may be known as a “router anycast MAC address.” Each host may then be configured with a default router using a virtual IP address. The virtual IP address maps to a virtual MAC address. The virtual MAC addresses for the routers in the virtual switch correspond to a single anycast hardware address. The anycast hardware address may be used as a switch identification. This switch identification may be advertised to all layer 2 switches within the network using a protocol such as IS-IS, RIP, or (EIGRP) as long as the edge switches have a reachable connection to the router.
The router that receives the ARP request may ARP reply by sending a unicast packet to the ARP requesting host. This allows the first-hop switch, directly connected to the host, to know the edge switch associated with the router. This edge switch may be identified according to the switch identification associated with the emulated anycast switch. The ARP reply may be sent with the source MAC address equal to the router anycast MAC address so that the edge switches, directly connected to the hosts, associate the MAC address with the emulated anycast switch.
At this point the host's off subnet traffic will find the shortest path to the emulated anycast switch. This may or may not be the same router that replied to the ARP request. For example, while router 306 may have responded to the ARP request, the path to router 308 may actually be the shortest path for traffic. Other hosts will find their own shortest paths to the emulated anycast switch, which may be through a different router. This effectively load balances between the redundant routers in the emulated switch. Additionally, if the connection to a particular router goes down, either by a topology change in the network or the router itself goes down, traffic is quickly rerouted to other routers. This is because a protocol, such as DCE, used in a network containing layer 2 switches, can discover topology changes or downed links much faster than a hot standby routing protocol such as HSRP, VRRP or GLBP. A solution is provided that takes advantage of this fact to perform failover much quicker than prior art solutions since failover can now be performed by the network of switches itself.
Assume host A 300 wants to discover a MAC address for one of the routers 306, 308. It may transmit the ARP packet depicted in
Upon receipt of the ARP packet from Host A 302, switch SW1304 learns Host A 300 is off a particular interface (for example, interface 2). It may then append the MAC-in-MAC header depicted in
When host 300 then wishes to send normal traffic out through the anycast hardware address corresponding to emulated switch SW7302, SW2304 may receive the traffic. It may then look up the anycast hardware address in its table, finding that it is on emulated switch SW7. It then may add the MAC-in-MAC header to the traffic and forward it via the shortest path to emulated switch SW7. Once again, edge switch 310 recognizes that switch SW7 is an emulated switch and strips the MAC-in-MAC header off prior to forwarding it on. By doing so, routers 306 and 308 have been load balanced because a packet originating from host A 300 will be transmitted through router 308 (using the shortest path) while a packet originating from sever B 314 will be transmitted through router 306. In cases where both paths are equal, a tie-breaking mechanism may be used such as hashing based on the source address. Additionally, as stated above, if one link goes down, the DCE network is able to forward all packets to the other router until such time as the link is restored.
In each of these embodiments, various protocols may be used (for example, DCE using the IS-IS protocol). Additionally, in each of these embodiments, it is no longer necessary to run a hot standby routing protocol.
Although illustrative embodiments and applications of this invention are shown and described herein, many variations and modifications are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those of ordinary skill in the art after perusal of this application. For example, it is possible that an edge switch is connected to multiple routers within a single emulated switch. Accordingly, the embodiments described are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5402416 | Cieslak et al. | Mar 1995 | A |
5526350 | Gittins et al. | Jun 1996 | A |
5742604 | Edsall et al. | Apr 1998 | A |
5920566 | Hendel et al. | Jul 1999 | A |
5946313 | Allan et al. | Aug 1999 | A |
5974467 | Haddock et al. | Oct 1999 | A |
6021124 | Haartsen | Feb 2000 | A |
6078586 | Dugan et al. | Jun 2000 | A |
6104699 | Holender et al. | Aug 2000 | A |
6195356 | Anello et al. | Feb 2001 | B1 |
6201789 | Witkowski et al. | Mar 2001 | B1 |
6236652 | Preston et al. | May 2001 | B1 |
6333917 | Lyon et al. | Dec 2001 | B1 |
6397260 | Wils et al. | May 2002 | B1 |
6404768 | Basak et al. | Jun 2002 | B1 |
6414939 | Yamato | Jul 2002 | B1 |
6415323 | McCanne et al. | Jul 2002 | B1 |
6456590 | Ren et al. | Sep 2002 | B1 |
6459698 | Achrya | Oct 2002 | B1 |
6504836 | Li et al. | Jan 2003 | B1 |
6529489 | Kikuchi et al. | Mar 2003 | B1 |
6556541 | Bare | Apr 2003 | B1 |
6556578 | Silberschatz et al. | Apr 2003 | B1 |
6560198 | Ott et al. | May 2003 | B1 |
6587436 | Vu et al. | Jul 2003 | B1 |
6611872 | McCanne | Aug 2003 | B1 |
6636524 | Chen et al. | Oct 2003 | B1 |
6650623 | Varma et al. | Nov 2003 | B1 |
6671258 | Bonneau | Dec 2003 | B1 |
6721316 | Epps et al. | Apr 2004 | B1 |
6724725 | Dreyer et al. | Apr 2004 | B1 |
6785704 | McCanne | Aug 2004 | B1 |
6839794 | Schober | Jan 2005 | B1 |
6885633 | Mikkonen | Apr 2005 | B1 |
6888824 | Fang et al. | May 2005 | B1 |
6901593 | Aweya et al. | May 2005 | B2 |
6904507 | Gil | Jun 2005 | B2 |
6922408 | Bloch et al. | Jul 2005 | B2 |
6934256 | Jacobson et al. | Aug 2005 | B1 |
6934292 | Ammitzboell | Aug 2005 | B1 |
6975581 | Medina et al. | Dec 2005 | B1 |
6975593 | Collier et al. | Dec 2005 | B2 |
6990529 | Yang et al. | Jan 2006 | B2 |
6999462 | Acharya | Feb 2006 | B1 |
7016971 | Recio et al. | Mar 2006 | B1 |
7020715 | Venkataraman et al. | Mar 2006 | B2 |
7046631 | Giroux et al. | May 2006 | B1 |
7046666 | Bollay et al. | May 2006 | B1 |
7047666 | Hahn et al. | May 2006 | B2 |
7093024 | Craddock et al. | Aug 2006 | B2 |
7133405 | Graham et al. | Nov 2006 | B2 |
7133416 | Chamdani | Nov 2006 | B1 |
7158480 | Firoiu et al. | Jan 2007 | B1 |
7187688 | Garmire et al. | Mar 2007 | B2 |
7190667 | Susnov et al. | Mar 2007 | B2 |
7197047 | Latif et al. | Mar 2007 | B2 |
7209478 | Rojas et al. | Apr 2007 | B2 |
7209489 | Bailey et al. | Apr 2007 | B1 |
7221656 | Aweya et al. | May 2007 | B1 |
7225364 | Carnevale et al. | May 2007 | B2 |
7266122 | Hogg et al. | Sep 2007 | B1 |
7266598 | Rolia | Sep 2007 | B2 |
7277391 | Aweya et al. | Oct 2007 | B1 |
7286485 | Oulette et al. | Oct 2007 | B1 |
7319669 | Kunz et al. | Jan 2008 | B1 |
7349334 | Rider | Mar 2008 | B2 |
7349336 | Mathews et al. | Mar 2008 | B2 |
7359321 | Sindhu et al. | Apr 2008 | B1 |
7385997 | Gorti et al. | Jun 2008 | B2 |
7400590 | Rygh et al. | Jul 2008 | B1 |
7400634 | Higashitaniguchi et al. | Jul 2008 | B2 |
7406092 | Dropps et al. | Jul 2008 | B2 |
7436845 | Rygh et al. | Oct 2008 | B1 |
7486689 | Mott | Feb 2009 | B1 |
7525983 | Dropps et al. | Apr 2009 | B2 |
7529243 | Sodder et al. | May 2009 | B2 |
7561571 | Lovett et al. | Jul 2009 | B1 |
7564789 | Betker | Jul 2009 | B2 |
7564869 | Cafiero et al. | Jul 2009 | B2 |
7596627 | Cometto et al. | Sep 2009 | B2 |
7602720 | Bergamasco et al. | Oct 2009 | B2 |
7684326 | Nation et al. | Mar 2010 | B2 |
7801125 | Kreeger et al. | Sep 2010 | B2 |
7830793 | Gai et al. | Nov 2010 | B2 |
7961621 | Bergamasco et al. | Jun 2011 | B2 |
7969971 | Gai et al. | Jun 2011 | B2 |
20010043564 | Bloch et al. | Nov 2001 | A1 |
20010048661 | Clear et al. | Dec 2001 | A1 |
20020046271 | Huang | Apr 2002 | A1 |
20020085493 | Pekkala et al. | Jul 2002 | A1 |
20020085565 | Ku | Jul 2002 | A1 |
20020103631 | Feldmann et al. | Aug 2002 | A1 |
20020141427 | McAlpine | Oct 2002 | A1 |
20020159385 | Susnow et al. | Oct 2002 | A1 |
20020188648 | Aweya et al. | Dec 2002 | A1 |
20020191640 | Haymes et al. | Dec 2002 | A1 |
20030002517 | Takajitsuko et al. | Jan 2003 | A1 |
20030026267 | Obermann et al. | Feb 2003 | A1 |
20030037127 | Shah et al. | Feb 2003 | A1 |
20030037163 | Kitada et al. | Feb 2003 | A1 |
20030061379 | Craddock et al. | Mar 2003 | A1 |
20030084219 | Yao et al. | May 2003 | A1 |
20030091037 | Latif et al. | May 2003 | A1 |
20030115355 | Cometto et al. | Jun 2003 | A1 |
20030118030 | Fukuda | Jun 2003 | A1 |
20030152063 | Giese et al. | Aug 2003 | A1 |
20030169690 | Mott | Sep 2003 | A1 |
20030193942 | Gil | Oct 2003 | A1 |
20030195983 | Krause | Oct 2003 | A1 |
20030202536 | Foster et al. | Oct 2003 | A1 |
20030223416 | Rojas et al. | Dec 2003 | A1 |
20030227893 | Bajic | Dec 2003 | A1 |
20040008675 | Basso et al. | Jan 2004 | A1 |
20040013088 | Gregg | Jan 2004 | A1 |
20040013124 | Peebles et al. | Jan 2004 | A1 |
20040024903 | Costatino et al. | Feb 2004 | A1 |
20040032856 | Sandstrom | Feb 2004 | A1 |
20040042448 | Lebizay et al. | Mar 2004 | A1 |
20040042477 | Bitar et al. | Mar 2004 | A1 |
20040076175 | Patenaude | Apr 2004 | A1 |
20040078621 | Talaugon et al. | Apr 2004 | A1 |
20040081203 | Sodder et al. | Apr 2004 | A1 |
20040100980 | Jacobs et al. | May 2004 | A1 |
20040120332 | Hendel | Jun 2004 | A1 |
20040156390 | Prasad et al. | Aug 2004 | A1 |
20040196809 | Dillinger et al. | Oct 2004 | A1 |
20040213243 | Lin et al. | Oct 2004 | A1 |
20040240459 | Lo et al. | Dec 2004 | A1 |
20050002329 | Luft et al. | Jan 2005 | A1 |
20050018606 | Dropps et al. | Jan 2005 | A1 |
20050025179 | McLaggan et al. | Feb 2005 | A1 |
20050044141 | Hameleers et al. | Feb 2005 | A1 |
20050047421 | Solomon | Mar 2005 | A1 |
20050060445 | Beukema et al. | Mar 2005 | A1 |
20050138243 | Tierney et al. | Jun 2005 | A1 |
20050141419 | Bergamasco et al. | Jun 2005 | A1 |
20050141568 | Kwak et al. | Jun 2005 | A1 |
20050169188 | Cometto et al. | Aug 2005 | A1 |
20050169270 | Mutou et al. | Aug 2005 | A1 |
20050190752 | Chiou et al. | Sep 2005 | A1 |
20050226149 | Jacobson et al. | Oct 2005 | A1 |
20050238064 | Winter et al. | Oct 2005 | A1 |
20060002385 | Johnsen et al. | Jan 2006 | A1 |
20060023708 | Snively | Feb 2006 | A1 |
20060059213 | Evoy | Mar 2006 | A1 |
20060087989 | Gai et al. | Apr 2006 | A1 |
20060098589 | Kreeger et al. | May 2006 | A1 |
20060098681 | Cafiero et al. | May 2006 | A1 |
20060101140 | Gai et al. | May 2006 | A1 |
20060146832 | Rampal et al. | Jul 2006 | A1 |
20060171318 | Bergamasco et al. | Aug 2006 | A1 |
20060187832 | Yu | Aug 2006 | A1 |
20060193247 | Naseh et al. | Aug 2006 | A1 |
20060193252 | Naseh et al. | Aug 2006 | A1 |
20060195607 | Naseh et al. | Aug 2006 | A1 |
20060198323 | Finn | Sep 2006 | A1 |
20060209885 | Hain et al. | Sep 2006 | A1 |
20060215550 | Malhotra | Sep 2006 | A1 |
20060251067 | Desanti et al. | Nov 2006 | A1 |
20070041321 | Sasaki et al. | Feb 2007 | A1 |
20070047443 | Desai et al. | Mar 2007 | A1 |
20070081454 | Bergamasco et al. | Apr 2007 | A1 |
20070115824 | Chandra et al. | May 2007 | A1 |
20070121617 | Kanekar et al. | May 2007 | A1 |
20070133539 | Kang et al. | Jun 2007 | A1 |
20070165632 | Zwiebel | Jul 2007 | A1 |
20070183332 | Oh et al. | Aug 2007 | A1 |
20070233887 | Nubani et al. | Oct 2007 | A1 |
20080069114 | Shimada et al. | Mar 2008 | A1 |
20080089247 | Sane et al. | Apr 2008 | A1 |
20080212595 | Figueira et al. | Sep 2008 | A1 |
20080259798 | Loh et al. | Oct 2008 | A1 |
20080273465 | Gusat et al. | Nov 2008 | A1 |
20090010162 | Bergamasco et al. | Jan 2009 | A1 |
20090052326 | Bargamasco et al. | Feb 2009 | A1 |
20090073882 | McAlpine et al. | Mar 2009 | A1 |
20090232138 | Gobara et al. | Sep 2009 | A1 |
20090252038 | Cafiero et al. | Oct 2009 | A1 |
20110007741 | Kreeger et al. | Jan 2011 | A1 |
Number | Date | Country |
---|---|---|
1778079 | May 2004 | CN |
1206099 | May 2002 | EP |
WO2004064324 | Jul 2004 | WO |
WO 2006047092 | May 2006 | WO |
WO 2006047109 | May 2006 | WO |
WO 2006047194 | May 2006 | WO |
WO 2006047223 | May 2006 | WO |
WO 2006057730 | Jun 2006 | WO |
WO 2006063922 | Jun 2006 | WO |
WO 2007050250 | May 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20080186968 A1 | Aug 2008 | US |