The present invention relates generally to network communications, and more particularly, to a versatile system for providing aggregate-rate communication services in a network of an arbitrary topology.
Ethernet is one of the most widely-installed Local Area Network (LAN) technologies. Users are attracted by a number of advantages of Ethernet services, including ease of use, cost effectiveness, flexibility, and wide rage of service options. Ethernet services have been extended throughout metropolitan areas and beyond.
Ethernet services may vary in many ways. The Metropolitan Ethernet Forum (MEF) defines two types of Ethernet services: E-Line services, which are point-to-point services; and E-LAN services, which are multipoint services. MEF specifies distinct layer-1 and layer-2 E-LAN services. A layer-1 E-LAN service is called an Ethernet LAN (ELAN) service, and a layer-2 E-LAN service is called an Ethernet Virtual LAN (EVLAN) service. The EVLAN allows users to exchange frames as if connected to a shared medium LAN.
Two methods currently used to specify rate guarantees for EVLAN services are port-to-port guarantee and per-port guarantee. Port-to-port guarantee specifies a distinct bandwidth guaranteed for traffic from a specific port to another specific port. This is a traditional guarantee provided in frame relay and private-line services. This method may be more efficient when port-to-port traffic rate is relatively constant.
Per-port guarantee specifies distinct bandwidth guaranteed for traffic originating from each port, without regard to destination ports. This type of guarantee is relatively easy to police as only knowledge of local port ingress traffic is required. A service provider needs to, however, support a case in which every user is sending at a full ingress rate.
A technology known as an Ethernet Bus (or Carrier Sense Multiple Access/Collision Detection—CSMA/CD, or Shared Medium Ethernet) provides services similar to an aggregate-rate guarantee. An Ethernet Bus has the ability to share the capacity of a network among user ports, with some inefficiency introduced by methods of mediation among the ports. However, the Ethernet Bus may not be applied to networks of arbitrary technology, and the specified aggregate-rate may not have an arbitrary value.
U.S. patent application No. 20030165146 describes how the capacity of a network having a ring topology may be shared among users, such that each instance of service appears to its users as a private network, whose capacity is shared fairly among its users. However, this method is not applicable to a network of an arbitrary topology.
The IEEE P802.1ad Draft Standard for Local and Metropolitan Area Networks—Virtual Bridged Local Area Networks—Amendment 4: Provider Bridges, describes how a network of arbitrary topology may be partitioned into distinct instances of a Service Virtual LAN (SVLAN). However, the method of IEEE P802.1ad does not explicitly support aggregate-rate services or fair sharing of network capacity among members of a group of users.
The IEEE P802.17 Standard for Information Technology—Telecommunications and information exchange between systems—Local and metropolitan area networks—Specific requirements—Part 17: Resilient Packet Ring (RPR) access method and physical layer specifications, describes how the capacity of a network having a ring topology may be shared fairly among its users. However, the method of IEEE P802.17 only supports the fair sharing of capacity in a network having a ring topology, and is not applicable for a network of arbitrary topology.
The Metropolitan Ethernet Forum—Technical Specification D00044—004 Ethernet Services Attributes—Phase 2—Approved Draft 4, 14 Nov. 2005, describes how capacity may be associated with a user port, or with a virtual connection between or among user ports. However, the Metro Ethernet Forum method does not explicitly support aggregate-rate services or fair sharing of capacity among members of a group of user ports associated with a virtual connection.
Therefore, there is a need for a system that provides flexible and cost effective rate guarantee services in a communications network; an aggregate-rate guarantee, with sharing of aggregate capacity fairly among members of a group of customer ports, and applicable to a network of an arbitrary topology; aggregate-rate services that accommodate bursty network traffic in an efficient and cost effective manner.
The present invention discloses a system for providing aggregate-rate communication services. The system comprises a provider network, having an arbitrary topology; a plurality of customers; and a plurality of port nodes, comprising at least one aggregation-group; wherein port nodes of the at least one aggregation-group share capacity associated with the at least one aggregation-group fairly. Each of the plurality of customers is associated with at least one of the plurality of port node to access the provider network.
One aggregation-group comprises a group of port nodes sharing fairly a guaranteed-rate. The guaranteed-rate may be requested or purchased by a customer, and provisioned by a service provider. A customer may be associated with multiple aggregation-groups. A customer may also be associated with a port node that does not belong to an aggregation-group.
The system in the present invention provides a registration and deregistration mechanism to create and delete an aggregation-group in a provider network, and a mechanism for a port to join or withdraw from an aggregation-group. A performance monitoring mechanism is provided to make sure the aggregate-rate services provided by the system meet a service level agreement.
The system may be applied to enterprise Local Area Networks (LANs). The system may also be applied to any communications network that may be characterized as having multiple points of ingress, each of which has a measurable ingress rate.
The system allows a service provider to meet customer requirements for bursty, high-bandwidth connectivity, without commitment of excessively large quantities of bandwidth, and provides aggregate-rate services in a flexible and cost effective manner.
The following description and drawings set forth in detail a number of illustrative embodiments of the invention. These embodiments are indicative of but a few of the various ways in which the present invention may be implemented.
For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, in which like reference numerals represent like parts:
The following discussion is presented to enable a person skilled in the art to make and use the invention. The general principles described herein may be applied to embodiments and applications other than those detailed below without departing from the spirit and scope of the present invention as defined herein. The present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
The following terms are used in the description of the present invention below:
Aggregation-group: The set of ports that share a guaranteed-rate.
Aggregate-rate: sum of the ingress rates of the members of an aggregation-group.
Ingress: The direction from a user of a service to a provider of the service.
Port: The interface by which a user accesses the services of a provider network. Examples are an 802.1ad Provider Edge Bridge (PEB) port or a Metropolitan Ethernet Forum (MEF) User-Network Interface (UNI).
Ramping: A method of allowed-rate assignment in which the allowed-rate is assigned a value that is larger than the current value of a measured ingress-rate.
Service Provider Network: A network offering connectivity services to customers, for example, an IEEE 802.1ad Provider Bridged Network (PBN) or an MEF Metropolitan Ethernet (MEN).
Service Instance: An instance of the connectivity service offered by a provider network. Connectivity is permitted only between ports associated with the same service instance. Examples are an IEEE 802.1ad Service Virtual Local Area Network (VLAN) or an MEF Ethernet Virtual Connection (EVC).
Notation used in the present invention is described in the following. For notational convenience, the symbol Σ represents
unless otherwise specified. I(i,t) indicates the value of I associated with port i at the end of time interval t.
Other identifiers are as follows:
Ai (allowed-rate): The maximum rate at which traffic from a user is admitted to a service provider network at port i of an aggregation-group. Ii always≦Ai. Oi>Ai implies Ii=Ai.
B: The minimum amount by which the value of Ai for the next time interval should exceed the current value of Ii when ramping of allowed-rates is performed.
C (committed capacity): Capacity committed by a service provider for use by a service instance on a link within a service provider network. A capacity commitment of C ensures that a specified service guarantee is met at all times. The service provider may commit less bandwidth than C, and assume a risk that the guarantee will not be met at all times.
G (guaranteed-rate): A provisioned value such that ΣIi≧G when ingress-rates have attained a steady-state.
Ii (ingress-rate): Actual (measured) rate of traffic introduced by port i of an aggregation-group. The rate may be low-pass filtered or smoothed to achieve stability.
Oi (offered rate): A traffic rate presented by a user to a service provider at port i of an aggregation-group.
n (number of ports): Number of ports associated with an aggregation-group.
T: A fixed time interval between broadcasts of a value of Ii by port i of an aggregation-group. Re-computation of the allowed-rate is also performed on this time boundary.
Referring now to
A single rate guarantee may be specified for aggregate traffic originated by a group of ports. A group of ports may include all ports associated with a customer. In
As illustrated in
A guaranteed-rate may also be a provisioned value. The guaranteed-rate may be requested or purchased by a customer, and provisioned by a service provider. Thus, a service provider may commit additional capacity to ensure an effective guaranteed-rate equal to that requested by a customer. The amount of over-commitment required may vary with a value of an available parameter in a Service Level Agreement (SLA), which is a contract between a service provider and customers.
Aggregate-rate service model (100) provides fair access to aggregate capacity, where a group of ports of a customer share one guaranteed-rate. That is, a port may not have access to a larger portion of an aggregate by virtue of its physical position with respect to other ports within the group.
Customer traffic rate on any particular link in the interior of a service provider network may be controlled to be less than an aggregate-rate guaranteed for that customer. This rate control may be provided by use of rate-control algorithms/protocols. For example, a rate-control algorithm may enforce an allowed ingress rate when a customer's aggregate ingress traffic exceeds a threshold. The threshold may be a percentage of capacity committed to that customer by a service provider. A rate-control algorithm may also ensure fair access to a guaranteed-rate specified for a customer.
A specified aggregate-rate may have an arbitrary value. In an aggregate-rate service model (200) as illustrated in
A group of ports sharing a guaranteed-rate is known as an aggregation-group. There are cases in which it is useful for customers to partition its ports into multiple aggregation-groups, each guaranteeing a specific aggregate-rate. A customer may divide the ports into several aggregation-groups, or have some individual ports that do not belong to any aggregation-group.
In an embodiment of an aggregate-rate service model (400) as illustrated in
As illustrated in
An aggregate-rate service model may allow a port to send traffic in excess of a guaranteed-rate. Such traffic is marked as “non-conformant”, and may be discarded by an intermediate provider switching device, if it is determined that forwarding of the “non-conformant” traffic by the device may result in a failure to deliver “compliant” traffic. Sending of excess-rate traffic may be supported when a service provider network has capability of discarding non-compliant traffic.
Aggregate-rate service model(s) of the present invention may be provided to meet requirements of customers with intermittent or “bursty” traffic. There may be an environment where customers intermittently send large files to other customers, and where each such file is required to be transferred quickly (i.e., at a high data-rate). In such an environment, it is unlikely that many file transfers occur concurrently. Hence, a relatively small amount of bandwidth may meet the transfer requirements of a large number of intermittent senders in an aggregate-rate service model.
Rate management policies may be provided to specify the ways in which ports of an aggregation-group share the capacity of the aggregation-group, and ways to manage capacity requirement of each individual port in an aggregation-group. For example, ports associated with an aggregation-group may share the capacity of the aggregation-group equally or proportionally according to a weighting scheme, or the allowed-rate of one port may be set to a predefined value or restricted to a value that is greater than, or less than, a predefined value. Rate-control algorithms may be used to control individual rate and aggregate-rate of an aggregation-group according to the rate management policy.
For each aggregation-group, an aggregate-rate service may be characterized by a guaranteed-rate, G, an increase in aggregate-rate, B, permitted during each time interval T, and duration of the time interval, T. A service level agreement may be that the system providing an aggregate-rate service guarantees that, for each aggregation-group, either:
total ingress-rate, ΣIi, is greater than or equal to G; or
any port having an offered rate, Oi, greater than or equal to the current ingress-rate, Ii, may increase its ingress-rate by as much as B during the next time interval T.
An aggregation-group may be identified by a mnemonic character string (aggregation -group-name) or other simple identifier. In one embodiment, a port may create an aggregation -group that does not yet exist, delete an aggregation-group that has been previously created, become a member of an existing aggregation-group, or withdraw its membership in an existing aggregation-group by using a novel protocol known as the MRP Aggregation-group Registration Protocol (MARP). MARP utilizes the generic registration services of the existing IEEE 802.1ak Multiple Registration Protocol (MRP).
In one embodiment, an aggregation-group may be created when a MARP_AGRP_REG primitive is issued by a port. This activity is known as aggregation-group registration. The aggregation-group-name and control-information may be supplied as parameters of the MARP_AGRP_REG primitive. The control-information may be a Group Media Access Control (MAC) Address, a set of Individual MAC Addresses, and/or other information used by the port to perform the distribution of control-messages associated with the aggregation-group. A MARP_AGRP_DEREG primitive may be issued by a port to remove the aggregation-group. This operation is known as aggregation-group deregistration. The aggregation-group-name may be supplied as a parameter of the MARP_AGRP_DEREG primitive.
In one embodiment, a port seeking membership in an aggregation-group may issue a MARP_AGRP_JOIN primitive with the aggregation-group-name as a parameter. MARP distributes the control-information associated with that aggregation-group to all members of the aggregation-group. Thus, the control-information is provided once, at the time of the MARP_AGRP_REG, and is not repeated when each MARP_AGRP_JOIN is issued. The control-information may contain one or more MAC addresses having twelve hexadecimal digits. By specifying the control-information once, at the time of aggregation-group creation, the need to specify such addresses identically, for each issued MARP_AGRP_JOIN, is eliminated. This is a benefit as repeated specification of such information is prone to human error. A port wishing to withdraw from an aggregation-group, may issue a MARP_AGRP_LEAVE primitive specifying the aggregation-group-name as a parameter.
Customers often monitor performance of network services for which they contract. In many cases, a service provider itself provides the monitoring service. Monitoring is done both to verify that services are adequate and appropriate for customer traffic, and to validate that the level of service provided is that which is contracted. An aggregate-rate control may be based on an idea that nearly real-time control may be performed in the presence of a quantifiable delay. Aggregate-rate control may be performed distinctly at each ingress port, accommodation for delay is incumbent in most rate-control methods.
In the case of monitoring, however, data analysis and reporting are timely, but need not be provided in real-time, as in the case of rate-control. One monitoring method may be based on use of a clock synchronization protocol, so that each port may identify time periods occurring concurrently at each port, with a known deviation. Results may then be reported distinctly by each port for a given time period, and data associated with the time periods correlated by a centralized monitoring application.
Data, together with a timestamp identifying the time period, is reported periodically by each port to a server. The data may include Olocal, Alocal, and Ilocal. These values may be averaged over the time period, reported for each time-interval T, or reported for selected time-intervals. The server may validate service parameters, by verifying that one of the following conditions is met during the time period:
ΣIi≧G ; or
I(i,t)−I(i,t−1)≧B or Oi≦Ai for every port i in an aggregation-group.
The server may further determine the fraction of time periods in which the service parameters have been honored, allowing customers to request rebates when the percentage of time in which the service parameters have been honored is less than that in a SLA between a Service Provider and customers.
A server may further provide tables and graphical displays of the service parameter values, allowing customers to determine when higher or lower levels of service should be purchased.
The aggregate-rate service model provided in the present invention has many advantages compared with conventional models. For example, a conventional Resilient Packet Ring (RPR) method requires that Service Instance endpoints be associated with a physical ring topology in order to fairly share ring capacity. Furthermore, there is no method to commit capacity per Service Instance. Comparatively, the present invention allows a service provider network of an arbitrary topology to support multiple Service Instances such that each Service Instance is associated with a specified aggregate-rate value.
Ethernet Virtual Private Line service method and Ethernet Virtual Local Area network (LAN) service method require provisioning of rates associated with each pair of communicating Service Instance endpoints. However, the present invention provides a single guaranteed-rate value to be provisioned for each aggregation-group.
Table 1 provides a comparison between a service based on a conventional point-to-point service model and a service based on the aggregate-rate service model in the present invention.
The aggregate-rate service model of the present invention may be equally applied in an enterprise LAN environment. For instance, a building LAN may have several aggregation-groups, and each gets a specific share of network capacity. Within each aggregation-group, the capacity is shared fairly.
The aggregate-rate service model of the present invention may also be applied to any communications service that may be characterized as having multiple points of ingress, each of which has a measurable ingress rate. This may explicitly include a Metropolitan Ethernet (MEN) as defined by the Metropolitan Ethernet Forum (MEF), a Provider Bridged Network (PBN) or a Provider Backbone Bridged Network (PBBN) as defined by IEEE 802.1, and an Internet Protocol (IP) Virtual Private Network (VPN), as described by Internet Engineering Task Force (IETF) IP Request for Comment (RFC) 2547.
The previous description of the disclosed embodiments is provided to enable those skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art and generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
This application claims the priority of: U.S. Provisional Application No. 60/758,870, filed on Jan. 13, 2006, “METHOD OF RATE CONTROL FOR AN ETHERNET VIRTUAL SHARED MEDIUM” by Robert Sultan; and U.S. Provisional Application No. 60/820,202, filed on Jul. 24, 2006, “SYSTEM AND METHOD OF RATE-CONTROL FOR AN ETHERNET VIRTUAL SHARED MEDIUM” by Robert Sultan, Stein Gjessing, Xuan Zhang, Zhushen Deng, Linda Dunbar, Lucy Yong, Jianfei He, and Xixiang Li. This application is related to: U.S. application Ser. No. 11/622,646, filed concurrently with the present application on Jan. 12, 2007, “SYSTEM FOR RATE-CONTROL OF AGGREGATE-RATE COMMUNICATION SERVICES”, by Robert Sultan, Stein Gjessing, Xuan Zhang, Zhusheng Deng, Xixiang Li, and Jianfei He; and U.S. application Ser. No. 11/622,744, filed concurrently with the present application on Jan. 12, 2007, “SYSTEM FOR RATE MANAGEMENT OF AGGREGATE-RATE COMMUNICATION SERVICES”, by Robert Sultan, Linda Dunbar, and Lucy Yong.
Number | Name | Date | Kind |
---|---|---|---|
4827477 | Avaneas | May 1989 | A |
5535193 | Zhang et al. | Jul 1996 | A |
5748901 | Afek et al. | May 1998 | A |
5857147 | Gardner et al. | Jan 1999 | A |
5914945 | Abu-Amara et al. | Jun 1999 | A |
6341134 | Toutain et al. | Jan 2002 | B1 |
6515969 | Smith | Feb 2003 | B1 |
6665733 | Witkowski et al. | Dec 2003 | B1 |
6850540 | Peisa et al. | Feb 2005 | B1 |
7072295 | Benson et al. | Jul 2006 | B1 |
7102997 | Sultan et al. | Sep 2006 | B2 |
7355969 | Champlin et al. | Apr 2008 | B2 |
7372814 | Chiruvolu et al. | May 2008 | B1 |
7515535 | Finn | Apr 2009 | B2 |
20020085559 | Gibson et al. | Jul 2002 | A1 |
20030097461 | Barham et al. | May 2003 | A1 |
20030133415 | Kim et al. | Jul 2003 | A1 |
20030163593 | Knightly | Aug 2003 | A1 |
20030165146 | Sultan et al. | Sep 2003 | A1 |
20030172362 | Mack-Crane et al. | Sep 2003 | A1 |
20030227926 | Ramamurthy et al. | Dec 2003 | A1 |
20050044272 | Uzun et al. | Feb 2005 | A1 |
20050073952 | Champlin et al. | Apr 2005 | A1 |
20050213558 | Levit et al. | Sep 2005 | A1 |
20050262264 | Ando et al. | Nov 2005 | A1 |
20060018313 | Oki et al. | Jan 2006 | A1 |
20060098672 | Schzukin et al. | May 2006 | A1 |
20060176900 | Liu et al. | Aug 2006 | A1 |
20070143490 | Gallou et al. | Jun 2007 | A1 |
20070165527 | Sultan et al. | Jul 2007 | A1 |
20070165627 | Sultan et al. | Jul 2007 | A1 |
20070263640 | Finn | Nov 2007 | A1 |
Number | Date | Country |
---|---|---|
1426651 | Jun 2003 | CN |
1534926 | Oct 2004 | CN |
1585504 | Feb 2005 | CN |
1614944 | May 2005 | CN |
1780347 | May 2006 | CN |
1897492 | Jan 2007 | CN |
1460808 | Apr 2010 | EP |
2342825 | Apr 2000 | GB |
2005013513 | Feb 2005 | WO |
Number | Date | Country | |
---|---|---|---|
20070165626 A1 | Jul 2007 | US |
Number | Date | Country | |
---|---|---|---|
60758870 | Jan 2006 | US | |
60820202 | Jul 2006 | US |