Status transmission system and method

Information

  • Patent Grant
  • 7580403
  • Patent Number
    7,580,403
  • Date Filed
    Friday, February 25, 2005
    19 years ago
  • Date Issued
    Tuesday, August 25, 2009
    15 years ago
Abstract
A method includes receiving, on a first network device, an announcement message from an endpoint device connected to the first network device via a network connection. The announcement message, which includes at least one connection criteria, is transmitted to one or more downstream network devices.
Description
FIELD OF THE DISCLOSURE

This disclosure relates to announcement messaging systems and methods and, more particularly, to network announcement messaging systems and methods.


BACKGROUND

With the advent of Voice-over-Internet-Protocol (i.e., VoIP) telephony, it has become important that data networks be capable of efficiently handling time-sensitive voice traffic. The traditional approaches to ensuring the prioritization of telephony data over traditional network data are often based on the use of various “class of service” and “quality of service” techniques. The class of service/quality of service parameters are typically configured on the network relay devices to which the VoIP endpoint devices (e.g., telephones, handsets, videophones, etc.) are attached. Unfortunately, these configurations are typically static and do not adjust in response to the quantity of VoIP data being generated by the VoIP endpoint devices.


These problems are only compounded when considering emergency calls (e.g., 911 calls), as it is difficult to ensure that emergency calls are handled with a heightened level of urgency within the data network. Unfortunately, VoIP protocols (e.g., H.323 or Session Initiation Protocol) do not readily interact with the network devices through which they are transmitted and, therefore, it is currently difficult to assign a higher level of urgency to emergency calls.


SUMMARY OF THE INVENTION

According to an aspect of this invention, a method includes receiving, on a first network device, an announcement message from an endpoint device connected to the first network device via a network connection. The announcement message, which includes at least one connection criteria, is transmitted to one or more downstream network devices.


One or more of the following features may also be included. The endpoint device may be a VoIP telephony endpoint device. The message may be compliant with a transmission protocol (e.g., 802.1AB link layer discovery protocol). The announcement message received by the first network device may be processed, and at least one traffic policy of the first network device may be configured in accordance with the at least one connection criteria. The announcement message received by the one or more downstream network devices may be processed, and at least one traffic policy of the one or more downstream network devices may be configured in accordance with the at least one connection criteria. The first network device may be chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.


According to another aspect of this invention, an apparatus includes an integrated circuit, such that the integrated circuit is capable of receiving, on a first network device, an announcement message from an endpoint device connected to the first network device via a network connection. The announcement message, which includes at least one connection criteria, is transmitted to one or more downstream network devices.


One or more of the following features may also be included. The endpoint device may be a VoIP telephony endpoint device. The message may be compliant with a transmission protocol (e.g., 802.1AB link layer discovery protocol). The announcement message received by the first network device may be processed, and at least one traffic policy of the first network device may be configured in accordance with the at least one connection criteria. The announcement message received by the one or more downstream network devices may be processed, and at least one traffic policy of the one or more downstream network devices may be configured in accordance with the at least one connection criteria. The first network device may be chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.


According to another aspect of this invention, a computer program product residing on a computer readable medium has a plurality of instructions stored thereon. When executed by the processor, the instructions cause that processor to receive, on a first network device, an announcement message from an endpoint device connected to the first network device via a network connection. The announcement message, which includes at least one connection criteria, is transmitted to one or more downstream network devices.


One or more of the following features may also be included. The endpoint device may be a VoIP telephony endpoint device. The message may be compliant with a transmission protocol (e.g., 802.1AB link layer discovery protocol). The announcement message received by the first network device may be processed, and at least one traffic policy of the first network device may be configured in accordance with the at least one connection criteria. The announcement message received by the one or more downstream network devices may be processed, and at least one traffic policy of the one or more downstream network devices may be configured in accordance with the at least one connection criteria. The first network device may be chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.


The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features and advantages will become apparent from the description, the drawings, and the claims.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of a data network including a status transmission system and a status announcement system;



FIG. 2 is a more-detailed view of the status transmission system and the status announcement system of FIG. 1; and



FIG. 3 is a flow chart of the status transmission system and the status announcement system of FIG. 1.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIGS. 1 & 2, there is shown a status announcement system 10 and a status transmission system 12, each of which transmits messages to network devices (e.g., switching devices 14, 16, 18). A switching device is a device that examines each data packet to determine, from a physical address such as a MAC address, the intended recipient of the data packet.


Status announcement system 10 typically resides on and is executed by one or more endpoint devices (e.g., VoIP telephony endpoint device 24) connected to data network 20 (e.g., a local area network, an intranet, the internet, or some other form of network). The instruction sets and subroutines of status announcement system 10 are typically stored on a storage device 22 connected to one or more endpoint devices. Storage device 22 may be, for example, a hard disk drive, a tape drive, an optical drive, a RAID array, a random access memory (RAM), or a read-only memory (ROM). Alternatively or additionally, status announcement system 10 may be embodied within an integrated circuit incorporated into one or more endpoint devices.


