VoIP endpoint call admission

Abstract
The present invention is directed generally to an intelligent endpoint or communication device that can collect available bandwidth-related information metrics and/or perform call admission control functions. The present invention is further directed to an architecture comprising a switch or media server in communication with a plurality of subscriber communication devices in which the subscriber communication devices act as network nodes to collect available bandwidth-related information.
Description

Cross-reference is made to copending U.S. application Ser. No. 10/028,874, filed Oct. 22, 2001, to Rankine et al., entitled “Real Time Control Protocol Session Matching”; Ser. No. 10/109,784, filed Mar. 29, 2002, to Chavez et al., entitled “Emergency Bandwidth Allocation with an RSVP-Like Protocol”; Ser. No. 10/165,719, filed Jun. 7, 2002, to Krumm-Heller et al., entitled “Apparatus and Method for Automatically and Dynamically Reconfiguring Network Provisioning”, and Ser. No. 10/261,914, filed concurrently herewith, to Minhazuddin et al., entitled “Instantaneous User Initiation Voice Quality Feedback”, each of which contains related subject matter and is incorporated herein fully by reference.


FIELD OF THE INVENTION

The present invention relates generally to communications over networks and specifically to voice communications over data networks.


BACKGROUND OF THE INVENTION

Distributed processing networks are being increasingly used for live voice communications between network nodes using Voice over IP or VoIP technology. In VOIP technology, after the speech is digitized, the digitized speech is divided into packets. Each packet includes a header and a data payload of one to several frames of encoded speech. Distributed processing networks for delivering the packets to desired endpoints are typically designed to provide a Best Effort or BE single service model that does not discriminate in packet delivery between services and does not control service access or quality. Quality of Service or QoS architectures have been developed for BE environments to provide guaranteed transmission characteristics end-to-end such as available bandwidth, maximum end-to-end delay, maximum end-to-end delay variation (jitter), and packet/cell loss levels to provide continuous data streams suitable for real-time phone calls and video conferencing. Such QoS architectures include protocols such as the Resource ReSerVation Protocol or RSVP and the Real-Time Transfer Protocol or RTP.


RSVP is a signaling protocol that guarantees receivers a requested end-to-end QoS. RSVP serves as an Internet signaling protocol through the transmission of QoS parameters. Under RSVP, an end point negotiates with the network to allocate or reserve protected resources for traffic that the end point will generate or receive. The two messages that perform the reservation request and installation are the Path and Resv messages. Robustness is achieved through maintaining a soft state network by transmitting periodic refresh messages to maintain a reservation and path state along the reservation path. If the intermediate nodes do not receive the refresh message, the reservation will time out and be deleted.


RTP is a voice bearer channel transfer protocol. RTP neither guarantees a QoS nor provides for resource reservations. RTP runs on the transport layer of the Open Systems Interconnection or OSI model and defines a session by two components, namely its profile and payload format where the payload is the data being transmitted. The payload format specifies the format of the data within the RTP packet such as encoding and compression schemes. RTP functions include loss detection for quality estimation and rate adaptation, sequencing of data, intra- and intermedia synchronization, session identification using a session id, source identification using a synchronization source id or SSRC, and basic membership information.


The Real-Time Control Protocol or RTCP, a companion protocol to RTP, is used by applications to monitor the delivery of RTP streams. Media packets are transmitted between endpoints during a session according to RTP while additional performance information governing the communication link (e.g., key statistics about the media packets being sent and received by each end point such as jitter, packet loss, round-trip time, etc.) are collected by the end points and transmitted to a session monitor according to RTCP. The network monitor can be, for example, VoIP Monitoring Manager™ or VMon™ by Avaya, Inc.


Under either the RSVP or RTP protocols, VoIP introduces a whole new range of QoS problems which were not previously significant or, in some cases, even encountered in circuit-switched networks. Voice telephony depends upon reliable, low latency, real-time delivery of audio data. In VoIP, values for latency, packet loss, and jitter can increase substantially, particularly during periods of heavy network traffic, causing a user to experience a much poorer quality of communication (e.g., audio or video distortion, unacceptable levels of asynchronization between audio and video streams, etc.) than would be experienced if the call were made by a traditional circuit-switched telephony network. This is particularly true when the network allows any and all calls to occur, regardless of available bandwidth and the concomitant low quality of the call to be placed and the detrimental impact on the quality of other calls.


To provide a higher QoS, call admission control (CAC) functionality has been employed to control bandwidth usage. In one approach, CAC-type functionality is built into the communication protocol. For example, in RSVP calls are disallowed when a reservation fails. In another approach, CAC functionality is built into the switch or media server (e.g., the Private Branch Exchange or PBX). Under the H.323 standard for example, an endpoint in the H.323 zone of a call admission controller or gatekeeper must receive permission (using a bandwidth request message) from the call admission controller before making a call. Based on a restriction on the number of concurrent IP calls that can be placed generally and/or on a critical measure, such as not being able to reserve the bandwidth required, the call admission controller responds with a bandwidth confirm message permitting the call to be placed or a bandwidth reject message refusing to make the necessary connection for the call. The remaining bandwidth is reserved for electronic mail, file transfers, and other local-area network or LAN protocols.


Although a higher QoS can be realized using CAC functionality, there are drawbacks. First, there is no reason provided to the user regarding the failure to place the call. This can lead to user frustration and ultimately to a lack of utilization of IP telephony. Although some telephones, such as the Cisco IP Phone 7960™, do permit a user to press a button and view the current values for latency, packet loss, and jitter, this feature is only enabled after a call is placed. Second, it can be very difficult for a call admission controller to determine accurately whether or not to place a call. For example, if the controller is in a first subnet, a first endpoint is in a second subnet, and a second endpoint is in a third subnet, the controller is often unable to determine whether or not there is sufficient bandwidth available between the second and third subnets for the first and second endpoints to conduct a communication of acceptable quality. Although the controller can base the decision on pings to the second and third subnets, this is generally not an accurate indicator of available bandwidth. Third, CAC techniques provide the user with no option about placing the call if predefined criteria are not satisfied. There are situations when a user may want to place a call even though the call may be of poor quality. For example, a user may want to place a call in an emergency situation.


SUMMARY OF THE INVENTION

These and other needs are addressed by the various embodiments and configurations of the present invention. The present invention is directed generally to an intelligent endpoint or communication device that can collect bandwidth related metrics and/or perform call admission control functions.


In one embodiment, a method for controlling contact admission is provided. The method includes the steps of:


(a) receiving from a first user at a first endpoint a signal (e.g., a telephone number, an address on a data network, etc.) associated with initiation of a voice communication with a second endpoint;


(b) collecting bandwidth-related metrics or bandwidth information associated with an expected quality of the voice communication by performing one or more of the following:

    • (i) sending one or more test packets to the second endpoint to obtain a first subset of bandwidth information;
    • (ii) requesting, from one or more intermediate nodes or network entities in the communication path between the first and second endpoints, a second subset of bandwidth information; and
    • (iii) requesting, from a switch or media server in communication with the first and second endpoints, a third subset of bandwidth information (the third subset of bandwidth information is typically from communications between endpoints other than the first and second endpoints);


(c) comparing some or all of the collected bandwidth information with one or more configurable thresholds;


(d) when the collected bandwidth information fails to satisfy the thresholds, notifying the first user of a likelihood of a low quality of the communication and/or not permitting initiation of the communication between the first and at least a second endpoints; and


(e) when the collected bandwidth information satisfies the threshold(s), permitting initiation of the communication between the first and second endpoints.


The first and second endpoints can be any suitable communication device, such as an IP hard phone, an IP softphone, a telephone other than an IP hard phone and softphone, and a personal digital assistant.


