DYNAMIC ADJUSTMENT OF BANDWIDTH ALLOCATION FOR AN IN-PROGRESS MEDIA SESSION
First Claim
1. A computer-implemented method for dynamically adjusting bandwidth allocation for an in-progress media session, the method comprising:
- receiving a message during an in-progress media session;
determining based upon the message whether a new amount of bandwidth has been requested for the in-progress media session;
in response to determining that a new amount of bandwidth has been requested for the in-progress media session, determining whether the new amount of bandwidth can be allocated to the in-progress media session; and
in response to determining that the new amount of bandwidth can be allocated to the in-progress media session, allocating the new amount of bandwidth to the in-progress media session and transmitting a response to the message indicating that the new amount of bandwidth has been allocated to the media session.
2 Assignments
0 Petitions
Accused Products
Abstract
A client in a media session periodically transmits a “keepalive” message that indicates that a new amount of bandwidth is requested for the in-progress media session. A bandwidth policy service receives the keepalive message and determines whether the new amount of bandwidth can be allocated to the in-progress media session. If the service determines that the new amount of bandwidth can be allocated to the session, the service transmits a response to the keepalive message that indicates that the new amount of bandwidth has been allocated to the media session. The client receives the response and adjusts the bandwidth utilized by the in-progress session to the new amount of bandwidth.
29 Citations
20 Claims
-
1. A computer-implemented method for dynamically adjusting bandwidth allocation for an in-progress media session, the method comprising:
-
receiving a message during an in-progress media session; determining based upon the message whether a new amount of bandwidth has been requested for the in-progress media session; in response to determining that a new amount of bandwidth has been requested for the in-progress media session, determining whether the new amount of bandwidth can be allocated to the in-progress media session; and in response to determining that the new amount of bandwidth can be allocated to the in-progress media session, allocating the new amount of bandwidth to the in-progress media session and transmitting a response to the message indicating that the new amount of bandwidth has been allocated to the media session. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method for dynamically adjusting bandwidth allocation for an in-progress media session, the method comprising:
-
determining whether a new amount of bandwidth is required for an in-progress media session; in response to determining that a new amount of bandwidth is required for the in-progress media session, transmitting a message during the in-progress media session requesting the new amount of bandwidth for the in-progress media session; receiving a response to the message; determining based upon the response to the message whether the request for the new amount of bandwidth for the in-progress media session was granted; and in response to determining that the request for the new amount of bandwidth for the in-progress media session was granted, adjusting the bandwidth utilized by the in-progress media session to the new amount of bandwidth. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
-
receive a keepalive message during an in-progress media session; determine based upon the keepalive message whether a new amount of bandwidth has been requested for the in-progress media session; in response to determining that a new amount of bandwidth has been requested for the in-progress media session, to determine whether the new amount of bandwidth can be allocated to the in-progress media session by calculating a delta bandwidth comprising the difference between the new amount of bandwidth and an amount of bandwidth previously allocated to the in-progress media session, determining if the delta bandwidth is available on a network link utilized by the in-progress media session, and determining that the new amount of bandwidth can be allocated to the in-progress media session in response to determining that the delta bandwidth is available on the network link; in response to determining that the new amount of bandwidth can be allocated to the in-progress media session, to allocate the new amount of bandwidth to the in-progress media session and to transmit a response to the keepalive message indicating that the new amount of bandwidth has been allocated to the media session; and in response to determining that the new amount of bandwidth cannot be allocated to the in-progress media session, to transmit a response to the keepalive message indicating that the new amount of bandwidth has not been allocated to the media session. - View Dependent Claims (18, 19)
-
-
20. The computer-readable storage medium of claim 20, having further computer-executable instructions stored thereupon which, when executed by the computer, cause the computer to:
-
receive a request for allocation of bandwidth to a new media session prior to establishment of the media session; in response receiving the request for allocation of bandwidth to a new media session, to determine whether a requested amount of bandwidth can be allocated to the new media session; and in response to determining that the requested amount of bandwidth can be allocated to the new media session, to update the runtime database with the requested amount of bandwidth and to transmit a response to the request for allocation of bandwidth to the new media session indicating that the requested amount of bandwidth has been granted.
-
Specification