Status transmission system 12 typically resides on and is executed by one or more network devices (e.g., switching device 14) connected to data network 20. As status transmission system 12 may be resident on multiple network devices, multiple instances of status transmission system 12 are represented as status transmission system 121 and status transmission system 12n. The instruction sets and subroutines of status transmission system 12 are typically stored on a storage device 26 connected to the one or more network devices. Storage device 26 may be, for example, a hard disk drive, a tape drive, an optical drive, a RAID array, a random access memory (RAM), or a read-only memory (ROM). Alternatively or additionally, status transmission system 12 may be embodied within an integrated circuit incorporated into one or more network devices.


A network administrator 28 typically configures, accesses, and administers status announcement system 10 and/or status transmission system 12 through a desktop application 30 (e.g., Microsoft Internet Explorer™, Netscape Navigator™, SNMP-based (i.e., Simple Network Management Protocol) management tool or a specialized user interface) running on a computer 32 that is also connected to data network 20.


Various network devices may be included within data network 20, such as: a wireless access point (WAP) 34 (i.e., a device that allows for wireless communication of data between access point 34 and one or more computing devices 36, 38, 40); and computers 42, 44, for example. Additional devices include routing devices (not shown); gateway devices (not shown); bridges (not shown), Intrusion Detection Systems (not shown), Intrusion Prevention Systems (not shown), repeaters (not shown), signal forwarding devices (not shown), packet forwarding devices (not shown), attached functions (not shown), and end systems (not shown). Additionally, non-traditional computing devices, such as IP radios 46, may also be connected to data network 20.


Data network 20 may be coupled to a telephone network 48 through a voice switch 50 that converts the packetized data used in VoIP telephone calls to the analog data traditionally used in telephone networks.


Telephone network 48 may include PBX 51 (i.e., private branch exchange), which is a private telephone network used within an enterprise (e.g., an office building). Telephone network 48 may also include a PSAP 52 (i.e., Public Safety Answering Point) that receives emergency telephone calls and routs them to the proper emergency services provider (e.g., fire, police, and ambulance, for example). PSAP 52 is typically staffed by operator 54. An example of PSAP 52 is (in the United States of America) the 911 Emergency Dispatch System.


Referring also to FIG. 3 and as discussed above, status announcement system 10 typically resides on and is executed by VoIP telephony endpoint device 24. Examples of VoIP telephony endpoint device 24 include: VoIP telephones; VoIP handsets; hybrid computer/VoIP devices; and VoIP video phones, for example.


When user 56 uses VoIP telephony endpoint device 24 to initiate a voice telephone call, VoIP telephony endpoint device 24 establishes 100 a network connection 58 between switching device 14 and VoIP telephony endpoint device 24. Announcement system 10 encodes 102 an announcement message 60 that is transmitted 104 to switching device 14. Announcement message 60 includes one or more connection criteria (not shown), which typically define the status of the VoIP telephone call.


As discussed above, it is desirable to assign a higher level of priority to VoIP data (as opposed to standard network data), due to the high level of sensitivity that VoIP data has to time delays and packet loss. Accordingly, by announcement message 60 defining the connection 58 between VoIP telephony endpoint device 24 and switching device 14 as a VoIP connection, higher priority will be given to the processing of packets received on the port (not shown) on switching device 14 to which connection 58 is established.


Typically, the encoding 102 and transmission 104 of announcement message 60 is accomplished via a neighbor discovery protocol, such as The Institute of Electrical and Electronics Engineers 802.1ab LLDP (i.e., Link Layer Discovery Protocol).


LLDP defines a standard method for network devices (e.g., switching devices 14, 16, 18, and wireless access point 34) to advertise information about themselves (via announcement messages) to other network devices and to store the information they receive from other network devices. Accordingly, device details (e.g., device configuration, device capabilities, and device identification) can be advertised using LLDP.


Specifically, LLDP defines: a set of common announcement messages; a protocol for transmitting the announcement messages to network devices; and a method for storing the information contained within the announcement messages received from other network devices.


Accordingly and assuming that LLDP is utilized, when user 56 uses VoIP telephony endpoint device 24 to initiate a voice telephone call, announcement system 10 encodes 102 an announcement message 60 that is transmitted 104 to switching device 14. Announcement message 60 (in this example) is an LLDP formatted announcement message that includes a type length value (TLV) field that is modified by announcement system 10 to include a description of the type of voice telephone call being placed. For example, if user 58 is calling her friend 62, as this is a non-emergency call, the TLV field within message 60 will be populated 106 to include the connection criteria “VoIP telephone call”. This message 60 is then transmitted 104 to switching device 14. Upon receipt 108 of message 60 by switching device 14, message 60 is processed 110 to extract the connection criteria, which in the example is “VoIP telephone call”. Switching device 14 will then configure 112 one or more traffic policies in accordance with this connection criteria. For example, switching device 14 may dynamically configure the buffer queues, the queue scheduler algorithm, and the traffic shaping functions (of switching device 14) to ensure that the bandwidth required is available (to connection 58) to ensure the viability of the VoIP telephone call.


In addition to connection criteria that broadly identifies the telephone call as a “VoIP telephone call”, VoIP telephony endpoint device 24 is typically also capable of encoding and transmitting the following announcement messages:


