The present application is related to co-pending application Ser. Nos. 11/117,017 filed Apr. 28, 2005, entitled, “System And Method For DSL Subscriber Identification Over Ethernet Network”; 11/117,250 filed Apr. 28, 2005, entitled, “A Comprehensive Model For VPLS”; and 11/117,249 filed Apr. 28, 2005, entitled, “Scalable System And Method For DSL Subscriber Traffic Over An Ethernet Network”, which applications are assigned to the assignee of the present application.
The present invention relates generally to digital computer network technology; more particularly, to methods and apparatus for providing metro Ethernet services.
Ethernet originated based on the idea of peers on a network sending messages in what was essentially a common wire or channel. Each peer has a globally unique key, known as the Media Access Control (MAC) address to ensure that all systems in an Ethernet have distinct addresses. Most modern Ethernet installations use Ethernet switches (also referred to as “bridges”) to implement an Ethernet “cloud” or “island” that provides connectivity to the attached devices. The switch functions as an intelligent data traffic forwarder in which frames are sent to ports where the destination device is attached. Examples of network switches for use in Ethernet network environments are found in U.S. Pat. Nos. 6,850,542, 6,813,268 and 6,850,521.
The IEEE 802.1Q specification defines a standard for Virtual Local Area Network (VLAN). Broadcast and multicast frames are constrained by VLAN boundaries such that only devices whose ports are members of the same VLAN see those frames. Since 802.1Q VLANS typically span many bridges across area common network, identification of VLANs is achieved by inserting a tag into the Ethernet frame. For example, according to the existing standard, a 12-bit tag that uniquely identifies a VLAN may be inserted into an Ethernet frame. This VLAN tag may be used to specify the broadcast domain and to identify the customer associated with a particular VLAN. The customer identifier is commonly referred to as the service instance domain since it identifies the service provided for a particular customer. In a service provider (SP) metro Ethernet network, the broadcast domain constrains the scope of traffic among network devices such that data packets are not multicast to all devices connected to the network. A system and method for efficiently distributing multicast messages within computer networks configured to have one or more VLAN domains is disclosed in U.S. Pat. No. 6,839,348.
The concept of a broadcast and a service instance domains is illustrated in
Data packet format 12 corresponds to the proposed IEEE 802.1 ad specification that supports so-called “Q-in-Q” encapsulation, or tag stacking mechanism. According to this draft standard, each data packet includes an upper (i.e., outer) 12-bit tag that designates one of up to 4,094 broadcast domains (or VLANs), and a lower (i.e., inner) tag that identifies one of up to 4,094 service instances. The proposed IEEE 802.1 ad standard thus alleviates some of the capacity limitations inherent in the IEEE 802.1Q standard by permitting each broadcast domain (each VLAN) to include up to 4,094 service instances. However, although the 802.1 ad draft standard is capable of satisfying many multipoint applications, it remains inadequate for point-to-point applications where a single device can multiplex/de-multiplex tens of thousands or hundreds of thousands of service instances within a single broadcast domain. Furthermore, the number of broadcast domains in Metro Area Network (MAN)/WAN applications can easily exceed the 4K limit. In addition, there are certain applications that require the end-user MAC addresses and/or the end-user's Frame Check Sum (FCS) to be tunneled through the MAN/WAN Ethernet network, a feature which is unsupported by the 802.1ad proposal.
Nortel Networks Corporation has proposed an approach known as “MAC-in-MAC” that attempts to solve the drawbacks inherent in the prior art. The Nortel proposal, however, is based on a flat VLAN domain (i.e., no VLAN tag stacking) and has a number of disadvantages. First, the MAC-in-MAC approach does not differentiate between broadcast domains and service instance domains; therefore, if the number of service instances is substantially larger than the required number of broadcast domains, the network nodes (i.e., switches, bridges, routers, etc.) will be burdened with supporting as many broadcast domains as there are service instances. Since more hardware/software intensive resources are needed to support a broadcast domain than a service instance, bandwidth suffers and network costs increase. Additionally, the MAC-in-MAC approach lacks inter-operability with 802.1 ad bridges; lacks a feasible implementation capable of supporting millions of broadcast domains; and requires that all bridges within the network have the MAC-in-MAC capability, not just the edge bridges.
By way of further background, U.S. Pat. No. 6,789,121 discloses a method of providing a Virtual Private Network (VPN) service through a shared network infrastructure comprising interconnected PE devices having CE interfaces. Some of the CE interfaces are allocated to a VPN supporting a plurality of VLANs and are arranged for exchanging traffic data units with respective CE devices, each traffic data unit including a VLAN identifier. A virtual connection (VC) in the shared network infrastructure is directly derived from a known VPN identifier and a VLAN identifier known or discovered by a PE device. U.S. Pat. No. 6,484,209 teaches a system configured to forward multicast data based upon a first set of correlation data, wherein a first set of correlation data maps multicast group identifiers to ports that are members of the corresponding multicast groups. The switch core includes a second set of correlation data which maps multicast group identifiers to I/O cards that include member ports.
Thus, there is a need for alternative methods and apparatus that would accommodate the ever expanding number of broadcast domains and service instances of MAN/WAN Ethernet Networks while overcoming the shortcomings of past approaches.
The present invention will be understood more fully from the detailed description that follows and from the accompanying drawings, which however, should not be taken to limit the invention to the specific embodiments shown, but are for explanation and understanding only.
An extended VLAN (E-VLAN) mechanism that can differentiate between broadcast domains and service instance domains, and expands the number of broadcast domains and service instance domains in Ethernet MAN/WAN applications is described. In the following description specific details are set forth, such as device types, protocols, configurations, etc., in order to provide a thorough understanding of the present invention. However, persons having ordinary skill in the networking arts will appreciate that these specific details may not be needed to practice the present invention.
A computer network is a geographically distributed collection of interconnected subnetworks for transporting data between nodes, such as intermediate nodes and end nodes. A local area network (LAN) is an example of such a subnetwork; a plurality of LANs may be further interconnected by an intermediate network node, such as a router or switch, to extend the effective “size” of the computer network and increase the number of communicating nodes. Examples of the end nodes may include servers and personal computers. The nodes typically communicate by exchanging discrete frames or packets of data according to predefined protocols. In this context, a protocol consists of a set of rules defining how the nodes interact with each other.
As shown in
In a typical networking application, packets are received from a framer, such as an Ethernet media access control (MAC) controller, of the I/O subsystem attached to the system bus. A DMA engine in the MAC controller is provided a list of addresses (e.g., in the form of a descriptor ring in a system memory) for buffers it may access in the system memory. As each packet is received at the MAC controller, the DMA engine obtains ownership of (“masters”) the system bus to access a next descriptor ring to obtain a next buffer address in the system memory at which it may, e.g., store (“write”) data contained in the packet. The DMA engine may need to issue many write operations over the system bus to transfer all of the packet data.
As will become apparent shortly, the E-VLAN tag mechanism can be used in many different applications. For instance, when the E-VLAN tag is utilized as a service instance identifier, the E-VLAN tag may be embedded within an IEEE 802.1 ad frame, replacing the inner tag normally associated with an 802.1ad frame. In such applications, there can be 4,094 broadcast domains, with each broadcast domain supporting up to one million service instances. In applications where a given service instance requires its own broadcast domain (i.e., one-to-one correspondence) a single E-VLAN tag may be utilized as both the broadcast domain identifier and the service instance identifier. In such applications, the E-VLAN tag is the only tag in the Ethernet frame.
In still other cases, two E-VLAN tags may be utilized (i.e., one as the broadcast domain and the other one as service instance domain identifiers). In such applications, the E-VLAN tag is nested such that the outer tag represents the broadcast domain and the inner tag represents the service instance. Examples of these types of applications include situations where there are tens of thousands of broadcast domains, where each broadcast domain has up to one million service instances. Note that in applications where the E-VLAN tag is nested, a single Ethertype may be used, and the S bit will be set to indicate tag stacking.
The extended E-VLAN tag of the present invention can also be used to indicate if the Ethernet frame contains end-user's FCS, for applications where FCS retention is required, as well as to identify when the Ethernet frame contains the end-user's MAC addresses, for applications where MAC tunneling is required.
According to the embodiment of
Traffic traversing the right-hand side of the diagram of
It is appreciated that each of the u-PE and n-PE devices shown in the embodiment of
Note that in the embodiment shown in
The embodiment of
Turning now to
The E-VLAN tag remains unchanged through core network 20 and access network 22. However, it is appreciated that the VLAN tag designating the broadcast domain in access network 21 differs from the broadcast domain VLAN tag in core network 20, which also differs from the VLAN designating the broadcast domain in access network 22. That is, the only thing that n-PE devices 32 & 33 change in the data packets is the upper VLAN tag that defines the scope of the broadcast domain.
The embodiment of
It should also be understood that elements of the present invention may also be provided as a computer program product which may include a machine-readable medium having stored thereon instructions which may be used to program a computer (e.g., a processor or other electronic device) to perform a sequence of operations. Alternatively, the operations may be performed by a combination of hardware and software. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnet or optical cards, propagation media or other type of media/machine-readable medium suitable for storing electronic instructions. For example, elements of the present invention may be downloaded as a computer program product, wherein the program may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a customer or client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
Additionally, although the present invention has been described in conjunction with specific embodiments, numerous modifications and alterations are well within the scope of the present invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
Number | Name | Date | Kind |
---|---|---|---|
5331637 | Francis et al. | Jul 1994 | A |
5818842 | Burwell et al. | Oct 1998 | A |
5848227 | Sheu | Dec 1998 | A |
6055364 | Speakman et al. | Apr 2000 | A |
6073176 | Baindur et al. | Jun 2000 | A |
6078590 | Farinacci et al. | Jun 2000 | A |
6188694 | Fine et al. | Feb 2001 | B1 |
6301244 | Huang et al. | Oct 2001 | B1 |
6304575 | Carroll et al. | Oct 2001 | B1 |
6308282 | Huang | Oct 2001 | B1 |
6373838 | Law et al. | Apr 2002 | B1 |
6424657 | Voit et al. | Jul 2002 | B1 |
6470025 | Wilson et al. | Oct 2002 | B1 |
6502140 | Boivie | Dec 2002 | B1 |
6519231 | Ding et al. | Feb 2003 | B1 |
6611869 | Eschelbeck et al. | Aug 2003 | B1 |
6665273 | Goguen et al. | Dec 2003 | B1 |
6667982 | Christie et al. | Dec 2003 | B2 |
6668282 | Booth, III et al. | Dec 2003 | B1 |
6693878 | Daruwalla et al. | Feb 2004 | B1 |
6732189 | Novaes | May 2004 | B1 |
6757286 | Stone | Jun 2004 | B1 |
6763469 | Daniely | Jul 2004 | B1 |
6785232 | Kotser et al. | Aug 2004 | B1 |
6785265 | White et al. | Aug 2004 | B2 |
6789121 | Lamberton et al. | Sep 2004 | B2 |
6798775 | Bordonaro et al. | Sep 2004 | B1 |
6801533 | Barkley | Oct 2004 | B1 |
6826698 | Minkin et al. | Nov 2004 | B1 |
6829252 | Lewin et al. | Dec 2004 | B1 |
6850542 | Tzeng | Feb 2005 | B2 |
6852542 | Mandel et al. | Feb 2005 | B2 |
6879594 | Lee et al. | Apr 2005 | B1 |
6882643 | Mauger et al. | Apr 2005 | B1 |
6892309 | Richmond et al. | May 2005 | B2 |
6954436 | Yip et al. | Oct 2005 | B1 |
7009983 | Mancour | Mar 2006 | B2 |
7016351 | Farinacci et al. | Mar 2006 | B1 |
7047304 | Senapati et al. | May 2006 | B2 |
7092389 | Chase et al. | Aug 2006 | B2 |
7113512 | Holmgren et al. | Sep 2006 | B1 |
7116665 | Balay et al. | Oct 2006 | B2 |
7173934 | Lapuh et al. | Feb 2007 | B2 |
7277936 | Frietsch | Oct 2007 | B2 |
7310342 | Rouleau | Dec 2007 | B2 |
7315554 | Baum et al. | Jan 2008 | B2 |
7339929 | Zelig et al. | Mar 2008 | B2 |
7345991 | Shabtay et al. | Mar 2008 | B1 |
7408936 | Ge et al. | Aug 2008 | B2 |
7466703 | Arunachalam et al. | Dec 2008 | B1 |
7519056 | Ishwar et al. | Apr 2009 | B2 |
7693078 | Gonda | Apr 2010 | B2 |
7698456 | Guichard et al. | Apr 2010 | B2 |
7701936 | Hongal et al. | Apr 2010 | B2 |
7843917 | Brockners et al. | Nov 2010 | B2 |
20020032780 | Moore et al. | Mar 2002 | A1 |
20020087721 | Sato et al. | Jul 2002 | A1 |
20020156612 | Schulter et al. | Oct 2002 | A1 |
20020156919 | Maeno | Oct 2002 | A1 |
20020196795 | Higashiyama | Dec 2002 | A1 |
20030012183 | Butler et al. | Jan 2003 | A1 |
20030036375 | Chen et al. | Feb 2003 | A1 |
20030101243 | Donahue et al. | May 2003 | A1 |
20030110268 | Kermarec et al. | Jun 2003 | A1 |
20030112781 | Kermode et al. | Jun 2003 | A1 |
20030142674 | Casey | Jul 2003 | A1 |
20030154259 | Lamberton et al. | Aug 2003 | A1 |
20030177221 | Ould-Brahim et al. | Sep 2003 | A1 |
20040078469 | Ishwar et al. | Apr 2004 | A1 |
20040081171 | Finn | Apr 2004 | A1 |
20040095940 | Yuan et al. | May 2004 | A1 |
20040102182 | Reith et al. | May 2004 | A1 |
20040107382 | Doverspike et al. | Jun 2004 | A1 |
20040125809 | Jeng | Jul 2004 | A1 |
20040133619 | Zelig et al. | Jul 2004 | A1 |
20040141501 | Adams et al. | Jul 2004 | A1 |
20040151180 | Hu et al. | Aug 2004 | A1 |
20040158735 | Roese | Aug 2004 | A1 |
20040165525 | Burak | Aug 2004 | A1 |
20040165600 | Lee | Aug 2004 | A1 |
20040172559 | Luo et al. | Sep 2004 | A1 |
20040213201 | Osterlund | Oct 2004 | A1 |
20040228291 | Huslak et al. | Nov 2004 | A1 |
20040230444 | Holt et al. | Nov 2004 | A1 |
20040233891 | Regan et al. | Nov 2004 | A1 |
20040264364 | Sato | Dec 2004 | A1 |
20050007951 | Lapuh et al. | Jan 2005 | A1 |
20050025143 | Chen et al. | Feb 2005 | A1 |
20050030975 | Wright et al. | Feb 2005 | A1 |
20050044265 | Vinel et al. | Feb 2005 | A1 |
20050063397 | Wu et al. | Mar 2005 | A1 |
20050068972 | Burns et al. | Mar 2005 | A1 |
20050089047 | Ould-Brahim et al. | Apr 2005 | A1 |
20050099949 | Mohan et al. | May 2005 | A1 |
20050152370 | Meehan et al. | Jul 2005 | A1 |
20050157664 | Baum et al. | Jul 2005 | A1 |
20050157751 | Rabie et al. | Jul 2005 | A1 |
20050160180 | Rabje et al. | Jul 2005 | A1 |
20050163049 | Yazaki et al. | Jul 2005 | A1 |
20050175022 | Nishimura et al. | Aug 2005 | A1 |
20050190773 | Yang et al. | Sep 2005 | A1 |
20050193385 | Heer et al. | Sep 2005 | A1 |
20050239445 | Karaoguz et al. | Oct 2005 | A1 |
20050249124 | Elie-Dit-Cosaque et al. | Nov 2005 | A1 |
20050265329 | Havala et al. | Dec 2005 | A1 |
20050286503 | Oda et al. | Dec 2005 | A1 |
20060007867 | Elie-Dit-Cosaque et al. | Jan 2006 | A1 |
20060092847 | Mohan | May 2006 | A1 |
20060098607 | Zeng et al. | May 2006 | A1 |
20060109802 | Zelig et al. | May 2006 | A1 |
20060126496 | Filsfils et al. | Jun 2006 | A1 |
20060182037 | Chen et al. | Aug 2006 | A1 |
20060198323 | Finn | Sep 2006 | A1 |
20060248227 | Hato et al. | Nov 2006 | A1 |
20060262794 | Livet et al. | Nov 2006 | A1 |
20060285500 | Booth et al. | Dec 2006 | A1 |
20060285501 | Damm | Dec 2006 | A1 |
20070076719 | Allan et al. | Apr 2007 | A1 |
20070133564 | Chun et al. | Jun 2007 | A1 |
20070274321 | Jonsson et al. | Nov 2007 | A1 |
20080062999 | Platnic | Mar 2008 | A1 |
20080144657 | Li | Jun 2008 | A1 |
20080172497 | Mohan et al. | Jul 2008 | A1 |
20090019469 | Foti et al. | Jan 2009 | A1 |
20090129386 | Rune | May 2009 | A1 |
Number | Date | Country |
---|---|---|
WO 03005648 | Jan 2003 | WO |
WO 2005034441 | Apr 2005 | WO |
WO 2007031002 | Mar 2007 | WO |
WO 2008089370 | Jul 2008 | WO |
Number | Date | Country | |
---|---|---|---|
20060245438 A1 | Nov 2006 | US |