The field of the invention relates to routing communications through networks and, more specifically, to routing communications to particular mobile stations within these networks.
Different types of information are sent through wireless networks. Transmission procedures often require that this information is transmitted and re-transmitted until it reaches the intended user. Retransmission attempts are undertaken to ensure that packets eventually reach the user and are not lost somewhere within the network.
However, during the transmission and/or retransmission of data, events occur that render the information irrelevant to the target user. For instance, the target user may become busy or unavailable due to various processes that are operating at the target. In another example, the target user may reject a call from an originator or turn off their mobile station.
In these situations, problems occur if irrelevant data is sent to or attempted to be sent to the target user. For example, sending irrelevant information tends to block other services or calls, wastes capacity in the system, reduces the battery life of mobile stations, and can confuse the listener if irrelevant packets are presented to the listener together with relevant packets.
Previous approaches sometimes attempted to purge or discard packets in networks for various reasons. However, these previous approaches did not trigger packet discard because of events that occurred during the call that rendered the packets irrelevant to a target user. Consequently, previous systems attempted to transmit irrelevant packets of various types to target users causing delays, consuming system resources, and creating inefficiencies within the network.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. It will further be appreciated that certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. It will also be understood that the terms and expressions used herein have the ordinary meaning as is accorded to such terms and expressions with respect to their corresponding respective areas of inquiry and study except where specific meanings have otherwise been set forth herein.
A system and method that discards irrelevant packets to be delivered to a mobile station in a network is described. The approaches described herein avoid delivery of irrelevant packets to mobile stations thereby reducing delays, freeing system resources, and promoting efficiency within the network.
In many of these embodiments, a call for which a packet discard policy should be applied is selectively identified based upon a received property associated with the call. The packet discard policy is applied to the selected call in order to selectively discard packets associated with the call when a triggering event occurs.
The received property may be a property of at least one packet associated with the call such as the type of the packet (e.g., an audio packet type or a control packet type). In another example, the received property may be a Quality-of-Service (QoS) type indication associated with the call. For example, the QoS indication may be a life time of a flow associated with a packet associated with the call or an indication that the packet should be discarded when a target mobile station is busy. In another example, the received property may be related to an air interface messaging sequence associated with the call. For example, this information may identify that at least one packet associated with the call should be immediately discarded.
In others of these embodiments, call control packets are identified in the call and selected ones of these call control packets are dropped after the discard policy is applied. In one example of this approach, a first call control packet and subsequent duplicates of the first call control packet are identified and the subsequent duplicates of the first call control packet are discarded after application of the discard policy. The call control packets may be packets that are created in response to packets generated within a communication infrastructure.
The triggering event may also take a variety of forms. For example, the triggering event may be a busy indication being received from a target mobile station or the infrastructure associated with the target mobile station, audio packets being received that are late, a higher priority call being received, a server indicating a desire to discard packets in a flow, or a target mobile station being identified as available via some alternate wireless technology. Other examples of triggering events are possible.
Thus, approaches are described that eliminate or substantially reduce the amount of outdated or irrelevant packets sent to mobile stations. Since unnecessary packets are not delivered to the mobile stations, valuable system resources are conserved. In addition, delays resulting from the unneeded transmissions are reduced or eliminated and general network efficiency is promoted.
Referring now to
The system of
The BTSs 106, 108, and 110 are connected to a Base Station Controller (BSC) 112 and the BTSs 126, 128, and 130 are connected to a BSC 120. The BSCs 112 and 120 are responsible for controlling the operation of the BTSs and for routing communication to other network elements. In this regard, the BSCs 112 and 120 include Packet Control Functions (PCFs) 122 and 124. As described elsewhere in this specification, the PCFs are responsible for identifying calls where a packet discard policy can be applied and applying the policy to the calls to drop packets once the appropriate calls have been identified. However, it will be realized that although these functions are described herein as being implemented at the PCFs 122 and 124, the functions can alternatively be implemented at other elements within the infrastructure 115 or among multiple elements of the infrastructure 115.
The BSCs 112 and 120 are connected to Packet Data Serving Nodes (PDSNs) 114 and 118. The PDSNs 114 and 118 in turn are coupled to a server 116, which switches information between the PDSNs 114 and 118. The server 116 may also perform other functions such as accounting and security functions.
In one example of the operation of the system of
The received property is obtained by the PCF 122 or 124. For example, the PCF 122 or 124 may monitor messages or message flows for certain types of information. In other examples, the PCF 122 or 124 may receive other types of information from other entities such as SIP CANCEL or SIP BYE packets from the server 116.
The received property may be a property of at least one packet associated with the call such as a type of the at least one packet (e.g., an audio packet type and a control packet type). In another example, the received property may be a Quality-of-Service (QoS) type indication associated with the call. For example, the QoS indication may be a life time of a flow associated with at least one packet associated with the call or an indication that the at least one packet should be discarded when the target mobile station 104 is busy. In another example, the received property may be related to an air interface messaging sequence associated with the call. For example, this property may include an identifier indicating that a packet associated with the call that should be immediately discarded. In still another example, spam or telemarketer-related information may be identified by the type or content of the packets received.
In others of these embodiments, call control packets are identified in the call and selected ones of the call control packets are dropped after the discard policy is applied. In one example of this approach, a first call control packet and subsequent duplicates of the first call control packet are identified and the subsequent duplicates of the first call control packet are discarded after application of the discard policy. The call control packets may be packets that are created in response to packets generated within the communication infrastructure 115. For example, duplicate INVITE or ACK packets may be dropped.
The triggering event may also take a variety of forms. For example, the triggering event may be a busy indication being received from a target mobile station 104, audio packets being received from the mobile station 102 that are late, a higher priority call being received from another mobile station (not shown) by the PCF 122 or 124, the server 116 indicating a desire to discard packets in a call or flow, or the target mobile station 104 being identified as available via an alternate wireless technology.
Referring now to
At step 208, some of the packets may be sent to a second BTS (BTS2) and, at step 210, from the second BTS (BTS2) to a second mobile station (MS2). At step 212, a busy indication is sent from the second mobile station (MS2) to the second BTS (BTS2) and at step 214 from the second BTS (BTS2) the Packet Control Function (PCF).
At step 216, it is determined whether to discard packets. In this case, it is determined whether the call is a candidate to having a discard algorithm applied, and if it is, the discard algorithm is applied once a triggering event occurs. For example, the system may examine the type packet (e.g., an audio packet type and a control packet type) to determine whether a policy should be applied. In another example, the system may examine a Quality-of-Service (QoS) type indication associated with the call. For example, the QoS indication may be a life time of a flow associated with at least one packet associated with the call or an indication that the packet should be discarded when a target mobile station is busy. In another example, the system may examine the air interface messaging sequence associated with the call. For example, this may include identifying that at least one packet associated with the call should be immediately discarded. Other types of received call properties may also be examined. In this case, it is determined that the call is a candidate for application of the discard policy.
Still at step 216, once it is determined whether to apply the policy, the system waits for a triggering event to occur in order to apply the policy. In this case, the triggering event is receipt of the busy indication from a mobile station. Other examples of triggering events include audio packets being received that are late, a higher priority call being received, a server indicating a desire to discard packets in a flow, or a target being identified as available via an alternate wireless technology.
As with the approaches described with respect to
Referring now to
At step 310, the PCF 302 checks a memory or buffer 314 to determine if there are duplicate control packets. For instance, the memory or buffer 314 includes Generic Routing Encapsulation (GRE) packets 316, 318, and 320 having call identifiers 86. The packets 316, 318, and 320 are duplicates of the SIP INVITE 304, so the packets 316, 318, and 320 are discarded by the PCF 302. At step 312, the PCF 302 attempts to find any valid packets that are not duplicates. However, the packet 322 is a SIP INVITE packet for mobile station 1234 and has a call identifier 293 that is unique from the call identifier 86. Since the PCF 302 has identified a valid (i.e., non-duplicate) packet, the PCF 302 issues a service request with a call identifier of 293 at step 324. In one example, the service request may be a A9 BS Service Request message.
The PCF 302 includes a receiver 326 and a controller 328. The controller 328 is programmed to receive a plurality of packets associated with a call (e.g., the SIP INVITE packet at step 304) at the input of the receiver 326. After the packets are received, the controller 328 is programmed to determine whether the call is in need of application of the packet discard policy. As discussed elsewhere in this specification, this determination is based upon information received at the receiver 326. The controller 328 also receives a trigger event at the input of the receiver 326 and, responsively, to applies the packet discard policy to the call (e.g., applying step 310) in order to selectively discard at least some of the plurality of packets associated with the call (e.g., packets 316, 318, and 320) since these packets are duplicates. Other discard policies that are based upon other criteria are possible.
Conveniently, the approaches described with respect to
Referring now to
At step 400, a user pushes a Push-to-Talk (PTT) button an INVITE message is sent to the PCF. At step 401, the INVITE is sent to the server. At step 402, the PCF receives a 100 Trying message indicating the server is processing the INVITE message. At step 404, a 183 Ringing message is received, which indicates to the originator it is acceptable to proceed with the call. The target then answers, and at step 406, a 200 OK message is received. Since the 200 OK message overrides the 100 Trying and 183 Ringing messages, the 100 Trying and 188 Ringing messages are discarded at step 408. At step 410, the 200 OK message is sent to the originator. Consequently, irrelevant messages (i.e., the 100 Trying message and the 183 Ringing message) are discarded before they are sent.
Thus, approaches are described that eliminate or substantially reduce the amount of outdated or irrelevant packets sent to mobile stations. Since the unnecessary packets are not delivered to the mobile stations, valuable system resources are not consumed. In addition, delays resulting from the unneeded transmissions are reduced or eliminated and general network efficiency is promoted.
Those skilled in the art will recognize that a wide variety of modifications, alterations, and combinations can be made with respect to the above described embodiments without departing from the spirit and scope of the invention, and that such modifications, alterations, and combinations are to be viewed as being within the scope of the invention.