Telephony Endpoint Status Announcement Message: This announcement message provides the status of the telephony endpoint itself (e.g., VoIP telephony endpoint device 24). A telephony endpoint status announcement message can indicate the following status information:

    • a. Contact has been made to a telephony controller system (e.g., a soft switch, Internet Protocol PBX, or SIP Proxy, for example);
    • b. The telephony endpoint is functional and capable of establishing telephony sessions;
    • c. The telephony endpoint has been rejected by a telephony controller system and is not capable of establishing telephony sessions; and
    • d. The telephony endpoint is experiencing/has experienced an error condition and may not be capable of functioning properly


Telephony Session Announcement Message: This announcement message indicates how many telephony sessions the telephony endpoint is currently participating in.


Telephony Session Status Announcement Message: This announcement message indicates the status of each telephony session that the telephony endpoint is currently participating in. Each telephony session announcement message may include a session identifier that provides a unique identity for a particular telephony session when the telephony endpoint is participating in multiple telephony sessions. A telephony session status announcement message may indicate the following status information:

    • a. That telephony session is being established (dialing) from this telephony endpoint to another telephony endpoint;
    • b. That a telephony session has been established but is currently on hold;
    • c. That a telephony session is ending (i.e., hanging-up); and
    • d. That protocol errors have occurred while establishing the telephony session.


Telephony Session Destination Data Link Layer Address Announcement Message: This announcement message makes known the OSI Model Layer 2 “Data Link Layer (MAC)” address of the destination telephony endpoint in a particular telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Telephony Session Destination Network Layer (Internet Protocol or other type) Address Announcement Message: This announcement message makes known the OSI Model Layer 3 “Network Layer” address of the destination telephony endpoint in a particular telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Telephony Session Destination Calling Number Announcement Message: This announcement message makes known the telephony calling number of the destination endpoint in a particular telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Telephony Session Destination Endpoint Name Announcement Message: This announcement message makes known the name of the destination telephony endpoint in a particular telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier can be included in the announcement message.


CODEC in use for Transmitted Session Announcement Message: This announcement makes known the CODEC technology being used for a telephony session that is being transmitted from the telephony endpoint to a data network relay device (e.g., switching device 14). An example of such a CODEC may include the International Telecommunication Union G.711 CODEC. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Transmitted Telephony Session Bandwidth Announcement Message: This announcement message makes known the bandwidth (e.g., in kilobits per second or megabits per second, for example) being transmitted into the network relay device (e.g., switching device 14) by the telephony endpoint for a telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Total Bandwidth Transmitted for all Sessions Announcement Message: This announcement message makes known the total bandwidth (i.e., the sum of all sessions) being transmitted into the network relay device (e.g., switching device 14) by the telephony endpoint. This announcement message may be in kilobits per second, or megabits per second, for example.


CODEC in use for Received Session Announcement Message: This announcement message makes known the CODEC technology being used for a telephony session that is being received by the telephony endpoint from the data network relay device (e.g., switching device 14). An example of such a CODEC may include the International Telecommunication Union G.711 CODEC. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Received Telephony Session Bandwidth Announcement Message: This announcement message makes known the bandwidth (e.g., in kilobits per second or megabits per second, for example) being received by the telephony endpoint for the telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Total Bandwidth Received for all Sessions Announcement Message: This announcement message makes known the total bandwidth (e.g., in kilobits per second or megabits per second, for example) that will be received by the telephony endpoint for all telephony sessions it is currently participating in.


Telephony Session Quality Status Announcement Message: This announcement message allows a telephony endpoint to announce to the data network relay device (e.g., switching device 14) the quality of the specific session between the two telephony endpoints participating in the session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Transmission Control Protocol Source and Destination Port Pair Value Announcement Message: This announcement message makes known the transmission control protocol source and destination port values associated with a telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


User Datagram Protocol Source and Destination Port Pair Value Announcement Message: This announcement message makes known the user datagram protocol source and destination port values associated with a telephony session. In applications where the telephony endpoint is participating in more than one telephony session, a session identifier may be included in the announcement message.


Telephony Endpoint Password Announcement Message: This announcement message provides a method by which a network relay device (e.g., switching device 14) can make a trust association with a telephony endpoint. A simple text-string password, a message digest string, a digital certificate, or other types of identity verification mechanism may be used with this announcement message. This announcement message is intended to allow a telephony endpoint to authenticate itself and prove (to e.g., switching device 14) that the telephony endpoint is actually a verified telephony endpoint.


Once announcement message 60 is received 108 by switching device 14, switching device 14 may transmit 114 the received announcement message 60 to a downstream network device (e.g., switching devices 16).


For example, upon switching device 14 receiving announcement message 60 from VoIP telephony endpoint device 24, switching device 14 may establish 116 a network connection 64 between switching device 14 and switching device 16. Additionally, switching device 14 may transmit 114 announcement message 60′ to the downstream network device (e.g., switching device 16), thus providing the downstream network device with the connection criteria originally encoded within announcement message 60. Announcement message 60′ may simply be a retransmission of original announcement message 60, or may be appended/modified to include additional information pertinent to e.g., the network device transmitting announcement message 60′.


