The present invention concerns a method for providing location privacy for a terminal node (MN) in communication with a communication partner node (CN) in a communication network system comprising at least a first communication network (HN, VN), wherein a respective node (MN) communicating via said communication network system is identified by its permanent network address (MN_PA) and addressable by a temporary network address (MN_CoA), at least one server entity (LPS), a plurality of agent entities (LPA1, . . . , LPAn), wherein each of said at least one server entities (LPS) maintains a record of said plurality of agent entities (LPA1, . . . , LPAn) and their respective location within the network system, said method comprising the steps of: requesting (S41), by said terminal node (MN), said at least one server entity (LPS) for location privacy, selecting (S42), at said at least one server entity (LPS), a specific one of said plurality of agent entities (LPA1, . . . , LPAn), based on data maintained in said record of said server entity and said temporary network address of said requesting terminal node, and communicating (S46) messages between said terminal node (MN) and said communication partner node (CN) via said selected one (LPA) of said agent entities. The present invention also, concerns corresponding network systems, server entities, agent entities and terminal nodes.

Patent
   7349377
Priority
Nov 09 2001
Filed
Nov 09 2001
Issued
Mar 25 2008
Expiry
May 14 2024
Extension
917 days
Assg.orig
Entity
Large
12
12
EXPIRED
23. A communication network system, comprising:
at least a first communication network, wherein a respective node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address;
at least one server entity;
a plurality of agent entities, wherein each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system;
database means for maintaining a record of said plurality of agent entities and their respective location within said communication network system; and
processing means for selecting a specific one of said plurality of agents entities, based on data maintained in said record and a temporary network address of a requesting terminal node.
8. A communication network system, comprising:
at least a first communication network, wherein a respective node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address;
at least one server entity;
a plurality of agent entities; wherein each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system;
a database configured to maintain a record of said plurality of agent entities and their respective location within said communication network system; and
a processor configured to select a specific one of said plurality of agent entities, based on data maintained in said record and a temporary network address of a requesting terminal node.
22. A communication network system, comprising:
at least a first communication network, wherein a respective terminal node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address;
at least one server entity; and
a plurality of agent entities; wherein
each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system, wherein said terminal node is configured to
create, by said terminal node at a selected agent entity, a mapping between the terminal node's permanent network address and its temporary network address, and
create, by said terminal node at a communication partner node, a mapping between the terminal node's permanent network address and a selected agent entity's address.
21. A communication network system, comprising:
at least a first communication network, wherein a respective terminal node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address;
at least one server entity; and
a plurality of agent entities; wherein
each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system, wherein said terminal node is configured to
first retrieve a first network domain represented by a network address range to which address range the temporary address of the terminal node belongs,
second retrieve a second network domain represented by a network address range to which address range the address of a communication partner node belongs, and
determine an agent entity to be selected, based on said retrieved information.
1. A method, comprising:
providing location privacy for a terminal node in communication with a communication partner node in a communication network system comprising at least a first communication network, at least one server entity, and a plurality of agent entities;
identifying a respective node communicating via said communication network system by its permanent network address and addressing the respective node by a temporary network address;
maintaining by each of said at least one server entities a record of said plurality of agent entities and their respective location within the network system;
requesting, by said terminal node, said at least one server entity for location privacy;
selecting, at said at least one server entity, a specific one of said plurality of agent entities, based on data maintained in said record of said server entity and said temporary network address of said requesting terminal node; and
communicating messages between said terminal node and said communication partner node via said selected one of said agent entities.
20. A communication network system, comprising:
at least a first communication network wherein a respective terminal node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address;
at least one server entity;
a plurality of agent entities; and wherein
each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system, wherein said terminal node is configured to
provide location privacy for a terminal node in communication with a communication partner node in said communication network system comprising at least a first communication network,
identifying a respective node communicating via said communication network system by its permanent network address and address the respective node by a temporary network address,
maintain by each of said at least one server entity a record of said plurality of agent entities and their respective location within the network system,
request, by said terminal node, said at least one server entity for location privacy,
select, at said at least one server entity, a specific one of said plurality of agent entities, based on data maintained in said record of said server entity and said temporary network address of said requesting terminal node, and
communicate messages between said terminal node and said communication partner node via said selected one of said agent entities.
2. The method according to claim 1, further comprising:
configuring said request to include the network address of said communication partner node with which a communication is desired to be performed, the permanent network address of said requesting terminal node, and said temporary network address of said requesting terminal node by which it is addressable within said communication network system.
3. The method according to claim 1, further comprising:
deriving said respective location of said agent entities based on a network domain to which the agent entity is assigned; and
representing the domain by a network address range in the network.
4. The method according to claim 3, further comprising:
basing said selecting on said known network address of said communication partner node with which a communication is desired to be performed, which is included in said request.
5. The method according to claim 4, wherein said selecting comprises:
first retrieving a first network domain represented by a network address range to which address range the temporary address of the requesting terminal node belongs;
second retrieving a second network domain represented by a network address range to which address range the address of the communication partner node belongs; and
determining the agent entity to be selected, based on said retrieved information.
6. The method according to claim 1, further comprising:
informing said requesting terminal node about the selected agent entity before communicating messages.
7. The method according to claim 1, further comprising:
creating, by said terminal node at said selected agent entity, a mapping between the terminal node's permanent network address and its temporary network address; and
creating, by said terminal node at said communication partner node, a mapping between the terminal node's permanent network address and the selected agent entity's address.
9. The communication network system according to claim 8, wherein:
said respective location of said agent entities is derivable based on a network domain to which the agent entity is assigned, the domain being represented by a network address range in the network.
10. The communication network system according to claim 8, wherein:
to each of said communication networks there is associated one of said server entities.
11. The communication network system according to claim 8, wherein:
to each of said communication networks there is associated a plurality of said agent entities.
12. The communication network system according to claim 8, wherein:
said respective location of said agent entities is derivable based on a network domain to which the agent entity is assigned, the domain being represented by a network address range in the network.
13. The communication network system according to claim 12, wherein said processor comprises:
a selector configured to comprise a first retrieving unit configured to retrieve a first network domain represented by a network address range to which address range the temporary address of the requesting terminal node belongs;
a second retrieving unit configured to retrieve a second network domain represented by a network address range to which address range the address of the communication partner node belongs; and
a determination unit configured to determine the agent entity to be selected, based on said retrieved information.
14. The communication network system according to claim 8, wherein:
said record is configured by a network operator dependent on a topology of a communication network forming a communication network system.
15. The communication network system according to claim 14, wherein:
said record is configured by a network operator dependent on a topology of a communication network forming a communication network system, and said server entity is configured to extend said record by adding record information from other server entities within said communication network system.
16. The communication network system according to claim 8, wherein:
said record is configured by a network operator dependent on a topology of a communication network forming a communication network system, and said server entity is configured to extend said record by adding record information from other server entities within said communication network system.
17. The communication network system according to claim 8, further comprising:
a transmitter configured to receive and send information used for forming and maintaining said record, receive requests from terminal nodes, and configured to send processing results to a requesting terminal.
18. The communication network system according to claim 17, wherein:
said transmission unit is configured to send processing results to a selected agent entity.
19. The communication network system according to claim 8, wherein each of said plurality of agent entities comprises
a memory unit configured to cache a mapping of a permanent address identifying a terminal node to a temporary address of said terminal node indicative of a location of said terminal node, and
a routing unit configured to forward data packets received from said terminal node to an addressed communication partner node and to forward data packets received from said communication partner to said terminal node, wherein said forwarding is based on the cached mapping information in said memory unit.

