System for registration of communication devices

A system that incorporates teachings of the present disclosure may include, for example, a mobile Voice over IP (VoIP) communication device (MVCD) having a controller element to register with a VoIP call processing system by way of a Wireless Fidelity (WiFi) access point operating in a cluster of WiFi access points each having cell coverage area, and re-register with the VoIP call processing system by way of the WiFi access point in response to receiving a re-registration request upon expiration of a timer having a period determined from one or more behavioral attributes of the MVCD. Additional embodiments are disclosed.

FIELD OF THE DISCLOSURE

The present disclosure relates generally to communication systems, and more specifically to a system for registration of communication devices.

BACKGROUND

It is presently common for multimode communication devices to roam between networks using a number of access technologies such as Wireless Fidelity (WiFi) and cellular. When connected to a WiFi access point, a Voice over IP (VoIP) call processing system can lose track of a communication device when it roams between WiFi access points. This can happen when the call processing system takes too long to send the communication device a request to re-register with the network. Under such circumstances, a call process system can expend unnecessary resources trying to locate the communication device to complete a call directed to it.

DETAILED DESCRIPTION OF THE DRAWINGS

In one embodiment of the present disclosure, a computer-readable storage medium can have computer instructions for detecting registration of a mobile Voice over Internet Protocol (VoIP) communication device (MVCD) by way of a Wireless Fidelity (WiFi) access point operating in a cluster of WiFi access points each having cell coverage area, enabling a timer having a period determined from one or more behavioral attributes of the MVCD, and submitting by way of the WiFi access point a re-registration request to the MVCD responsive to an expiration of the timer.

In one embodiment of the present disclosure, an MVCD can have a controller element to register with a VoIP call processing system by way of a WiFi access point operating in a cluster of WiFi access points each having cell coverage area, and re-register with the VoIP call processing system by way of the WiFi access point in response to receiving a re-registration request upon expiration of a timer having a period determined from one or more behavioral attributes of the MVCD.

In one embodiment of the present disclosure, a WiFi access point can have a controller element to receive from an MVCD a first wireless message including a registration request directed to a VoIP call processing system, transmit the registration request to the VoIP call processing system, receive from the VoIP call processing system a re-registration request directed to the MVCD upon expiration of a timer having a period determined from one or more behavioral attributes of the MVCD, and transmit to the MVCD a second wireless message with the re-registration request.

FIG. 1depicts an exemplary block diagram of a communication system100. The communication system100comprises a short-range wireless access network105comprising a cluster of WiFi access points102positioned with overlapping wireless coverage cells104. Mobile Voice over IP (VoIP) communication devices (MVCDs)106can roam between the access network105and a cellular network110depending on the location of the MVCDs.

When connected to one of these networks, the MVCD106can receive and make VoIP calls by way of an IP Multimedia Subsystem (IMS) communication system101such as shown inFIG. 2. A registration manager108utilizing common computing and communications technologies can be used to manage registration of MVCDs106roaming in the WiFi access network105.

The IMS communication system101can comprise a Home Subscriber Server (HSS)240, a tElephone NUmber Mapping (ENUM) server230, and network elements of an IMS network250. The IMS network250can be coupled to IMS compliant communication devices (CD)106or a Public Switched Telephone Network (PSTN) CD203using a Media Gateway Control Function (MGCF)220that connects the call through a common PSTN network260.

IMS CDs106can connect to the IMS network250by way of the access network105described inFIG. 1(or a wireline interface not shown). IMS CDs106can register with the IMS network250by contacting a Proxy Call Session Control Function (P-CSCF) which communicates with a corresponding Serving CSCF (S-CSCF) to register the CDs with an Authentication, Authorization and Accounting (AAA) support by the HSS240.

To accomplish a communication session between CDs, an originating IMS CD106can submit a SIP INVITE message to an originating P-CSCF204which communicates with a corresponding originating S-CSCF206. The originating S-CSCF206can submit the SIP INVITE message to an application server (AS) such as reference210that can provide a variety of services to IMS subscribers. For example, the application server115can be used to perform originating treatment functions on the calling party number received by the originating S-CSCF206in the SIP INVITE message. Originating treatment functions can include determining whether the calling party number has international calling services, and/or is requesting special telephony features (e.g., *72 forward calls, *73 cancel call forwarding, *67 for caller ID blocking, and so on).

Additionally, the originating SCSCF206can submit queries to the ENUM system230to translate an E.164 telephone number to a SIP Uniform Resource Identifier (URI) if the targeted communication device is IMS compliant. If the targeted communication device is a PSTN device, the ENUM system230will respond with an unsuccessful address resolution and the S-CSCF206will forward the call to the MGCF220via a Breakout Gateway Control Function (not shown).

When the ENUM server230returns a SIP URI, the SIP URI is used by an Interrogating CSCF (I-CSCF)207to submit a query to the HSS240to identify a terminating S-CSCF214associated with a terminating IMS CD106. Once identified, the I-CSCF207can submit the SIP INVITE to the terminating S-CSCF214which can call on an application server similar to reference210to perform the originating treatment telephony functions described earlier. The terminating S-CSCF214can then identify a terminating P-CSCF216associated with the terminating CD106. The P-CSCF216then signals the CD106to establish communications. The aforementioned process is symmetrical. Accordingly, the terms “originating” and “terminating” inFIG. 2can be interchanged.

The IMS network250can also be coupled to the registration manager108previously described inFIG. 1.

FIG. 3depicts an exemplary method300operating in portions of the communication system100. Method300begins with step302in which an MVCD106roams into a coverage cell104of a WiFi access point102. The MVCD106registers in step304with the call processing elements of the IMS network250as described above. In step306, the registration manager108detects the registration event and in step308collects one or more behavioral attributes associated with the MVCD106.