The process of establishing 116 network connections and transmitting 114 announcement messages in repeated until telephony network 48 is accessed. For example, each time a connection is established 116 and a message is transmitted 114, a determination 118 is made concerning whether additional downstream network devices need to be notified. If additional downstream network devices are present (and, therefore, telephony network 48 is not yet accessed), the establishing and transmitting process is repeated.


For example, upon receiving 120 announcement message 60′ from switching device 14, switching device 16 processes 122 announcement message 60′ to extract the connection criteria, which in the example is “VoIP telephone call”. Switching device 16 will then configure 124 one or more traffic policies of switching device 16 in accordance with this connection criteria. A determination is made that a downstream network device (i.e., switching device 18) needs to be notified. Accordingly, switching device 16 may establish 116 a network connection 66 between switching device 16 and switching device 18, and may transmit 114 announcement message 60″ to switching device 18.


Further, upon receiving 120 announcement message 60″ from switching device 16, switching device 18 processes 122 announcement message 60″ to extract the connection criteria, which in the example is “VoIP telephone call”. Switching device 18 will then configure 124 one or more traffic policies of switching device 18 in accordance with this connection criteria. A determination is made that a downstream network device (i.e., voice switch 50) needs to be notified. Accordingly, switching device 18 may establish 116 a network connection 68 between switching device 18 and voice switch 50, and may transmit 114 announcement message 60′″ to voice switch 50.


Additionally, upon receiving 120 announcement message 60′″ from switching device 18, voice switch 50 processes 122 announcement message 60′″ to extract the connection criteria, which in the example is “VoIP telephone call”. Voice switch 50 will then configure 124 one or more traffic policies of voice switch 50 in accordance with this connection criteria. A determination is made that no additional downstream network devices need to be notified, as telephony network 48 has been accessed. The VoIP telephone called is subsequently routed to PBX 51 and (ultimately) telephone 70 (i.e., the telephone used by the recipient of the VoIP telephone call initiated by user 56).


Accordingly, by transmitting the connection criteria throughout data network 20 (via announcement messages 60, 60′, 60″ and 60′″), all devices between VoIP telephony endpoint device 24 and telephone 70 may be configured to provide a higher level of priority to VoIP data.


As discussed above, it is desirable to assign a higher level of priority to VoIP data (as opposed to standard network data), due to the high level of sensitivity that VoIP data has to time delays and packet loss. Further, it is desirable to apply an even higher level of priority to VoIP data (as opposed to standard network data) when the VoIP data is actually an emergency call (e.g., a 911 call in the United States of America).


Accordingly, assume that user 56 is having chest pains and uses VoIP telephony endpoint device 24 to dial “911”, which needs to be routed to PSAP 52 and (ultimately) to operator 54. As discussed above, VoIP telephony endpoint device 24 establishes 100 a network connection 58 between switching device 14 and VoIP telephony endpoint device 24. Announcement system 10 encodes 102 announcement message 60, which is transmitted 104 to switching device 14. However, unlike when user 56 was calling friend 62 and the TLV field within message 60 was populated 106 to include the connection criteria “VoIP telephone call”, the TLV field will now be populated 106 to include the connection criteria “Emergency Call in Progress”.


Upon receipt 108 of message 60 by switching device 14, message 60 is processed 110 to extract the connection criteria, which in this example is “Emergency Call in Progress”. Switching device 14 will then configure 112 one or more traffic policies in accordance with this connection criteria. As discussed above, switching device 14 may dynamically configure the buffer queues, the queue scheduler algorithm, and the traffic shaping functions (of switching device 14) to ensure that the bandwidth required is available to connection 58 to ensure the viability of the VoIP telephone call. Further, as this is an emergency call, more drastic measures may be taken, such as defining that the emergency call (while active) has a mandatory minimum bandwidth (e.g., 128 kilobits per second), even if this mandatory minimum bandwidth occurs at the expense of other standard network data connections and/or other non-emergency VoIP connections.


In addition to connection criteria that broadly identifies the telephone call as a “Emergency Call in Progress”, VoIP telephony endpoint device 24 is typically also capable of encoding and transmitting the following emergency announcement messages: (a) the destination data link layer address for the voice switch (e.g., voice switch 50) and/or the PBX (e.g., PBX 51) that is needed to reach PSAP 52; (b) the destination network layer address for the voice switch (e.g., voice switch 50) and/or the PBX (e.g., PBX 51) that is needed to reach PSAP 52; (c) the status of the emergency service call; (d) the E911 location identification number (as defined by ANSI specification T1.628.200); (e) E911 geographic location coordinates (as defined by ANSI specification T1.628.200); and/or (f) the network address of the voice endpoint making the emergency call.


Upon switching device 14 receiving announcement message 60 from VoIP telephony endpoint device 24, switching device 14 may establish 116 a network connection 64 between switching device 14 and switching device 16. Additionally, switching device 14 may transmit 114 announcement message 60′ to the downstream network device (e.g., switching device 16), thus providing the downstream network device with the connection criteria originally encoded within announcement message 60. Announcement message 60′ may simply be a retransmission of original announcement message 60, or may be appended/modified to include additional information pertinent to e.g., the network device transmitting announcement message 60′.