The present invention relates to a method, system and system entities for providing location privacy in communication networks.

Recently, development of communication networks has made considerable progress. Among such communication networks, there are an increasing number of communication networks supporting mobility of the users having subscribed to the networks. A user is represented by a terminal node he uses for communication with a communication partner node. Note that in general a communication partner node is of the same or a similar type than a terminal node, while “partner node” has only been chosen to illustrate that this is the destination or called node in communication. A terminal node/communication partner node may for example be a mobile phone, mobile laptop computer or the like. Nevertheless, a called communication partner node may also be a fixed terminal such as e.g. a personal computer PC.

With the increasing spreading and acceptance of the Internet, a harmonization of communication networks arises in that communication networks tend to be compatible with the Internet. Thus there is a tendency to adopt the Internet Protocol IP also in communication networks other than the Internet. In particular in mobility supporting communication networks, IP is adopted in a mobility supporting version still compatible with IP “as such”. For example, Mobile IPv4, Mobile IPv6 or Cellular IP protocol version exists. For the purpose of the present invention it is not crucial which protocol is used as long as the protocol supports mobility of terminals within the communication network (or network system) and as long as the used protocol is a packet-based protocol. A packet-based protocol is a protocol according to which data are transmitted in units of packets (also known as cells) consisting of a payload section and a header section. The payload section carries the data to be communicated while the header section contains management data required e.g. for routing of the packet and indicative of e.g. quality of service QoS provided for the packet. Also, the network itself is not limited for the present invention to be described later as long as the network is a packet-switched network supporting mobility of the users such as for example GPRS, UMTS, the Internet or the like.

A brief general introduction to Mobile IP and definitions of common terms in this technical field can be found under http://www.darmstadt.gmd.de/mobile/mobileip/mobileIP.html, retrieved from the Internet on Oct. 10, 2001.

In communication networks, terminal and/or communication partner nodes are identified by a permanent address PA. If the terminal is immobile, an access point address of the terminal to the network and the terminal's permanent address may coincide with each other. However, if the terminal is mobile, this addressing scheme will not work any longer.

FIG. 1 shows in rough outline a mobile terminal MN identified in the communication network NW by its permanent address MN_PA. On the left hand side, the terminal MN is in a first position pos1 and has access to the network NW via an access point AP1. Assigned to the access point AP1 is an access point address denoted by CoA_1. For example, in a UMTS network, an access point could be represented by a Node_B, while in a GPRS network, an access point could be represented by a SGSN. Assuming that the terminal is mobile, it may reach a position pos2 different from position pos1. In position pos2, however, the access point for accessing the network has changed to access point AP2 (having as its address CoA_2). In such cases, addressing of the terminal MN by its permanent address MN_PA will not be possible any longer.

Therefore, in mobile networks the terminal is addressed by its temporary address CoA (known as care-of-address) which is mapped to its permanent address.

For example, Mobile IPv6 defines a mechanism known as Route Optimization. This mechanism enables Correspondent Nodes CN (communication partner nodes) to directly send packets to the Mobile Node MN (terminal node). Namely, when using Route Optimization, the mobile node MN sends a message (known as Binding Update message) indicating its Care-of-Address CoA to the correspondent code CN. The correspondent node CN caches (buffers) the binding of a mobile node MN (i.e. it maps the MN_PA address to the MN_CoA address), and then sends its datagrams (packets) destined for the mobile node MN directly to the care-of address, bypassing a mobile node's home agent. Mobile IPv6 Binding Update messages carry the CoA of the mobile node MN thus revealing information about its geographic location, but operators want to support Location Privacy. That is, by having knowledge of the Mobile Node's Care of Address, the Correspondent Node can deduce the geographic location of the Mobile Node. That is, a communication partner being aware of the (calling) terminal's care-of-address, may deduce the location (e.g. pos1 or pos2) of the terminal from this temporary address as explained before. (Note that the MN is associated with an MN_CoA for addressing while away from “home”, whereas when at home, the MN can be both addressed and identified by the MN_PA.)