Behavioral attributes can include for example an average time the MVCD106is operating in a portion of the cluster of WiFi access points shown as access network105(denoted as “To”), an average number of calls directed to the MVCD by other communication devices (denoted as “F”), and/or an average number of times the MVCD departs from the cluster of WiFi access points (denoted as “D”). With this information and a number of weighting factors, the registration manager108can calculate a period of a timer in step310which can be used to signal the registration manager to direct the MVCD106to re-register with the IMS communication system101.

Weighting factors can include for example a probability (P) that a departure of the MVCD106from the WiFi access point102it was last coupled to does not result in a de-registration of the MVCD, a first weighting factor (wR) associated with resources of the call processing elements of the IMS network250needed to register the MVCD, a second weighting factor (wC) associated with resources of the call processing system for notifying the MVCD of an incoming call, and/or an attenuation factor (A).

The system resources consumed when the MVCD106is in the same WiFi access point102continuously can be calculated as:

“T” denotes a period of the timer used by the registration manager108. Since it's probable that the MVCD106will roam between WiFi access points102several times a day, the attenuation factor (A) can be used to minimize the chance that the MVCD will roam to another WiFi access point without the knowledge of the calling processing elements of the IMS network250. With the attenuation factor, the system resource equation can be expressed as:

The system resources consumed when the MVCD106roams away from a WiFi access point102without terminating the registration status at said WiFi access point can be expressed as:

A factor of T/2 is used to account for random departures of the MVCD from a WiFi access point without an automatic deregistration. The total system resource consumption is the sum of these equations.

The total consumption of resources can be minimized when the above equations (SRand SC) are equalized.

From this relationship, the period of the timer (T) can be determined for each MVCD106roaming between WiFi access points102as follows:

Once the timer period (T) has been determined, the registration manager108proceeds to step312where it enables a timer according to said period. If the timer expires in step314, the registration manager proceeds to step328where it submits a re-registration request to the MVCD106. If registration manager108detects in step330a re-registration of the MVCD106, it proceeds to step308and repeats the steps described above. If a registration is not detected, the registration manager108proceeds to step332where it pages the MVCD106at one or more WiFi access points102near the MVCD's last know location. If no response is detected after an exhaustive search, method300ends under the assumption that the MVCD106has likely roamed into the cellular network110or the MVCD has been powered off. If on the other hand the MVCD106has been found in step334to be in a different WiFi access point102, method300is repeated from step304as previously described.

Referring back to step314, if the timer has not expired and there are no incoming calls detected in step316, the timer continues to be monitored. If however the timer has not expired but an incoming call has arrived for the MVCD106, the call processing elements of the IMS network250submits an incoming call notice in step318according to the IMS call processing steps previously described. If a response is detected in step320, the call is directed to the WiFi access point102where the MVCD106is located in step326, and method300is repeated from step314. If no response is detected which may be indicative that the MVCD106roamed out of the access point102from which it originally registered in step304, the registration manager108can page in step322the MVCD. Once the MVCD106is found, the IMS network250directs in step324the call to the new WiFi access point102where the MVCD is located and method300is repeated from step304. If there is no response from the page, method300ends as previously described.

From the foregoing descriptions, it would be evident to an artisan with ordinary skill in the art that the aforementioned embodiments can be modified, reduced, or enhanced without departing from the scope and spirit of the claims described below. For example, the registration manager108can be decentralized so that portions of method300operate in one or more call processing elements of the IMS network150. Additionally, method300can be reordered or reduced without departing from the scope of the claim. These are but a few examples of how the embodiments described herein can be updated without altering the scope of the claims below. Accordingly, the reader is directed to the claims for a fuller understanding of the breadth and scope of the present disclosure.

The computer system400may include a processor402(e.g., a central processing unit (CPU), a graphics processing unit (GPU, or both), a main memory404and a static memory406, which communicate with each other via a bus408. The computer system400may further include a video display unit410(e.g., a liquid crystal display (LCD), a flat panel, a solid state display, or a cathode ray tube (CRT)). The computer system400may include an input device412(e.g., a keyboard), a cursor control device414(e.g., a mouse), a mass storage medium416, a signal generation device418(e.g., a speaker or remote control) and a network interface device420.

The mass storage medium416may include a computer-readable storage medium422on which is stored one or more sets of instructions (e.g., software424) embodying any one or more of the methodologies or functions described herein, including those methods illustrated above. The computer-readable storage medium422can be an electromechanical medium such as a common disk drive, or a mass storage medium with no moving parts such as Flash or like non-volatile memories. The instructions424may also reside, completely or at least partially, within the main memory404, the static memory406, and/or within the processor402during execution thereof by the computer system400. The main memory404and the processor402also may constitute computer-readable storage media.

The present disclosure contemplates a machine readable medium containing instructions424, or that which receives and executes instructions424from a propagated signal so that a device connected to a network environment426can send or receive voice, video or data, and to communicate over the network426using the instructions424. The instructions424may further be transmitted or received over a network426via the network interface device420.

The term “computer-readable storage medium” shall accordingly be taken to include, but not be limited to: solid-state memories such as a memory card or other package that houses one or more read-only (non-volatile) memories, random access memories, or other re-writable (volatile) memories; magneto-optical or optical medium such as a disk or tape; and/or a digital file attachment to e-mail or other self-contained information archive or set of archives is considered a distribution medium equivalent to a tangible storage medium. Accordingly, the disclosure is considered to include any one or more of a computer-readable storage medium or a distribution medium, as listed herein and including art-recognized equivalents and successor media, in which the software implementations herein are stored.