1. Field of the Invention
The present invention relates to a communications session switching method and system, and in particular, to a communications session switching method and system that switches a communications session in response to any of a change in network, a change in communications terminal, and a change in application.
2. Description of the Related Art
As a mobility support technique for a communications terminal, a network switching technique in which communications are not terminated despite a change in IP address when the communications terminal is carried around has been examined. This method allows concealing a change in network from an application but does not correspond to a more flexible mobility support to switch an application or switch a terminal in an environment where a plurality of terminals exist.
An SIP (Session Initiation Protocol) used in VoIP is a protocol to initiate a session between users. On the other hand, Non-patent Literature 1 defines a REFER method on the SIP. The REFER method is a method for executing a call transfer. As a detailed usage example thereof, one can be mentioned such that in a condition where a communications terminal A and a communications terminal B are communicating with each other, when the communications terminal A transmits a “REFER to a communications C” to the communications terminal B, the communications terminal B that has received this request shifts to a call to the communications terminal C. In this operation, a communications partner of the communications terminal B has been switched from the communications terminal A to the communications terminal C, thus execution of a terminal switching has been realized.
Non-patent Literature 1: IETFRFC3515 The Session Initiation Protocol (SIP) Refer Method
The technique using the REFER method is a terminal change on the assumption that the application is fixed, and is available in a very limited scenario. Accordingly, the technique is preferably applied to a telephone transfer function and the like.
On the other hand, in an environment where communications terminals have diversified and become ubiquitous, a communications service cannot always be executed only with a uniform application. For example, even granting that a service where users communicate with each other is realized, switching of the application itself is also demanded to suit the situation, such that according to an environment surrounding the users, VoIP is suitable in one case, and a videophone, in another case.
As a detailed example of the entire service, a scenario such that a user that had been in VoIP communications by use of a portable telephone outdoors switches the communication to a video telephone using a PC when returning to his/her office can be mentioned. In addition, at that time of switching, it can also be considered that a demand for using the portable telephone to input/output a voice despite wanting to display a videophone screen on the PC arises.
Furthermore, in communications today, communications between terminals across local networks sectioned by gateways such as NAT gateways are also frequently carried out. However, with a terminal change by the REFER method, although there is no problem on a global network or when all terminals are present on a single local network, a terminal change and the like to a communications terminal in a local network cannot be executed because of a problem of address reachability.
It is an object of the present invention to provide a communications session switching method and system that switches a session established between communications terminals while maintaining an application executed by the session.
The present invention is characterized by including the following steps in a communications session switching method that switches a communications session established between first and second communications terminals accessible to a network where a session management server has been arranged while maintaining an application executed by the session.
According to the present invention, the following effects can be achieved.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings.
Here, description will be given of a case where the first communications terminal 1 that is in communication with the second communications terminal 2 uses any of a network change, a terminal change, and an application change as a trigger to switch a communications session while maintaining a communications service that is in execution, for example.
In the present embodiment, the “network change” means that an IP address of the first communications terminal 1 is changed. The “terminal change” means that an application executing terminal is changed from the current first communications terminal 1 to another communications terminal (third communications terminal 3 to be described later) by the user A accessible to a plurality of communications terminals including the first communications terminal 1. The “application change” means that the whole or a part of an application function that is in execution in the first and second communications terminals 1 and 2 is changed to another function or another application.
In
A message transmitting/receiving section 104 transmits/receives a message with respect to the session management server 4. An application processing section 105 executes an application start and termination, notice of information to an application, and the like in response to reception of a message transmitted from the session management server 4. A gateway setting section 106 executes an operation of the gateways 5a and 5b including a NAT setting in response to reception of a message transmitted from the session management server 4. An interface 107 connects the session management server 4 and the first communications terminal 1.
An address change detecting section 108 monitors an IP address of the interface 107 and informs, when this is changed, the change information extracting section 101 of the fact. A resource management section 109 manages a communications terminal for which the user A has accessibility and application information by notifying the presence management server 6 of application information accessible on its own terminal and acquiring an IP address of a communications terminal to which the user A is accessible and application information, which have been registered in the presence management server 6. In addition, when receiving a session switching request message to be described later, the resource management section 109 judges as to whether or not switching itself is possible.
The application information includes an application ID that uniquely specifies an application by a combination of a manufacturer of the application and an application name or the like, a function ID that indicates a function the application can provide, and information unique to the application such as a codec. A switching detecting section 110 detects a switching/change of a communications terminal or an application being selected based on information registered in the resource management section 109 and notifies the change information extracting section 101 of the fact.
In the communications state table 102, as an example thereof schematically shown in
In the session management server 4, a session switching section 401 analyzes a message received from each communications terminal and collates contents of a change that has triggered a session switching, configuration information on a session to be switched, and information stored in the session state table 402 to determine contents of a notifying message and a communications terminal to which notice is given.
In the session state table 402, as an example thereof schematically shown in
The gateway units 5a and 5b provide a NAT function concerning a packet passage and execute a gateway function setting in response to an instruction from gateway setting sections 106 and 206 of the respective communications terminals 1 and 2.
Next, a communications session switching method according to the present invention will be described for each changing target. Here, description will be given of a case where a session is switched based on (1) a change in network, (2) a change in communications terminal, and (3) a change in application as a trigger, for example.
In the first communications terminal 1 of the user A, when, for example, the IP address of the interface 107 is changed according to an address system of a destination network, this is detected by the address change detecting section 108 and is notified to the change information extracting section 101. The change information extracting section 101 refers to the communications state table 102 in response to the notice and acquires session configuration information including a user ID of the user B to which a network change (IP address change) is notified, a session ID inherent in a switching target session established between the users A and B, and an application ID used by the first communications terminal 1 in the session and function IDs thereof. The message generating section 103 registers a session switching factor 5 (network change in the present embodiment) and the session configuration information in a session switching message and transmits the same from the message transmitting/receiving section 104 to the session management server 4.
Upon receiving the session switching message where the session switching factor is a “network change,” the session switching section 401 of the session management server 4 collates its own session state table 402 based on the respective user IDs of the users A and B and session ID registered in this message, and extracts an IP address of the second communications terminal 2 to which a network change is notified.
In the session management server 4, furthermore, a session switching message where the session switching factor is a “network change” is prepared by the message generating section 403, and this is transmitted from the message transmitting/receiving section 404 to the first and second communications terminals 1 and 2. In this session switching message, along with the session switching factor, respective user IDs of the users A and B, a session ID, respective IP addresses of the first and second communications terminals 1 and 2 registered in the session management server 4, an application ID that requires a change in IP address and function IDs thereof, and the like have been registered.
In the first communications terminal 1, in response to reception of the session switching message, the IP address of the interface 107 is compared with the IP address of the first communications terminal 1 registered in the session switching message by the gateway setting section 106, and based on this comparison result, which communications terminal on a local network or on a global network is the communications terminal itself is judged.
If the IP address of the interface 107 is of a local network, the gateway setting section 106 sets the gateway 5a so that data from the second communications terminal 2 can be received. In contrast thereto, if the IP address of the interface 107 is an IP address on a global network, nothing is carried out. On the other hand, the application processing section 105 executes a processing concerning an IP address change and the like for an application in execution.
In the second communications terminal 2 as well, the same processing is executed in response to reception of the session switching message, and if the IP address of a communications interface 207 is an IP address on a local network, the gateway setting section 206 sets the gateway 5b so that data from the first communications terminal 1 can be received.
Upon completion of the above steps, a session switching completion message is transmitted from the first and second communications terminals 1 and 2 to the session management server 4. Upon receiving the switching completion message from all communications terminals concerning a session switching, the session management server 4 judges that a session switching has been completed and updates the session state table 402. The above operations are the same in a case where the first communications terminal 1 communicates with a plurality of communications terminals of the user B for each of the application functions.
When the user A designates an application based on management information registered in the resource managing section 109 of the first communications terminal 1 and inputs an instruction to change an executing terminal thereof from the current first communications terminal 1 to the third communications terminal 3, a terminal change instruction including function IDs of the application and an IP address of the third communications terminal 3 is detected by the switching detecting section, and this is notified to the change information extracting section 101.
The change information extracting section 101 refers to the communications state table 102 and acquires a user ID of the user B to which a terminal change is notified and a session ID. The message generating section 103 registers, along with the terminal change instruction, respective user IDs of the users A and B, function IDs of a shifting application, a session ID, and the IP address of the third communications terminal 3 to which the application is shifted in a session switching message, and transmits these from the message transmitting/receiving section 104 to the session management server 4.
Upon receiving the session switching message in which the terminal change instruction has been registered, the session switching section 401 of the session management server 4 collates its own session state table 402 based on the respective user IDs of the users A and B and session ID registered in this message, and extracts information on the second and third communications terminals 2 and 3 to which a terminal change is notified. The message generating section 403 prepares a session switching message based on the extracted information. This session switching message is transmitted from the message transmitting/receiving section 404 to the first, second, and third communications terminals 1, 2, and 3.
In the session switching message, respective user IDs of the users A and B, a session ID, respective IP addresses of the first and second communications terminals 1 and 2 registered in the session management server 4, and function IDs of an application that require a change in IP address have been registered.
Thereafter, similar to the case of a network change, in the respective communications terminals 1, 2, and 3, in response to reception of the session switching message, the IP addresses of the respective interfaces are compared with the IP addresses of the respective communications terminals registered in the session switching message by the gateway setting sections 106, 206 and 306, and based on this comparison result, which communications terminal on a local network or on a global network is the communications terminal itself is judged. If the IP addresses of the interfaces are of a local network, the gateway setting sections 106, 206, and 306 set the respective gateways 5a, 5b, and 5c so that data from the other communications terminals can be received. In contrast thereto, if the IP addresses of the interfaces are IP addresses on a global network, nothing is carried out. The respective application processing sections 105, 205, and 305 execute a processing concerning an IP address change and the like for an application in execution.
Upon completion of the above steps, a session switching completion message is transmitted from the first to third communications terminals 1, 2, and 3 to the session management server 4. Upon receiving the switching completion message from all communications terminals concerning a session switching, the session management server 4 judges that a session switching has been completed and updates the session state table 402.
Unlike the network change in the first embodiment or the terminal change in the second embodiment, since an application change causes a change in the communications state of a communications partner (user B), it becomes necessary to provide a step of gaining in advance approval to an application change from the communications partner before transmitting the session switching message. In the present embodiment, a message to be generated and transmitted according to the step is expressed as a “session switching request message” for discrimination from the “session switching message.”
When the user A inputs a request for a change in the application based on management information registered in the resource management section 109 of the first communications terminal 1, an application change request including application IDs before and after a change and function IDs thereof and the IP address of the communications terminal to activate respective functions of the application is detected by the switching detection section 110, and this is informed to the change information extracting section 101.
The change information extracting section 101 refers to the communications state table 102 and acquires a user ID of the user B to which a terminal change is notified and a session ID. The message generating section 103 stores, along with the application change request, respective user IDs of the users A and B, a session ID, an application ID after switching and function IDs thereof, and an IP address of the communications terminal to activate respective functions of the application, and transmits these from the message transmitting/receiving section 104 to the session management server 4.
Upon receiving the session switching request message, the session switching section 401 of the session management server 4 collates the session state table 402 based on the respective user IDs of the users A and B and session ID included in this message, and refers to information on the second communications terminal 2 to which the session switching request message is transmitted. Then, the message generating section 403 prepares a session switching request message and transmits the same from the message transmitting/receiving section 404 to the second communications terminal 2. This session switching request message includes respective user IDs of the users A and B, a session ID, and an application ID after switching and function IDs thereof.
In the second communications terminal 2, the session switching request message is analyzed by the resource management section 209 to judge as to whether or not the communications terminal can execute the application after switching by itself. The switching processing is terminated if execution is impossible. If switching is possible and application switching is approved by the user B, this is notified by the switching detecting section 210.
The message generating section 203 generates a switching approval message in which respective user IDs of the users A and B, a session ID, an application ID after switching and function IDs thereof, and an IP address of the communications terminal to activate respective functions of the application have been registered, and transmits the same from the message transmitting/receiving section 204 to the second communications terminal 2.
When an application change has been approved by the second communications terminal 2 in such a manner as in the above, thereafter, similar to the respective embodiments described above, the message generating section 403 prepares a session switching message and transmits the same from the message transmitting/receiving section 404 to the first and second communications terminals land 2. This session switching message includes respective user IDs of the users A and B, an application ID after switching and function IDs thereof, and an IP address of the communications terminal to activate respective functions of the application.
Although illustration is omitted, in a case where the user A that is in communication by means of the first communications terminal 1 and the user B that is in communication by means of the second terminal 2 are in communication while simultaneously using a plurality of communications terminals as well, a session can be switched by the same steps as the above.
Number | Date | Country | Kind |
---|---|---|---|
2005-047012 | Feb 2005 | JP | national |