One possibility to avoid this is to use a mechanism known as triangular routing using a mobile node's home agent HA in the network. In this case, route optimization will not apply but on the contrary, the correspondent node CN sends the packets to the permanent address PA of the mobile node MN. (Without receiving Binding Update, the mobile node's permanent address MN_PA is the only address the correspondent node CN knows about the mobile node MN). Then the Home agent HA intercepts these packets. And thanks to a Binding cache mapping the MN_PA to the MN_CoA maintained at the HA by having the MN updating it via Binding Update messages; the Home Agent knows where to send the packets and can thus tunnel them to the MN. In the other direction, the MN will use the MN_PA as the source of its packets sent to the CN; and in order to bypass ingress filtering, the mobile node MN first tunnels its packets to the Home Agent which will decapsulate them and send forward them to the correspondent node CN.

Using these mechanisms, triangular routing and reverse-tunneling, MN and CN can still exchange packets and the MN_CoA is not revealed to the CN. Although this approach does not reveal location information by means of the mobile node's care-of-address MN_CoA to the correspondent node CN, this mechanism is not optimized in terms of the routing for the communicated packets as they inevitably have to pass through the mobile node's MN home agent. Thus, triangular routing and reverse tunneling requires going back through the mobile node's MN home network for uplink (from MN to CN) and downlink (from CN to MN) communications and thus implies long routing legs. This may imply a delay of packet delivery. Also, since all packets are routed via the home agent in the home network of the mobile terminal node MN, dependent on the number of other nodes of the same home network communicating via the same home agent of the network or at least via a proper home agent in the same home network, there is a risk that the home network or parts of the network get overloaded by traffic being routed in such a way.

In current cellular networks, location privacy must be supported: The receiving node should not know where the initiating node is geographically located. Mobile IP based networks should at least support the current existing services for a commercial deployment and thus Location privacy should be supported in Mobile IP based networks.

Thus, as basically stated above, Mobile IPv6 has been developed in order to allow an IPv6 Mobile node to seamlessly roam among different subnetworks. When moving to a new point of attachment, the mobile node gets a Care of address and uses it to send and receive packets. This care of address contains information about the mobile node's current location: the network prefix of the care of address may e.g. reveal some information about the current mobile node's location such as the domain and/or any other geographic information.

A mobile node may, however, not want its correspondent nodes to learn such kind of information but may prefer to hide its location. Such property, called Location privacy, is a requirement in some current cellular networks and may be a very desirable if not mandatory feature in IP mobile networks. The goal would be for the corresponding node not to be able to know where the mobile node is located. It is desirable for Mobile IP based networks to at least support the current existing services for a commercial deployment, thus location privacy should be supported in Mobile IP based networks.

Mobile IPv6 allows location privacy to be supported using both triangular routing and reverse tunneling. However, neither of these two solutions is efficient since they require all packets, both destined to and generated by the mobile node, to pass through the home agent. The routing of these packets is therefore not optimal. In addition, these mechanisms rely on tunneling, thus resulting in large overheads (two IP headers) for all the packets originated and sent to the MN. This may not be acceptable over access links where bandwidth is limited and expensive.

In Mobile IPv6, each mobile node is always identified by its home address, regardless of its current point of attachment to the Internet. While situated away from its home, a mobile node is also associated with a care-of address, which may provide to correspondent nodes information about the mobile node's current location.

IPv6 packets addressed to a mobile node's home address are transparently routed to its care-of address: the packets are actually intercepted by a home agent which then encapsulates them to the mobile node's care of address.

A MN may decide not to send any Binding update to the CN but every packets from the CN destined to the MN will then need to go through the HA. This is called triangular routing. The MN can also send a Binding Update to the correspondent node to inform it of its care of address. The correspondent node can thus directly send the packets to the mobile node without going through the Home Agent.

Mobile IPv6 also allows MN to send packets directly to the CN: the source IP address of the packets has to be set to the MN's CoA to bypass ingress filtering and the packets will also carry the Home Address option.

In both cases, the use of Binding Updates and care-of address sourced packets allows the CN to learn the CoA corresponding to the MN and subsequently to learn information about the MN's location.

In order to hide its location, the MN needs to use its home address as the source IP address of the packets, and tunnel packets to the HA to bypass ingress filtering. This is called reverse tunneling.

To support Location privacy with existing mechanisms, both triangular routing and reverse tunneling must be used. However, neither of these two solutions is efficient since they require all the packets, both from the MN to the CN and from the CN to the MN, to go through the Home agent. This may result in very inefficient routing of the packets: e.g. the MN may be from Australia (Home agent therefore in Australia) and roaming to France. Its CN may be in Germany. All the packets exchanged between the MN and CN must go through Australia (France<->Australia<->Germany). The routing of packets between MN and CN is therefore not optimized and this may also induce more delay.

In addition to these drawbacks, since both triangular routing and reverse tunneling rely on tunneling, an extra outer IP header is required. Additional 40 bytes are required for every packets exchanged between the mobile node and the corespondent node.

Hence, it is an object of the present invention to provide method for providing location privacy for a terminal node in communication with a communication partner node in a communication network system, a corresponding communication network system and corresponding network entities, by means of which the above drawbacks can be eliminated.

According to the present invention, this object is for example achieved by a method for providing location privacy for a terminal node in communication with a communication partner node in a communication network system comprising at least a first communication network, wherein a respective node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address, at least one server entity, a plurality of agent entities, wherein each of said at least one server entities maintains a record of said plurality of agent entities and their respective location within the network system, said method comprising the steps of: requesting, by said terminal node, said at least one server entity for location privacy, selecting, at said at least one server entity, a specific one of said plurality of agent entities, based on data maintained in said record of said server entity and said temporary network address of said requesting terminal node, and communicating messages between said terminal node and said communication partner node via said selected one of said agent entities.

According to further refinements of the method,