Upon receiving 120 announcement message 60′ from switching device 14, switching device 16 processes 122 announcement message 60′ to extract the connection criteria, which in the example is “Emergency Call in Progress”. Switching device 16 will then configure 124 one or more traffic policies of switching device 16 in accordance with this connection criteria. A determination is made that a downstream network device (i.e., switching device 18) needs to be notified. Accordingly, switching device 16 may establish 116 a network connection 66 between switching device 16 and switching device 18, and may transmit 114 announcement message 60″ to switching device 18.


Further, upon receiving 120 announcement message 60″ from switching device 16, switching device 18 processes 122 announcement message 60″ to extract the connection criteria, which in the example is “Emergency Call in Progress”. Switching device 18 will then configure 124 one or more traffic policies of switching device 18 in accordance with this connection criteria. A determination is made that a downstream network device (i.e., voice switch 50) needs to be notified. Accordingly, switching device 18 may establish 116 a network connection 68 between switching device 18 and voice switch 50, and may transmit 114 announcement message 60′″ to voice switch 50.


Additionally, upon receiving 120 announcement message 60′″ from switching device 18, voice switch 50 processes 122 announcement message 60′″ to extract the connection criteria, which in the example is “Emergency Call in Progress”. Voice switch 50 will then configure 124 one or more traffic policies of voice switch 50 in accordance with this connection criteria. A determination is made that no additional downstream network devices need to be notified, as telephony network 48 has been accessed. The VoIP telephone called is subsequently routed to PSAP 52 and (ultimately) operator 54.


Accordingly, by transmitting the “Emergency Call in Progress” connection criteria throughout data network 20 (via announcement messages 60, 60′, 60″ and 60′″), all devices between VoIP telephony endpoint device 24 and PSAP 52 may be configured to provide a higher level of priority to the “Emergency Call in Progress” VoIP data.


While the system is described above as dynamically configuring the buffer queues, the queue scheduler algorithm, and the traffic shaping functions in accordance with the connection criteria, other policies may also be configured. For example, other configurable policies include:


Filter Policy: This policy provides the system with the ability to filter messages. This Filter action may be pre-defined or dynamically created and may be applied to single or multiple interfaces.


Access Control List Creation Policy: This Policy creates a router access control list that is used to “filter” communications messages transiting through a routing system.


Route Map Policy: This policy defines a route map for a specific traffic type. A policy route map directs traffic out of specific interfaces regardless of what would normally occur during the normal operation of a device. In a routing device, a route map policy would forward communications messages to an interface other than the ones expected to be used as calculated by the dynamic routing protocol.


VLAN Containment Policy: This policy would provision a network ingress device to map all traffic matching a set of characteristics. This policy is useful in that it could map all traffic from a source to a specific or specialized network.


802.1X Un-Authenticate/Virtual Port Close Policy: This policy would provision a system to un-authenticate a previously authorized connection. This policy would “close the virtual port” associated with the 802.1X authenticator process existing in the communications device. This policy would effectively filter all traffic that ingresses into the communications system for the port or ports where this policy is being provisioned.


802.11 Disassociate Policy: This policy would instruct a wireless access point to disassociate a particular 802.11 client function from a particular access point of channel frequency. This policy would effectively disconnect a wireless client from the communications network.


802.11 Associate Channel Only Policy: This policy would instruct an 802.11 or wireless infrastructure to only allow a particular wireless client function to only associate (allow to connect) to a specified channel frequency. This policy would allow a wireless network to steer a wireless client function to a specific network.


Bandwidth Rate Shape/Limit Bandwidth Policy: This policy would enable a mechanism that limits the amount of bandwidth over a period of time (shape) or to a peak value (limit). The Analysis Function can specify bandwidth levels dynamically.


Traffic Surveillance Policy: This policy would enable the network system to “mirror” traffic to a monitor port for further forensic analysis by additional functions. A mirror or surveillance function is a mechanism to replicate communications messages to an additional interface or external system for additional analysis while still allowing it to be forwarded through the normal interface that would be configured for normal operation.


Flow Creation Rate Dampening Policy: This policy affects systems that are aware of communications flows. A Flow is a logical representation of a conversation between two or more systems on the communications network. A basic flow is tracked as a conversation between two OSI Layer 2 or Layer 3 addresses or simply between two or more ports. A Flow Creation Rate Dampening policy would limit the creation rate of new flows from a particular source, or to a specific destination, or based on certain characteristics such as TCP or UDP port number.


Maximum Flows Allowed Policy: This policy would limit the number of Flows to a system, from a system or between systems based on characteristics such as TCP/UDP port number as provisioned by the Analysis Function.


While the system is described above as processing VoIP telephone calls, other configurations are possible. For example, the above-described system may be utilized whenever the data stream is time sensitive. For example, while delays in loading web pages are acceptable, delays in video streams and/or audio streams often result in fractured playback. Therefore, the above-described system may be utilized to prioritize the processing of all streaming data (as opposed to only VoIP data)


A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. Accordingly, other implementations are within the scope of the following claims.

