Claims
- 1. A packet network redistributing excess bandwidth for optimized performance of voice and data sessions conducted on the network, comprising:
plurality of client stations connected to the network for conducting voice and data sessions; each client station including at least one codec for conducting sessions at a selected minimum bandwidth or a preferred bandwidth; and a Quality of Service (QoS) application executing in the client stations and controlling the redistribution of bandwidth when a new session is set up or an existing session is removed, so that every new session will have at least minimum bandwidth or, reallocating bandwidth to remaining sessions after a removal of a session to increase bandwidth for some sessions.
- 2. The network of claim 1 further comprising:
session managing apparatus managing bit rate negotiations between client stations conducting voice and/or data sessions after addition or removal of voice or data session.
- 3. The network of claim 1 further comprises:
an application in the client station executing a protocol for minimum bandwidth allocation.
- 4. The network of claim 1 further comprises:
an application in the client station executing a protocol for preferred bandwidth allocation.
- 5. The network of claim 1 further comprises:
an application in the session managing apparatus executing a protocol for bit rate negotiation.
- 6. The network of claim 1 further comprises:
excess bandwidth detection apparatus and apparatus for allocating bandwidth when a new voice or data session is added based on excess bandwidth=(a)(preferred bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 7. The network of claim 1 further comprises:
timing apparatus which determines whether a session removal has occurred within a time period (T).
- 8. The network of claim 1 further comprises:
excess bandwidth detection apparatus and apparatus for reallocating bandwidth when an existing voice or data session is removed based on excess bandwidth=(a)(preferred bandwidth-minimum bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 9. The network of claim 5 wherein the protocol for bit rate negotiations is ITU-T H.323.
- 10. A method of redistributing excess bandwidth in a packet network upon the addition of a session, comprising the steps of:
determining whether a session is being added to the network; determining if the session is at a preferred bandwidth or a minimum bandwidth; allocating preferred bandwidth to a new session if excess bandwidth available; negotiating bit rate for the new session with the allocated bit bandwidth; Applying a Quality of Service (QoS) algorithm to all established voice sessions including the new session; and determining if all session bandwidth allocations are equal to or greater than their minimum bandwidth upon addition of a session.
- 11. The method of claim 10 further comprising the step of:
applying the Quality of Service (QoS) algorithm to all established sessions including data sessions if all session bandwidths are not at their minimum bandwidth.
- 12. The method of claim 10 further comprising the step of:
negotiating the bit rate for the new session and all established sessions with the bandwidth allocation changed.
- 13. The method of claim 10 further comprising the step of:
allocating bandwidth when a new voice or data session is added based on excess bandwidth=(a)(preferred bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 14. The method of claim 10 further comprising the step of:
executing an ITU-T protocol for bit rate negotiation.
- 15. A method for redistributing excess bandwidth in a packet network upon removal of a voice or data session, comprising the steps of:
determining whether a session is being removed from the network bandwidth; determining if a new session is being added when a time period “T” has not expired; determining if any encoded session is allocated with minimum bandwidth upon removal of a session; if none, applying a Quality of Service (QoS) algorithm to all data sessions with excess bandwidth and negotiate the bit rate for the sessions with bandwidth allocation changed; finding a voice session with the largest minimum bandwidth subscription; determining whether excess bandwidth is >=(a)(preferred bandwidth)+(b) where positive constants “a” and “b” are bandwidth margin safeguards; allocating preferred bandwidth to voice sessions with minimum bandwidth; and determining if any excess bandwidth remains.
- 16. The method of claim 15 further comprising the step of:
determining for the remaining excess bandwidth if any voice sessions, not including those having been considered, are allocated with minimum bandwidth.
- 17. The method of claim 15 further comprising the step of:
allocating preferred bandwidth in the remaining bandwidth to the voice session with minimum bandwidth.
- 18. The method of claim 15 further comprising the step of:
negotiating bit rates for the session with bandwidth allocation changed after applying the QoS algorithm to all sessions.
- 19. The method of claim 15 further comprising the step of:
allocating bandwidth when a new session is removed based on excess bandwidth=(a)(preferred bandwidth-minimum bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 20. The method of claim 15 further comprising the step of:
determining whether a session changed within a time period “T”.
- 21. The method of claim 15 further comprising the step of:
executing a protocol for bit rate negotiation.
- 22. A program medium, executable in a computer system, for redistributing excess bandwidth in a packet network upon the addition of a session, comprising:
program instruction determining whether a session is being added to the network; program instruction determining if the session is at a preferred bandwidth or a minimum bandwidth; program instruction allocating preferred bandwidth to a new session if excess bandwidth available; program instruction negotiating bit rate for the new session with the allocated bit bandwidth; program instruction applying a Quality of Service (QoS) algorithm to all established encoded sessions including the new session; and program instruction determining if all session bandwidth allocations are equal to or greater than their minimum bandwidth upon addition of a session.
- 23. The medium of claim 22 further comprising:
program instructions applying the Quality of Service (QoS) algorithm to all established sessions including non encoded sessions if all session bandwidths are not at their minimum bandwidth B.
- 24. The medium of claim 22 further comprising:
program instructions negotiating the bit rate for the new session and all established sessions with the bandwidth allocation changed.
- 25. The medium of claim 22 further comprising:
program instructions allocating bandwidth when a new session is added based on excess bandwidth=(a)(preferred bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 26. A medium, executable in a computer system, for redistributing excess bandwidth in a packet network upon removal of a session, comprising:
program instructions determining whether a session is being removed from the network bandwidth; program instructions determining if a new session is being added when a time period “T” has not expired; program instructions determining if any encoded session is allocated with minimum bandwidth upon removal of a session; program instructions applying a Quality of Service (QoS) algorithm to all data sessions with excess bandwidth and negotiate the bit rate for the sessions with bandwidth allocation changed; program instructions finding an encoded session with the largest minimum bandwidth subscription; program instructions determining whether excess bandwidth is >=(a)(preferred bandwidth)+(b) where positive constants “a” and “b” are bandwidth margin safeguards; program instructions allocating preferred bandwidth to encoded sessions with minimum bandwidth; and program instructions determining if any excess bandwidth remains.
- 27. The medium of claim 26 further comprising:
program instructions determining for the remaining excess bandwidth if any encoded sessions, not including those having been considered, are allocated with minimum bandwidth.
- 28. The medium of claim 26 further comprising:
program instructions allocating preferred bandwidth in the remaining bandwidth to the encoded session with minimum bandwidth.
- 29. The medium of claim 26 further comprising:
program instructions negotiating bit rates for the session with bandwidth allocation changed after applying the QoS algorithm to all sessions.
- 30. The medium of claim 26 further comprising the step of:
program instructions allocating bandwidth when a new session is removed based on excess bandwidth=(a)(preferred bandwidth-minimum bandwidth)+(b) where (a) and (b) are bandwidth margin safeguards.
- 31. The medium of claim 26 further comprising:
program instructions determining whether a session changed within a time period “T”.
RELATED APPLICATIONS
[0001] (1) Ser. No. ______ entitled “Shock Absorber Random Early Detection For Buffer Occupancy Control”, filed ______ (RAL919990136US1); and
[0002] (2) Ser. No. ______ entitled “Bandwidth Allocation For Differentiated Services”, filed ______ (RAL919990138US1), both applications assigned to the same Assignee as that of the present invention and fully incorporated herein by reference.
[0003] (3) Copending application Ser. No. ______ entitled “Codec With Network Congestion Detection An Automatic Fallback: Methods, Systems and Program Products”, filed ______ (RAL92000008SU1/1963-7412); and
[0004] (4) Copending application Ser. No. ______ entitled “Controlling Network Congestion Using A Biased Discard Policy: Methods, Systems and Program Products”, filed ______ (RAL9-2000-0089US1/1963-7413), both applications assigned to the same assignee as that of the present invention and fully incorporated herein by reference.