According to the present invention, this object is for example achieved by a communication network system, comprising at least a first communication network, wherein a respective node communicating via said communication network system is identified by its permanent network address and addressable by a temporary network address, at least one server entity, a plurality of agent entities, wherein each of said at least one server entity maintains a record of said plurality of agent entities and their location within the network system.

According to favorable refinements of the system,

According to the present invention, this object is for example achieved by a server entity comprising a database means adapted to maintain a record of a plurality of agent entities and their respective location within a communication network system, and a processing means adapted to select a specific one of said plurality of agent entities, based on data maintained in said record and a temporary network address of a requesting terminal node.

According to favorable refinements of the server entity,

According to the present invention, this object is for example achieved by an agent entity comprising a memory means adapted to cache a mapping of a permanent address identifying a terminal node to a temporary address of said terminal node indicative of a location of said terminal node, and routing means adapted to forward data packets received from said terminal node to an addressed communication partner node, and to forward data packets received from said communication partner to said terminal node, wherein said forwarding is based on the cached mapping information in said memory means.

According to the present invention, this object is for example achieved by a terminal node for use with a communication network system as specified above and adapted to carry out the method as specified above.

By virtue of the present invention, the following advantages can be achieved:

a) location privacy for a terminal node in communication with a communication partner node in a communication network system can be provided; namely, the correspondent node CN does not have any information regarding the geographic location/position of the mobile node terminal,

b) packet routing between the mobile terminal node MN and the corespondent node CN is almost as optimized in terms of performance as if Route Optimization was applied, since the location privacy agent is located between the MN and the CN; neither triangular routing nor reverse-tunneling via a home agent is required and long routing legs can be prevented;

c) due to different location privacy agents being used for different correspondent nodes, depending on the correspondent nodes position, traffic within the network system is further distributed and a risk of congestion in some part of the network is further reduced.

The present invention thus describes a solution providing location privacy for a mobile node with optimized routing between the mobile node and the correspondent node. The mechanism described in this document also solves the previous overhead issue.

The above and still further objects, features and advantages of the present invention will become more fully apparent upon referring to the accompanying drawings, in which

FIG. 1 illustrates in rough outline a mobile terminal MN identified in the communication network NW by its permanent address MN_PA and addressed by its temporary care-of-address MN_CoA;

FIG. 2 shows schematically a first example of a communication network system NW_SYS according to the present invention, the system comprising a single communication network NW_1;

FIG. 3 shows schematically a second example of a communication network system NW_SYS according to the present invention, the system comprising two communication network NW_1, NW_2;

FIG. 4 illustrates a signaling involved between entities of the network system and terminal nodes in connection with the method according to the present invention;

FIG. 5 shows as a simplified block diagram components of a server entity LPS according to the present invention, and

FIG. 5A shows an example of entries to a record maintained at the server entity's side;

FIG. 6 shows as a simplified block diagram components of an agent entity LPA according to the present invention;

FIGS. 7A, 7B, and 7C show details of a location privacy request message format; and

FIGS. 8A and 8B show details of a location privacy response message format

According to the present invention, triangular routing and reverse-tunneling via a home agent is avoided. Briefly stated, a selected one of a plurality of location privacy agents LPA is used instead, and routing is achieved via the selected location privacy agent (agent entity). The selection of a proper agent entity is achieved by the interoperation with a location privacy server LPS (server entity).

This present invention offers an alternative for Location Privacy allowing optimized routing at the same time. The solution relies on Location Privacy Servers (LPS) in the mobile node's home domain and Location Privacy Agents (LPA) distributed in different locations. The solution does not require any modification neither to the Home Agents nor the CNs.

Upon receiving packets from a CN, or upon initiating a session with a CN, if the mobile node also wants Location privacy, the mobile node sends a Location privacy request to a Location Privacy server. The mobile node may be preconfigured with an address of a Location Privacy Server or can send the request to a well-known anycast address. (Note: A packet sent to an anycast address is delivered to any one of several possible nodes that are identified by that address, typically a node that is closest to the sender of the packet.) A Location Privacy Server will intercept the request and process it. The Location Privacy Request should be secured. A security association can e.g. be pre-established between the MN and its home network and used to protect this message. The Location Privacy Request should (at least) contain the MN's Home Address, the MN's CoA and the CN address.

Based on the MN's CoA and the CN's address, the LPS will assign the appropriate LPA: The LPA should be as close as the CN as possible for location privacy to be efficient; and the LPA should be assigned such that the routing between the MN'CoA and the CN's address, be as optimized as possible.

The LPS sends a Location Privacy Response to the mobile node: such message will include the address of the assigned LPA. The Location Privacy Reponse should be secured. Formats of the Location Privacy Request and Location Privacy Response are subsequently further detailed.

The mobile then sends a Binding Update to the LPA. This will create a binding cache between the MN's CoA and the MN's home address at the LPA, which will then be able to forward the packets sent from the CN.

The mobile node also sends a Binding update to the CN to create a Binding Cache between the MN's home address and the LPA address. The source of such IP packet is set to the MN's home address, and an alternate care of address option will carry the LPA address; or the source of the packet may be simply set to the LPA address. This binding update will be encapsulated and first tunneled to the LPA, which will forward it to the CN. This allows bypassing ingress filtering.

After such procedures, the CN will send packets to the LPA, which will forward them to the MN's CoA; and the MN will send the packets to the CN via the LPA. Routing of these packets is discussed further below.

When moving to different locations and changing CoA, the MN only needs to update the binding cache in the LPA via Binding Update messages.

After changing locations many times, the LPA may not be the most optimized and the mobile node can therefore perform these same procedures: it sends a Location Privacy request to the LPS providing its home address, its new Care of Address but also the CN's address. Then if a new LPA is assigned, as previously, the mobile node sends a Binding Update to the new LPA and a Binding Update to the CN to update its binding cache with the new LPA address.