Claims
  • 1. A method comprising: receiving, on a first network device, an announcement message from an endpoint device connected to the first network device via a first network connection, wherein the announcement message includes at least one connection criteria;modifying the announcement message to include information associated with the first network device;configuring at least one traffic policy of the first network device in accordance with the at least one connection criteria, wherein the at least one traffic policy is associated with a second network connection; andtransmitting the modified announcement message to one or more downstream network devices.
  • 2. The method of claim 1 wherein the endpoint device is a VoIP telephony endpoint device.
  • 3. The method of claim 1 wherein the announcement message is in conformance with an 802.1AB link layer discovery protocol.
  • 4. The method of claim 1 further comprising: processing the modified announcement message received by the one or more downstream network devices; andconfiguring at least one traffic policy of the one or more downstream network devices in accordance with the at least one connection criteria.
  • 5. The method of claim 1 wherein the first network device is chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.
  • 6. An apparatus comprising an integrated circuit, wherein the integrated circuit is capable of: receiving, on a first network device, an announcement message from an endpoint device connected to the first network device via a first network connection, wherein the announcement message includes at least one connection criteria;modifying the announcement message to include information associated with the first network device;configuring at least one traffic policy of the first network device in accordance with the at least one connection criteria, wherein the at least one traffic policy is associated with a second network connection; andtransmitting the modified announcement message to one or more downstream network devices.
  • 7. The apparatus of claim 6 wherein the endpoint device is a VoIP telephony endpoint device.
  • 8. The apparatus of claim 6 wherein the announcement message is in conformance with an 802.1AB link layer discovery protocol.
  • 9. The apparatus of claim 6 wherein the integrated circuit is further capable of: processing the modified announcement message received by the one or more downstream network devices; andconfiguring at least one traffic policy of the one or more downstream network devices in accordance with the at least one connection criteria.
  • 10. The apparatus of claim 6 wherein the first network device is chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.
  • 11. A computer program product residing on a computer readable medium having a plurality of instructions stored thereon which, when executed by the processor, cause that processor to: receive, on a first network device, an announcement message from an endpoint device connected to the first network device via a first network connection, wherein the announcement message includes at least one connection criteria;modify the announcement message to include information associated with the first network device;configure at least one traffic policy of the first network device in accordance with the at least one connection criteria, wherein the at least one traffic policy is associated with a second network connection; andtransmit the modified announcement message to one or more downstream network devices.
  • 12. The computer program product of claim 11 wherein the endpoint device is a VoIP telephony endpoint device.
  • 13. The computer program product of claim 11 wherein the announcement message is in conformance with an 802.1AB link layer discovery protocol.
  • 14. The computer program product of claim 11 further comprising instructions for: processing the modified announcement message received by the one or more downstream network devices; andconfiguring at least one traffic policy of the one or more downstream network devices in accordance with the at least one connection criteria.
  • 15. The computer program product of claim 11 wherein the first network device is chosen from the group consisting of: a switching device; a routing device; a bridge; a gateway; an access point; a repeating device; a signal forwarding device; a packet forwarding device; and a server.
  • 16. The method of claim 1 wherein the information associated with the first network device includes one or more of: configuration information, status information, and policy information.
  • 17. The method of claim 1 wherein the information associated with the first network device further includes one or more of: network configuration information and network status information.
  • 18. The method of claim 1 further comprising: forwarding packets based, at least in part, upon the at least one traffic policy.
  • 19. The apparatus of claim 6 wherein the information associated with the first network device includes one or more of: configuration information, status information, and policy information.
  • 20. The apparatus of claim 6 wherein the information associated with the first network device further includes one or more of: network configuration information and network status information.
  • 21. The apparatus of claim 6 wherein the integrated circuit is further capable of: forwarding packets based, at least in part, upon the at least one traffic policy.
  • 22. The computer program product of claim 21 wherein the information associated with the first network device includes one or more of: configuration information, status information, and policy information.
  • 23. The computer program product of claim 21 wherein the information associated with the first network device further includes one or more of: network configuration information and network status information.
  • 24. The computer program product of claim 21 further comprising instructions for: forwarding packets based, at least in part, upon the at least one traffic policy.
RELATED APPLICATIONS

This application claims the priority of the following applications, which are herein incorporated by reference: U.S. Provisional Application Ser. No. 60/547,946, entitled, “Methods of Enhanced e911/Emergency Calling Services on a Data Communications Network”, filed 26 Feb. 2004; and U.S. Provisional Application Ser. No. 60/552,323, entitled, “Method of System Attribute Announcement and Enhanced Network Policy Service”, filed 11 Mar. 2004.

