The present invention relates generally to a communication system that operates in association with a globally accessible computer network, such as the Internet, and, more particularly, to a multi-layered communication system that is implemented with a broadband communications platform that enables quality of application service delivery and user control over the priority of information delivery flow.
The Internet has become vital to both businesses and consumers. The initial role of the Internet as an information tool has led to explosive adoption of its use; however, the massive growth of the Internet has outpaced the capabilities of its infrastructure. Content providers have moved from providing static information to distributing applications that consume large amounts of bandwidth.
The delivery of high quality service to an end user while maintaining an ability to provide a significant increase in bandwidth over a global reach is an unmet challenge of contemporary communication systems. The public Internet is plagued with user problems such as congestion (too many users) and latency (long pauses and delays) and is, therefore, unable to support an increase in communication network traffic resulting from the presence of additional users and the advent of rich media applications. Deterministic applications include, for example, media rich content, low latency applications, and other applications requiring mission critical delivery scheduling. Several causes of user problems are deliberate off-loading and routing of data traffic through congestion points, inadequate security, and lost information resulting from the currently used best-effort routing practices.
The structural layers of the Internet, which include network providers, service providers, software providers, and content providers, work independently and thereby create an infrastructure based on individual convenience and legacy systems without consideration of the interaction among the constituent participants. Telecommunication carriers have networks optimized for voice but not data. Internet Service Providers (ISPs) oversubscribe their networks in an effort to achieve or sustain profitability. The public Internet is, therefore, a fundamentally flawed model from a financial, business, and technological perspective for the delivery of low latency, high throughput applications, such as media rich content and other deterministic applications.
Moreover, the Internet has a different set of transmission issues from those faced by Local Area Networks (LANs), Metropolitan Area Networks (MANs), and Wide Area Networks (WANs). LANs include directories that authorize LAN end-users to use applications or obtain information. The directory is a baseline component of the functionality that comes with LAN connectivity. LANs have historically been more important to businesses than residences because LANs enable enterprise-wide applications. MANs facilitate the interconnection of corporate LANs between buildings in a city as well as enable the interconnection of corporate networks to a WAN for voice and data traffic. They are also the local loop infrastructure that connects end users to the Internet. WANs serve as the backbone for corporations that operate in multiple cities and are the national or global networks that connect the majority of users. Public WANs, which serve as the Internet backbone, have large amounts of available bandwidth; however, no widely used routing system exists that avoids the congestion and best efforts delivery method of today's Internet.
The Internet at numerous points has congestion that results from “peering” and commercially expedient routing policies at the peering points, such as Metropolitan Area Exchanges (MAEs), where there is no economic incentive to carry traffic over any particular equipment backbone structure. Peering routing is a consequence of the practice of multiple service providers (SPs) using their routers to exchange information transmission routes with one another. Commercially expedient routing is the practice of an SP choosing a nearest location to transfer applications, irrespective quality of service considerations. Thus, the finite number of available locations for exchanging information becomes overly congested because application routing is motivated by commercial, not quality of service control, considerations.
The Internet operates with end users by way up dial-up modems or LANs connected by an ISP local loop and thereby creates over the LAN a load that typically exceeds the speed capability of the local loop. The consequence is that simple, high capacity bandwidth within the Internet by way of any ISP of rudimentary quality of service is insufficient to create a low latency, deterministic network solution. The demands exerted on infrastructure support required by, for example, 10 million users simultaneously on line from all branches of the Internet currently present a difficult bandwidth load management challenge, which promises to worsen as broadband applications gain popularity and increase in usage.
What is needed, therefore, is a broadband communication system that can consistently deliver deterministic applications, irrespective of network-to-network architecture complications.
The present invention is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
In one aspect of the present invention, a method for providing broadband communications over a multi-layered network having a plurality of Open System Interconnection (OSI) Reference Model layers functioning therein is provided. The method includes monitoring at least one OSI reference model layer functioning in the multi-layered network. A quality of service event is determined whether to have occurred in the multi-layered network. The quality of service event is determined to have occurred at a layer N in the OSI reference model. Network provisioning is changed at a layer less than N in response to the quality of service event, and a signal is provided when the network provisioning at the layer less than N has been changed.
In another aspect of the present invention, a system is provided. The system includes a multi-layered network, a network monitor, and a network controller. The multi-layered network has a plurality of Open System Interconnection (OSI) reference model layers functioning therein. The network monitor is coupled to the multi-layered network, and the network monitor is adapted to monitor at least one OSI reference model layer functioning in the multi-layered network, determine that a quality of service event has occurred in the multi-layer network, and determine that the quality of service event occurred at a layer N in the OSI reference model. The network controller is coupled to the multi-layered network, and the network monitor is adapted to respond to the quality of service event in the multi-layered network by changing the network provisioning at a layer less than N.
The invention may be best understood by reference to the following description taken in conjunction with the accompanying drawings, in which like reference numerals identify like elements, and in which:
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that the description herein of specific embodiments is not intended to limit the invention to the particular forms disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the appended claims.
Illustrative embodiments of the invention are described below. In the interest of clarity, not all features of an actual implementation are described in this specification. It will of course be appreciated that in the development of any such actual embodiment, numerous implementation-specific decisions must be made to achieve the developers specific goals, such as compliance with system-related and business-related constraints, which will vary from one implementation 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 for those of ordinary skill in the art having the benefit of this disclosure.
The broadband communication services delivery afforded by the present invention enables quality of service control by content providers, Application Service Providers (ASPs), local loop carriers, ISPs, and, by extension, their customers. This is achieved through a quality of service-capable broadband system that augments the Internet. The result is more control by users over the priority of their information flow, more control by network administrators over the congestion of their networks, and more control by content providers over costs and the experiences they provide to their users.
Referring to
Referring to
The physical layer 228 is layer 1 in the OSI reference model. This layer encompasses the physical features of sending data over communication lines. For example, layer 1 may be associated with coaxial cables, fiber lines, category 1-5 cables, and the like.
The data link layer 224 is layer 2 in the OSI reference model. This layer encompasses procedures concentrated on the operation of communication lines. Error identification and correction are also functions of this layer. Layer 2 may include SLIP, PPP, Ethernet, and the like.
The network layer 220 is layer 3 in the OSI reference model. This layer establishes how data is transmitted between workstations, including the routing of data. Layer 3 may include IPV6, IPV4, and the like.
The transport layer 216 is layer 4 in the OSI reference model. This layer directs the processes for end-to-end transfer of information inside and between networks, including error recovery and flow control. Layer 4 may include TCP, UDP, and the like.
The session layer 212 is layer 5 in the OSI reference model. The layer controls communication resources and manages dialogue and the directions of information flow. Layer 5 may include POP/25, 532, RPC Portmapper, and the like.
The presentation layer 208 is layer 6 in the OSI reference model. This layer allows different systems to communicate by converting the information format of an individual system into a standard configuration. Layer 6 may include HTTP, FTP, SMTP, and the like.
The application layer 204 is layer 7 in the OSI reference model. This layer includes protocols for specific application services and encloses virtual terminal software. File transfer may also occur with events at the application layer. Layer 7, may include e-mail, newsgroups, web applications, and the like.
Although illustrative examples have been given for each of the 7 layers in the OSI reference model, those skilled in the art will appreciate that many other communication resources may be categorized by where their functionality fits within the OSI reference model. Moreover, some communication resources may not fit completely within one layer of the OSI reference model, that is, the functionality of some communication resources may be best categorized with reference to more than one OSI reference model layer. Nevertheless, most communication resources (e.g., routers, multiplexers, switches, data lines, application programs, software, hardware, etc.) may be substantially categorized within one of the layers of the OSI reference model.
For the ease of illustrating the present invention, the layers of the OSI reference model may be expressed algebraically. For example, layer 3, the network layer 220, may be described illustratively as layer N. If this is the case, then the layer N−1 would be layer 2, the data link layer 224, and the layer N−2 would be layer 1, the physical layer 228. Similarly, if layer 3 is again expressed as layer N, then the layers less than N would be comprised of layer 2 and layer 1. In another example, if layer 7, the application layer 204, is described illustratively as layer N, then the layer N−1 would be layer 6, the presentation layer 208. Likewise, if layer 7 is described as layer N, then the layers less than N would include layers 6 through 1.
Referring back to
As described above, if the OSI layers 104 are expressed algebraically, in this example, layer 7 may be considered layer N, while the layers less than N may be the network layer 124 (layer 3), the data link layer 126 (layer 2), and the physical layer 128 (layer 1). Similarly, layer 3 could be considered layer N, which would make the layers less than N the data link layer 126 (layer 2) and the physical layer 128 (layer 1).
In this illustrative embodiment, each of the OSI reference model layers 104 may be implemented with an independent control system that operates under either central or distributed control. For example, the physical layer 128 (layer 1) may represent the provision of circuits that effects an end-to-end connection between the first and second users 112, 116 with an associated bandwidth, irrespective of the type of data or nature of the protocol. In the case of fiber optic cable, there may be multiple light transmissions wavelengths that provide separate information transmission channels. Carrier signal modulation and wavelength division multiplexing may also be carried out in layer 1. Layer 1 typically operates under control of a single computer that sends control signals to all devices in the layer.
The network layer 124 (layer 3) may operate internally as a distributed IP layer under dynamic routing protocols in the absence of a centralized computer. The application layer 120 (layer 7) may be a web browser sending HTTP protocol.
Additionally, the first user 112 may be connected to a first local loop 132, and the second user 116 may be connected to a second local loop 136. The local loops 132, 136 may be comprised of LANs that connect the first and second users 112, 116 to the Internet. Although
The backbone services, which are represented by line 140, represent a WAN of multiple geographically distributed locations, the equipment of which implement segmented connectivity through the Internet. For example, each location may operate equipment under an internal switching scheme that moves locally the transmitted information up and down the OSI layers. The WAN, therefore, may represent a network implementing a geographical progression of information transmitted up and down local OSI layers, such as the OSI layers 104 illustrated in
Internet users define their services offered in terms of the functional layers of the OSI model and accordingly dictate business strategies. With reference again to
The carrier service at an OSI reference layer is, typically, concerned only with how the end user or enterprise connects into its network at the correct points of demarcation on the network of the carrier service at that layer. There is usually no consideration of making the application work end-to-end up and down the OSI model stack 104 in any of these carrier class services.
As a practical matter, no single OSI reference layer can resolve all of the quality of service and economic issues associated with delivering deterministic applications such as streaming media content across the local loops 132, 136 and the backbone 140 between the users 112, 116 by way of networks of multiple service providers. The application traverses up and down the OSI stack 104 and may need quality of service functions at several layers to achieve end-to-end quality of service at a price that is economical for connecting a target audience.
Typically, the applications/content source needs to use more than one service (e.g., communication circuits, ATM and Frame Relay transmission technologies) from more than one OSI layer 104 to make the application reach all of the intended audiences that are dispersed geographically in different cities and countries across the world. No consistent policy exists to ensure quality of service in this approach.
The present invention implements a different approach to the typical Internet model. The strategy of the present invention is to bridge the gaps between the layers of the OSI reference model, illustrated in
Referring to
Although the complexities of the network monitor 308 are not shown, those skilled in the art will appreciate that the network monitor 308 may be comprised of a variety of known devices. Moreover, the specific hardware and software implementation of the network monitor 308 may vary depending upon the particular implementation. However, in one illustrative embodiment, the network monitor 308 is a Sun Netra T1 server operating using the Solaris operating system.
The resource database 312 may be used to organize the functionality of the communication links 318 and the network elements 314 according to the OSI reference model. In one illustrative embodiment, the communication resources of the network element 314 may be comprised of IP routers, ATM switches, fiber lines, application services, and the like. Accordingly, the communication resources may be organized in the resource database 312 according to their functionality within the OSI reference model. For example, ATM switches may be categorize in the resource database 312 into layer 2, fiber lines may be categorized into layer 1, and application programs may be categorized in layer 7.
The control system 300 is capable of recognizing that communication resources (e.g., routers, fiber lines, etc.) may be shared or exclusive. Accordingly, the network monitor 308 correlates the information of the various communication links 318 and presents it to the resource database 312 in a logical manner. For example, the network monitor 308 may need to combine information from communication resources at multiple OSI layers or combine information from communication resources in the same OSI layer. Moreover, the network monitor 308 may also collect topological information related to the network element 314, and this information may also be included in the resource database 312. For example, the network monitor 308 may capture the site of location of a particular router, ATM switch, fiber line, etc. and the manner in which other devices are connected to it. To this end, the network monitor 308 may use standard industry techniques, such as simple network monitoring protocol (SNMP) and remote network monitoring (RMON) to perform its monitoring and reporting to the network controller 304 and the resource database 312.
The resource database 312 may comprise a dynamic listing of communication resources that are available in any network element 314. For example, the resource database 312 may be continually updated as new resources are added to the network element 314 and as old resources are removed. Moreover, the network monitor 308 and the network controller 304 may communicate with both the resource database 312 and the network element 314 to maintain an updated organized listing of the resources available in the network element 314. Those skilled in the art will appreciate that the resource database 312 may be stored on a separate storage device comprised of a variety of known storage devices, such as hard disk drives, and the like. Alternatively, in another embodiment, the resource database 312 may be incorporated with the network monitor 308 and/or the network controller 304.
The network controller 304 may communicate with the resource database 312, the network monitor 308, and the network element 314 using a signaling network 322. Those skilled in the art will appreciate that the signaling network 322 may be comprised of a variety of devices and operate using any number of known protocols. In one embodiment, the signaling network 322 is comprised of fiber lines, and the communication protocol is IP.
The network controller 304 and the network monitor 308 may communicate with the communication links 318, over the signaling network 322, by using existing communication ports and protocols of the communication resources (e.g., network devices, programs, protocols, etc.) functioning within the respective network elements 314. In one embodiment, InterAgent® communication messaging software is a portion of the implementation of the network controller 304 and the network monitor 308. The InterAgent® software is described in the U.S. Pat. No. 5,634,010, which is hereby incorporated by reference. Moreover, the network controller 304 and the network monitor 308 may have multiple device drivers each of which provides a different command language such as command line interface (CLI), to which Cisco System routers respond; command language used by AT&T for telco switches (TL1); common open policy service (COPS), which represent priority ranking commands; and system command languages.
Although the complexities of the network controller 304 are not shown, those skilled in the art will appreciate that the network controller 304 may be comprised of a variety of known devices. Moreover, the specific hardware and software implementation of the network controller 304 may vary depending upon the particular implementation. However, in one illustrative embodiment, the network controller 304 is a Sun Netra T1 server operating using a Solaris operating system.
Furthermore, although the network controller 304, the network monitor 308, and the resource database 312 are illustrated as separate devices, the functionality of each device may be implemented within a single device. Moreover, the specific embodiment of the control system 300 may vary depending upon the particular implementation.
Referring to
At block 400, the control system 300 monitors at least one OSI reference model layer operating in the network element 314. As discussed above, the communication links 318 connected to each network element 314 may be categorized, in the resource database 312, according to their functional layers of the OSI reference model. Accordingly, the network monitor 308 is capable of segmenting its monitoring of the communication links 318 based on its own categorization scheme, in the resource database 312. For example, the network monitor 308 may focus its interest on the network layer (layer 3) of the OSI reference model by monitoring routers and/or any other device associated with the IP protocol. Similarly, the network monitor 308 may focus its interest on the physical layer (layer 1) of the OSI model by monitoring fiber lines, cable lines, and the like. Moreover, the network monitor 308 may focus its interest on the application layer (layer 7) of the OSI model by monitoring application programs and the like.
The monitoring process of the network monitor 308 may be proactive, reactive, or both. In one illustrative embodiment, the network monitor 308 may monitor in a proactive manner by continually poling resources associated with the OSI layer being monitored. For example, at a predetermined time interval, the network monitor 308 may send an update request to the communication resources operating in the monitored layer of the network element 314. In response, the communication resources may send the requested information back to the network monitor 308.
In another embodiment, the network monitor 308 may monitor in a more reactive mode, wherein communication resources send alert signals to the network monitor 308 when predetermined alert thresholds are met. For example, an application program (e.g., a web browser), functioning at layer 7 of the OSI reference model, may alert the network monitor 308 when it is about to send time sensitive data through the network element 314. As will be described below, once alerted, the network monitor 308 may signal the network controller 304 to take appropriate action in response to the alert from the application program.
As described above, some communication resources may be difficult to associate with a single OSI layer. Accordingly, the network monitor 308 may be required to monitor more than one OSI layer to capture an accurate state of the network element 314. To accomplish this, the network controller 304 may access the resource database 312 to determine how to monitor the resources associated with a particular network element 314. For example, regardless of how the network monitor 308 has categorized the communication resources in the resource database 312, the network monitor 308 may re-access its classification scheme from the resource database 312, and use it to facilitate monitoring the corresponding resources of a network element 314. For example, in one illustrative embodiment, the network monitor 308 may continually loop through the entries in the resource database 312, use the entries to associate communication resources with their corresponding communication links 318, and monitor the communication resources according to the classification schemes in the resource database 312.
The network monitor 308 may monitor the communication resources of the various network elements 314 searching for quality of service events. Generally, a quality of service event may be defined as any event that effects the quality of service of data being sent across a communication system. Some exemplary quality of service measurements include error seconds, unavailable seconds, packet loss rate, transmission time (latency), jitter (deviations from an expected value), bandwidth throughput, and the like.
Depending upon the implementation, the network monitor 308 may define and monitor error seconds in a variety of ways. That is, the specific error second thresholds that the network monitor 308 searches for may vary depending upon the communication system. In one example, error seconds may take on its generally accepted meaning as applied to SONET circuits. However, in another illustrative embodiment, an error second may be defined as any second in which a minimum of one and a maximum of 44 bit errors have occurred. Similarly, severely errored seconds may be defined as any second in which there have been 45 or more bit errors. Finally, unavailable seconds may be a consecutive string of 10 or more severely errored seconds. For example, 9 consecutive severely errored seconds are not unavailable seconds, but 11 consecutive severely errored seconds are also 11 unavailable seconds.
Packet loss rate may be defined as the number of packets that are sent to a particular destination but do not arrive. Again, the network monitor 308 may define any arbitrary threshold value for packet loss rate, and the particular threshold value may vary depending upon the communication system. For example, if the network monitor 308 was ensuring a very high quality of service link between two points, the packet loss rate and the error second threshold valures may be set low to ensure a high quality of service.
Transmission time (i.e., latency) may be defined as the time required to send data from a sending point to a destination point. As a practical matter, it is desirable to minimize transmission time. Jitter may be defined as deviations from the usual transmission time between the two points. For example, if a normal transmission requires 100 ms and, later, the same transmission takes 200 ms, then the jitter value for that particular communication link may be approximately 100 ms. Moreover, excessive transmission time and jitter may severely limit the ability to send rich media content across a communication link 318 (i.e., excessive transmission time and jitter may result in low quality of service) even when the communication link 318 has sufficient bandwidth for the transmission.
Bandwidth throughput is probably the most commonly used quality of service measurement. It is often defined as “the size of the pipe” between two points. For example, a DS-3 line may have a bandwidth throughput of 44.736 Mb/s, while an OC-1 line may have a bandwidth throughput of 51.84 Mb/s. Generally, a measurement of bandwidth throughput, alone, is insufficient to predict or gauge the quality of service that will be experienced between two points in a communication system. For example, even though a communication link may have a large bandwidth throughput, if the communication link produces a large value for error seconds, packet loss, or jitter, the quality of service experienced for the communication link may be very poor. As such, it may be necessary for the network monitor 308 to monitor a variety of quality of service measurements to ensure that a particular quality of service is maintained.
Referring again to
In another illustrative example, an application program (e.g., a web browser application) functioning at layer 7 of the OSI reference model may signal the network monitor 308 that it intends to send rich media content to a particular destination in the network element 314. This signal from the application program may be considered by the network monitor 308 to be a quality of service event.
It should be appreciated that a quality of service event may occur from any functional level of the OSI reference model. For example, the quality of service event may occur from an application program (layer 7), a router (layer 3), an ATM circuit (layer 2), an add drop multiplexer (ADM) of a fiber circuit (layer 1), etc. Moreover, the network monitor 308 may determine that a quality of service event has occurred in a network element 314 using proactive, reactive, or any other measuring technique.
In addition to the quality of service measurements, a quality of service event may be the addition or deletion of communication resources in a network element 314. For example, the network monitor 308 may be used to determine when additional communication resources (i.e., fiber lines, routers, ATM circuits, ATM switches, leased lines, new routing protocols, data delivery programs, hardware, software, etc.) have been added to a particular network element 314. When this occurs, the network monitor 308 may, among other things, determine that a quality of service event has occurred in the network element 314, update the resource database 312 with the new communication resources, and alert the network controller 304 respond.
Similarly, when communication resources are removed from a network element 314, either temporarily or permanently, the network monitor 308 may initiate a similar course of action. That is, the network monitor 308 may determine that a quality of service event has occurred in the network element 314, remove the resources from the resource database 312, and alert the network controller 304 to respond.
Once a quality of service event is detected, the network monitor 308 may determine that the quality of service event occurred at a layer N in the OSI reference model (408). For example, the network monitor 308 may use the resource database 312 to determine where in the OSI reference model the quality of service event occurred. In one illustrative embodiment, the network monitor 308 may determine that a particular router is experiencing a high packet loss rate (i.e., the network monitor 308 may determine that a quality of service event has occurred). The network monitor 308 may then locate the router in the resource database 312 and determine that the quality of service event is occurring at the network layer of the OSI reference model (layer 3). Therefore, layer 3 would become layer N.
In another illustrative example, an application program may signal the network monitor 308 that it expects to send rich media content to a particular location in a network. Accordingly, the network monitor 308 may characterize the signal as a quality of service event. The network monitor 308 may then locate where in the OSI reference model the application program resides using the resource database 312. For example, the network monitor 308 may determine that the application program functions at layer 7 in the OSI reference mode. Therefore layer 7 would become layer N.
Referring back to
In another illustrative embodiment, a communication link 318, may again appear to be solely an IP path when viewed from the perspective of layer 3. However, the IP path may also include a collection of fiber circuits, ATM circuits, leased lines, and the like. Accordingly, the communication link 318 would be organized in the resource database 312 under layer 3, layer 2, and layer 1. Again, the network monitor 308 and the resource database 312 maintain these relationships, which may be recalled upon request.
Referring back to
Referring to
Referring to
Referring to
The decision to activate the third and fourth STM-1 lines 548, 552 may be based on a variety of factors, such as the type of quality of service event, past history with the third and fourth STM-1 lines 548, 552, the characteristics of the data being sent between the first and second users 504, 516 (e.g., media rich content), and the like. For example, if the quality of service event was based on error seconds, the third and fourth STM-1 lines 548, 552 may have been activated because they were known to produce relatively few error seconds. Alternatively, the network controller 304 may base the decision on availability, that is, the network controller 304 may use the additional capacity as a hedge against future error seconds (i.e., error seconds and bandwidth may be inversely related).
In another illustrative embodiment, the quality of service event may be a signal from an application of the first user 504 that the application is about to send a large amount of data to the second user 516. In this example, the quality of service event may appear to the network controller 304 to be occurring at the application layer of the OSI reference model. Accordingly, layer N, in the OSI reference model, would become layer 7, and the layers less than N may be OSI layers 6 through 1. Using the resource database 312, the network monitor 308 may signal the network controller 304 to respond to the quality of service event by changing the network provisioning in the communication system 500 at an OSI layer less than N. As a result, the network controller 304 may take similar action, as described above, and activate the third and fourth STM-1 lines 548, 552, illustrated in
Alternatively, rather than activating the third and fourth STM-1 lines 548, 552, the network controller 304 may change the network provisioning by balancing the transmission load carried between the first and second STM-1 lines 540, 544. For example, if the first user 504 is about to send a large amount of data to the second user 516, in response to this quality of service event (i.e., a layer 7 event), the network controller 304 may adjust the load on the first and second STM-1 lines 540, 544, such that the connection between the first and second users 504, 516 is allotted additional bandwidth.
Once the transmission is complete, the application operating at the first user 504 may send an additional quality of service signal to the network monitor 308 that the transmission is compete. The network monitor 308 may then signal the network controller 304 to respond to the quality of service event, and the network controller 304 may readjust the load on the first and second STM-1 lines 540, 544 back to its previous state.
In yet another illustrative embodiment, referring back to
Generally, MPLS involves setting up a specific path for a given sequence of packets, which may be identified by a label inserted in each packet. In this example, rather than looking up the address to the next network element 314, the first or second routers 508, 520 may be able to forward the packet to its next destination based on its label. In other words, MPLS typically allows for packets to be forwarded at the layer 2 (switching) level rather than at layer 3. Thus, a quality of service event in layer 3 may be resolved by changing the network provisioning at layer 2, using MPLS.
The network controller 304 may use MPLS to respond to a layer 3 or any other OSI layer quality of service event by controlling and determining the particular route data packets traverse through a network. For example, if a quality of service event is occurring at a particular network element 314, the network controller 304 may use MPLS to route data traffic away from the problem causing network element 314. Additionally, the network controller 304 may use MPLS to balance or distribute the traffic load across the network. Furthermore, the network controller 304 may resolve a quality of service event using MPLS by ensuring that the offending data packet traverses the shortest path possible to reach its destination. Generally, there are a variety of schemes the network controller 304 may apply using MPLS to resolve a quality of service event occurring at an OSI layer greater than 2 (i.e., layers 3-7).
Referring back to
At block 416, if the network provisioning has been changed at the OSI layer less than N, the network controller 304 may signal the network monitor 308 that the change in the network provisioning is complete. The network monitor 308 may then update the resource database 312 with the change in network provisioning, and the network monitor 308 may continue to monitor the network element 314, waiting for quality of service events to occur.
Referring to
In
Referring to
Referring to
In another embodiment, the quality of service event, at layer 3, may be the activation of the third virtual circuit 656. For example, as networks grow, additional communication resources are continually being brought online. When this occurs, the newly added resources (e.g., the third virtual circuit 656) may appear at layer 3 (
As indicated above, aspects of this invention pertain to specific “method functions” implementable through various computer systems. In an alternate embodiment, the invention may be implemented as a computer program product for use with a computer system. Those skilled in the art should readily appreciate that programs defining the functions of the present invention can be delivered to a computer in many forms, which include, but are not limited to: (a) information permanently stored on non-writeable storage media (e.g., read only memory devices within a computer such as ROMs or CD-ROM disks readable only by a computer I/O attachment); (b) information alterably stored on writeable storage media (e.g., floppy disks and hard drives); or (c) information conveyed to a computer through communication media, such as a local area network, a telephone network, or a public network like the Internet. It should be understood, therefore, that such media, when carrying computer readable instructions that direct the method functions of the present invention, represent alternate embodiments of the present invention.
The particular embodiments disclosed above are illustrative only, as the invention may be modified and practiced in different but equivalent manners apparent to those skilled in the art having the benefit of the teachings herein. Furthermore, no limitations are intended to the details of construction or design herein shown, other than as described in the claims below. It is therefore evident that the particular embodiments disclosed above may be altered or modified and all such variations are considered within the scope and spirit of the invention. Accordingly, the protection sought herein is as set forth in the claims below.
This application is a continuation of U.S. application Ser. No. 09/860,801, filed May 18, 2001, now U.S. Pat. No. 6,832,249, which in turn was a non-provisional application based on U.S. Provisional Application Ser. No. 60/205,529, filed May 19, 2000. Both of these applications are hereby incorporated by reference, and priority is claimed to both.
Number | Name | Date | Kind |
---|---|---|---|
6038609 | Geulen | Mar 2000 | A |
6553568 | Fijolek et al. | Apr 2003 | B1 |
6631122 | Arunachanlam et al. | Oct 2003 | B1 |
6747968 | Seppala et al. | Jun 2004 | B1 |
20030061338 | Stelliga | Mar 2003 | A1 |
Number | Date | Country |
---|---|---|
0905995 | Mar 1999 | EP |
0191416 | Nov 2001 | WO |
Entry |
---|
Almesberger, et al; “Using quality of service can be simple: Arequipa with renegotiable ATM connections”; Computer Networks and ISDN Systems 30; 1998; pp. 2327-2336. |
International Search Report for application No. PCT/US01/16291, mailed Jan. 4, 2002. |
Campbell, Andrew et al.; Integrated Quality of Service for Multimedia communications; Infocom 1993, Proceedings of the 12th Annual Joint Conference of the IRRR computer and IRRR communications Societies, vol. 2; 1993; pp. 732-739. |
Campbell, Andrew et al.; Resource Management in Multimedia Communication Stacks; Fourth IEEE Conference on Telecommunications, Apr. 1993; pp. 287-295. |
Number | Date | Country | |
---|---|---|---|
20050089044 A1 | Apr 2005 | US |
Number | Date | Country | |
---|---|---|---|
60205529 | May 2000 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09860801 | May 2001 | US |
Child | 10978953 | US |