Security considerations of such mechanism will also be discussed further below.

Subsequently, the present invention will be described in detail with reference to the drawings.

FIG. 2 shows schematically a first example of a communication network system NW_SYS according to the present invention. The system NW_SYS comprises a single communication network NW_1. Associated to the network NW_1 is a location privacy server LPS_1 acting as a server entity according to the present invention. Also, associated to the network NW_1 there are a plurality of agent entities also referred to as location privacy agents LPA_1, . . . , LPA_n. (Note that it is not excluded that a server entity LPS and an agent entity could have the same physical location or be housed together.) A mobile terminal node MN identified by its permanent address MN_PA communicates via the communication network system NW_SYS, or via the communication network NW_1, respectively, with a communication partner node CN (also referred to as correspondent node) identified by its permanent address CN_PA. The communication is indicated by a solid line double arrow between MN and CN. (Thus, LPA_2 has been selected according to the present invention in the example illustrated in FIG. 2). In the example of FIG. 2, it may be assumed that NW_1 is the home network for the terminal node MN, while for the correspondent node CN, the network NW_1 could either be the home network or a visited network. Nevertheless, NW_1 could also be a visited network for the terminal node MN.

Note that although not shown, of course the LPA's are also connected to the network NW_1. Furthermore, as is illustrated by the dashed and dotted lines, the network address space is partitioned in domains. That is, each domain corresponds to a certain address range of addresses useable in the network. To each domain, as shown in FIG. 2, there is associated a LPA. Of course, more than four domains, generally n domains can be defined, dependent on the size of address space partitions and/or the number of agent entities provisioned to the network NW_1. The significance of the domains/address regions for the present invention will be set out in greater detail in connection with FIGS. 5 and 5A.

FIG. 3 shows schematically a second example of a communication network system NW_SYS according to the present invention. The system shown in FIG. 3 comprises two communication network NW_1, NW_2, connected to each other as indicated by a dashed line between NW_1 and NW_2. However, the invention is not limited to two networks and the illustration of FIG. 3 has been chosen to keep the illustration complexity low. Also, in order to keep the drawing simple, the domain partitioning shown in FIG. 2 above for one network has been omitted from the representation of FIG. 3. Domains of individual networks, are however, distinguishable from each other by, e.g., a network specific prefix to the addresses. As shown in FIG. 3, the network number, the server entity number and the agent entity number have been “doubled”. Associated to the network NW_1 there are a location privacy server entity LPS_1 and location privacy agent entities LPA_11, . . . , LPA1n, whereas associated to the network NW_2 there are a location privacy server entity LPS_2 and location privacy agent entities LPA_21, . . . , LPA_2i. According to FIG. 3, the mobile terminal node MN communicates via NW_2 and selected agent entity LPA_22 with the communication partner node CN, as indicated by the solid line double arrow.

Although FIG. 3 illustrates a scenario in which i=n, i.e. an equal number of agent entities per network is shown, the invention is not limited thereto. Rather, n needs not to equal i and the numbers n, i is determined—individually for each network—upon network configuration and dependent on network size and/or a number of subscribers to the network, and/or the address space available, and/or the like.

Also, although a single server entity LPS_1, LPS_2 is shown per each network, more than one physical location privacy sever entities may be provided. Nevertheless, whether provided as a single entity only or as a distributed entity, the server entity has to be regarded as a single functional server entity per network of the network system.

Note that in case more than one LPS is present within the system, as e.g. shown in FIG. 3, the server entities may communicate with each other in order to obtain a mutual knowledge of the respective contents of their record they maintain. This may be achieved in that a specific server entity inquires other server entities, or in that each server entity broadcasts/distributes its information to other server entities. Note that not the entire record contents needs to be exchanged, but once the entire record is known to the other server entity/entities, it is sufficient to regularly inform other servers about changes occurring in the record(s).

FIG. 4 illustrates a signaling involved between entities of the network system and terminal nodes in connection with the method according to the present invention. Arranged in horizontal direction in the drawing of FIG. 4 are the mobile terminal node MN initiating a communication with location privacy to a communication partner node CN. In establishing location privacy, according to the present invention, there are involved a location privacy server LPS (server entity) and one of a plurality of location privacy agents LPA.

Subsequently, the method according to the present invention will be described with reference to FIG. 4. It is to be noted that in FIG. 4, the messages exchanged between nodes and entities are indicated by horizontal arrows, and the vertical arrangement of the arrows from top to bottom represents the consecutive sequence of messages in time.

The method starts in step S41. In step S41, the mobile terminal node MN issues a location privacy request LOC_Priv_Req to the location privacy server entity LPS.

This may be the LPS of the home network of the terminal MN. Alternatively, this may be the LPS of the network currently visited by the terminal MN. The MN can either be pre-configured with the address of the LPS or learn it: the address of the LPS can e.g. be broadcast or the MN can discover it e.g. sending a request to a well-known anycast address). The request issued in step S41 contains the communication partner node's CN address CN as well as the permanent (MN_PA), and temporary (MN_CoA) addresses of the terminal node MN.

Upon receipt of the request at the LPS, the request is evaluated internally by the LPS, which in step S42 selects a proper location privacy agent LPA for communication between the mobile terminal node MN and the communication partner node CN. Basically, the server entity LPS maintains a record of said plurality of agent entities LPA and their respective location within the network system, and the selecting of a specific one of said plurality of agent entities is based on data maintained in said record of said server entity and the MN_CoA contained in the request. According to a refinement of the selection, the selecting comprises the steps of selecting comprises the steps of first retrieving a first network domain represented by a network address range to which address range the temporary address MN_CoA of the requesting terminal node MN belongs, second retrieving a second network domain represented by a network address range to which address range the address CN_A of the communication partner node CN belongs, and determining the agent entity (LPA) to be selected, based on said retrieved information.