US Referenced Citations (201)
Number Name Date Kind
4627052 Hoare et al. Dec 1986 A
4734907 Turner Mar 1988 A
4823338 Chan et al. Apr 1989 A
4939726 Flammer et al. Jul 1990 A
5076688 Bowen et al. Dec 1991 A
5090025 Marshall et al. Feb 1992 A
5095480 Fenner Mar 1992 A
5132926 MacEachern et al. Jul 1992 A
5136580 Videlock et al. Aug 1992 A
5173933 Garner et al. Dec 1992 A
5243652 Teare et al. Sep 1993 A
5289460 Drake, Jr. et al. Feb 1994 A
5331637 Francis et al. Jul 1994 A
5355371 Auerbach et al. Oct 1994 A
5355375 Christensen Oct 1994 A
5361256 Doeringer et al. Nov 1994 A
5367667 Wahlquist Nov 1994 A
5394402 Ross Feb 1995 A
5396493 Sugiyama Mar 1995 A
5400326 Smith Mar 1995 A
5428615 Backes et al. Jun 1995 A
5434855 Perlman et al. Jul 1995 A
5442633 Perkins et al. Aug 1995 A
5444702 Burnett et al. Aug 1995 A
5448565 Chang et al. Sep 1995 A
5475781 Chang et al. Dec 1995 A
5481540 Huang Jan 1996 A
5485455 Dobbins et al. Jan 1996 A
5491694 Oliver et al. Feb 1996 A
5500860 Perlman et al. Mar 1996 A
5506838 Flanagan Apr 1996 A
5511168 Perlman et al. Apr 1996 A
5517494 Green May 1996 A
5517620 Hashimoto et al. May 1996 A
5519760 Borkowski et al. May 1996 A
5521910 Matthews May 1996 A
5530703 Liu et al. Jun 1996 A
5550816 Hardwick et al. Aug 1996 A
5553083 Miller Sep 1996 A
5583861 Holden Dec 1996 A
5606602 Coyle et al. Feb 1997 A
5608726 Virgile Mar 1997 A
5613069 Walker Mar 1997 A
5621793 Bednarek et al. Apr 1997 A
5634011 Auerbach et al. May 1997 A
5640452 Murphy Jun 1997 A
5659617 Fischer Aug 1997 A
5675582 Hummel et al. Oct 1997 A
5684800 Dobbins et al. Nov 1997 A
5727057 Emery et al. Mar 1998 A
5734865 Yu Mar 1998 A
5740171 Mazzola et al. Apr 1998 A
5742604 Edsall et al. Apr 1998 A
5745685 Kirchner et al. Apr 1998 A
5752003 Hart May 1998 A
5754657 Schipper et al. May 1998 A
5757916 MacDoran et al. May 1998 A
5781726 Pereira Jul 1998 A
5781737 Schmidt Jul 1998 A
5790074 Rangedahl et al. Aug 1998 A
5812819 Rodwin Sep 1998 A
5825772 Dobbins et al. Oct 1998 A
5862338 Walker et al. Jan 1999 A
5874964 Gille Feb 1999 A
5881236 Dickey Mar 1999 A
5892451 May et al. Apr 1999 A
5892910 Safadi Apr 1999 A
5892912 Suzuki et al. Apr 1999 A
5898686 Virgile Apr 1999 A
5905779 Steinmetz May 1999 A
5920699 Bare Jul 1999 A
5922073 Shimada Jul 1999 A
5963556 Varghese et al. Oct 1999 A
5983364 Botcosh Nov 1999 A
5999126 Ito Dec 1999 A
6005864 Krause Dec 1999 A
6006259 Adelman et al. Dec 1999 A
6012088 Li et al. Jan 2000 A
6018771 Hayden Jan 2000 A
6035105 McCloghrie et al. Mar 2000 A
6041166 Hart et al. Mar 2000 A
6044400 Golan et al. Mar 2000 A
6061797 Jade et al. May 2000 A
6070079 Kuwahara May 2000 A
6076114 Wesley Jun 2000 A
6078957 Adelman et al. Jun 2000 A
6085243 Fletcher et al. Jul 2000 A
6094434 Kotzur et al. Jul 2000 A
6105027 Schneider et al. Aug 2000 A
6105064 Davis et al. Aug 2000 A
6108365 Rubin et al. Aug 2000 A
6115754 Landgren Sep 2000 A
6122664 Boukobza et al. Sep 2000 A
6130890 Leinwand et al. Oct 2000 A
6131120 Reid Oct 2000 A
6151324 Belser et al. Nov 2000 A
6151631 Ansell et al. Nov 2000 A
6157647 Husak Dec 2000 A
6167275 Oros et al. Dec 2000 A
6167513 Inoue et al. Dec 2000 A
6192045 Williams Feb 2001 B1
6192403 Jong et al. Feb 2001 B1
6201789 Witkowski et al. Mar 2001 B1
6205126 Moon Mar 2001 B1
6212391 Saleh et al. Apr 2001 B1
6216159 Chintakrindi et al. Apr 2001 B1
6222840 Walker et al. Apr 2001 B1
6230018 Watters et al. May 2001 B1
6233242 Mayer et al. May 2001 B1
6236365 LeBlanc et al. May 2001 B1
6256338 Jalloul et al. Jul 2001 B1
6259404 Parl et al. Jul 2001 B1
6273622 Ben-David Aug 2001 B1
6286044 Aoyama et al. Sep 2001 B1
6304218 Sugiura et al. Oct 2001 B1
6308273 Goertzel et al. Oct 2001 B1
6317500 Murphy Nov 2001 B1
6327474 Ruutu et al. Dec 2001 B1
6327535 Evans et al. Dec 2001 B1
6343317 Glorikian Jan 2002 B1
6363422 Hunter et al. Mar 2002 B1
6370629 Hastings et al. Apr 2002 B1
6388618 Stilp et al. May 2002 B1
6421009 Suprunov Jul 2002 B2
6442394 Valentine et al. Aug 2002 B1
6442616 Inoue et al. Aug 2002 B1
6453237 Fuchs et al. Sep 2002 B1
6456853 Arnold Sep 2002 B1
6460084 Van Horne et al. Oct 2002 B1
6466786 Wallenius Oct 2002 B1
6480495 Mauger et al. Nov 2002 B1
6523064 Akatsu et al. Feb 2003 B1
6539229 Ali Mar 2003 B1
6542813 Kovacs Apr 2003 B1
6556831 Buppelmann Apr 2003 B1
6580914 Smith Jun 2003 B1
6583713 Bates Jun 2003 B1
6640184 Rabe Oct 2003 B1
6640248 Jorgensen Oct 2003 B1
6665715 Houri Dec 2003 B1
6701864 Watson et al. Mar 2004 B2
6716101 Meadows et al. Apr 2004 B1
6741863 Chiang et al. May 2004 B1
6757545 Nowak et al. Jun 2004 B2
6757740 Parekh et al. Jun 2004 B1
6771639 Holden Aug 2004 B1
6778818 O'Neil Aug 2004 B1
6795688 Plasson et al. Sep 2004 B1
6799049 Zellner et al. Sep 2004 B1
6807427 Sakamoto et al. Oct 2004 B1
6813501 Kinnunen et al. Nov 2004 B2
6826385 Kujala Nov 2004 B2
6826617 Ansell et al. Nov 2004 B1
6834195 Brandenberg et al. Dec 2004 B2
6859791 Spagna et al. Feb 2005 B1
6889051 Ogino et al. May 2005 B2
6889053 Chang et al. May 2005 B1
6920329 Kennedy et al. Jul 2005 B2
6934548 Gould et al. Aug 2005 B1
6937988 Hemkumar et al. Aug 2005 B1
6938096 Greschler et al. Aug 2005 B1
6983313 Korkea-Aho Jan 2006 B1
6985731 Johnson et al. Jan 2006 B1
7010583 Aizono et al. Mar 2006 B1
7089014 Brown et al. Aug 2006 B2
7089264 Guido et al. Aug 2006 B1
7120449 Muhonen et al. Oct 2006 B1
7136915 Rieger, III Nov 2006 B2
7139820 O'Toole et al. Nov 2006 B1
7197556 Short et al. Mar 2007 B1
7245609 D'Eletto Jul 2007 B2
7263095 Sarkar Aug 2007 B1
7266839 Bowers et al. Sep 2007 B2
7366157 Valentine et al. Apr 2008 B1
7383347 Ebling et al. Jun 2008 B2
7447765 Aerrabotu et al. Nov 2008 B2
20010022558 Karr, Jr. et al. Sep 2001 A1
20010039623 Ishikawa Nov 2001 A1
20020010866 McCullough et al. Jan 2002 A1
20020016831 Peled et al. Feb 2002 A1
20020023010 Rittmaster et al. Feb 2002 A1
20020034953 Tricarico Mar 2002 A1
20020046073 Indseth et al. Apr 2002 A1
20020051540 Glick et al. May 2002 A1
20020052180 Ravishankar et al. May 2002 A1
20020062379 Widegren et al. May 2002 A1
20020063656 Gutowski May 2002 A1
20020101860 Thornton et al. Aug 2002 A1
20020107029 Caughran et al. Aug 2002 A1
20020122055 Parupudi et al. Sep 2002 A1
20020138632 Bade et al. Sep 2002 A1
20020164996 Dorenbosch Nov 2002 A1
20020188842 Willeby Dec 2002 A1
20030035544 Herle et al. Feb 2003 A1
20030041167 French et al. Feb 2003 A1
20030065571 Dutta Apr 2003 A1
20030095509 Ramanan et al. May 2003 A1
20030185233 Ji et al. Oct 2003 A1
20030208523 Gopalan et al. Nov 2003 A1
20040064334 Nye Apr 2004 A1
20050199792 Argast et al. Sep 2005 A1
Foreign Referenced Citations (18)
Number Date Country
1154624 Nov 2001 EP
9428683 Dec 1994 WO
9705749 Feb 1997 WO
9741654 Nov 1997 WO
9819482 May 1998 WO
0022862 Apr 2000 WO
0044149 Jul 2000 WO
0067450 Nov 2000 WO
0069198 Nov 2000 WO
0108425 Feb 2001 WO
0122656 Mar 2001 WO
0169956 Sep 2001 WO
0176093 Oct 2001 WO
0182259 Nov 2001 WO
0194967 Dec 2001 WO
0195505 Dec 2001 WO
0209456 Jan 2002 WO
0212914 Feb 2002 WO
Related Publications (1)
Number Date Country
20050195949 A1 Sep 2005 US
Provisional Applications (2)
Number Date Country
60547946 Feb 2004 US
60552323 Mar 2004 US