The bandwidth information can include one or more of: received RTP packets, received RTP octets, round trip time, jitter buffer delay, jitter, packet loss burst size, a number of out-of-order packets, an out-of-order distance, Reservation Protocol status, call state, sender channel state, IP Differential Service Code Point, available bandwidth, router buffer size, a number of dropped packets by a router, router bandwidth utilization, and router processor utilization.


This embodiment decentralizes the call admission control functionality from the switch/media server to the endpoints serviced by the switch/media server. The endpoint and not the switch/media server is best able to evaluate available bandwidth for the requested communication. For example, this embodiment is particularly beneficial for endpoints in virtual private networks where there is a higher likelihood of call failure due to network constraints which are frequently unknown to the switch/server (e.g., the use of a low speed modem link). This embodiment is also particularly beneficial in evaluating available bandwidth between endpoints in different subnets from the switch/media server. The embodiment can reduce significantly network congestion relative to conventional systems by reducing the numbers of calls placed, particularly during periods of high usage.


Other forms of call admission control assume some kind of administrative load on the routers and the switch/server. This embodiment is extremely lightweight in terms of cost of implementation, e.g., it only affects the endpoints themselves rather than all network entities in a selected path. It also requires minimal administration other than the user enabling the functionality on the endpoint.


The embodiment provides more options to the user to help improve quality for VoIP calls. In a non-mission-critical application, a system that disallows and/or discourages low quality calls may be able to stop overload of a system when the user would exit the call of a certain quality anyway. The thresholds can be configured by network administration and/or by the user himself or herself. User configurable thresholds are particularly attractive as the personal preferences of each user, which vary widely from user to user, can be taken into account by each endpoint. The embodiment can be configured to permit the user to place a call even when the quality will be poor and/or provide detailed reasons for not placing the call, thereby reducing user frustration relative to conventional CAC systems.


In another embodiment, an endpoint or communication device collects bandwidth information during a voice communication and, when the collected bandwidth information fails to satisfy one or more voice quality threshold(s), informs a user that the voice quality is below a selected level.


In current phones, such as the Cisco I-Button™ the user is able to view performance metrics, such as latency and packet loss, by pressing a button on the phone. The user, however, must continually press the button to refresh the metrics and determine when call quality is deteriorating, which can be very detracting during the conversation. In contrast, the communication device of this embodiment itself determines automatically when call quality is deteriorating and warns the user accordingly. This permits the user to wrap up the conversation before voice quality deteriorates to a level that is unacceptable.


In yet another embodiment, method for collecting bandwidth information is provided. In the method, a switch or a media server in communication with a plurality of subscriber communication devices uses the subscriber communication devices as network nodes to collect bandwidth information. In one configuration, the switch or media server progressively collects bandwidth information from each subscriber communication device in the network, e.g., LAN or enterprise network, served by the switch or media server. Any subscriber communication device involved in a communication when requested for bandwidth information is typically skipped.


This embodiment effectively treats the subscriber communication devices as network probes to provide a real-time, complete, and detailed picture of the bandwidth utilization levels across selected parts of the network. The use of existing devices to perform bandwidth information collection is much less expensive and far simpler than installing a myriad of dedicated network probes at various points in the network.


These and other advantages will be apparent from the disclosure of the invention(s) contained herein.


The above-described embodiments and configurations are neither complete nor exhaustive. As will be appreciated, other embodiments of the invention are possible utilizing, alone or in combination, one or more of the features set forth above or described in detail below.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram showing an implementation of a first embodiment of the present invention;



FIG. 2 is a flowchart showing an embodiment of the operation of the communication admission control agent of FIG. 1;



FIG. 3 is a flowchart showing an embodiment of the operation of the communication controller of FIG. 1;



FIG. 4 is a flowchart showing yet another embodiment of the operation of the communication admission control agent; and



FIG. 5 is a flowchart showing yet another embodiment of the operation of the communication controller of FIG. 1.





DETAILED DESCRIPTION


FIG. 1 depicts a VoIP architecture 100 according to an embodiment of the present invention. The architecture includes a first, second, third, and fourth end points 104, 108, 112, and 116, a router 120 having associated interfaces 124a-c, and switch or server 128. The various components are interconnected by first, second, and third subnets 132, 136, and 140, respectively, which collectively form a local area network. For illustration purposes, the first and third endpoints 104 and 112 are configured as IP hard-phones, while the second and third endpoints 108 and 116 are configured as IP soft-phones. As will be appreciated, the various end points can be any communication device, such as a plain old telephone, a soft phone, an IP hard phone, a personal or laptop computer, a PDA, a pager, and a wireless phone. It is further to be understood that the architecture can include any number of subnetworks and routers, depending on the application, and that the subnets can form a network topology other than a LAN, such as a wide-area network, an enterprise network, and a metropolitan-area network.


As depicted, the second end point 108 is a personal computer including a computer display monitor 144 and a computer comprising memory 148 and a processor 152. The memory 148 includes a communication admission control agent 156 to collect session-related information, such as latency, packet loss, jitter, available bandwidth, and jitter buffer delay to be used in determining whether or not a communication or call should be placed. As will be appreciated, the other end points preferably include a communication admission control agent as well. Although the various endpoints are shown as subscribers to the switch or server, it is to be understood that one or more of the endpoints can be nonsubscribers.


The switch or media server preferably performs automatic communication routing functions to the various endpoints. The switch or media server 128 is connected to one or more communication lines 160 (e.g., telephone lines or trunks) over which it receives incoming contacts on the public switched telephone network or IP network. As will be appreciated, a “contact” can be any form, mode, or type of single media or multimedia communication, such as a wired or wireless live voice communication (whether circuit-switched or packet-switched), electronic mail, and video conferencing.


The switch or media server 128 can be any architecture for routing contacts to one or more endpoints. Illustratively, the switch or server of FIG. 1 can be the subscriber-premises equipment disclosed in U.S. Pat. Nos. 6,192,122; 6,173,053; 6,163,607; 5,982,873; 5,905,793; 5,828,747; and 5,206,903, all of which are incorporated herein by this reference; Avaya Inc.'s Definity™ private-branch exchange (PBX)-based ACD system; or Nortel Networks' IPConnect™. The switch or media server typically is a stored-program-controlled system that conventionally includes interfaces to external communication links, a communications switching fabric, service circuits (e.g., tone generators, announcement circuits, etc.), memory 164 for storing control programs and data, and a processor 168 (i.e., a computer) for executing the stored control programs to control the interfaces and the fabric and to provide automatic contact-distribution functionality. Included in the memory 164 is a communication or call controller 172 to supervise the placement of contacts among subscribers, such as the first, second, third, and fourth endpoints, and between a subscriber and a nonsubscriber and a database 176 of performance metrics or bandwidth information collected during communications by subscribers.


