The present invention relates to a mobile telecommunications network including a core and a radio access network having radio means for wireless communication with mobile terminals registered with the network, and also to a corresponding method.
Conventional mobile telephone communications networks have architectures that are hierarchical and traditionally expensive to scale. Many of the network elements, such as the BTS, routers, BSC/RNC etc. are partly proprietary devices of one manufacturer often do not interface with devices from another manufacturer. This makes it difficult to introduce new capabilities into the network as a fully standardised interface will be required for devices from each manufacturer. Further, conventional base stations are not capable of intelligent local routing or processing. Furthermore, the capacity of existing networks is not always used effectively. For example, many cell sites are under used, whilst others are heavily used.
The current cellular network architecture has the following disadvantages:—
There is therefore a need to overcome or ameliorate at least one of the problems of the prior art. In particular there is a need to address the needs of both the network operators and the users in improving the provision of mobile broadband data services.
Today mobile service delivery is provided through the mobile operator's packet core. Such a packet core may host a series of applications for enhancing the mobile service. To offer some of the applications, e.g. caching, closer to the user, the Applicant proposed to move potential applications on to “General Purpose Hardware Platform” hardware located at the edge of the radio access network.
EP2315412 describes the introduction of a novel control means or Platform (known as a Smart Access Vision (SAVi) platform) at the network edge. To open the radio access part a “General Purpose Hardware Platform” may be implemented at the network edge. This may allow operators to split the functions of an Radio Network Controller (RNC) and/or a (e)NodeB between hardware and software. As a consequence operators have the capability to place applications and content directly at the edge of the network. The SAVi concept also introduces new functions in the network core.
SAVi may enable a mobile operator to deploy (in-line) services in radio access networks nodes such as base stations (e.g. eNodeB) and radio network controllers. Deploying such services in the radio access network can enhance the subscriber's mobile experience since service delivery avoids the link between the radio access network and the rest of the core network. Especially when services are deployed in base stations, transmitting volumes of data over a potentially narrow-band backhaul link can be reduced. Reducing these transmissions improve the round-trip delay for packet interactions and may increase the amount of bandwidth available for the mobile subscriber.
By avoiding backhaul communication for voluminous traffic, a mobile operator may be able to avoid expensive backhaul upgrades to keep pace with the capabilities of communication over the wireless channel. Examples of base station hosted services that reduce backhaul traffic are: locally hosted gaming applications with reduced latency and significantly improved response times or caching/CDN which reduce backhaul loading.
There are requirements that make service delivery through radio access network resources a challenge e.g. Lawful Intercept (LI), or charging. A Law Enforcement Agency (LEA) may demand a copy of all data transmitted to and received from a mobile subscriber for subscribers of interest. Only core network elements are deemed secure and which implies that no radio access network equipment can be used to provide the packets flows to the LEA. The implication for radio access network based services is that mechanisms need to be put in place to “copy” all data altered by services executing in the radio access network to the mobile packet core to enable the lawful intercept function.
Charging is a function that operates in the mobile packet core and counts the amount of data, time of day and use of additional services. This charging function enables the mobile operator to send a bill to the mobile operator's customer for services rendered. If services operate in the radio access network, the operator may not be able to provide accurate bills. Again, by copy of data from the radio access network to the mobile packet core as is done for the lawful intercept function existing charging infrastructures may operate without modification.
Objects of embodiments of the present invention include to manage core network mandatory and optional functions, to provide call flows to operate SAVi or similar control means in the radio access network, and to control the establishment of a control channel between a client function in the radio access network and the director function in the network core.
While the embodiments are generally applicable in a Radio Access Network (RAN), the key target deployments include LTE and iHSPA base stations. The embodiments may also operate through UMTS radio network controllers (RNCs), GSM/GPRS base station controllers (BSCs) and other RAN functions.
According to a embodiment of the present invention, there is provided a mobile telecommunications network including:
In response to creation or modification of a bearer, for transmitting communications of one of the mobile terminals, the client function and the director function may exchange messages there between to establish the client function services available for the bearer.
The director function may, in response to creation or modification of the bearer, send a message to request from the client function for information relating to the services available for the bearer. Downlink discovery using Echo messages is described below in section 4.1.3.
The client function may, in response to the creation or modification of the bearer, send a message including information relating to services available for the bearer to the director function. An alternative uplink discovery using Echo messages is described below in section 4.1.3.
The message may comprise a control channel echo request message, such as a GTP Request message.
The control channel echo request message may include an extension, such as a GTP Private Extension.
The client function may be operable to distinguish the control channel echo request message from other echo request messages, and to process the echo request message, rather than release the echo request message in a downlink direction.
In another embodiment, the client function, in response to receipt of a bearer data packet, may send a request for information relating to services available for the bearer to the director function. Uplink Discovery using PDUs is described below in section 4.1.4.
The network core may comprise a gateway operable to receive bearer data packets from the radio access network, wherein the client function is operable to address the request for information such that the request for information is distinguishable by the gateway from other bearer data packets, the gateway being operable to send the distinguished request for information to the director function.
The director function may, in response to creation or modification of the bearer, send a message to the client function to establish a relationship therewith in order for the director function to provide to the client function information relating to services available for the bearer. Downlink Discovery using PDUs is described below in section 4.1.5.
In further embodiment, the client function may be operable, in response to receipt of a bearer data packet, to send a message to the director function, and wherein the director function, in response to receipt of the message, establishes a relationship with the client function in order for the director function to provide to the client function with information relating to services available for the bearer. A Trigger Mechanism using G-PDU Extension Header is described below in section 4.1.6.
The network core may comprise a gateway operable to receive bearer data packets from the radio access network, wherein the message is transmitted in a bearer data packet such that the massage is distinguishable by the gateway from other bearer data packets.
The channel controller means may be operable to delete a control channel between the client function and the director function. A relationship deletion procedure is described below in from section 4.2.
The information relating to services may include an indication of applications hosted on the client function for the bearer.
In another embodiment the present invention provides a method of operating a mobile telecommunications network including:
For a better understanding of the present invention embodiments will now be described by way of example, with reference to the accompanying drawings, in which:
In an embodiment a control means is on Platform 1 (sometimes referred to as a SAVi platform) that provides services in a hosted SAVi processing environment. To offer core network support to a user/subscriber device 10 a SAVi Core Network integration architecture has been defined and is shown in
This embodiment provides message flows and methods to establish a communication and exchange signalling messages between SAVi functions located in the network core and SAVi functions located on the SAVi Platform in the RAN (Radio Access Network).
The Platform 1 further includes an application 20 (or service or function) which may generate content for supply to the UE 10. In practice, a plurality of applications are likely to be hosted on the Platform 1.
The Platform 1 is connected via an S1 interface to the core network, which comprises a gateway 30 (e.g. GGSN/P-GW/SAE-GW) The gateway 30 facilitates the provision of core network functions, such as LI by an LEA, and charging, by online charging system 40.
The gateway 30 receives content from a primary content source via the Internet 50. The primary content is delivered from the primary content source via Gi LAN 60. This content is received by traffic management function 70 before delivery to the gateway 30.
A PCRF (Policy and Charging Rules Function) apparatus 80 is also provided, in communication with the gateway 30.
The arrangement uses two special functions where one function is located in the SAVi Platform 1 a so-called SAVi CN Client 100 (SCNC 100)—and the second function—a SAVi CN Director 110 (SCND 110)—is part of the GGSN/P-GW/SAE-GW 30 or close by the GGSN/P-GW/SAE-GW 30.
The SAVi director 110 communicates with SAVi CN Client 100 (located on the SAVi Platform 1) via a communication API to, e.g., send polices or collect data. As mentioned above the SAVi Director 110 is preferably located on the GGSN/PGW/SAE-GW 30 or close by to get user information/triggers in real time.
To support a secure and trusted communication between the SAVi CN Client 100 and the SAVi Director 110 the following functions are preferably supported by the SAVi Director 110:
This “director” module 110 is hosted in the mobile packet core (CN) and retrieves user identities and communicates those to the SCNC 100. The SCND 110 is responsible for managing functions and services in the SCNC 100. Thus, the SCND 110 is responsible for selecting subscribers that need to be subjected to SAVi local services, the SCND 110 manages user access services and user capabilities through SCNC 100, and SCND 110 informs the appropriate SCNCs 100 how to route traffic in the SAVi RAN environment.
The SAVi CN Client 100 is located on the SAVi server Platform 1 and may support the following functions:
This “client” in the SAVi Platform 1 (located in the radio access network) communicates with the core network (CN) and manages subscriber identities, policies and services to be applied on selected subscribers.
The gateway 30 further includes a SAVi core network supporting function (SCNSF) 120. The SCNSF 120 is a function located in the mobile packet core (CN) providing additional support to operate SAVi. For example, when content is modified by the SCNC 100, the SCNSF 120 function may provide supporting functionality for charging, lawful intercept and other mandatory core functions, and/or SCNSF 120 may support functionality to aid in mobility management.
The SAVi core integration architecture described above functions correctly in the environment where not all gateways are SAVi capable and not all base stations have SAVi capabilities. Further it must be considered that the S-GW and P-GW are not necessarily collocated as is shown (at gateway 30) for simplicity reasons in
In the embodiment all uplink and downlink user related packets are routed through SCNC 100 on the SAVi Platform 1 and through SCND 110 in the core (although this is not essential).
The proposed integration for user specific traffic and signalling provides basic core functions to SAVi Platform 1 for the user, e.g.:
The following is a basic list of preferred requirements from core network point of view. This embodiment meets these requirements so that service parity is delivered with and without SAVi and that there is no impact on available Gi and core services and a limited impact on the core nodes in case of introduction of SAVi.
SAVi manages GTP-based traffic originating or terminating in the RAN, and terminating or originating in the mobile packet core. Examples of mobile packet core nodes are a GPRS gateway support node (GGSN) or PDN gateway (P-GW), designated 30 in
Note that a combined S/P-GW node is not assumed. The S-GW and P-GW could be also separated. The solution is applicable to both ways of deploying S- and P-GWs.
SCNC 100 is a user-plane function that operates in the RAN and manages core related functions for the user traffic only. In the embodiment all user traffic between mobile node 1 and mobile packet core is routed via the SCNC 100. This is because the RAN nodes themselves do not have sufficient knowledge to identify users.
SAVi system carries its user related control traffic over existing GTP-U sessions to establish end-to-end connectivity between SCNC 100 and SCND 110. This user related control traffic is encapsulated in GTP-U sessions such that each of SCNC 100 and SCND 110 recognize this traffic as non-user data traffic. The control messages are SAVi specific and have no meaning outside the SAVi realm. The user related control channel between SCNC 100 and SCND 110 is termed the “SAVi core network protocol”.
The SCND 110 provides the SCNC 100 with the user identity associated with that GTP-U session via the control channel.
A SAVi core network protocol (see section 3.4) is responsible for establishing an in-band control channel between SCNC 100 and SCND 110 that enables the SCNC 100 to apply, for example, per-user, per-traffic-type or service-type policies to user-traffic. The policies are applied in the platform 1 to route user traffic into appropriate applications/inline-services (or functions) 20A/20B hosted on the SAVi enabled (e)NodeB platform 1, responsible for providing applications as proposed. This section provides details of procedures and messages exchanged between SCNC 100 and SCND 110, and high-level formats of individual messages. SAVi Core Network Protocol is responsible for providing following functionalities:
The present embodiments are not directed to providing all of the above functionalities.
In the following subsections different methods of providing an in-band control channel are discussed which satisfy the criteria mentioned above.
SAVi In-band Control Channel may be implemented based on one of three options:
The subsequent sections describe Discovery mechanism and data transfer for the in-band control channel for each of the three methods.
To establish a relationship between SCNC 100 and SCND 110 for a user bearer before any SAVi policies are applied, SCNC 100 and SNCD 110 exchange a simple protocol to establish the control channel in-band over a GTP-U session.
The following high-level information is exchanged between the various functional components in SAVi during discovery:
The following preferences are considered while determining the method and sequence of messages exchanged:
In cases where SAVi relationship needs to be extended to Outbound Roamers based on network operator agreements, it is proposed to enable the same by local configuration on the home GGSN/P-GW 30. The configuration may be defined per vPLMN. Similarly, for the case of Inbound Roamers, it is the responsibility of the Roamer's home GGSN/P-GW to establish SAVi relationship with visited PLMN's SAVi (e)NodeB if a commercial agreement is available.
The introduction of support for EU Local Breakout (LBO) should not have any impact on SCND 110 and SCNC 100 functions. Indeed a visited network could offer SAVi services to a visitor as part of an LBO agreement.
Whenever SCNC 100 receives uplink or downlink traffic, it checks whether it has a SCNC 100 to SCND 110 relationship established for the bearer. If the relationship does not exist, the SCNC 100 bridges the traffic back to (e)NodeB, from where it is sent to the GW 30 or the UE 10 in the conventional manner. It does not wait for the relationship to be established. In case of bridging, no SAVi related services are offered.
This approach might result in some SAVi Users not being subjected to SAVi processing at the first time of using the service; however, this is expected to happen only when the bearer has just been created and uplink or downlink traffic arrives at SCNC 100 before the SCNC 100-SCND 110 relationship is established, or if no SAVi processing is expected for the bearer as per policies received The possible methods for mutual SCNC 100-SCND 110 discovery are described below.
When a new bearer is established GGSN/P-GW 30 informs SCND 110 about the bearer creation. This triggers SCND 110 to immediately initiate a GTP-U Echo Request message with Private Extensions (see more details in section 4.1.3.1) destined to SCNC 100, requesting following information from the SCNC 100:
An alternative Uplink Discovery version of this mechanism is for the SCNC 100 to initiate the handshake by sending the Echo Request message containing a list of applications etc. and the SCND 110 replying with a GTP-U Echo Response containing the SAVi services that are permitted for the bearer.
General considerations for GTP-U Echo Discovery include:
The format of the SCND 110 Discovery Request packet is shown in
The Discovery Request message contains the SAVi policy information for the bearer in its Data field.
Since SCNC 100 can detect that this is a SAVi Control GTP-U Echo message, it never releases the packet in downlink direction to (e)NodeB 1, and discards it after processing. The Echo response is generated by SCNC 100 itself providing the information as requested above, carried over Private Extensions.
SCNC 100 responds to the request with its SAVi compliance statement, SAVi protocol version, uplink TIED and a list of available applications 20A/20B.
The format of the SCNC Discovery Response packet is shown in
Note that the SCNC 100 only responds to GTP-U Echo Messages carrying SAVi information. Any other GTP-U Echo messages will be released in downlink direction and (e)NodeB 1 will respond to these messages as part of usual path management procedure.
SCND 110 implements normal ECHO retransmission strategy before deciding that there are no SAVi services possible for the bearer. Once SCNC 100 to SCND 110 relationship is established, there is only the need to perform GTP-U ECHO (with Discovery messages) when the service catalogue on SAVi Platform 1 or SCND 110 changes or there is a change in set of SAVi applications 20A/20B allowed for the bearer. Normal ECHO mechanisms can continue irrespective of these transactions though.
When new services or applications are made available at the SAVi Platform 1 (or when changes are made to services or applications already available at the SAVi Platform 1), the same messages (Echo Request and Echo Response) are used to update SCND 110, so that SCND 110 can start providing policies related to the new (or changed) functionality for new users.
When the set of SAVi services allowed for the bearer changes on the GGSN/PGW 30 the same messages (Echo Request and Echo Response) are used to update SCNC 100, so that it can enforce the new policy set.
This procedure satisfies the compatibility requirements in section 4.1.1 as follows:
The format of the “Private Extension” IE is shown above. The Extension Identifier is a value defined in the IANA list of SMI Private Enterprise Codes. This list may, e.g., be found at http://www.iana.org/assignments/enterprise-numbers/enterprise-numbers (which supersedes the one in RFC 1700 referred to in 3GPP TS 29.281).
A new number can be assigned on request to IANA or a number already assigned to the MNO could be used.
The Extension Value contains the SAVi information described above. Note that Private Extensions can only be carried in GTP-U signalling messages such as Echo Request and Response.
Uplink Discovery mechanism is initiated by SCNC 100 when a data packet (G-PDU) arrives (either downlink or uplink) and SCNC 100 does not have a SAVi relationship with a SCND 110 for this bearer. While the discovery procedure takes place between SCNC 100 and SCND 110 user packets are bridged—i.e. no SAVi services are applied until SAVi policy is sent from SCND 110. While the relationship does not exist, the SCNC 100 bridges the traffic back to (e)NodeB, from where it is sent to the GW 30 or the UE 10 in the conventional manner. In case of bridging, no SAVi related services are offered. In some cases this may cause SAVi services not be available for the initial packets until the Discovery procedure is completed but this method prevents SAVi services to be applied to bearers which are not authorized to receive them.
SCNC 100 sends a special GTP-U data message (G-PDU) to the SCND 110. The G-PDU is special because the T-PDU contained in it is addressed to the SCND 110 and is not intended for delivery to the External network (e.g. Internet 60, PDN).
The format of the packet is shown on in
The Discovery Mechanism is achieved by use of T_PDUs with IP addresses that could never be found in a normal GPRS bearer.
For uplink the UE 10 address is used as a source IP address to prevent the packet being dropped by the anti-source spoofing feature of the GGSN 30. Destination IP address is 0.0.0.0 which is easily detected by a SAVi GGSN/P-GW 30 and will be dropped by a non-SAVi GGSN/P-GW. Any suitable UDP port number for source is used and for destination could be Port 3386 (actually assigned to the now obsolete GTP—Version 0).
Upon receiving the Discovery Request packet, the GGSN/P-GW 30 routes the packet into SCND 110 based on presence of this unique (0.0.0.0) IP Address. SCND 110 in turn identifies the bearer and looks up its SAVi information. If the bearer is allowed to use SAVi services then SNCD 110 formulates a Response packet and includes appropriate policy in the Data field. If SAVI services are not allowed for the bearer, SCND 110 returns Response with Data field Null.
The Discovery Response packet is sent as regular GTP-U packet with destination IP address=UE IP address and source IP address=0.0.0.0. This will be intercepted by the SCNC 100 and not forwarded to the UE.
This procedure satisfies the compatibility requirements in section 4.1.1 as follows:
This downlink discovery procedure is initiated by the SCND 110, in order to avoid the problems that arise from an uplink discovery procedure initiated from the SCNC 100. In particular it should be noted that an uplink procedure initiated by the SCNC 100 might not satisfy certain of the compatibility requirements (see list in section 4.1.1) since the SCNC 100 is not APN-aware and does not know the identity of the PLMN in which the P-GW 30 is located and therefore its SAVi capabilities.
The SCND 110 does not maintain SAVi state for each bearer. However, it does perform a stateful 3-way handshake procedure in order to establish a relationship between the SCND 110 and SCNC 100 for each bearer. The SCNC 100 does maintain the SAVI state for each bearer.
The SCNC-SCND relationship is achieved by a 3-way handshake initiated by the SCND 110, hence the term: “downlink discovery”. It is triggered by any of the following events:
The SCND 110 starts the procedure by performing checks that:
With this mode of probing, the initiation of the 3-way handshake could be selectively performed only towards a SAVi capable eNodeB 1. This would require the SCND 110 to a) identify the eNodeB that the UE is currently using, and b) consult a database (e.g. PCRF 80) to determine if this eNodeB 1 is SAVi-supporting. Based on this information, the SCND 110 could decide whether to initiate these messages towards that eNodeB 10 or not. This procedure would require usage of the ULI (User Location Information) reporting feature on core nodes. The ULI Information Element is carried in bearer creation and bearer update messages and is defined in 3GPP TS 29.060, Section 7.7.51.
The relationship discovery procedure is shown in
After the initial bearer setup (step 1,
The Data field contains:
If no response is received this message is repeated up to a predetermined number of times at predetermined time intervals before the eNB 1 is considered to be non-SAVi enabled)
The SCNC 100 receives the SAVi Open Request in the downlink tunnel and it sends a SAVi Open Response on the corresponding uplink tunnel (step 3,
The Data field contains:
To complete the handshake the SCND 110 sends an Open confirm message to the SCNC 100 (step 4,
The Data field contains:
The TPDU has Source=0.0.0.0, Destination=UE IPaddr, UDP S=tbd, D=3386
The SCNC 100 now has a SAVi profile for this bearer and SAVi applications 20A,20B can be run in the eNB 1 (step 5,
The steps of
This procedure satisfies the compatibility requirements in section 4.1.1 as follows:
A weakness of the Uplink Discovery procedure using G-PDUs is that the SCNC 100 sends G-PDUs that are solely used for SAVi. This can potentially cause LI and charging problems for non-SAVi APNs and in the roamed-in case. Whilst the “Downlink Discovery procedure using G-PDUs” overcomes this problem it creates a new problem in that a SAVi relationship can only be established when a bearer is created or modified. When a UE enters a cell on a SAVi-capable eNodeB with an existing bearer no SAVi relationship is established.
The procedure described in this section triggers the SCND-initiated, 3-way handshake described in the Downlink Discovery procedure using G-PDUs (section 4.1.5) but rather than being triggered solely by a bearer creation or modification, it is triggered in addition by an Uplink Discovery “probe” from the SCNC 100. This eliminates the single non-compliant aspect of the Downlink Discovery procedure using G-PDUs, i.e. how to alert the SCND 110 in the case of the arrival of a UE 10 with an existing PDN context in a SAVi-supporting eNodeB 1. The “probe” is initiated by the SCNC 100 when the first uplink G-PDU is received from the UE 10 after the bearer has been created in the eNodeB 1. It is carried in a header extension field of this first one (and possibility a small number of subsequent) uplink G-PDU(s). Unlike the “Uplink Discovery procedure using G-PDUs” this procedure satisfies the requirement of not sending G-PDUs that are solely used for SAVi before it is known that both SCNC 100 and SCND 110 are present in the path. However it does rely on an uplink G-PDU arriving at the SCNC 100 from the UE 10 within a reasonable time after the bearer has been created in the eNodeB 1. It should not require any modification to the S-GW in a standalone configuration.
This probing procedure uses the header of the first one or more uplink G-PDUs (GTP-U messages carrying user data) to indicate that the eNodeB 10 is SAVi capable. It makes use of the GTP-U Extension Header feature and there are several possibilities, the use of which will be determined by the degree of transparency offered by the S-GW.
The GTP header (reproduced from 3GPP TS 29.281) may be as follows.
1)This field shall only be evaluated when indicated by the S flag set to 1.
2)This field shall only be evaluated when indicated by the PN flag set to 1.
3)This field shall only be evaluated when indicated by the E flag set to 1.
4)This field shall be present if and only if any one or more of the S, PN and E flags are set.
A generic extension header (modified from 3GPP TS 29.281.) is shown below:
The length of the Extension Header is variable but a multiple of 4 octets, i.e. m=n*4 octets.
The two most significant bits (8 and 7) of the Extension Header Type indicate how the header shall be processed in an Endpoint Receiver of the GTP-PDU, i.e. eNB 1 or P-GW, and an Intermediate Node, i.e. S-GW, and how a recipient shall handle an unknown type. Since the uplink probe has to reach the P-GW, the requirements are:
This is for compatibility with a non-SAVI capable P-GW and to prevent it signalling an error. A SAVi-capable P-GW will comprehend it.
The coding for bits 8 and 7 must therefore be 00 (Comprehension of this extension header is not required. An Intermediate Node shall forward it to any Receiver Endpoint).
TS 29.281 lists several extension header types and whilst it does not say that other values are reserved, it is good practice not to use unallocated code points to ensure compatibility with future versions of the specification.
The preferred solution is a 3GPP standardised extension header type for both uplink and downlink “Private Information”, with bits 8 and 7 set to 00 (Comprehension of this extension header is not required. An Intermediate Node shall forward it to any Receiver Endpoint), thus allowing communication between eNodeB and P-GW. For preference this extension header should be of variable length to allow various types of information to be transferred. However, as a standardised solution is not currently available, an existing header type must be used for the uplink probe and there are two candidates:
0000 0000 No more extension headers
The “No more extension headers” type is used to indicate that no other extension headers are present and the “probe” exploits a redundancy in how “no more extension headers” is signalled. Header octets 9-12 are present only if at least one of E, S and PN bits=1, otherwise the header is only 8 octets long.
This is how the header looks if E, S and PN bits all=0 (Header A).
If S or PN is 1 then octets 9-12 must be present even if E=0 as shown in below (Header B).
However, the GTP header in below (Header C) with E=1 should also be valid since the Specification does not appear to exclude the possibility of octet 12 having the value “No more extension headers”.
This alternative format of a GTP header with no extension headers could therefore be used to signal a SAVi uplink “probe” since it can be distinguished from the Headers A and B above. Note that the values of S and PN do not in any way affect the validity of this approach.
Although this does not appear to be a protocol violation, it is important that the S-GW in the SAVi-capable network be checked to make sure it handles such a header in the way that is expected, i.e. it simply passes it on to the P-GW unchanged. The SAVi eNB 1 must use the format in Header C only for a G-PDU carrying a SAVi probe and if any other extension headers are being used by the eNB 1 they must be removed from G-PDUs carrying the SAVi probe.
The “Service Class Indicator” header type is specified to be used in the downlink direction only and may be used by the A/Gb mode GERAN access for improved radio utilisation. It can appear on the downlink to an eNB in some circumstances.
It would appear that this could be used by SAVi in the uplink direction although it would be necessary to check that the S-GW in the SAVi-capable network would pass it on to the P-GW.
Below shows the format of the Service Class Indicator extension header.
If bit 8 of octet 2 is set to 0 then this indicates an operator-specific value. The 16 values 0000 0000 to 0000 1111 are currently available for operator-specific use. The remaining operator-specific values 0001 0000 to 0111 1111 are described as “spare for future use”. If bit 8 of octet 2=1, this indicates a standardised value although at the time of 3GPP Rel.11, none had been defined.
For use as a SAVi uplink probe the value 0000 FFFF is recommended although it should be possible to configure any of the 16 values in the eNB.
The complete SAVi probe Service Class Indicator extension header would appear as is shown below, assuming no more extension headers.
Use of this extension header type is compatible with the presence of other extension header types in the same G-PDU.
There are two implementation options for inserting this extension header in the G-PDU:
This probing procedure followed by Downlink Discovery procedure using G-PDUs (section 4.1.5) satisfies the compatibility requirements in section 4.1.1 as follows:
An alternative approach which would avoid the possible delay caused by waiting for the first uplink G-PDU, would be for the P-GW to be notified of every cell change by a bearer modification request from the MME (via the S-GW). This would then trigger the “Downlink Discovery procedure using G-PDUs”. This would, however, result in increased signalling.
The SCNC 100-SCND 110 relationship for a bearer can be forcibly deleted whilst a UE 10 is connected to a SAVi-capable eNodeB 1 by either party initiating the Relationship Deletion Procedure. In both cases this results in SAVi processing ceasing for that bearer. This may be immediate or the application(s) 20A/20B may be allowed to terminate gracefully. The Close Request and Response messages use the same format as the Update Request and Update Response.
In the SCND 110-initiated deletion, the Data field in the Close Request indicates how the applications 20A/20B are to be terminated either immediately or allowed to proceed to completion. The Close Response confirms that the Close Request has been received and complied with, not that the application terminations are necessarily complete. An unexpected Close Response is ignored.
In the SCNC 100-initiated relationship deletion, the Close Request indicates that an event has occurred in the SAVi eNodeB 1 that requires the relationship to be deleted. The applications 20A/20B will no longer be processing traffic for this bearer. The Close Response confirms receipt by the SCND 110. An unexpected Close Response is ignored.
When a bearer is deleted by the user or network, or the UE 10 leaves a SAVi-capable eNodeB 1 the SCNC 100 deletes the SAVi Relationship. An activity timer may also be used to delete the SAVi relationship in the SCNC 100. It is not necessary for the SCNC 100 to notify the SCND 110 since the SCND 110 is stateless. However such information might be useful for diagnostic purposes so optionally the SCNC 100 may send a Close Request to the SCND 110 if the uplink tunnel is still available.
SAVI Platform 1 needs to support proper functioning of SAVI architecture based on Client (SCNC 100) and Director (SCND 110) components as outlined herein. As outlined in Section 3, SCNC 100 implements the in-band control channel towards SCND 110 and then based on the per subscriber policies it controls routing the packet through the sequence of applications 20A/20B permitted for the user. In order to fulfil these functions SCNC 100 has to have visibility of all the uplink and downlink user traffic. Additionally, based on policies received from SCND 110, SCNC 100 needs to be able to control how packets are routed through the SAVi applications 20A/20B via the SAVi specific functions 200 on the SAVi Platform 1. Therefore the SAVi functions on the SAVi Platform 1 are responsible for routing. Furthermore for system resiliency, flexibility and extensibility when new applications 20A/20B are added, a separation between SCNC 100 and SAVI Applications 20A/20B has to be provided. Also a separation between SAVi applications 20A/20B themselves is needed. SAVi functions 200 on the SAVi Platform 1 need to be able to route the packet between various applications 20A/20B as directed by SCNC 100. Virtualized environment is one of the examples of practical implementation of a system with these properties.
The SAVi compliant platform 1 always sends the user related packets to the SCNC 100. This applies to the user data packets in both uplink and downlink directions. Since both uplink and downlink user packets are exchanged between the SCNC 100 and the SAVi Platform 1, either two interfaces are needed (to/from UE 10 and from/to S-GW) or the direction (uplink or downlink) of each user packet needs to be indicated explicitly by a tag.
The SCNC 100 and the applications 20A/20B need to know the association between the uplink and downlink tunnels that constitute each bearer. In an eNodeB 10 the 4-tuple, (Uplink TEID+TLA; downlink TEID+TLA) uniquely identifies a bearer. Either the uplink or downlink pair is already present in the IP and GTP headers. The other pair could be provided in a tag. Alternatively the SAVi Platform 1 could send the 4-tuple over a separate control interface when the bearer is created.
Note that a Tunnel Endpoint Identifier (TEID) in itself does not uniquely identify a tunnel in an eNodeB. The Transport Layer Address (TLA) which is the IP address of the receiving tunnel endpoint is also required. The pair, TEID+TLA, is unambiguous.)
6.3. SAVi in-Band Control
The packets destined to the SCNC 100 are recognized by the special signature that depends on the in-band control mechanism described in this specification. These packets are sent to the SCNC 100. If there is no SCNC 100 present they will be discarded by the UE 10.
Note that there may be overlapping UE IP-Addresses on the SAVi Platform 1 in that it is possible for two bearers to have the same UE IP address. Therefore applications need to handle ID tagging of IP packets with the above-mentioned tunnel identification as a mandatory requirement.
The section headings and numbering used in this description are for ease of reference, and should not be interpreted as limiting the scope of the invention.