1. Field of the Invention
The present invention relates to supporting session continuity. In particular, the present invention relates to supporting session continuity when a communications device is changing access networks or when coverage of an access network is temporarily lost.
2. Description of the Related Art
A communication system can be seen as a facility that enables communication sessions between two or more entities such as user equipment (a communications device) and/or other nodes associated with the communication system. The communication may comprise, for example, communication of voice, data, multimedia and so on. Communication systems providing wireless communication for user equipment are known. An example of the wireless systems is the public land mobile network (PLMN). Another example is the wireless local area network (WLAN).
Multi-access refers to ability to use multiple different access networks with a single communications device. The communications device may, for example, be connected to the Internet at first using a WLAN and, when outside the coverage of the WLAN network, using a cellular communications network.
Session continuity refers to maintaining upper level connections, for example transport level connection, when the access technology, that is the link layer, changes. This means, for example, that applications in a communications device or user of a communications device does not notice change in access technology or interruptions in connectivity.
a shows, as an example, a communications device 101 capable of communicating through at least two different access networks 10a, 10b. Such a communications device is often called a multi-access (MA) device. The first access network 10a in
Consider a situation, where a communications device 101 first has a communication link with the first access network 10a. In this case, data transmission between the communications device 101 and, for example, a server connected to the public data network 30, is possible via the first access network 10a. When the communications device 101 moves within the coverage area of the first access network 10a, which is a cellular network in this example, the mobility management procedures of the cellular network handle the mobility and provide support for session continuity. When the communications device 101 moves out of the coverage area of the first access network 10a, or otherwise selects to use a different access network, it loses communications via the first access network 10a.
If the communications device 101 is a multi-access device, it may establish a communication link with the second access network 10b when moving out of the coverage area of the first access network 10a or when noticing that the signal quality (and/or other relevant parameters) provided by the second access network 10b is better than that provided by the first access network 10a.
In general, however, the network address (the Internet Protocol (IP) address, in this context) of the communications device changes, when a communications device moves from the first access network 10a to the second access network 10b. This is a problem for session continuity, as the network address is one of the parameters which generally define a session. When the network address changes, it is usually determined that connectivity has been lost and the session is terminated. The communications device, or applications in the communications device, should thus initiate new sessions after changing access networks.
In addition, the TCP/IP protocol stack is typically bound to a specific network interface. Consequently, sessions are disrupted if network connectivity is shifted across network interfaces.
b shows one example of providing session continuity for a moving communications device, namely the Mobile IP protocol.
There are, however, challenges relating to the use of Mobile IP. As an example, the Mobile IP provisioning functionality at the network end. Furthermore, the Mobile IP causes extra headers relating to tunneling to be present in data packets. This causes overhead to data transfer.
A very general approach to managing connections or sessions is to use sockets. A socket is a (host, service) pair. The host here refers to a server or other computing device, and the service is a process running on the host device. The host is either a name of a host or a network address, generally an IP address. The service is either a name of a service or a port number. A socket is said to be active until the connection is terminated, either deliberately or due to a time-out. Typical implementations do not support maintaining active sockets when a change in the access technology occurs. Closing a socket means terminating a session, so session continuity cannot be supported here.
There are thus at least the above discussed problems in providing session continuity for multi-access communications device.
The present invention aims to provide a complementary solution for supporting session continuity for multi-access communications device.
A first aspect of the present invention provides a method for supporting session continuity, the method comprising
A second aspect of the invention provides a computer program comprising program instructions for causing a computing device to perform the method of any of the appended method claims.
A third aspect of the invention provides a communications device configured to
A fourth aspect of the invention provides a method for supporting session continuity, the method comprising
A fifth aspect of the invention provides a network element configured to
A sixth aspect of the invention provides a communications system comprising at least one access network, said communications system configured to
Embodiments of the present invention will now be described by way of example only with reference to the accompanying drawings, in which:
a shows schematically a communication system in accordance with prior art;
b shows schematically a communications system implementing Mobile IP;
a shows a flowchart of a method in accordance with an embodiment of the invention;
b shows a flowchart of a method in accordance with an embodiment of the invention;
a shows a flowchart relating to further details of a method in accordance with an embodiment of the invention;
b shows a flowchart relating to alternative further details of a method in accordance with an embodiment of the invention;
In the following detailed description reference is, by way of example, made to a multi-access communications device, but it is appreciated that embodiments of the invention are applicable also in a situation where a communications devices loses communications via an access network temporarily. Losing communications via an access network may be due, for example, to the communications device being moved out of the coverage area of the access network.
The protocol layer on the link layer 202 is the network layer 203.
In the communications system 300, the gateway 310 functions as an access router for the multi-access communications device towards the public data network 30, when the multi-access communications device 301 is communicating via one of the access networks 10a, 10b and 10c. In other words, the gateway 310 provides a network address for the multi-access communications device when the multi-access communications device is using one of the access networks 10a, 10b and 10c.
It is appreciated that the term access router above is in line with the Internet Protocol Version 6 (IPv6) terminology.
It is also appreciated that the communications system 300 provides functionality for assigning network addresses for communications devices communicating via the various access networks 10a, 10b, 10c from a common network address pool. This means that it is possible to assign the same network address for a communications device after it has changed access networks within the communications system 300.
The functionality relating to managing the common network address pool may be implemented in the gateway 310 or in further entities of the communications system 300.
When the access router to a data network does not change although the access network changes and there is provided a common pool of network addresses for communications devices using a plurality of access networks, it is possible to provide support for session continuity using embodiments of the invention. In embodiments of the invention, it is attempted to keep the network address of the multi-access communications device the same even when the multi-access communications device uses first a first access network and thereafter using a second access network. Furthermore, in the multi-access communications device the change in access technology is hidden from upper protocol layers.
Information about the default gateway and about other IP protocol stack configuration parameters (in other words, information about the settings for the interface) is usually obtained when activating a Packet Data Protocol (PDP) context (in GPRS) or by using Dynamic Host Configuration Protocol (DHCP).
In Phase 1 in
In Phase 3 in
After the configuration of the second interface If_2 is complete, it is checked whether the settings of this second interface are in accordance with the settings of the virtual interface. The relevant settings are, at least, the network address assigned to the communications device and the default gateway. Other settings may differ. If the relevant settings are in accordance, communications can be resumed and data can be relayed between the virtual interface If_0 and the second interface If_2. If the settings of the second interface are not in accordance with those of the virtual interface, it is not possible to hide the change in access technology from upper protocol layers. In this case, the virtual interface will be flushed and transport sessions will be lost.
a shows a flowchart of a method 500 relating to providing in a communications device a virtual interface for hiding possible changes in access technologies or possible temporary loss of communications via an access network. In step 501, there is provided a first interface for transmitting data via an access network. This step 501 corresponds to Phase 0 in
b shows further steps for the method 500. Similarly as
The virtual interface functionality may be provided for a communications device as program code, for example, as a plug-in driver.
a and 6b show more details about configuring the network address for the second interface in step 507. Again changing access network from a first network to a second network is used as an example.
b relates to an alternative embodiment, where the communications network assigns to the communications device a network address without information of a desired network address. Alternatively, the communications network may ignore a network address request from the communications device. In step 611 the communications network detects a communication device establishing a link with the second access network In step 612, the communications network notices that the communications device is changing access network within the access networks of this communication system. Furthermore, the access networks share a common network element connecting them to the data network and providing a point-of-attachment for the communications device. The communications system determines in step 613 which network address the communications device used in the first access network. In step 614 the communications network assigns, from the common network address pool, the same network address for the communications device for use in the second access network. In step 615 the communication system transmits to the communications device information relating to the assigned network address.
It is appreciated that the communications network may use an identifier associated with the multi-access communications device for determining which network address the communications device has used earlier. One example of such an identifier is the International Mobile Subscriber Identifier (IMSI), but also other identifiers may be used. A communications system 300 may thus need to store information about the network addresses it assigns to communications devices together with identifiers associated with the communications devices. This information may be kept for a predetermined time period even after the communications with a communications device have been lost or terminated. This predetermined time period may vary, for example, from a few seconds to a few tens of seconds. This enables the communications system to determine whether a communications device establishing communications via an access network already has a network address assigned to it recently. If possible, the communications system does not assign the recently used network addresses to other communications devices before the predetermined time period has lapsed. There may be, however, situations where the network addresses need to be re-used before the predetermined time period has lapsed.
It is appreciated that for successfully supporting session continuity there may be need for functionality in accordance with embodiments of the invention in the multi-access communications device and in the communications system. If the communications system cannot provide a same access router and/or the same network address as earlier in use for the multi-access communications device 301, sessions are typically lost. On the other hand, if a multi-access communications device is not provided with the functionality relating to the virtual interface, it may not be able to maintain session even if the communication system is provided with functionality in accordance with an embodiment of the invention.
It is appreciated that the network address pool mentioned in step 805 may relate to one access network or to a plurality of access networks.
The communications system 900 has an access network 90 and a network element 910 connecting the access network 90 to a packet data network 30. The network element 910 typically provides access router functionality, and it has storage 911 for storing information about identities of communications devices and about network addresses assigned to the communications devices. It is appreciated, however, that the access router functionality and the storage may be implemented alternatively elsewhere in the communications system 900 than in the network element 910.
The communications system 900 is configured to connect the access network 90 to a packet data network for providing connectivity to communications devices. The communications system is also configured to detect a communications device 901 establishing communications via the access network 901, and to determine a network address used earlier by the communications device. If possible, the communications system 900 retains said network address for the communications device 901 when the communications device 901 communicates via the access network 90.
The communications system 900 may include a plurality of access networks. In this case, one network element typically connects these access networks to the packet data network, similarly as shown in
It is appreciated that the term communications device is intended to cover any devices receiving and/or transmitting signals from and/or to a communications system. The term is intended to cover, for example, user equipment, mobile telephones, mobile stations, personal digital assistants, laptop computers and the like. A communications device may also be a device not directly used by an end-user, for example, a server computer equipped with suitable transceiver equipment for communications via a communications network.
Although preferred embodiments of the apparatus and method embodying the present invention have been illustrated in the accompanying drawings and described in the foregoing detailed description, it will be understood that the invention is not limited to the embodiments disclosed, but is capable of numerous rearrangements, modifications and substitutions without departing from the spirit of the invention as set forth and defined by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
20041104 | Aug 2004 | FI | national |