Abstract:
Apparatus for use within a radio access network of a cellular communications network, where the cellular communications network belongs to an operator domain. The apparatus comprises a radio control unit for controlling radio channels within one or more cells of the radio access network, and a data source for maintaining or accessing data content, the data source being allocated in use an IP address that is unique at least within said operator domain. The apparatus further comprises an IP packet classifier configurable to inspect packets received from a client and to identify packets addressed to said IP address, and to redirect such identified packets to said data source. The apparatus also comprises an IP packet route selector configured to react to the establishment of a connection between a client and said data source by routing data content packets from said data source to the client via a radio channel or channels controlled by said radio control unit. The IP packet route selector is further able to react to a handover of the client to a peer apparatus responsible for a different set of radio channels by routing data content packets from said data source to the client via an IP backbone network.

Description:
TECHNICAL FIELD 
       [0001]    The present invention relates to an efficient data delivery method and apparatus for implementation within a cellular communications network. The invention is applicable in particular, though not necessarily, to such a method and apparatus that allows the efficient delivery of streaming data whilst providing for client mobility. 
       BACKGROUND 
       [0002]    In 3G cellular communication architectures, data services are provided to subscribers using the General Packet Radio Service (GPRS). A GPRS core network routes data between a UMTS Terrestrial Radio Access Network, UTRAN, to which a client (User Equipment or UE) is attached and an IP backbone of the network operator. A so-called GPRS Gateway Support Node (GGSN) provides an interconnection between the GPRS core network and the IP backbone. The IP backbone provides client access to “internal” packet services of the network operator as well as access to the Internet and the various “external” services available over the Internet. The interface between the GGSN and the IP backbone is referred to in the relevant standards as the Gi interface. In the case of SAE/LTE network architectures, that is the so-called 4G networks, the Packet Data Network Gateway (PDN Gateway) within the Evolved Packet Core (EPC) network performs a role broadly similar to that of the GGSN, connecting the EPC to the operator&#39;s IP backbone. 
         [0003]    Network operators are currently experiencing rapid growth in demand for data services, due in large part to the growing use of streaming media services. These services tend to be centralised “above” the GGSN/PDN Gateway anchor point in the sense that subscribers connect to common servers (hosting the services) regardless of geographical location. In order to reduce the burden placed on networks by this increased demand, it is desirable to allow for the local breakout of data connections such that data traffic does not have to flow unnecessarily through mobility tunnels, e.g. via a subscriber&#39;s home network to a visited network. It is further desirable to introduce where possible local data sources, i.e. local streaming servers and local caching, to reduce the path length between data source and subscriber. 
         [0004]      FIG. 1  illustrates schematically an example streaming media architecture with deployed caches used to offload the central server. The caches may be located within the Internet, within the IP backbone network, and/or within the operator&#39;s network. Considering the latter, in the case of a 3G network, caches could be located within the GPRS core network, for example co-located with or connected to the GGSN, or could be located within the RAN, for example co-located or connected to the Radio Network Controller (RNC). Similarly, in the case of a 4G network, caches may be located in the packet core network (co-located with or coupled to the PDN Gateway) or within the radio access network (co-located with or coupled to the enhanced Node B (eNB)). 
         [0005]    Caching data beneath the GGSN/PDN Gateway attachment point, whilst efficient in terms of reducing network traffic, does raise issues regarding subscriber mobility. Subscriber mobility is a requirement for the introduction and acceptance of any data traffic handling solution. Operators and subscribers will not accept a solution which results in the loss of service connections when a subscriber moves from one location to another or is otherwise handed over between network access points. There is an inherent conflict between moving the cache as close as possible to the subscriber equipment in order to reduce network traffic on the one hand, and facilitating subscriber mobility on the other. 
       SUMMARY 
       [0006]    It is an object of the present invention to allow the caching or sourcing of data within the radio access network such that subscribers can access that data whilst at the same time being allowed to switch attachment points without loosing the connection to the data. 
         [0007]    According to a first aspect of the present invention there is provided apparatus for use within a radio access network of a cellular communications network, where the cellular communications network belongs to an operator domain. The apparatus comprises a radio control unit for controlling radio channels within one or more cells of the radio access network, and a data source for maintaining or accessing data content, the data source being allocated in use an IP address that is unique at least within said operator domain. 
         [0008]    The apparatus further comprises an IP packet classifier configurable to inspect packets received from a client and to identify packets addressed to said IP address, and to redirect such identified packets to said data source. The apparatus also comprises an IP packet route selector configured to react to the establishment of a connection between a client and said data source by routing data content packets from said data source to the client via a radio channel or channels controlled by said radio control unit. The IP packet route selector is further able to react to a handover of the client to a peer apparatus responsible for a different set of radio channels by routing data content packets from said data source to the client via an IP backbone network. 
         [0009]    Embodiments of the present invention allow, in the case of a 3G network, a data source, e.g. a cache, to be located at the level of the RNC, thus significantly reducing the length of the data traffic path across the network, at least whilst a subscriber remains attached to the same RNC. In the event that a handover of the subscriber results in a change in the RNC to which the subscriber is attached, the connection to the same data source can be retained, albeit that the path length is increased. Considering the case of a 4G network, the solution is analogous but with the eNB replacing the RNC. 
         [0010]    According to a second aspect of the present invention there is provided a method of delivering data content to a client that is attached to a radio access network of a cellular communications network, where the cellular communications network belongs to an operator domain. The method comprises storing data content within a data source provided at a radio network control entity, or making data content available to the data source, and allocating to the data source an IP address that is unique at least within said operator domain. 
         [0011]    Packets received from a client are inspected to thereby identify packets addressed to said IP address, and the identified packets redirected to said data source. The establishment of a connection between a client and said data source is reacted to by routing data content packets from said data source to the client via a radio channel or channels controlled by said radio control unit. A handover of the client to a peer apparatus responsible for a different set of radio channels is further reacted to by routing data content packets from said data source to the client via an IP backbone network. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  illustrates schematically a data distribution network including caches located at various levels in the distribution network tree; 
           [0013]      FIG. 2  illustrates schematically peer Radio Network Controllers of a 3G cellular network, with provision for local data caching; 
           [0014]      FIG. 3  illustrates schematically a DNS lookup handling process carried out with one of the Radio Network Controllers of the network of  FIG. 2 ; 
           [0015]      FIG. 4  is a flow diagram illustrating a method of providing locally cached data to a client within the network of  FIG. 2 ; and 
           [0016]      FIG. 5  illustrates a method of delivering data to a client from a local source, across a 4G network. 
       
    
    
     DETAILED DESCRIPTION 
       [0017]    The above discussion recognises that, in the absence of an appropriate handover mechanism, locating a data cache or source at the level of the radio link control node, that is the RNC in the case of a 3G network and the eNB in the case of a 4G network (i.e. Long-Term Evolution, LTE), will effectively preclude the efficient handover of subscribers currently accessing the data cache or source. Existing data forwarding mechanisms (i.e. the lur interface in 3G networks and the X2 interface in 4G networks) are not suitable for reliable and long term data forwarding. It is recognised here that the problem can be overcome by allocating a unique IP address to the local data cache or source such that, following the handover of the subscriber to a new radio link control node, that new radio link control node can inform the old radio link control node and instruct it to route data from the cache or source to the new radio link control node via the operator&#39;s IP backbone. The allocated IP address is unique at least within a given operator domain. In this example, an operator domain can be considered to be one or more networks under the control of a single network operator, or at least under the control of two or more operators between whose networks handovers of data connections are possible. 
         [0018]    This solution involves the development of a radio-controlled dual interface solution that gives a simple routing solution when a subscriber terminal (User Equipment or UE according to 3G terminology) is moving outside the scope of a given radio link control node. The radio logic has a knowledge of whether or not the subscriber is within the “scope” of the data cache or source. The use of unique IP addressing ensures that traffic to the specific application is also routed via the IP-backbone. 
         [0019]      FIG. 2  illustrates schematically this mobility solution in the context of a 3G network operated by a given network operator. This network forms part of an operator “domain”,  1 . Network components illustrated in  FIG. 2  include a first RNC  2  configured to control a first plurality of Radio Base Stations (RBSs)  3 , and a second RNC  4  configured to control a second plurality of Radio Base Stations (RBSs)  5 . Only one of the second plurality of RBSs is illustrated in the Figure. The network further comprises a General GPRS Support Node (GGSN)  6  that is located within a GPRS core network part of the operator&#39;s network. The GGSN  6  interconnects the GPRS core network to an IP backbone network  7  within the same operator domain. The IP backbone network is in turn connected to the Internet  8 . 
         [0020]    Considering further the first RNC  1 , this comprises radio logic  9  (also referred to here as a “radio control unit”) which is responsible for establishing and controlling Radio Access Bearers (RABs) used to send and receive data (and other) traffic to subscriber terminals (User Equipment or UEs according to 3G terminology). A single UE  10  is shown in  FIG. 2  and is assumed to be currently communicating with the GPRS core network via an established Packet Data Protocol (PDP) context. This context is carried between the UE  10  and the first RNC  2  over one or more RABs, via one of the first plurality of RBSs  3 . The 3G defined process for establishing PDP contexts and RABs will be well known to the person of skill in the art and will not be described further here. As well as performing the usual radio control functions, the radio logic  9  is configured to perform radio dependent switching of traffic flows within the RNC  1 . 
         [0021]    The RNC  2  illustrated in  FIG. 2  further comprises the following functional components: 
         [0022]    A local data source  11 : This local data source is, for the purpose of the following discussion, a local cache. The local data source comprises an application that receives and responds to data requests from UEs and a TCP/IP layer. This local data source forms part of a “local service network” which might include further local data sources. 
         [0023]    A local DNS proxy  12 : This proxy maintains DNS records mapping locally available data to a unique IP address allocated to the local data source  11  (each other local data source of the local service network is allocated its own unique IP address). The DNS proxy is able to perform translation of an FQDN to a unique IP address for specific FQDNs. Although the DNS proxy is shown within the RNC in  FIG. 2 , it may alternatively be located outside and connected to the RNC. 
         [0024]    An uplink packet handler  13  including an IP packet classifier  14 . 
         [0025]    A downlink packet handler  15 . 
         [0026]    A IP packet route selector  16 . 
         [0027]    A packet concentrator  17 . 
         [0028]    An interface  18  connecting the RNC to the GPRS core network. 
         [0029]    The second RNC  4  illustrated in  FIG. 2  is functionally identical to the first RNC  2 . However, to simplify the Figure, only components of the second RNC  4  that are relevant to the operation discussed in the following are shown. The components are identified with like reference numerals (to those used with respect to the first RNC  2 ), but differentiated with a prime, i.e. “/”. 
         [0030]    Considering further the packet classifier  14  of the uplink packet handler  13 , the packet classifier  14  is configured to classify upstream packets based on one or more components of a five-tuple vector, that is IP address (source/destination), port (source/destination) and protocol. The classifier allows IP packets with a pre-defined five-tuple vector to be routed to the local service network. The classifier has one output coupled to the local DNS proxy  12  and one output coupled to the local data source  11 . The classifier is configured in particular to identify DNS traffic in the uplink RAB by using the default (destination) port  53  and to direct such traffic to the local DNS proxy  12 , and to identify traffic directed to the unique IP address and route that traffic (shown in  FIG. 2  using the long dashed lines identified by reference numeral  19 ) to the local data source  11  via the packet concentrator  17 . 
         [0031]    The uplink packet handler  13  further comprises a packet insert function (marked with a “+” in the Figure) which allows insertion of packets from the local DNS proxy  12  directly into the uplink RAB. A similar packet insert function is provided in the downlink packet handler  15  for inserting packets received from the packet route selector  16  and the local DNS proxy  12 . 
         [0032]    To illustrate the optimised traffic handling approach presented here, consider a client (UE)  10  that is within the radio coverage of the RNC  2 . RABs allocated to that UE  10  will be handled by a given one of the RBSs  3  controlled by the RNC  2 . Assume further that the UE  10  has established a PDP context with the GGSN  6  (and in the process will have obtained its own IP address that is unique at least within the operator&#39;s domain) and that it initiates the use of a service (e.g. streaming video) by sending a DNS query to the network including a FQDN associated with the service. A simple DNS redirect approach is used to route traffic to the local data source. This involves the following steps:
       1) The client  10  sends a DNS request to obtain the IP address of a FQDN.   2) The request is detected by the packet classifier  14  and is redirected to the local DNS proxy  12 .   3) The DNS proxy  12  determines whether or not the FQDN is within the local service network.
           a. If yes, the DNS proxy replies to the client with the IP address of the local service. This IP address is unique at least within the operator&#39;s domain. [For different RNCs within the operator&#39;s domain, different IP addresses will be allocated to the same FQDN.]   b. If the FQDN does not exist within the local service network, the DNS proxy forwards the request to the packet insert function within the uplink packet handler for forwarding to another DNS in the IP backbone or within the Internet. The response from Internet is routed as normal to the client via the downlink RAB. The local process stops here.   
           4) If the FQDN is a part of the local service network, the client receives the IP address allocated to the FQDN and starts to send traffic to that IP address. The packet classifier is configured to re-direct that traffic from the uplink RAB to the concentrator  17  which in turn routes the traffic to the local data source. It will be appreciated that, where different local data sources are available within the same RNC, some internal routing mechanism will be provided in order to route traffic to the correct local data source.   5) The radio logic  9  informs the packet route selector  16  that the client is currently served by a locally controlled radio bearer and, as such, the selector  16  is configured to route the traffic from the local data source  11  to the client via the downlink packet handler  15 .       
 
         [0040]      FIG. 3  further illustrates the procedure for handling DNS queries at the RNC, where the dashed lines indicate the flow of DNS traffic between the client and the local DNS proxy and between the client and an Internet based DNS server. The step numbers 1 to 5 used above are included in  FIG. 3  (encircled). 
         [0041]    It will be appreciated that the approach described with respect to  FIGS. 2 and 3  allows the local data source to be located at or close to the RNC  2 . The local data source  11  may itself comprise a database containing the data content, e.g. cached web pages, streaming media etc, or it may provide an interface to a content database coupled to the RNC. In the event that the client is handed off between RBSs  3  that are controlled by the same RNC  2 , the client  10  is provided with content data from a local source such that that the traffic path is both short and efficient. 
         [0042]    Consider now what happens when the client  10  moves out of the range of the RBSs  3  controlled by the first RNC  2  and moves into the range of a RBS  5  controlled by the second RNC  4 . The known radio layer handover procedures are invoked and the client  10  detaches from the first RNC  2  and attaches to the second RNC  4 . During this handover process, the radio logic  9  in the first RNC  2  is made aware of the handover and accordingly instructs the packet route selector  16  to switch so as to route traffic (in  FIG. 2 , the rerouted traffic is shown by the dotted line identified by reference numeral  20 ) toward the client  10  via the IP backbone  7  instead of the local RAB(s) (nb. the RNC has a “direct” interface to the IP backbone such that this traffic does not pass through the GGSN). These packets have as their destination address the allocated client IP address. With reference again to  FIG. 2 , this traffic is in fact routed across the IP backbone  7  to the GGSN  6  which in turn routes the traffic to the second RNC  4  to which the client  10  is now attached. As is also illustrated in  FIG. 2 , packets sent by the client  10  to the IP address of the local data source  11  are forwarded by the packet classifier  14 ′ of the new RNC  4  to the IP backbone network  7  which in turn forwards them to the local data source  11  within the old RNC  2  (this traffic is shown in  FIG. 2  by the dashed line identified by reference numeral  21 ). The classifier  14 ′ within the new RNC  4  performs this function as it does not have any five-tuple vector matching these packets. 
         [0043]    The data traffic flow path following handover of the client from the old to the new RNC is of course much longer than the previous local path. However, the new path is not significantly less efficient than the prior art routing path where the local data source is located above the GGSN, e.g. within the Internet. Moreover, as inter-RNC handovers are relatively infrequent, a local routing path will be used for the vast majority of service accesses. 
         [0044]    Following an inter-RNC handover, new DNS queries will be directed by the packet classifier  14 ′ within the (new) RNC  4  to the local DNS proxy (not shown) within that RNC, i.e. they will not be routed to the DNS proxy  12  within the old RNC  2 . Thus, where possible, newly requested data content will be provided by a local data source that is local to the new RNC. 
         [0045]      FIG. 4  is a flow diagram illustrating this process for connecting a client to a local data source and for handling a subsequent mobility event, beginning at step  100 . Considering a generic radio network control entity (an example of which is the 3G RNC), this entity is configured to store or have access to data content (step  200 ). At step  300 , the local data source is allocated a unique IP address, and an appropriate record is created in the local DNS proxy, mapping a FQDN of the data content to that IP address. A record is created and stored in the DNS proxy for each data content entry stored or accessible to the local data source. All records however point to the same IP address (unless of course a plurality of local data sources are provisioned within the RNC, in which case each local data source is allocated a different unique IP address and the DNS records reflect this). This configuration step will also involve configuring the packet classifier  13  within the RNC with two new five-tuple vectors to be applied to packets on the uplink RAB(s), one vector matching to DNS queries (using port  53  as the trigger) and another matching to the allocated (local data source) IP address as destination address. 
         [0046]    Once the configuration process has been completed, a client establishes appropriate uplink and downlink RABs, and sets up a PDP context between itself and the GGSN. The client is allocated an IP address as part of this context establishment process. At step  400 , the client seeks to make an IP connection to the local data source. This is achieved using a DNS lookup using the local DNS proxy as described above. At step  600 , following the setting of the packet selector to route packets from the local data source to the client via the local downlink RAB(s), packets corresponding to the requested content are sent to the client over the local radio channel(s). 
         [0047]    This process continues until either there is no more content to be provided and the connection is terminated, or a radio layer handover is performed which results in the client detaching from the old RNC and attaching to a new RNC, step  700 . In the latter case, the radio logic within the old RNC instructs the packet selector to switch downlink traffic for the client to the IP backbone network, step  800 . 
         [0048]    Considering now the implementation of this approach in the SAE/LTE (4G) architecture, 3GPP TS 36.300 [“Evolved Universal Terrestrial Radio Access (E-UTRA) and Evolved Universal Terrestrial Radio Access Network (E-UTRAN)] describes how the radio layer handover procedure is performed without involvement of the Evolved Packet Core (EPC) network. As such, messages sent to set up the handover are exchanged directly between the radio network control entities, i.e. the eNBs. The release of the resources at the source side during the handover completion phase is triggered by the eNB.  FIG. 5  depicts the basic handover scenario where neither Mobility Management Entity (MME) nor Serving Gateway changes. The illustrated scenario assumes that the local data source, in this case a cache, forms part of the eNB. The “source” eNB is considered to be the old eNB from which the client (UE) is being handed over, whilst the “target” eNB is the new eNB to which the client is being handed over. 
         [0049]    The steps depicted in  FIG. 5  are described in more detail as follows: 
         [0050]    0. The UE context within the source eNB contains information regarding roaming restrictions which were provided either at connection establishment or at the last Tracking Area (TA) update. 
         [0051]    1. The source eNB configures the UE measurement procedures according to the area restriction information. Measurements provided by the source eNB may assist the function controlling the UE&#39;s connection mobility. At this point, the user is attached to the EPC network and user packet data flows between the UE and the EPC. 
         [0052]    2. The UE is triggered to send a MEASUREMENT REPORT by the rules set by system information, specification etc. 
         [0053]    3. The source eNB makes a decision based on the MEASUREMENT REPORT and RRM information to hand off the UE. 
         [0054]    4. The source eNB issues a HANDOVER REQUEST message to the target eNB, passing information necessary to prepare for the handover at the target side. 
         [0055]    5. Admission Control may be performed by the target eNB. 
         [0056]    6. The target eNB prepares for handover and sends the HANDOVER REQUEST ACKNOWLEDGE to the source eNB. As soon as the source eNB receives the HANDOVER REQUEST ACKNOWLEDGE, or as soon as the transmission of the handover command is initiated in the downlink, data forwarding may be initiated over the inter-eNB X2 interface. [As this data forwarding mechanism exists only for the duration of the handover process, it is not suitable for long term data forwarding, e.g. of streaming media.] 
         [0057]    7. The source eNB generates the RRC message to perform the handover, i.e RRCConnectionReconfiguration message including the mobifityControlInformation towards the UE. The UE receives the RRCConnectionReconfiguration message and is commanded by the source eNB to perform the handover. 
         [0058]    8. The source eNB sends the SN STATUS TRANSFER message to the target eNB to convey the uplink PDCP SN receiver status and the downlink PDCP SN transmitter status of E-RABs for which PDCP status preservation applies (i.e. for RLC AM). At this stage, the radio logic within the source eNB instructs the selector within that eNB to switch downlink data traffic provided by the local data source to the IP backbone network. This traffic flow is not illustrated in  FIG. 5 , but it will be appreciated that the traffic is routed over the IP backbone to the Serving Gateway and from the Serving Gateway to the UE via the target eNB. 
         [0059]    Steps 9 to 16 provide means to avoid data loss during handover and are further detailed in 10.1.2.1.2 and 10.1.2.3 of 3GPP TS 36.300. 
         [0060]    It will be appreciated by the person of skill in the art that various modifications may be made to the above described embodiments without departing from the scope of the present invention.