For a better understanding of embodiments of the present invention and as to how the same may be carried into effect, reference will now be made by way of example only to the accompanying drawings in which:
The term “private addresses” is used in the following to refer to those IPv4 addresses which can be used by more than one entity. It should be appreciated that embodiments of the invention can also be used in any situation where an address can be used by more than one entity or bearer.
One example of application of an embodiment of an invention is in a mobile telecommunications network. This can be in the context off a private network or can be used by network operators. For example, some operators of GSM/CDMA (Global system for mobile communications/code division multiple access) networks or the like may use private addresses.
As shown in
In preferred embodiments of the present invention, the user equipment 2 is a wireless device. The wireless device can operate in accordance with one or more wireless standards such as, for example, GSM (Global System for Mobile Communications) or 3GPP (Third Generation Partnership Project), any other third generation standard or indeed any other standard.
The user equipment 2 is able to have a plurality of bearers active at the same time. The different bearers may be as a consequence of having more than one capability activated at the same time. Examples of capabilities include GPRS, WLAN, and Bluetooth, by way of example only.
The user equipment 2 is connected to a first core network 20. The connection is via a wired or wireless connection. The core network is a WLAN (wireless local area network) core network. The core network 20 schematically comprises a DHCP (dynamic host configuration protocol) server 22, a NAT device 24 and operator specific services functionality 26. The NAT device 24 has a network address translation capability. The device 24 can take any suitable format and by way of example, may be a simple network address translator, a multimedia buffer, a firewall, a proxy or the like. The connection between the user equipment 2 and the NAT device 24 will be via other elements, not shown.
Preferably, the user equipment 2 will however, have at least one radio interface so at least part of the connection between the user equipment 2 and the NAT device 24 will be via a wireless connection. It should be appreciated that in preferred embodiments of the present invention, part of the connection between the user equipment 2 and NAT device 24 will be via one or more nodes including a wired connection.
The user equipment 2 is connected to a second core network 30. The connection is via a wired or wireless connection. The second core network is a service provider core network, for example a GSM operator network. The second core network 30 schematically comprises a DHCP (dynamic host configuration protocol) server 32, a NAT device 34 and operator specific services functionality 36. The NAT device 34 has a network address translation capability. The device 34, again, can take any suitable format and by way of example, may be a simple network address translator, a multimedia buffer, a firewall, a proxy or the like. The connection between the user equipment 2 and the NAT device 34 will be via other elements, not shown.
Preferably, the user equipment 2 will however, have at least one radio interface so at least part of the connection between the user equipment 2 and the NAT device 34 will be via a wireless connection. It should be appreciated that in preferred embodiments of the present invention, part of the connection between the user equipment 2 and NAT device 34 will be via one or more nodes including a wired connection.
The user equipment 2 comprises a routing table which is stored in a memory 3 of this device. Table 1 below shows an example of routing table entries stored in the user equipment 2.
The table has four columns. The first column, referred to as subnet provides two pieces of information, that is the IP address and the subnet size. In other words, the first entry of the table indicates that the IP addresses are between 192.168.0.1 and 192.168.0.32.
The second column indicates the gateway. This is for outgoing IP packets (that is packets from the user equipment 2 and refers to for example, the NAT device, if one is used. Thus in preferred embodiments of the invention, the identified gateway will identify the NAT device 24 of the first core network or the NAT device 34 of the second core network. The gateway is the next IP host where IP packet should be sent to (that is the next hop).
The third entry provided is the source interface. The source interface field can point to one of the actual bearers on the device or have the keyword “ANY”. As can be seen, the source interface could for example be GPRS, WLAN or ANY. If the route table entry is created with “ANY” as the keyword, packets of any active interface are matched if the subnet matches. These routes can be referred to as normal routes. Source specific routes are prioritised over normal routes so they can be used if normal and source specific route matches with the same subnet.
The final column shows the exit interface and is applicable to outgoing IP packets only. This effectively identifies the core network.
Referring to Table 1 in more detail, rows 1 and 2 show examples of entries for packets which are to be received by the user equipment.
Row 1 indicates the IP address and the subnet. Row I also indicates that GPRS can be the source interface for packets with this address. In the scenario shown in
Similarly, as illustrated in the second row, if it is determined that the source interface is the WLAN interface (that is the first core network) and the address falls within the range defined in column 1, then the user equipment 2 determines that the packet is indeed intended for the user equipment. Otherwise, the packet is deleted, discarded or forwarded to another device.
As shown in Table 1, it is possible to have the same IP address used for packets which have different source interfaces. By identifying the source interface, any conflict that would otherwise be present is resolved.
The third and fourth entries are for outgoing packets. As shown in the third entry, any packets from the address identified in column 1 with the source interface GPRS is forwarded to the WLAN exit interface, that is to the WLAN core network 20. This is particularly useful in the context of the embodiment of
The final entry is intended to capture all other incoming IP packets from the user equipment and forward them to the GPRS network, that is the second core network 30. This is regardless of the source interface.
Thus, embodiments of the present invention allow rules to route incoming and outgoing IP packets correctly even if they have the same destination IP address but are intended for or are from different networks.
The routing tables allow packets to be routed to and from the user equipment 2. The core network 20 and 30 are connected to the internet 40. It should be appreciated that for the communication with the internet a global unique IP address may be used.
In summary, embodiments of the present invention add a new field to the routing table entry data structure. This field thus contains reference to an active network interface or special value meaning “ANY”. The whole routing API (Application Programming Interface) is updated so that it is possible to provide the source information when the route entry is added, modified or deleted.
The route matching algorithm is arranged so that the source specific routes have priority over the normal routes referenced by the “ANY” keyword.
Reference is now made to
A first user equipment 50 is such that it only has WLAN radio capabilities, for example and there is only GSM coverage in the area in which the user equipment is currently located.
There is a second user equipment 52 which has both WLAN and GSM capabilities and is arranged to provide a router function for the first user equipment.
A first core network 54 is provided which has a DHCP server which is arranged to provide private addresses. This first core network is a WLAN network. In the alternative, a WLAN access point may be provided here.
A second core network 56 is provided which has a NAT device 60. This second core network is a GSM network.
The first user equipment 50 attaches to the WLAN 54. The DHCP 58 allocates a private address to the first user equipment 50. This is because there is no direct connection to the internet.
The packets from the first user equipment is arranged to be sent via the WLAN 54 where DHCP allocates the private address for the first user equipment. In this example the address is 192.168.0.1. These packets are then sent to the second user equipment. The second user equipment will refer to its routing table which will have the format shown in Table 1. The second user equipment will not identify the address and accordingly the packets will be forwarded on to the second core network. In other words the final entry of the table of
The NAT device 60 will translate the address and forward the packets to the internet.
Incoming packets can be received from the internet 40 by the NAT device 60. The packets have the address translated to the address of the first user equipment and forwarded to the second user equipment. Using the created entry in the routing table discussed above, the packets are then routed by the second user equipment 52 to the first user equipment 50 via the WLAN core network or access point 54.
The embodiment of
In alternative embodiments of the invention it is possible to have a separate routing table associated with each network interface. For example, there may be a routing table for the WLAN interface and a routing table for the GSM interface. Thus in these embodiments there would be source interface information available but instead of being included in the table, it instead determines which table is used.
It should be appreciated that embodiments of the present invention have been described in the context of a wireless network and in the context of a routing table in a user equipment. However is should be appreciated that embodiments of the invention can be used with wired networks where two or more bearers or the like potentially have the same address. The routing table can be provided in any other suitable entity.
It is also noted herein that while the above describes exemplifying embodiments of the invention, there are several variations and modifications which may be made to the disclosed solution without departing from the scope of the present invention as defined in the appended claims