The bandwidth information in the memory 164 can vary depending on the application. For each current or historical communication, the database 164 can include one or more of the following: received RTP packets (an integer that is cumulative for the session and is reset to zero at the start of each new RTP session), received RTP octets (an integer that is cumulative for the session and is reset to zero at the start of each new RTP session), round trip time (an integer expressed in units of milliseconds that is reset to zero at the start of each new session), jitter buffer delay (an integer representing the delay imparted on the bearer channel by the jitter buffer at an endpoint and is expressed in milliseconds), jitter (an integer indicating a level of distortion of the interpacket arrival times compared to the interpacket times of the original transmission), packet loss burst size (an integer indicating the maximum number of consecutive packets lost in the last RTCP reporting interval), the number of out-of-order packets (an integer representing the number of packets received out-of-order in the last RTCP reporting interval), the out-of-order distance (an integer representing the number of packets after an out-of-order packet was received from when it was expected to be received), RSVP status (the RSVP status field reports the state of RSVP protection of the receiver end point's RTP session only (e.g., states can include receiver RSVP not in use, receiver RSVP disabled, receiver RSVP installation pending, receiver RSVP reservation failed, and receiver RSVP reservation installed), call state, sender channel state, DCSP (an integer that is the value of the IP Differentiated Service Code Point or DSCP field of the incoming RTP packets), available bandwidth, router buffer size (one or more integers equal to the number of packets enqueued or stacked for processing at the queried interface of the router or the stacking maximum capacity of the buffer at the queried router interface), dropped packets (the dropped packet field(s) comprise at least the following information, whether or not the queried interface of the router is dropping packets and, if so, how many and why (e.g., excessive delay, duplication and/or fragmentation)), router bandwidth utilization (an integer equal to the percent bandwidth utilization at a queried router interface at a selected point in time), and router processor utilization (an integer equal to the percent utilization of the router processor at a selected point in time).



FIGS. 2 and 3 depict an embodiment of the operations of the communication admission control agent 156 in the endpoint seeking to place a call and the communication controller 172, respectively. As can be seen from these figures, the call admission control functionality is decentralized to the endpoints compared to the conventional approach of centralizing call admission control functions in the call admission controller of the switch or media server.


Referring to FIG. 2, the agent 156 in step 200 detects that a user is attempting to initiate a contact. For example, this can be detected by detecting an off-hook state of the telephone, receiving an inputted series of signals such as would be associated with a telephone number or IP address.


The agent 156 in response to the detection can perform one or more of the statistic collection steps 204, 208, and 212, depending on the implementation.


In step 204, the agent 156 in the contact-initiating endpoint sends test packets to the switch or server and/or to one or more of the destination endpoints to assess available bandwidth. For example, the initiating endpoint could send a test Resv message to the destination endpoint to attempt to set up a dummy or test reservation. If the reservation cannot be set up, the agent 156 would conclude that insufficient bandwidth is available for the contact to be placed. The contents of the Resv message would be based on the parameters required by the anticipated contact. Alternatively, test RTP/RTCP packets can be sent between the two endpoints to measure one or more of the bandwidth information noted above, such as jitter, packet delay, and packet loss. The packets would have a dummy payload and the packet headers would include information such as time stamps. The format of the test packets is set forth in RFC 1889. In either of the two previous examples, a marker bit or flag would be included in the exchanged packets to notify the receiving endpoint that the packet is associated with an available bandwidth test. The details to implement either of these examples will be readily appreciated by one of ordinary skill in the art who is associated with the RSVP and/or RTP/RTCP protocols. The two examples can be performed simultaneously using the same set of test packets. Other protocols may also be used for statistic collection. As will be appreciated, a proprietary protocol can also be used to perform statistic collection by transmitting packets between two or more endpoints. These techniques can measure currently difficult-to-measure parameters such as echo.


In step 208, the agent 156 in the contact-initiating endpoint collects bandwidth information from intermediate functional elements, entities or components (e.g., routers and one or more of their associated interfaces) in the communication path. This statistic collection can be done using any suitable protocol. For example, the collection can be done using pinging as defined in the Internet Control Message Protocol or ICMP. In another approach, the bandwidth information can be collected using the Simple Network Management Protocol or SNMP. To substantially minimize bandwidth utilization, the statistic collection is generally stopped when enough information is collected to assess available bandwidth for the anticipated contact. While some bandwidth will be utilized by numerous endpoints simultaneously or near simultaneously collecting bandwidth information, the utilized bandwidth is considered to be insignificant when compared to the amount of bandwidth consumed by unrestricted or uncontrolled call placement.


In step 212, the agent 156 in the contact-initiating endpoint queries polls the switch or server 128 (which is the nearest gateway for the agent 156) or one or more other switches or servers acting as a monitor or otherwise located in a different network for relevant bandwidth information stored in their respective database 176. As will be appreciated, some or all of the bandwidth information gathered in steps 204 and 208 by the agents 156 in the various endpoints are forwarded to the switch or server for updating the database 176. Depending on the database rules or policies, this bandwidth information is retained in the database for a selected period of time. In one configuration, agents continue to collect bandwidth information after a contact is effected by the corresponding endpoint(s) until the contact is terminated and forwards the collected bandwidth information to the switch or server for database updating. In this manner, the endpoints act as network nodes, and any contact initiating endpoint may be able to obtain, nonintrusively, current information about bandwidth utilization on all or part of the communication path to the destination endpoint. In one configuration, steps 204 and 208 are not performed to avoid unnecessary use of bandwidth if relevant bandwidth information, as defined by the user or network administrators, is already contained in the database 176.


After the bandwidth information is collected by performing one or more of steps 204, 208, and 212, the agent 156 in the contact-initiating endpoint determines in step 216 whether the collected bandwidth information is within user-defined thresholds used to define a contact of acceptable quality. For example, the user can configure a packet loss to 5%, the packet round trip time to 150 milliseconds, and the jitter to 80 milliseconds. When the packet loss, round trip time, and/or jitter buffer delay exceeds the corresponding threshold, the bandwidth information is not within the user defined thresholds. The user can modify these and other thresholds to suit his or her personal taste. As will be appreciated, some users are more tolerable of lower call quality than others.


When the collected bandwidth information is within user-defined thresholds, the agent 156 in step 220 forwards a message to the controller 172 indicating that the contact can be connected. When the collected bandwidth information is not within user-defined thresholds, the agent 156 in step 224 notifies the user that the contact will not be connected and the reason(s) for the nonconnection. The user can then reconfigure the thresholds and attempt to make the contact or wait until a later time to again attempt the contact. In one configuration, the user can override the agent and proceed with the contact such as by inputting an authorization code. This is particularly important in an emergency situation.


Alternatively, the agent 156 can warn the user of the probable low quality for the contact if connected and permit the user to decide whether or not he or she wishes to continue with making the contact.


Referring now to FIG. 3, the controller 172 in step 300 receives an inputted series of signals such as would be associated with a telephone number or IP address. In step 304, the controller sends a request to the agent 156 of the contact-initiating endpoint for permission to initiate the communication. In steps 308 and 312, the controller 172 waits for a response. If no response is received within a selected time, the controller 172 proceeds to step 320 discussed below. If a response is received timely, the controller 172 in step 316 determines whether or not the endpoint granted permission for the contact to be effected. If not, the controller 172 proceeds to step 324 and terminates operation with respect to the current transaction. If so, the controller 172 in step 320 initiates the contact and then proceeds to step 324. In one configuration when the agent 156 grants permission for the contact, the controller 172 effects the contact only when a second tier of criterion selected by network administration are satisfied. Such criterion can be one or more of the bandwidth information noted above and/or one of the prior art criterion set forth previously.


A number of variations and modifications of the invention can be used. It would be possible to provide for some features of the invention without providing others.


For example in one alternative embodiment shown in FIG. 4, the agent 156 in an endpoint continues to collect bandwidth information during a contact or session and provides a warning to the user when the quality of the communication deteriorates below user-defined thresholds. This embodiment can be used with the network architecture of the present invention or a conventional network architecture, such as any of the architectures described previously. Referring to FIG. 4, after a contact is initiated the agent 156 in step 400 collects bandwidth information using any of the techniques noted previously. The agent 156 may forward these bandwidth information periodically to the switch or server for database updating. In step 404, the agent 156 determines if the elapsed time since clock reset has greater than or equal to a selected threshold. If not, the agent 156 repeats steps 400 and 404. If so, the agent 156, in step 408, compares at least some of the collected bandwidth information with the user configured thresholds. If the collected bandwidth information is within the thresholds, the clock is reset to zero in step 412 and the agent repeats steps 400 and 404. If the collected bandwidth information is not within user thresholds, the agent 156 informs the user in step 414 that the quality of the communication is deteriorating. In step 416, the agent 156 determines if the user has terminated the communication. If the communication was not terminated by the user in response to the warning, the agent 156 in step 420 determines if the elapsed time since the performance of step 412 equals or exceeds a selected threshold. If so, the agent 156 returns to and repeats steps 400 and 404. If not, the agent 156 repeats step 416. If the communication was terminated by the user in response to the warning, the agent 156 terminates operation in step 424.


In another alternative embodiment, the switch or server 128 uses one or more of the endpoints (whether or not involved in a session) as network nodes to collect periodically any of the bandwidth information noted above. This embodiment can be used with the network architecture of the present invention or a conventional network architecture, such as any of the architectures described previously. Referring to FIG. 5, a counter i is set to 1 in step 500. In step 504, bandwidth information is requested from communication device or endpoints. A plurality of the subscriber communication devices or endpoints in architecture 100 are assigned identifiers to permit the controller 172 to sequentially collect bandwidth information from each of the identified endpoints. In response to the request, the endpoint collects the bandwidth information using any of the techniques noted above. If the endpoint is involved in a communication, the controller 172 typically skips that endpoint and proceeds to the next endpoint as the bandwidth information from that communication is already being directed to the controller 172. In steps 508 and 512, the controller 172 determines if the requested bandwidth information has been received within a selected time threshold. If not, the controller 172 repeats steps 500 and 504. If so, the controller updates the database 176 and in step 516 increments the counter i by one. In step 520, the controller determines if i is equal to X, the highest identifier in the LAN. If so, the controller returns to step 500 and starts the above process over. If not, the controller returns to step 504.


In a further embodiment, agent 156 and/or controller 172 is/are configured as logic circuit(s) such as an Application Specific Integrated Circuit.


In yet another alternative embodiment, the division of responsibilities between the agent 156 and controller 172 is different from that discussed above.


The present invention, in various embodiments, includes components, methods, processes, systems and/or apparatus substantially as depicted and described herein, including various embodiments, subcombinations, and subsets thereof. Those of skill in the art will understand how to make and use the present invention after understanding the present disclosure. The present invention, in various embodiments, includes providing devices and processes in the absence of items not depicted and/or described herein or in various embodiments hereof, including in the absence of such items as may have been used in previous devices or processes, e.g., for improving performance, achieving ease and\or reducing cost of implementation.


The foregoing discussion of the invention has been presented for purposes of illustration and description. The foregoing is not intended to limit the invention to the form or forms disclosed herein. Although the description of the invention has included description of one or more embodiments and certain variations and modifications, other variations and modifications are within the scope of the invention, e.g., as may be within the skill and knowledge of those in the art, after understanding the present disclosure. It is intended to obtain rights which include alternative embodiments to the extent permitted, including alternate, interchangeable and/or equivalent structures, functions, ranges or steps to those claimed, whether or not such alternate, interchangeable and/or equivalent structures, functions, ranges or steps are disclosed herein, and without intending to publicly dedicate any patentable subject matter.

Claims
  • 1. A method for collecting bandwidth information, comprising: providing a first switch and/or a first server in communication with a plurality of subscriber voice communication endpoints;selecting, from the plurality of subscriber voice communication endpoints, a first subscriber voice communication endpoint;requesting, by the first switch and/or first server, bandwidth information from the first subscriber voice communication endpoint;the first subscriber voice communication endpoint requesting, from at least one first intermediate node, other than the first switch and/or first server, in at least one communication path between the first subscriber voice communication endpoint and another subscriber voice communication endpoint, a first subset of bandwidth information;selecting, from the plurality of subscriber voice communication endpoints, a second subscriber voice communication endpoint;requesting, by the first switch and/or first server, bandwidth information from the second subscriber voice communication endpoint;the second subscriber voice communication endpoint requesting, from at least one second intermediate node, other than the first switch and/or first server, in at least one communication path between the second subscriber voice communication endpoint and another subscriber voice communication endpoint, a second subset of bandwidth information; andproviding, by one or more of the first and second subscriber voice communication endpoints, at least one of the first subset of bandwidth information and the second subset of bandwidth information to the first switch and/or first server;the first subscriber voice communication endpoint receiving from a first user associated with the first subscriber voice communication endpoint at least one signal associated with initiation of a requested voice communication from the first subscriber voice communication endpoint to at least one destination endpoint;the first subscriber voice communication endpoint collecting bandwidth information used to determine an expected quality of the requested voice communication by obtaining bandwidth information from one or more entities in a communication path to the at least one destination endpoint;the first subscriber voice communication endpoint comparing a portion of the collected bandwidth information with at least one threshold and dynamically determining, when the portion of the collected bandwidth information fails to satisfy the at least one threshold, whether to perform by the first subscriber communication endpoint one or more of:(i) notifying the first user at the first subscriber voice communication endpoint of a likelihood of a low quality of the requested voice communication, and(ii) prohibiting initiation of the requested voice communication;wherein the at least one signal comprises a telephone number or an address on a data network and wherein the first switch and/or first server requests permission to initiate the voice communication and further comprising:when the at least some of the collected bandwidth information satisfies the at least one threshold, the first subscriber voice communication endpoint permitting initiation of the requested voice communication with the at least one destination endpoint;wherein the first switch and/or first server performs the following steps:receiving the at least one of a telephone number and address on a data network;requesting permission from the first subscriber voice communication endpoint to initiate the requested voice communication; andreceiving from the first subscriber voice communication endpoint a communication initiation message, wherein:(i) when the communication initiation message indicates insufficient bandwidth is available for the requested voice communication, not connecting the first subscriber voice communication endpoint and the at least one destination endpoint, wherein the user is notified why the first subscriber voice communication endpoint is not to be connected with the at least one destination endpoint and wherein the user has the ability to override the first subscriber voice communication endpoint and proceed with the connection of the first subscriber voice communication endpoint and the at least one destination endpoint; and(ii) when the communication initiation message indicates sufficient bandwidth is available for the requested voice communication, connecting the first subscriber voice communication endpoint and the at least one destination endpoint.
  • 2. The method of claim 1, further comprising: selecting a third subscriber voice communication endpoint; andrequesting bandwidth information from the third subscriber voice communication endpoint, wherein the third subscriber voice communication endpoint does not request, from at least one intermediate node in at least one communication path between the third subscriber voice communication endpoint and another subscriber voice communication endpoint, a third subset of bandwidth information, when the third subscriber voice communication endpoint is in use by a user.
  • 3. The method of claim 1, wherein the bandwidth information comprises a plurality of the following: received real-time transport protocol packets, received real-time transport protocol octets, round trip time, jitter buffer delay, jitter, packet loss burst size, a number of out-of-order packets, an out-of-order distance, Reservation Protocol status, Internet Protocol Differentiated Service Code Point, available bandwidth, router buffer size, a number of dropped packets by a router, router bandwidth utilization, and router processor utilization, wherein the first subscriber voice communication endpoint performs call admission control for outgoing voice communications from the first subscriber voice communication endpoint, and wherein at least one bandwidth requirement for permitting the outgoing voice communication is user configurable.
  • 4. The method of claim 1, wherein the at least one threshold is user configurable, wherein the first subscriber voice communication endpoint and at least one destination endpoint are one of an Internet Protocol hard phone, an Internet Protocol softphone, a telephone other than an Internet Protocol hard phone and softphone, and a personal digital assistant, and wherein the first subscriber voice communication endpoint is further operable to collect a third subset of bandwidth information while the first subscriber voice communication is connected, in a voice communication, with the at least one destination endpoint and inform the user when the third subset of bandwidth information is not within at least one threshold.
  • 5. A non-transient computer readable medium comprising processor executable instructions operable to, when executed by a processor, perform the steps of claim 1.
  • 6. A network, comprising: a plurality of subscriber voice communication endpoints; anda first switch and/or a first server in communication with the plurality of subscriber voice communication endpoints, wherein the first switch and/or first server is operable to:(a) select, from the plurality of subscriber voice communication endpoints, a first subscriber voice communication endpoint;(b) request bandwidth information from the first subscriber voice communication endpoint;(c) perform with the first subscriber voice communication endpoint at least one of the following sub-operations:(i) sending at least one test packet to another subscriber voice communication endpoint to obtain a first subset of bandwidth information; and(ii) requesting, from at least one intermediate node, other than the first switch and/or first server, in at least one communication path between the first subscriber voice communication endpoint and another subscriber voice communication endpoint, a second subset of bandwidth information; and(d) selecting, from the plurality of subscriber voice communication endpoints, a second subscriber voice communication endpoint; and (e) repeating steps (b) and (c) with respect to the second subscriber voice communication endpoint, wherein the first subscriber voice communication endpoint is operable to perform the following sub-operations:(a1) receive from a first user associated with the first subscriber voice communication endpoint at least one signal associated with initiation of a requested voice communication from the first subscriber voice communication endpoint to at least one destination voice communication endpoint;(b1) collect bandwidth information used to determine an expected quality of the requested voice communication by obtaining bandwidth information from one or more entities, other than the first switch and/or first server, in a communication path to the at least one destination voice communication endpoint; and(c1) compare a portion of the collected bandwidth information with at least one threshold and dynamically determine, when the portion of the collected bandwidth information fails to satisfy the at least one threshold, whether to perform one or more of:(i) notifying the first user at the first subscriber voice communication endpoint of a likelihood of a low quality of the requested voice communication, and(ii) prohibiting initiation of the requested voice communication;wherein the at least one signal comprises a telephone number or an address on a data network and wherein the first switch and/or first server requests permission to initiate the requested voice communication and further comprising:when the at least some of the collected bandwidth information satisfies the at least one threshold, the first subscriber voice communication endpoint permitting initiation of the requested voice communication between the first subscriber voice communication endpoint and the at least one destination voice communication endpoint;wherein the first switch and/or first server performs the following sub-operations:receive the at least one of a telephone number and address on a data network;requesting permission from the first subscriber voice communication endpoint to initiate the requested voice communication; andreceiving from the first subscriber voice communication endpoint a communication initiation message, wherein:(i) when the communication initiation message indicates insufficient bandwidth is available for the requested voice communication, not connecting the first subscriber voice communication endpoint and the at least one destination voice communication endpoint, wherein the user is notified why the first subscriber voice communication endpoint is not to be connected with the at least one destination endpoint and wherein the user has the ability to override the first subscriber voice communication endpoint and proceed with the connection of the first subscriber voice communication endpoint and the at least one destination endpoint; and(ii) when the communication initiation message indicates sufficient bandwidth is available for the requested voice communication, connecting the first subscriber voice communication endpoint and the at least one destination voice communication endpoint.
  • 7. The network of claim 6, wherein the first switch and/or first server are further operable to: (f) select a third subscriber voice communication endpoint; and(g) request bandwidth information from the third subscriber voice communication endpoint, wherein the third subscriber voice communication endpoint does not perform step (c) with respect to the third subscriber voice communication endpoint, when the third subscriber voice communication endpoint is in use by a user.
  • 8. The network of claim 6, wherein the bandwidth information comprises a plurality of the following: received real-time transport protocol packets, received real-time transport protocol octets, round trip time, jitter buffer delay, jitter, packet loss burst size, a number of out-of-order packets, an out-of-order distance, Reservation Protocol status, Internet Protocol Differentiated Service Code Point, available bandwidth, router buffer size, a number of dropped packets by a router, router bandwidth utilization, and router processor utilization, wherein the first subscriber voice communication endpoint performs call admission control for outgoing voice communications from the first subscriber voice communication endpoint, and wherein at least one bandwidth requirement for permitting the outgoing voice communication is user configurable.
  • 9. The network of claim 6, wherein sub-operation (ii) is performed.
  • 10. The network of claim 6, wherein the at least one threshold is user configurable, wherein the first subscriber voice communication endpoint and the at least one destination voice communication endpoint are one of an Internet Protocol hard phone, an Internet Protocol softphone, a telephone other than an Internet Protocol hard phone and softphone, and a personal digital assistant, and wherein the first subscriber voice communication endpoint is further operable to collect a third subset of bandwidth information while the first subscriber voice communication is connected, in a voice communication, with the at least one destination voice communication endpoint and inform the user when the third subset of bandwidth information is not within at least one threshold.
  • 11. The network of claim 6, wherein sub-operation (c1)(i) is performed, further comprising the further sub-operations: receiving, at the first subscriber voice communication endpoint, an input from the first user that the voice communication should continue with the low quality of the voice communication; andthereafter, repeating, by the first subscriber voice communication endpoint, sub-operations (b) and (c).
  • 12. The network of claim 11, further comprising the sub-operations: determining that newly collected bandwidth information fails to satisfy a second threshold defined by the first user, wherein the second threshold is different from the at least one threshold; andrepeating, by the first subscriber voice communication endpoint, sub-operations (a1), (b1), and (c1).
  • 13. A method for collecting bandwidth information, comprising:providing a first switch and/or a first server in communication with a plurality of subscriber voice communication endpoints;selecting, from the plurality of subscriber voice communication endpoints, a first subscriber voice communication endpoint;requesting, by the first switch and/or first server, bandwidth information from the first subscriber voice communication endpoint;the first subscriber voice communication endpoint requesting, from at least one first intermediate node, other than the first switch and/or first server, in at least one communication path between the first subscriber voice communication endpoint and another subscriber voice communication endpoint, a first subset of bandwidth information;selecting, from the plurality of subscriber voice communication endpoints, a second subscriber voice communication endpoint;requesting, by the first switch and/or first server, bandwidth information from the second subscriber voice communication endpoint;the second subscriber voice communication endpoint requesting, from at least one second intermediate node, other than the first switch and/or first server, in at least one communication path between the second subscriber voice communication endpoint and another subscriber voice communication endpoint, a second subset of bandwidth information; andproviding, by one or more of the first and second subscriber voice communication endpoints, at least one of the first subset of bandwidth information and the second subset of bandwidth information to the first switch and/or first server;wherein the bandwidth information comprises: received real-time transport protocol packets, received real-time transport protocol octets, round trip time, jitter buffer delay, jitter, packet loss burst size, a number of out-of-order packets, an out-of-order distance, Reservation Protocol status, Internet Protocol Differentiated Service Code Point, available bandwidth, router buffer size, a number of dropped packets by a router, router bandwidth utilization, and router processor utilization, wherein the first subscriber voice communication endpoint performs call admission control for outgoing voice communications from the first subscriber voice communication endpoint, and wherein at least one bandwidth requirement for permitting the outgoing voice communication is user configurable.
CROSS REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No. 10/262,005, filed Sep. 30, 2002, to Hepworth, et al., of the same title, which is incorporated herein by this reference.

US Referenced Citations (234)
Number Name Date Kind
4791660 Oye et al. Dec 1988 A
5067127 Ochiai Nov 1991 A
5206903 Kohler et al. Apr 1993 A
5506872 Mohler Apr 1996 A
5594740 LaDue Jan 1997 A
5604786 Engelke et al. Feb 1997 A
5724405 Engelke et al. Mar 1998 A
5724416 Foladare et al. Mar 1998 A
5802058 Harris et al. Sep 1998 A
5828747 Fisher et al. Oct 1998 A
5878029 Hasegawa et al. Mar 1999 A
5905793 Flockhart et al. May 1999 A
5933425 Iwata Aug 1999 A
5946618 Agre et al. Aug 1999 A
5953312 Crawley et al. Sep 1999 A
5961572 Craport et al. Oct 1999 A
5982873 Flockhart et al. Nov 1999 A
6002933 Bender et al. Dec 1999 A
6021178 Locke et al. Feb 2000 A
6038214 Shionozaki Mar 2000 A
6058163 Pattison et al. May 2000 A
6061431 Knappe et al. May 2000 A
6067300 Baumert et al. May 2000 A
6073013 Agre et al. Jun 2000 A
6088732 Smith et al. Jul 2000 A
6122665 Bar et al. Sep 2000 A
6163607 Bogart et al. Dec 2000 A
6173053 Bogart et al. Jan 2001 B1
6185527 Petkovic et al. Feb 2001 B1
6192122 Flockhart et al. Feb 2001 B1
6212275 Akhteruzzaman Apr 2001 B1
6249757 Cason Jun 2001 B1
6256300 Ahmed et al. Jul 2001 B1
6349136 Light et al. Feb 2002 B1
6374302 Galasso et al. Apr 2002 B1
6381472 LaMedica, Jr. et al. Apr 2002 B1
6381639 Thebaut et al. Apr 2002 B1
6421425 Bossi et al. Jul 2002 B1
6434628 Bowman-Amuah Aug 2002 B1
6453022 Weinman, Jr. Sep 2002 B1
6463470 Mohaban et al. Oct 2002 B1
6463474 Fuh et al. Oct 2002 B1
6469991 Chuah Oct 2002 B1
6490343 Smith, Jr. et al. Dec 2002 B2
6490556 Graumann et al. Dec 2002 B1
6498791 Pickett et al. Dec 2002 B2
6502131 Vaid et al. Dec 2002 B1
6526140 Marchok et al. Feb 2003 B1
6529475 Wan et al. Mar 2003 B1
6529499 Doshi et al. Mar 2003 B1
6532241 Ferguson et al. Mar 2003 B1
6546082 Alcendor et al. Apr 2003 B1
6563794 Takashima et al. May 2003 B1
6578077 Rakoshitz et al. Jun 2003 B1
6601101 Lee et al. Jul 2003 B1
6618368 Tanigawa et al. Sep 2003 B1
6628611 Mochizuki Sep 2003 B1
6647270 Himmelstein Nov 2003 B1
6665637 Bruhn Dec 2003 B2
6668042 Michaelis Dec 2003 B2
6678250 Grabelsky et al. Jan 2004 B1
6724862 Shaffer et al. Apr 2004 B1
6725128 Hogg et al. Apr 2004 B2
6727767 Takada Apr 2004 B2
6754710 McAlear Jun 2004 B1
6760312 Hitzeman Jul 2004 B1
6760774 Soumiya et al. Jul 2004 B1
6765905 Gross et al. Jul 2004 B2
6778534 Tal et al. Aug 2004 B1
6792092 Michalewicz Sep 2004 B1
6798751 Voit et al. Sep 2004 B1
6798786 Lo et al. Sep 2004 B1
6807564 Zellner et al. Oct 2004 B1
6857020 Chaar et al. Feb 2005 B1
6914964 Levine Jul 2005 B1
6954435 Billhartz et al. Oct 2005 B2
6964023 Maes et al. Nov 2005 B2
6973033 Chiu et al. Dec 2005 B1
6980516 Wibowo et al. Dec 2005 B1
6988133 Zavalkovsky et al. Jan 2006 B1
7003462 Shambaugh et al. Feb 2006 B2
7003574 Bahl Feb 2006 B1
7010097 Zellner et al. Mar 2006 B2
7010581 Brown et al. Mar 2006 B2
7031311 MeLampy et al. Apr 2006 B2
7031327 Lu Apr 2006 B2
7043435 Knott et al. May 2006 B2
7046646 Kilgore May 2006 B2
7075922 Mussman et al. Jul 2006 B2
7076540 Kurose et al. Jul 2006 B2
7076568 Philbrick et al. Jul 2006 B2
7089189 Lipe et al. Aug 2006 B2
7099440 Michaelis Aug 2006 B2
7103542 Doyle Sep 2006 B2
7124205 Craft et al. Oct 2006 B2
7165035 Zinser et al. Jan 2007 B2
7170855 Mo et al. Jan 2007 B1
7170977 Doherty et al. Jan 2007 B2
7212969 Bennett May 2007 B1
7221660 Simonson et al. May 2007 B1
7249024 Engstrom Jul 2007 B2
7251640 Baumard Jul 2007 B2
7257120 Saunders et al. Aug 2007 B2
7260439 Foote et al. Aug 2007 B2
7266499 Surace et al. Sep 2007 B2
7269252 Eran Sep 2007 B2
7272563 Nelson Sep 2007 B2
7290059 Yadav Oct 2007 B2
7295555 Elzur Nov 2007 B2
7299185 Falcon et al. Nov 2007 B2
7319961 Al-Dhubaib et al. Jan 2008 B2
7321591 Daniel et al. Jan 2008 B2
7349851 Zuberec et al. Mar 2008 B2
7359979 Gentle et al. Apr 2008 B2
7362745 Cope et al. Apr 2008 B1
7363371 Kirkby et al. Apr 2008 B2
7376564 Selg et al. May 2008 B2
7398212 Yacoub Jul 2008 B2
7437297 Chaar et al. Oct 2008 B2
7454351 Jeschke et al. Nov 2008 B2
7474627 Chheda et al. Jan 2009 B2
7496661 Morford et al. Feb 2009 B1
7502741 Finke et al. Mar 2009 B2
7509260 Cross, Jr. et al. Mar 2009 B2
7519536 Maes et al. Apr 2009 B2
7565415 Markowitz et al. Jul 2009 B1
20010012993 Attimont et al. Aug 2001 A1
20010036157 Blanc et al. Nov 2001 A1
20010039210 St-Denis Nov 2001 A1
20020073232 Hong et al. Jun 2002 A1
20020080808 Leung Jun 2002 A1
20020085703 Proctor Jul 2002 A1
20020091843 Vaid Jul 2002 A1
20020105911 Pruthi et al. Aug 2002 A1
20020116522 Zelig Aug 2002 A1
20020143971 Govindarajan et al. Oct 2002 A1
20020152319 Amin et al. Oct 2002 A1
20020176404 Girard Nov 2002 A1
20030002650 Gruchala Jan 2003 A1
20030016653 Davis Jan 2003 A1
20030016876 Chai et al. Jan 2003 A1
20030086515 Trans et al. May 2003 A1
20030120789 Hepworth et al. Jun 2003 A1
20030185217 Ganti et al. Oct 2003 A1
20030223431 Chavez et al. Dec 2003 A1
20030227878 Krumm-Heller et al. Dec 2003 A1
20040073641 Minhazuddin et al. Apr 2004 A1
20040073690 Hepworth et al. Apr 2004 A1
20050064899 Angelopoulos et al. Mar 2005 A1
20050119892 Agapi et al. Jun 2005 A1
20050119894 Cutler et al. Jun 2005 A1
20050125229 Kurzweil Jun 2005 A1
20050125230 Haas Jun 2005 A1
20050131697 Brown et al. Jun 2005 A1
20050131698 Tischer Jun 2005 A1
20050131699 Fukada Jun 2005 A1
20050131700 Washburn et al. Jun 2005 A1
20050154590 Coffey et al. Jul 2005 A1
20050177370 Hwang et al. Aug 2005 A1
20050180323 Beightol et al. Aug 2005 A1
20050186933 Trans Aug 2005 A1
20050192808 Sugiyama Sep 2005 A1
20050203746 Obata Sep 2005 A1
20050216268 Kannappan Sep 2005 A1
20050228673 Nefian et al. Oct 2005 A1
20050228674 Gunn et al. Oct 2005 A1
20050228675 Trinkel et al. Oct 2005 A1
20050240409 Gallistel Oct 2005 A1
20050240410 Charles et al. Oct 2005 A1
20050240412 Fujita Oct 2005 A1
20050240413 Asano et al. Oct 2005 A1
20050246173 Creamer et al. Nov 2005 A1
20050246174 DeGolia Nov 2005 A1
20050256717 Miyata et al. Nov 2005 A1
20050261035 Groskreutz et al. Nov 2005 A1
20050261907 Smolenski et al. Nov 2005 A1
20050273339 Chaudhari et al. Dec 2005 A1
20050278148 Bader et al. Dec 2005 A1
20050278177 Gottesman Dec 2005 A1
20050278178 Girouard et al. Dec 2005 A1
20050283366 Lee Dec 2005 A1
20050283367 Ativanichayaphong et al. Dec 2005 A1
20050283368 Leung Dec 2005 A1
20050288933 Nakamura et al. Dec 2005 A1
20050288934 Omi Dec 2005 A1
20050288935 Lee et al. Dec 2005 A1
20060004579 Claudatos et al. Jan 2006 A1
20060009979 McHale et al. Jan 2006 A1
20060009980 Burke et al. Jan 2006 A1
20060020468 Hilliard Jan 2006 A1
20060020469 Rast Jan 2006 A1
20060031073 Anglin et al. Feb 2006 A1
20060036440 Kunkel Feb 2006 A1
20060047515 Connors Mar 2006 A1
20060067486 Zellner et al. Mar 2006 A1
20060069568 Passaretti et al. Mar 2006 A1
20060069570 Allison et al. Mar 2006 A1
20060069779 Sundqvist et al. Mar 2006 A1
20060074679 Pifer et al. Apr 2006 A1
20060074681 Janiszewski et al. Apr 2006 A1
20060074682 Chou et al. Apr 2006 A1
20060080103 Van Breemen Apr 2006 A1
20060080104 Dang Apr 2006 A1
20060100879 Jakobsen et al. May 2006 A1
20060100880 Yamamoto et al. May 2006 A1
20060100881 He May 2006 A1
20060100882 Eves et al. May 2006 A1
20060100883 Miyamoto et al. May 2006 A1
20060106610 Napper May 2006 A1
20060106611 Krasikov et al. May 2006 A1
20060106613 Mills May 2006 A1
20060116880 Gober Jun 2006 A1
20060116881 Umezawa et al. Jun 2006 A1
20060129405 Elfanbaum Jun 2006 A1
20060136217 Mullin Jun 2006 A1
20060143014 Cheng et al. Jun 2006 A1
20060143015 Knott et al. Jun 2006 A1
20060161440 Nakayama et al. Jul 2006 A1
20060167694 Mitsuyoshi Jul 2006 A1
20060167695 Spille et al. Jul 2006 A1
20060173688 Whitham Aug 2006 A1
20060190262 Roskind Aug 2006 A1
20060195322 Broussard et al. Aug 2006 A1
20060217985 Noguchi et al. Sep 2006 A1
20060235693 Ruderman et al. Oct 2006 A1
20060247931 Caskey et al. Nov 2006 A1
20060247932 Yamamoto Nov 2006 A1
20070103317 Zellner et al. May 2007 A1
20070168195 Wilkin et al. Jul 2007 A1
20070172083 Tseng et al. Jul 2007 A1
20080117869 Freen et al. May 2008 A1
20080151886 Gentle et al. Jun 2008 A1
20080151898 Gentle et al. Jun 2008 A1
20080151921 Gentle et al. Jun 2008 A1
Foreign Referenced Citations (11)
Number Date Country
2319655 Jun 2001 CA
0982920 Mar 2000 EP
1549035 Jun 2005 EP
WO 9114278 Sep 1991 WO
WO 9846035 Oct 1998 WO
WO 9951038 Oct 1999 WO
WO 0041090 Jul 2000 WO
WO 0072563 Nov 2000 WO
WO 0126393 Apr 2001 WO
WO 0175705 Oct 2001 WO
WO 0200316 Jan 2002 WO
Non-Patent Literature Citations (75)
Entry
Application Note, Emergency 911 in Packet Networks, http:www.fastcomm.com/NewWeb/solutions/e911.html, Sep. 5, 2001, FastComm Communications Corporation,3 pgs.
Baker (Editor), “Requirements for IP Version 4 Routers”, RFC 1812, Jun. 1995, 175 pages.
Benjamin W. Wah, et al., “A Survey of Error-Concealment Schemes for Real-Time Audio and Video Transmissions over the Internet,” Department of Electrical and Computer Engineering and the Coordinate Science Laboratory, University of Illinois at Urbana-Champaign, Proc. IEEE Int'l. Symposium on Multimedia Software Engineering, Dec. 2000.
Bernet et al., “Specification of the Null Service Type”, RFC997, Nov. 2000, 12 pages.
Bernet, “Format of the RSVP DCLASS Object”, RFC 2996, Nov. 2000, 9 pgs.
Berney et al., “A Framework for Integrated Services Operation over Diffserv Networks”, RFC 2998, Nov. 2000, 29 pages.
Braden et al. “Resource ReSerVation Protocol (RSVP)”, RFC 2205, Sep. 1997, 6 pages.
Brown, I. Internet Engineering Task Force, Securing Prioritised Emergency Traffic, http://www.iepscheme.net/docs/draft-brown-ieps-sec-00.txt, Jul. 5, 2001, pp. 1-12.
Carlberg, Ken. Internet Engineering Task Force, Framework for Supporting IEPS in IP Telephony, http://www.iepscheme.net/docs/draft-carlberg-ieps-framework-01.tex, Jul. 4, 2001, pp. 1-24.
Chan et al., “COPS Usage for Policy Provisioning (COPS-PR)”, RFC 3084, Mar. 2001, 32 pages.
Cisco IP Phone 7960, eLearning Tutorial, at www.cisco.com/warp/public/779/largeent/avvid/products/7960/7960—show—using—help.htm.
Cisco Systems, “Cisco Emergency Responder Version 1.1 Data Sheet” (Oct. 2001), 5 pages, copyright 1992-2001.
Ejaz Mahfuz; “Packet Loss Concealment for Voice Transmission Over IP Networks” (2001) (Master thesis, Department of Electrical Engineering, McGill University) (on file with author).
Floyd et al., “Random Early Detection Gateways for Congestion Avoidance”, IEEE/ACM Transaction on Networking, Aug. 1993, 22 pages.
Geeta Desai Chennubhotla, “Embedded Systems: Rough start, but voice market growing,” EE Times, at http://www.eetimes.com/in—focus/embedded—systems/E0G2002050330067 (May 6, 2002).
Getting Started with the Cisco IP Phone 7960/7940, pp. 3-1 to 3-2.
Government Emergency Telecommunications Service (GETS), “White Paper on IP Telephony a Roadmap to Supporting GETS in IP Networks,” Apr. 27, 2000, Science Applications International Corporation, pp. 1-32.
Grigonis, Computer Telephony Encyclopedia, pp. 268-277, 2000.
Handley et al., “SIP: Session Initiation Protocol”, RFC 2543, Mar. 1999, 81 pages.
Herzog et al., “COPS Usage for RSVP”, RFC 2749, Jan. 2000, 16 pages.
Huai-Rong Shao et al., “A New Framwork for Adaptive Multimedia over the Next Generation Internet,” Microsoft Research China.
IEEE Standards for Information Technology—Telecommunications and information exchange between systems—Local and metropolitan area networks—Common specifications—Part 3: Media Access Control (MAC) Bridges, LCN/MAN Standards Committee of the IEEE Computer Society, ANSI/IEEE Std 802.1D (1998).
IEEE Standards for Local and Metropolitan Area Networks: Virtual Bridged Local Area Networks, The Institute of Electrical and Electronics engineers, IEEE Std 802.1Q-1998 (Mar. 8, 1999).
International Engineering Consortium, “Silence Suppression and Comfort Noise Generation” at http:/www.iec.org/online/tutorials/voice—qual/topic07.html (Jul. 1, 2002).
International Emergency Preference Scheme (IEPS), http://www.iepscheme.net/, Jun. 16, 2000, pp. 1-2.
International Teleco9mmunication Union; “General Aspects of Digital Transmission Systems: Coding of Speech at 8kbit/s Using Conjugate-Structure Algebraic-Code-Excited Linear-Prediction” (CS-ACELP) ITU-T Recommendation G.729 (Mar. 1996).
Itu, “Packet-based multimedia communications systems”, H. 323, Feb. 1998, 125 pages.
J. Heinanen et al., “Assured Forwarding PHB Group,” Network Working Group, Category: Standards Track (Jun. 1999).
Kathy Lynn Hewitt, Desktop Video Conferencing: A Low Cost and Scalable Solution to Distance Education, “Chapter 2—Internet Conferencing Protocols” thesis submitted to North Carolina State University (1997), at http://www2.ncsu.edu/eos/service/ece/project/succeed—info/klhewitt/thesis/toc.html.
K. Nichols, Cisco Systems, RFC 2474, Definition of Differentiated Services Field in IPv4 & IPv6 Headers, Dec. 1998.
McCloghrie et al., “Structure of Policy Provisioning Information (SPPI)”, RFC 3159, Aug. 2001, 36 pages.
PacketCableTM Dynamic Quality-of-Service Specification PKT-SP-DQOS-102-000818, 2000, Cable Television Laboratories, Inc., 211 pages.
Paul Roller Michaelis, “Speech Digitization and Compression”, Int'l Encyclopedia of Ergonomic and Human Factors (W. Warkowski ed., Taylor & Francis 2001).
PacketCable, Cable Labs http.//www.packetcable.com, copyright 2000-20021.
“Packet Loss and Packet Loss Concealment Technical Brief,” Nortel Netowks at http://www.nortelnetworks.com (2000).
Peter Parnes, “Real-time Transfer Protocol (RTP)” (Sep. 8, 1997), at www.cdt.luth.se/˜peppar/docs/lic/html/nodel68.html.
S. Blake et al., “An Architecture for Differentiated Services,” Network Working Group, Category: Informational (Dec. 1998).
Sangeun Han et al., “Transmitting Scalable Video over a DiffServ network,” EE368C Project Proposal (Jan. 30, 2001).
Schulzrinne. Providing Emergency Call Services for SIP-based Internet Telephony, http//www.softarmor.com/sipping/drafts/draft-schulzrinne-sip-911-00.txt., Jul. 13, 2000, pp. 1-13.
TechTarget, “voice activation detection,” at http://searchnetworking.te...m/sDefinition/O,,sid7—gci342486.00.html (Jul. 1, 2002).
“Telogy Networks'Voice Over Packet White Paper,” Telopy Networks, Inc., available at http://www.telpgy.com/our—products/golden—gateway/VOPwhite.html (Han. 1998).
V. Jacobsen et al., “An Expedited Forwarding PHB,” Network Working Group, Category: Standards Track (Jun. 1999).
“Voice over packet: An assessment of voice performance on packet networks white paper,” Nortel Networks, Publication No. 74007.25/09-01, at http://www.nortelnetworks.com (2001).
Wroclawski, “The use of RSVP with IETF Integrated Services”, RFC 2210, Sep. 1997, 31 pages.
“Access for 9-1-1 and Telephone Emergency Services,” American with Disabilities Act, U.S. Department of Justice (Jul. 15, 1998), available at http://www.usdoj.gov/crt/ada/911ta.htm, 11 pages.
Le Boudec, Jean-Yves et al., slideshow entitled “Quality of Service in IP Networks (2),” Queue Management (undated), pp. 1-30.
RADVision, “SIP: Protocol Overview,” (2001), pp. 1-16.
Schulzrinne, “Emergency Call Services for SIP-based Internet Telephony,” Internet Engineering Task Force (Mar. 25, 2001), pp. 1-17.
Official Action for U.S. Appl. No. 10/262,005, mailed Nov. 12, 2008.
Official Action for U.S. Appl. No. 10/262,005, mailed May 2, 2008.
Official Action for U.S. Appl. No. 10/262,005, mailed Sep. 24, 2007.
Official Action for U.S. Appl. No. 10/262,005, mailed Apr. 6, 2007.
Official Action for U.S. Appl. No. 10/262,005, mailed Jul. 17, 2006.
Official Action for U.S. Appl. No. 10/262,005, mailed Dec. 16, 2005.
U.S. Appl. No. 12/240,119, filed Sep. 29, 2008, Hepworth et al.
U.S. Appl. No. 12/133,533, filed Jun. 5, 2008, Kloberdans et al.
U.S. Appl. No. 10/882,975, filed Jun. 30, 2004, Becker et al.
U.S. Appl. No. 11/671,733, filed Feb. 6, 2007, Beck et al.
3COM, 3Com IP Conferencing and Presence Modules, Dec. 2006, pp. 1-2, http://www.3com.com/other/pdfs/products/en—US/3com—400867.pdf.
Chelston Call Systems, How Audio Conferencing Can Benefit Your Organisation, Jan. 2, 2008, pp. 1-3, http://www.chelston.co.uk/Welcome/Pages/Products/Audio-Conferencing.htm.
Ditech Networks, Conferencing Voice Quality and Echo Cancellation, (undated) (printed Jan. 2, 2008), pp. 1-4, http:/www.ditechcom.com/solutions/solutionsdetail.aspx?pid=44.
Global IP Solutions, Backgrounder, (undated) (printed Jan. 2, 2008), pp. 2-6, http://www.gipscorp.com/default/backgrounder.html.
Indosoft Inc., Teleconferencing Bridge Features, 2005, pp. 1-6, http:/www.indosoft.ca/features.htm.
Iwatsu Voice Networks, News: Iwatsu Announces the Release of the IX-CNFBOX-1 Eight-Party Conference Bridge for ADIX, Feb. 26, 1998, pp. 1, http://ivoicenetworks.com/News/pr-cfnb.html.
NEC America, Conference Bridge Solution for the Electrak Elite IPK/IPK II, Jan. 2006, pp. 1-2, available at http://www.necunifiedsolutions.com/Downloads/PDFs/790304—EE—IPK—II—ConfBridge.pdf.
NEC Infrontia Inc., Aspire Conference Bridge data Sheet, 2007, pp. 1-2, http://www.necaspire.com/necaspire/conference—bridge/conference—bridge.php.
Newly-released feature and enhancement highlights of “Avaya MultiVantage Software”; Release 1.2, Jan. 2003; 9 pages.
Polycom Inc., Polycom VoicePlus, Full featured PSTN and VoIP conferencing, 2003, pp. 1-2, available at http://www.ccpin.com/pdf/Polycom/VoicePlus.pdf.
Skype Journal, High Definition Voice: Bringing Skype's high Bandwidth Audio to Conference Calls, Oct. 23, 2007, pp. 1-5, http://skypejournal.com/blog/2007/10/high—definition—voice—bringing.html.
Squelch from Wikipedia; printed from Internet at: http://en.wikipedia.org/w/index.php?title=Squelch&printable=yes; 4 pages.
Thomasnet, ShoreTel Extends Portfolio of Collaboration Solutions with SIP-Enabled ShoreTel IP 8000 Conference Phone, Jul. 17, 2007, pp. 1-2, http://news.thomasnet.com/printready.html?prid=525606.
TMCNET, Aastra selects Octasic OCT6100 device for CNX Conference Bridge Appliance, Mar. 8, 2005, pp. 1-2, http://www.tmcnet.com/usubmit/2005/Mar/1123217.htm.
“Using the 79xx Status Information for Troubleshooting” available at http://www.cisco.com/en/US/products/hw/phones/ps379/products—tech—note09186a00800945bd.shtml#display, Updated: Nov. 13, 2006, pp. 1-5.
Official Action for U.S. Appl. No. 10/262,005, mailed Apr. 28, 2009.
Background of the Invention for the above-captioned application (previously provided).
Related Publications (1)
Number Date Country
20070133403 A1 Jun 2007 US
Divisions (1)
Number Date Country
Parent 10262005 Sep 2002 US
Child 11672183 US