Basically, the selection of the LPA is performed based on the MN_CoA and the CN address in that the LPS tries to match the addresses as much as it can, similar to IP routing. Stated in other words, the LPA is selected by means of which, when selected, optimization of the routing between the requesting MN (MN_CoA) and the addressed CN is achieved. Further details of the selection process with reference to an example are described later on in connection with the description of FIGS. 5 and 5A.

Upon selection of the proper agent entity LPA, the server entity LPS, in step S43, returns a location privacy response Loc_Priv_Resp to the requesting terminal node MN. The response indicates the network address LPA_Addr of the selected agent entity LPA to the terminal node MN. Since the location privacy agent entities are fixed agent entities in terms of their position/location within the network, they may be uniquely identified and addressed with a fixed and permanent address.

Optionally, in a step S43a, the server entity LPS may also inform the selected agent entity LPA about its state of being selected for routing subsequent communication messages between the terminal node MN and the communication partner node CN. In this case, the agent entity may already initiate suitable preparatory measures for further communication.

In step S44, the mobile terminal node MN sends a message (e.g. a Binding Update) to the selected Agent entity LPA. This message by said terminal node creates, at said selected agent entity LPA, a mapping between the terminal node's permanent network address (MN_PA) and its temporary network address (MN_CoA). Thus, when forwarding and/or routing messages from the agent entity LPA to the terminal node MN, messages addressed to the mobile terminal node's permanent address MN_PA are routed to its temporary address MN_CoA.

Included and/or encapsulated in that message of S44 (or appended thereto) is a further message (e.g. binding update message) (S45) which is upon “unpacking” at the agent entity LPA, forwarded from the agent entity LPA to the communication partner node CN, step S45. The binding update in step S45 includes the permanent address of the mobile terminal node MN and the selected location privacy agent entity address LPA_Addr. Thus, messages/packets transmitted from the communication partner node CN towards the mobile terminal node MN are routed to the location privacy agent's address, which address to the communication partner node CN appears as the CoA address of the mobile terminal node MN. Stated in other words, the message (e.g. binding update) in step S45 creates, initiated by said terminal node MN at said communication partner node CN, a mapping between the terminal node's permanent network address MN_PA and the selected agent entity's permanent address LPA_Addr. The respective mapping of addresses achieved by the message (e.g. the binding updates) are cached in the agent entity LPA in a memory means and used for routing of messages between the terminal nodes MN, CN.

It is to be noted that the messages (e.g. binding updates), S44, S45, can optionally be authenticated between the appropriate nodes: S44 between MN and the LPA, and S45 between MN and CN. The establishment authentication will roughly be described later on in connection with security considerations. It is nevertheless to be noted that a key for authentication could be statically configured or established using one of the existing authentication mechanisms as already described in various internet drafts. Also, messages S44 and S45 are respectively acknowledged by returning an acknowledgment message ACK in steps S44a and S45a.

Thereafter, upon having created the address mappings as described herein before, in step S46 the terminal nodes MN, CN communicate with each other via the selected LPA. Thus, the node CN sees the LPA network address (e.g. its IP address in case of an IP based communication network) as the temporary address MN_CoA of the mobile node MN.

In communication, when the terminal node MN sends packets to the communication partner node CN, it tunnels the packets first to the selected LPA. This ensures the validity of the source address, and enables ingress filtering. The LPA then decapsulates and forwards the packets to the node CN based on the address indicated in the header of the (unpacked) inner packet.

Note that “tunneling” means that an original packet is encapsulated as an inner packet in an outer packet. The outer header has the LPA address as the destination and the MN_CoA as the source, whereas the inner header has the CN address as the destination and the MN_PA as the source.

When the CN sends a packet to the LPA for the MN, this packet, as specified by e.g. Mobile IPv6, carries a routing header including the MN Home Address or permanent address MN_PA. The destination address is the LPA IP address according to the binding cache it created. And when receiving packets, the LPA looks at the routing header and from the binding, knows the corresponding CoA where it forward the packet: this could be performed by tunneling or Regional Forwarding. Stated in other words, a packet forwarded from the node CN to the selected LPA includes as source address the CN address, as destination the location privacy agent address LPA_Addr, and in the routing header MN_PA, the permanent address of the mobile node MN. The thus constructed packet is processed and/or routed by the LPA further to the MN such that the outgoing packet from the LPA:

FIG. 5 shows as a simplified block diagram components of a server entity LPS according to the present invention. As shown, the server entity LPS is adapted to communicate with the mobile terminal node MN and/or the network using a transmission means. The transmission means is connected to a processing means. The processing means is connected to a database means.

The processing means in turn comprises a detection means, a writing means and a retrieval/comparing/determination means. The detection means receives incoming messages and/or data via the receiving functionality of the transmission means and detects whether the received data represents a request such as the location privacy request (step S41, FIG. 4) or data concerning said plurality of agent entities LPA and their respective location within the network system, and/or data concerning nodes CN available for communication and their respective address in the communication network system. The detection may be effected on the basis of header information in the respective messages. It is to be noted that the respective location of said agent entities is derivable based on a network domain to which the agent entity is assigned, the domain being represented by a network address range in the network.

If the received data concern the record of the database means, the data are supplied to a writing means, which writes and/or updates the records of the database means. That is, the record is updated with agent entity information and with communication terminal node (address, address range) information.

If the received data concern a location privacy request, they are supplied to the retrieval, comparing and determination means. The MN_CoA address in the request is analyzed to obtain a knowledge in which domain the MN is present. Likewise, based on the address of the communication partner node CN in the request, the position, of the node CN, i.e. the domain in which it is present, is retrieved from the record (if the addressed node is available). Stated in other words, it is checked whether the address CN_PA included in the request (step S41 in FIG. 4) matches one of the domain entries in the record of the database means.

