Apparatus and methods for dynamic bandwidth allocation
Abstract
A system capable of dynamically reserving bandwidth and adjusting bandwidth reservations for active sessions of data communication in a data communications device is provided. The system generally separates the operation of bandwidth allocation and adjustment from the operation of data transport through the device, thereby allowing bandwidth reservations and adjustments to be made without disturbing sessions of data communication that are actively being transported through the device. The system can accept requests to allocate or reserve bandwidth in a data communications device using bandwidth reservation protocols such as RSVP. The reservation requests create sender state data that can be used to compute resource allocation data. The resource allocation data can be used to label data storage locations in a data storage mechanism according to the required bandwidth reservations. A data scheduling apparatus, which is ignorant of particular sessions and specific amounts of reserved bandwidth, examines data and deposits data into data storage locations having a label corresponding to a session identification specified in the data, if any. If an unknown or no session identification is specified in the data, the data scheduler deposits data into a data storage location that is unlabeled or that has an unreserved label. Thus session bandwidth is determined by the percentage of labeled data storage locations for the session. Changes in bandwidth reservations are reflected in the separate operation of alterations made in the data storage labeling scheme, and do not affect the data scheduler, or data dequeuing mechanisms, thus allowing data sessions to continue without interruption during bandwidth adjustments.
Claims
exact text as granted — not AI-modified1 . A method for dynamically adjusting reserved bandwidth in a data communications device while transporting a session of data communication within the device, the method comprising the steps of:
receiving a first RSVP bandwidth reservation request associated with application data of a session of data communication; reserving a first amount of data storage locations in the data communications device for the session of data communication, the first amount of data storage locations reserved based upon an amount of bandwidth requested in the first RSVP bandwidth reservation request; and dynamically adjusting the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request.
2 . The method of claim 1 wherein reserving comprises:
labeling, with an identity of the session of data communication, a first percentage of available data storage locations used to store application data transported through the data communications device to establish a first bandwidth reservation, the first percentage of available data storage locations labeled based upon the amount of bandwidth requested in the first RSVP bandwidth reservation request.
3 . The method of claim 2 wherein dynamically adjusting comprises:
labeling, with an identity of the session of data communication, a second percentage of available data storage locations used to store application data transported through the data communications device to establish a second bandwidth reservation while continually maintaining the session of data communication, the second percentage of available storage locations labeled based upon an amount of bandwidth requested in a second bandwidth reservation request, the second percentage of storage locations labeled being different than the first percentage of storage locations labeled.
4 . The method of claim 1 wherein receiving comprises:
receiving a first RSVP bandwidth reservation request associated with application data of a session of data communication, the first RSVP bandwidth reservation request distinct from the application data.
5 . The method of claim 1 wherein dynamically adjusting comprises:
dynamically adjusting the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request, the second RSVP bandwidth reservation request distinct from the application data.
6 . A data communications device comprising:
at least one communications interface; controller; and an interconnection mechanism coupling the at least one communications interface, the memory, and the processor; wherein data communications device is configured to: receive a first RSVP bandwidth reservation request associated with application data of a session of data communication via the at least one communications interface; reserve, via the controller, a first amount of data storage locations in the data communications device for the session of data communication, the first amount of data storage locations reserved based upon an amount of bandwidth requested in the first RSVP bandwidth reservation request; and dynamically adjust the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request received via the at least one communications interface.
7 . The data communications device of claim 6 wherein, when reserving, the data communications device is configured to:
label, with an identity of the session of data communication, a first percentage of available data storage locations used to store application data transported through the data communications device to establish a first bandwidth reservation, the first percentage of available data storage locations labeled based upon the amount of bandwidth requested in the first RSVP bandwidth reservation request.
8 . The data communications device of claim 7 wherein, when dynamically adjusting, the data communications device is configured to:
label, with an identity of the session of data communication, a second percentage of available data storage locations used to store application data transported through the data communications device to establish a second bandwidth reservation while continually maintaining the session of data communication, the second percentage of available storage locations labeled based upon an amount of bandwidth requested in a second bandwidth reservation request, the second percentage of storage locations labeled being different than the first percentage of storage locations labeled.
9 . The data communications device of claim 6 wherein, when receiving, the data communications device is configured to:
receive a first RSVP bandwidth reservation request associated with application data of a session of data communication, the first RSVP bandwidth reservation request distinct from the application data.
10 . The data communications device of claim 6 wherein, when dynamically adjusting, the data communications device is configured to:
dynamically adjusting the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request, the second RSVP bandwidth reservation request distinct from the application data.
11 . A computer program product having a computer-readable medium including computer program logic encoded thereon for allocating bandwidth in a data communications device, such that the computer program logic, when executed on at least one processing unit with the data communications device, causes the at least one processing unit to perform the steps of:
receiving a first RSVP bandwidth reservation request associated with application data of a session of data communication; reserving a first amount of data storage locations in the data communications device for the session of data communication, the first amount of data storage locations reserved based upon an amount of bandwidth requested in the first RSVP bandwidth reservation request; and dynamically adjusting the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request.
12 . A data communications device comprising:
at least one communications interface; a controller; and an interconnection mechanism coupling the at least one communications interface and the controller; wherein the data communications device is configured to produce a means dynamically adjusting reserved bandwidth in a data communications device while transporting a session of data communication within the device, such means including: means for receiving a first RSVP bandwidth reservation request associated with application data of a session of data communication; means for reserving a first amount of data storage locations in the data communications device for the session of data communication, the first amount of data storage locations reserved based upon an amount of bandwidth requested in the first RSVP bandwidth reservation request; and means for dynamically adjusting the first amount of data storage locations in the data communications device for the session of data communication to produce a second amount of data storage locations in the data communications device for the session of data communication request while continually maintaining the session of data communication, the dynamic adjusting based upon bandwidth allocation adjustment information within a second RSVP bandwidth reservation request.
13 . The data communications device of claim 12 wherein the means for reserving comprises:
means for labeling, with an identity of the session of data communication, a first percentage of available data storage locations used to store application data transported through the data communications device to establish a first bandwidth reservation, the first percentage of available data storage locations labeled based upon the amount of bandwidth requested in the first RSVP bandwidth reservation request.
14 . The method of claim 13 wherein the means for dynamically adjusting comprises:
means for labeling, with an identity of the session of data communication, a second percentage of available data storage locations used to store application data transported through the data communications device to establish a second bandwidth reservation while continually maintaining the session of data communication, the second percentage of available storage locations labeled based upon an amount of bandwidth requested in a second bandwidth reservation request, the second percentage of storage locations labeled being different than the first percentage of storage locations labeled.Join the waitlist — get patent alerts
Track US2005128951A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.