System for multi-layer broadband provisioning in computer networks
First Claim
1. A method comprising:
- defining a performance level for a specific traffic type in terms of bandwidth, latency, security, and priority;
detecting a data transfer of the specific traffic type;
allocating resources to achieve the performance level for the specific traffic type; and
transferring the data via a virtual channel associated with the specific traffic type to provide the defined bandwidth, latency, security, and priority.
10 Assignments
0 Petitions
Accused Products
Abstract
A system using a “provisioning engine” that performs high-speed identification, analysis and processing of information in a network. The provisioning engine applies rules to allocate network resources, such as bandwidth, to achieve specified performance. The provisioning engine can transfer, monitor and control information flowing through it, such as data packets. It is provided with an extremely fast mechanism for handling routing and data flow manipulation of the packets. This allows fast, “wire speed,” processing of units of information, such as packets, to specific, guaranteed flows and virtual circuits in real time. A preferred embodiment discloses dedicated architecture to process the data traffic. The dedicated architecture uses portions of packet header information to identify traffic types. The types are mapped to a service class that can already exist or that can be created to meet a traffic type bandwidth requirement. Predefined rules based on customer needs, service provider guidelines, bandwidth availability, etc., are then applied. This allows use of Layer 1 through Layer 7 data fields to be the basis for provisioning, security, monitoring and control of packet flow at full line rates.
-
Citations
16 Claims
-
1. A method comprising:
-
defining a performance level for a specific traffic type in terms of bandwidth, latency, security, and priority;
detecting a data transfer of the specific traffic type;
allocating resources to achieve the performance level for the specific traffic type; and
transferring the data via a virtual channel associated with the specific traffic type to provide the defined bandwidth, latency, security, and priority. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
receiving a signal at the provisioning engine to change a data rate for the specific traffic type; and
the provisioning engine allocating the bandwidth to achieve the data rate.
-
-
4. The method of claim 3, wherein data is transferred in packets that include a header that specifies a traffic type and wherein the provisioning engine detecting data transfers of the specific traffic type includes the provisioning engine detecting data transfer of a specific type based on the specific traffic type specified in the header.
-
5. The method of claim 4, wherein the header includes one of a packet source, packet destination, traveled route, and priority.
-
6. The method of claim 4, further comprising:
-
forming one or more classes of service each associated with a different data rate;
defining one or more rules for associating a traffic type with a class of service;
wherein the provisioning engine allocating the bandwidth to achieve the data rate for the specific traffic type includes using one or more of the rules to allocate the bandwidth.
-
-
7. The method of claim 6, further comprising:
-
using bits in the packet header to form a mesh array of binary bit patterns; and
using a content-addressable memory with hashing pre-processing to map the mesh array to a class of service.
-
-
8. The method of claim 1, further comprising collecting information on the actual data rate for the specific traffic type.
-
9. The method of claim 8, further comprising:
-
accepting a request for a data rate for a specific traffic type from a customer; and
billing the customer according to the collected information.
-
-
10. The method of claim 3, wherein the provisioning engine includes a port for receiving information to change the data rate, the method further comprising:
-
accepting information specifying the data rate; and
the provisioning engine allocating the bandwidth to achieve the data rate for a traffic type.
-
-
11. The method of claim 3, wherein the provisioning engine includes a port for receiving information to change the specified traffic type, the method further comprising:
-
accepting information specifying a traffic type; and
the provisioning engine allocating the bandwidth to achieve a data rate for the traffic type.
-
-
12. The method of claim 3, wherein the provisioning engine includes a port for receiving information to change the specified traffic type, the method further comprising:
-
accepting information specifying a traffic type; and
the provisioning engine providing billing information to the host system containing the amount of traffic on each of the links over a period of time to achieve a fee for the usage of the specific traffic type.
-
-
13. A method comprising:
-
loading a set of rules into a provisioning engine, the set of rules to define a plurality of user service classes that provide a service level based on priority, security, bandwidth, and latency, wherein each user service class is associated with a virtual channel to transmit data packets;
receiving a data packet at the provisioning engine;
parsing the data packet to determine one or more control parameters;
assigning the data packet to one of the plurality of user service classes based on the control parameters and one or more of the rules in the provisioning engine; and
forwarding the data packet to a next network destination via the virtual channel associated with the assigned user service class to provide the defined service level. - View Dependent Claims (14, 15)
-
-
16. An apparatus comprising:
-
a memory to store a set of rules to define a plurality of user service classes that each provide a service level based on priority, security, bandwidth, and latency;
a receiver to receive a data packet from a network;
a parser to parse the data packet and to determine one or more control parameters;
a mapping table to map the data packet to one of the plurality of user service classes based on the control parameters and one or more of the rules in the memory;
a circuit linker to link the data packet to a virtual circuit associated with the user service class to which the data packet is mapped; and
a transmitter to transmit the data packet to a next network destination via the virtual circuit to which the data packet is linked in order to provide the service level associated with the data packet.
-
Specification