In a follow up step, based on the retrieved domain information for the MN and the CN, the agent entities is selected from the record of the database means. Basically, based on the distance between the position of the node CN and the location of the agent entity LPA, the agent entity which is closest to the communication partner node CN is then selected as the proper location privacy agent, so that routing between the requesting node MN and the called node CN is optimized.

Under the assumption that in FIG. 3 the terminal node MN request communication under location privacy with communication partner node CN, the location privacy agent LPA_22 would be selected as a result of the server check as the closest agent entity. (A server check may comprise checking of the combined database records of servers LPS_1 and LPS_2, as outlined above).

The address of the selected agent entity LPA_22 in the assumed example is then retrieved by the retrieval, comparing and determination means and output therefrom to the transmission means.

The transmission means then provides the location privacy response to the mobile terminal MN (step S43 in FIG. 4) and/or the optional notification of the selected agent entity LPA_22 (step S43a in FIG. 4).

FIG. 5A shows in more detail an example of the database record of the LPS. As already outlined in FIG. 5 itself, the record contains three columns. Based of the information contained therein, a selection of the proper LPA is enabled in a manner that it is retrieved FROM where which MN requests location privacy TO which communication partner node CN. This is mainly based on the addresses of the nodes involved, as explained with reference to FIG. 5A. The MN_CoA is analyzed and the position of the MN is retrieved based on the address on a domain level (address range). Likewise, the position of the called node CN is retrieved based on ist address on a domain level. Based on the retrieved domain levels, the record then includes an entry of the proper LPA to be selected. Thus, based on the MN_CoA and the CN address, the closest LPA to the CN can be selected, but also the one which optimizes the routing between the MN_CoA and the CN address.

In FIG. 5A, for example, the MN_CoA being found to be in domain #1, while the CN address being found to be in domain #3, then LPA#3 is selected. On the other hand, the MN_CoA being found to be in domain #2, while the CN address being found to be in domain #3, then LPA#1 is selected.

Thus, the LPA is selected based on the MN_CoA address and the CN address in order to optimize routing. (Note that the example in FIG. 5A does not necessarily coincide with the illustration in e.g. FIGS. 2 and 3 but is independent from these figures.)

FIG. 6 shows as a simplified block diagram components of an agent entity LPA according to the present invention. As mentioned before, the location privacy agent basically serves as a router between the mobile terminal node MN and the communication partner CN and vice versa. To this end, as shown in FIG. 6, a location privacy agent comprises a routing means connected to a memory means. The memory means contains the address mappings as previously described in connection with the created binding. That is, a decapsulation functionality for MN->CN forwarding direction and an address mapping for CN->MN forwarding direction, so that a repeated description thereof is considered to be superfluous.

Furthermore, it is to be understood that each location privacy requesting terminal node such as MN for use with a communication network system according to the above description is adapted to perform the method described herein before.

Packet Formats

The solution according to the present invention requires two new messages (Location Privacy Request, Location Privacy Response) exchanged between the MN and the Location Privacy Server to get a Location Privacy agent. These messages could e.g. be two new UDP messages as detailed in FIGS. 7 (7A, 7B, 7C) and FIG. 8 (8A, 8B)

Location Privacy Request Message [FIGS. 7 (7A, 7B, 7C)]

The Location Privacy Request message is used by a mobile node to get a Location Privacy agent. The mobile node sends a Location Privacy Request message to either a pre-defined well-known anycast address if the mobile node does not know the address of any LPS, or to the unicast address of a LPS if the mobile node is pre-configured with one of them. This message should carry the home address of the mobile node as well as its care of address and address of correspondent node. The LPS then responds to the mobile node with a Location Privacy Response message giving the address of the assigned LPA.

Location Privacy Response Message [FIG. 8 (8A, 8B)]

The Location Privacy Response message is sent in response to a Location Privacy Request message. The LPS informs the mobile node of the assigned LPA.

Protocol Details

Routing of Packets from the Mobile Node to the Correspondent Node

The MN should not send packets to the CN with the CoA as the source IP address; otherwise the CN will be able to retrieve information about the MN's location from the source address of these received packets.

The outgoing packets coming from the MN although must have their source address as the CoA to bypass ingress filtering.

As described earlier above, the MN should therefore first send ist packets to the LPA. Two options are possible:

Upon receiving this packet, the LPA verifies that it has a binding cache for this MN with the corresponding home address and CoA, and if successful:

Thanks to this MN's home address, the LPA can retrieve the MN's CoA and forward it to the MN. The LPA can:

The Location Privacy Request and Location Privacy Response messages should at least be authenticated, and eventually be encrypted. Since these messages are defined as new UDP messages, AH and ESP can be used without any modification to these protocols: the CN and LPA addresses can in addition be encrypted. The mobile node and the LPS can either have a pre-established security association or can dynamically set it up using protocols such as IKE or any appropriate one.

Security of the Binding Update Messages

As required by Mobile IP, the binding update messages sent from the mobile node to the LPA and to the CN must be authenticated with the appropriate security association. If strong authentication is desired between the MN and the LPA, the LPS when assigning the LPA can actually also act as a Key Distribution Center and send some keying material to the MN in the Location Privacy Response, and the corresponding session key to the LPA.

The MN and the LPA may as well have a pre-established security association.

As for the authentication of the binding update between the MN and the CN, this one is not affected: the MN should use the security association it has established with the CN according to the policies and the capabilities.

End to End Protection

It has to be noted that if the MN and the CN use either ESP or AH to protect their data, this Location privacy mechanism does not break this end-to-end security.

Computation of the Authentication Data

Independent of the mechanism used for routing the packets exchanged between the mobile node and the correspondent node (see above: tunneling vs. processing at the LPA), the mobile node should:

Thus, in summary, in communication between e.g. an IPv6 terminal MN and destination node CN, when using routing optimization, the location of the MN can be determined by its (temporary) IPv6 address (care-of-address). One prior solution to avoid this is to forward any traffic through a Home Agent, that will hide the IPv6 address of MN form the CN. Both packets from the MN to the CN, and packets from the CN to the MN needs to pass by the Home Agent to provide location privacy: Packets from the MN needs to go via the Home agent not to reveal the MN_CoA to the CN, and to bypass ingress filtering; whereas packets from the CN needs to go through the home Agent in order to be able to be delivered to the MN. These routing mechanisms, also called triangular routing and reverse-tunneling, may imply long communication distances.

The present invention as described above presents a method to avoid these long legs while providing location privacy. The MN sends a location privacy request message to a specific Location Privacy Server. LPS assigns a specific Location Privacy Agent, that will be used instead of HA in hiding the UEIPv6 address. The geographical location of the LPA will be determined as close to CN as possible, and as close as possible to the MN-CN path, to avoid long communication distances in path CN=>LPA=>MN.

Accordingly, as has been described herein above, the present invention concerns a method for providing location privacy for a terminal node MN in communication with a communication partner node CN in a communication network system comprising at least a first communication network HN, VN, wherein a respective node MN communicating via said communication network system is identified by its permanent network address MN_PA and addressable by a temporary network address MN_CoA, at least one server entity LPS, a plurality of agent entities LPA1, . . . , LPAn, wherein each of said at least one server entities LPS maintains a record of said plurality of agent entities LPA1, . . . , LPAn and their respective location within the network system, said method comprising the steps of: requesting S41, by said terminal node MN, said at least one server entity LPS for location privacy, selecting (S42), at said at least one server entity LPS, a specific one of said plurality of agent entities LPA1, . . . , LPAn, based on data maintained in said record of said server entity and said temporary network address of said requesting terminal node, and communicating S46 messages between said terminal node MN and said communication partner node CN via said selected one LPA of said agent entities. The present invention also, concerns corresponding network systems, server entities, agent entities and terminal nodes.

Although the present invention has been described herein above with reference to its preferred embodiments, it should be understood that numerous modifications may be made thereto without departing from the spirit and scope of the invention. It is intended that all such modifications fall within the scope of the appended claims.

In particular, options outlined for various individual aspects of the invention may be combined with each other unless it is expressly mentioned that such a combination is not feasible.

Le, Franck, Faccin, Stefano M.

Patent Priority Assignee Title
11337177, Sep 23 2020 GLOWSTIK, INC System and method for generating amorphous dynamic display icons
7539164, Jun 14 2002 WSOU Investments, LLC Method and system for local mobility management
7668145, Dec 22 2003 Nokia Corporation Method to support mobile IP mobility in 3GPP networks with SIP established communications
7913082, Sep 07 2004 Samsung Electronics Co., Ltd. Authenticating address ownership using care-of address (COA) binding protocol
8005093, Sep 23 2004 Nokia Technologies Oy Providing connection between networks using different protocols
8179859, Feb 21 2008 HAND HELD PRODUCTS, INC Roaming encoded information reading terminal
8191785, Mar 05 2009 Hand Held Products, Inc. Encoded information reading terminal operating in infrastructure mode and ad-hoc mode
8360319, Mar 05 2009 Hand Held Products, Inc. Encoded information reading terminal operating in infrastructure more and AD-HOC mode
8611309, Feb 21 2008 HAND HELD PRODUCTS, INC Roaming encoded information reading terminal
8811427, Feb 16 2010 Siemens Aktiengesellschaft Method for data transmission in a communication network
9167421, Feb 21 2008 HAND HELD PRODUCTS, INC Roaming encoded information reading terminal
9860865, Feb 21 2008 Hand Held Products, Inc. Roaming encoded information reading terminal
Patent Priority Assignee Title
5572528, Mar 20 1995 RPX Corporation Mobile networking method and apparatus
6256300, Nov 13 1998 Alcatel-Lucent USA Inc Mobility management for a multimedia mobile network
6535493, Jan 15 1998 Symbol Technologies, LLC Mobile internet communication protocol
6804720, Jun 07 2000 Telefonaktiebolaget LM Ericsson Mobile internet access
6891820, Jul 06 1999 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED Utilization of the internet protocol to facilitate communication involving mobile devices
6982967, Jun 29 2000 Cisco Technology, Inc. Methods and apparatus for implementing a proxy mobile node in a wireless local area network
20020080752,
20020085719,
20020114323,
WO76249,
WO9916266,
WO9937103,
/////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Nov 09 2001Nokia Corporation(assignment on the face of the patent)
Jan 14 2002LE, FRANCKNokia CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0126010613 pdf
Jan 24 2002FACCIN, STEFANO M Nokia CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0126010613 pdf
Jan 16 2015Nokia CorporationNokia Technologies OyASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0356020257 pdf
Nov 24 2018Nokia Technologies OyPIECE FUTURE PTE LTDCHANGE OF NAME SEE DOCUMENT FOR DETAILS 0483760576 pdf
Date Maintenance Fee Events
Aug 24 2011M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Sep 09 2015M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
Nov 11 2019REM: Maintenance Fee Reminder Mailed.
Apr 27 2020EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Mar 25 20114 years fee payment window open
Sep 25 20116 months grace period start (w surcharge)
Mar 25 2012patent expiry (for year 4)
Mar 25 20142 years to revive unintentionally abandoned end. (for year 4)
Mar 25 20158 years fee payment window open
Sep 25 20156 months grace period start (w surcharge)
Mar 25 2016patent expiry (for year 8)
Mar 25 20182 years to revive unintentionally abandoned end. (for year 8)
Mar 25 201912 years fee payment window open
Sep 25 20196 months grace period start (w surcharge)
Mar 25 2020patent expiry (for year 12)
Mar 25 20222 years to revive unintentionally abandoned end. (for year 12)