WO2016074715A1 - Last hop decisions in telecommunications networks - Google Patents

Last hop decisions in telecommunications networks Download PDF

Info

Publication number
WO2016074715A1
WO2016074715A1 PCT/EP2014/074403 EP2014074403W WO2016074715A1 WO 2016074715 A1 WO2016074715 A1 WO 2016074715A1 EP 2014074403 W EP2014074403 W EP 2014074403W WO 2016074715 A1 WO2016074715 A1 WO 2016074715A1
Authority
WO
WIPO (PCT)
Prior art keywords
route
route profile
fqdn
profile
network
Prior art date
Application number
PCT/EP2014/074403
Other languages
French (fr)
Inventor
Atila HORVAT
Original Assignee
Telefonaktiebolaget L M Ericsson (Publ)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget L M Ericsson (Publ) filed Critical Telefonaktiebolaget L M Ericsson (Publ)
Priority to PCT/EP2014/074403 priority Critical patent/WO2016074715A1/en
Publication of WO2016074715A1 publication Critical patent/WO2016074715A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/308Route determination based on user's profile, e.g. premium users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1016IP multimedia subsystem [IMS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1046Call controllers; Call servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1063Application servers providing network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration

Definitions

  • the invention relates to methods and apparatus for controlling last hop decisions in a telecommunications network. Specifically, the invention may relate to methods and apparatus for controlling last hop decisions within the core network, for example, by an applications server and a domain name server. Background
  • Last hop decisions are usually used in Proxy Call Session Control Function (P- CSCF), Interconnection Border Control Function (IBCF) and Transit Internet Protocol (IP) Multimedia Service (IMS) use cases.
  • P- CSCF Proxy Call Session Control Function
  • IBCF Interconnection Border Control Function
  • IP Internet Protocol
  • IMS Transit Internet Protocol Multimedia Service
  • routing policies can be applied on a per Enterprise, Session Initiation Protocol (SIP) trunk, Access Network, or Foreign Network (independent of the CN) basis.
  • SIP Session Initiation Protocol
  • IMS Internet Multimedia Service
  • CBR Constraint Based Routing
  • a border element may be, for example, a Session Border Controller (SBC) in non- IMS networks or an IBCF or Transit node in IMS networks.
  • SBC Session Border Controller
  • border elements are single points of failure regarding last hop routing decisions, which increases instability in the network.
  • Existing technologies impact operation and maintenance heavily since every single last hop, last hop decision and associated signalling entity (e.g., SIP trunk) must be individually configured and statically controlled by the border element application.
  • a route profiles data base is disclosed herein and can be replicated between nodes. Therefore, a new node added to a network can start selecting routes without provisioning or configuration. Also, there can be default route profiles per system. Without this, every network expansion will end up with re-configuration and re- provisioning regarding route selection.
  • IMS business trunking for IP-Private Branching Exchange (PBX) in static mode of operation which is the subject of on- going 3GPP standardization work
  • PBX IP-Private Branching Exchange
  • exemplary embodiments of the invention provide minimal or no impact on involved IMS node configurations can also be useful for migration or expansion projects where one customer is moving to another border element instance and the needed route selection data can be provided dynamically.
  • the current system of last hop decisions at border elements is not able to fulfil that desire.
  • a network node for use as an application server, AS, (106) in a core network.
  • the network node comprises a receiving means, which may be a receiver (304), configured to receive a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network.
  • the network node comprises a route profile determining means, which may be a route profile determiner (314), configured to determine a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network.
  • the network node comprises a Fully Qualified Domain Name, FQDN, retrieving means, which may be a FQDN retriever (316), configured to retrieve from a database a FQDN associated with a user service profile and the determined route profile.
  • the network node comprises a FQDN controlling means, which may be a FQDN controller (318), configured to insert the retrieved FQDN into the call setup message and to control a transmitter (302) to transmit the call setup message to a border element (100).
  • a call setup message may comprise data that at least partly is responsible for setting up a call in a telecommunications system.
  • a call may be a voice call or any other type of connection between two nodes in a telecommunications system for the transfer of data.
  • a foreign network may be any network that is not the home (or core) network of a subscriber to a telecommunications system.
  • a foreign network may be a target or destination network in which a device is located to which a call is to be setup, and a home network may be a source network from which a call setup message originates.
  • the route profile determiner (314) is configured to determine the route profile based on a subscription of a user originating the call.
  • the route profile determiner (314) is configured to determine the route profile based on one or more network requirements.
  • the FQDN retriever (316) is configured to retrieve the FQDN from a Home Subscriber Server (108).
  • the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) is configured to retrieve the FQDN from the memory.
  • a method for controlling a network node for use as an AS (106) in a core network comprises receiving, at a receiver (304), a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network.
  • the method comprises determining, by a route profile determiner (314), a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network.
  • the method comprises retrieving, by a Fully Qualified Domain Name, FQDN, retriever (316) from a database, a FQDN associated with a user service profile and the determined route profile.
  • the method comprises inserting, by a FQDN controller (318), the retrieved FQDN into the call setup message and controlling a transmitter (302) to transmit the call setup message to a border element (100).
  • the route profile determiner (314) determines the route profile based on a subscription of a user originating the call.
  • the route profile determiner (314) determines the route profile based on one or more network requirements.
  • the FQDN retriever (316) retrieves the FQDN from a Home Subscriber Server (108).
  • the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) retrieves the FQDN from the memory.
  • a computer program comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the methods described above.
  • a network node for use as a border element (100) in a core network.
  • the network node comprises a receiving means, which may be a receiver (204), configured to receive a call setup message transmitted from an application server, AS, (106), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network.
  • the network node comprises a FQDN extraction means, which may be a FQDN extractor (214), configured to extract the FQDN from the received call setup message.
  • the network node comprises a route profile data retrieving means, which may be a route profile data retriever (216), configured to retrieve from a database route profile data based on the extracted FQDN, the route profile data comprising a route profile ID.
  • the network node comprises a last hop controlling means, which may be a last hop controller (218), configured to determine routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile ID.
  • the route profile data retriever is configured to retrieve the route profile data from a DNS (102).
  • the route profile data retriever is configured to retrieve the route profile data from a memory (206) of the network node.
  • the last hop controller (218) is configured to obtain the route profile based on the route profile ID, and wherein the last hop controller (218) is further configured to determine whether the route specified by the route profile is up or down.
  • the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the route.
  • the last hop controller (218) is configured to obtain a further route profile and to determine whether a further route specified by the further route profile is up or down.
  • the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the further route.
  • a method for controlling a network node for use as a border element (100) in a core network comprises receiving, by a receiver (204), a call setup message transmitted from an application server, AS, (106), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network.
  • the method comprises extracting, by a FQDN extractor (214), the FQDN from the received call setup message.
  • the method comprises retrieving, by a route profile data retriever (216) from a database, route profile data based on the extracted FQDN, the route profile data comprising a route profile ID.
  • the method comprises determining, by a last hop controller (218), routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile ID.
  • the route profile data retriever retrieves the route profile data from a DNS (102).
  • the route profile data retriever retrieves the route profile data from a memory (206) of the network node.
  • the last hop controller (218) obtains the route profile based on the route profile ID, and wherein the last hop controller determines whether the route specified by the route profile is up or down.
  • the last hop controller (218) controls the last hop of data relating to the call in accordance with the route.
  • the last hop controller (218) obtains a further route profile and determines whether a further route specified by the further route profile is up or down.
  • the last hop controller (218) controls the last hop of data relating to the call in accordance with the further route.
  • a computer program (210) comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the methods described above.
  • a carrier (212) containing the computer program (210) above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or non-transitory computer readable storage medium.
  • Figure 1 is an architecture diagram of a telecommunications system
  • Figure 2 is a block schematic diagram of a border element
  • FIG. 3 is a block schematic diagram of an application server
  • Figure 4 is a signalling diagram for a method of controlling last hop decisions
  • Figure 5 is a block schematic diagram of a border element showing data flow.
  • an operator can configure a network such that last hop decision control is provided at an Application Server (AS).
  • AS Application Server
  • the operator may configure and activate a "last hop controlled by AS and Domain Name Server (DNS)" feature (or “dynamic routing” feature) on the border element.
  • DNS Domain Name Server
  • the last hop decision can be decided by the AS as part of the IMS user service profile and this can be especially useful for the future of the Enterprise market in the IMS core.
  • the number of routing profiles stored at the border element may be drastically reduced.
  • every possible routing profile for every user must be stored at the border element, as the same routing profile cannot be used by more than one user.
  • each routing profile stored at the border element may be used by any one of the users and so a reduced number are required to be stored.
  • last hop routing features are not part of any user service profiles, but with the methods and apparatus disclosed herein, AS vendors may include such last hop routing features in the IMS user service profile through route Fully Qualified Domain Names (FQDNs).
  • the AS vendors may map a user FQDN to routing constraints that belong to a unique route profile ID. That is, an FQDN may be used to represent a route profile ID.
  • the unique route FQDNs can be generated in the operator Operations & Support System (OSS), provided in a Home Subscriber Server (HSS) under an IMS subscriber service profile and accessed by an AS (e.g., as in IMS sh interface usage).
  • OSS Operations & Support System
  • HSS Home Subscriber Server
  • AS e.g., as in IMS sh interface usage
  • a benefit of the methods and apparatus disclosed may be in the fact that these actions (route selection) can be seen as value added services (VAS) and part of the subscribed list of paid features. That is, by applying route profile ID selection at the AS, it is possible for operators to charge users for providing certain routing profile benefits. In the prior art this is not possible, as the AS has no control over the route profile of data for a user. The same thing can be achieved by not putting these unique route FQDNs in the IMS service profile, but instead, the AS can do the same thing by manual configuration, after the generic service profile is downloaded.
  • VAS value added services
  • Exemplary methods and apparatus therefore simplify and reduce the border element operation and maintenance requirements.
  • Exemplary methods and apparatus include the last hop routing decision in a user service profile on an AS or HSS.
  • exemplary methods and apparatus may use dynamic objects like a "route profile", a "route group” and a "route status lookup", which can be re-used and changed to include different received and resolved FQDNs, generated and/or controlled by AS.
  • FQDNs can be generated and associated with a route profile on an OSS as part of user service profile creation and HSS provisioning, or as an alternative, FQDNs can be generated and associated with route data on AS itself. By configuration, FQDNs can be added to user service profiles such that the FQDNs are associated with a user and a route profile.
  • route profile encompasses a set of rules and procedures for determining the last hop of data relating to a call.
  • a route profile may be identified by a "route profile ID”, which is a unique identifier of a route profile.
  • An FQDN is used as a reference to route information (including a route profile ID) stored on a DNS.
  • Configured route profiles are stored in a border element "route profile database”.
  • the term "route group” encompasses a set of routes. Typically, if a first route (e.g. IP address and port) using an associated route profile within a border element is not available then the border element will implement the next (second) associated route from a route profile group according to a particular strategy. The border element may then apply the same route profile to determine the status of the second route.
  • a route group may be identified by a "route group ID”, which is a unique identifier of a route group.
  • a "route status lookup” is a managed object that uses an identified "route profile”, which may be an active route IP address and also uses the optional "route group” managed object for the next "route status lookup” according to a "route profile” strategy.
  • Different route FQDNs relate to and identify one or more "route profile ID" values relating to route profiles stored in a border element and mapped routing constraints provided by an AS.
  • an AS is able to select different route profile IDs and thereby obtain different routing constraints and strategies that can be used at the border element for data originating from a particular user.
  • a border element 100 provides connectivity between a Foreign Network (FN) and a CN (or home network).
  • the border element 100 may be an IBCF for IMS networks or a SBC for non-IMS networks and is in electrical communication with a DNS 102 and a Call Session Control Function (CSCF) 104.
  • the CSCF 104 is in electrical communication with an AS 106.
  • the AS 106 is in electrical communication with a HSS 108.
  • the DNS 102 and the HSS 108 are each in electrical communication with an OSS 109.
  • Figure 2 shows a schematic diagram of a border element 100.
  • the border element 100 may be used in the architecture shown in Figure 1.
  • the border element 100 comprises a transmitter 202 and a receiver 204.
  • the transmitter 202 and receiver 204 are in electrical communication with other communication units, nodes, UEs, servers and/or functions in a telecommunications network and are configured to transmit and receive data accordingly.
  • the border element 100 further comprises at least one memory 206 and at least one processor 208.
  • the memory 206 may comprise a non-volatile memory and/or a volatile memory.
  • the memory 206 may have a computer program 210 stored therein.
  • the computer program 210 may be configured to undertake methods disclosed herein.
  • the computer program 210 may be loaded in the memory 206 from a non-transitory computer readable medium 212, on which the computer program is stored.
  • the processor 208 is configured to undertake at least the functions of a FQDN extractor 214 and a route profile data retriever 216, as set out herein.
  • Each of the transmitter 202 and receiver 204, memory 206, processor 208, FQDN extractor 214 and route profile data retriever 216 is in electrical communication with the other features of the border element 100.
  • the border element 100 can be implemented as a combination of computer hardware and software.
  • the FQDN extractor 214 and route profile data retriever 216 may be implemented as software configured to run on the processor 208.
  • the at least one memory 206 stores the various programs/executable files that are implemented by a processor 208, and also provides a storage unit for any required data.
  • the programs/executable files stored in the memory 206, and implemented by the processor 208, can include the FQDN extractor 214 and the route profile data retriever 216, but are not limited to such.
  • Figure 3 shows a schematic diagram of a AS 106.
  • the AS 106 may be used in the architecture shown in Figure 1 .
  • the AS 106 comprises a transmitter 302 and a receiver 304.
  • the transmitter 302 and receiver 304 are in electrical communication with other communication units, nodes, UEs, servers and/or functions in a telecommunications network and are configured to transmit and receive data accordingly.
  • the AS 106 further comprises at least one memory 306 and at least one processor 308.
  • the memory 306 may comprise a non-volatile memory and/or a volatile memory.
  • the memory 306 may have a computer program 310 stored therein.
  • the computer program 310 may be configured to undertake methods disclosed herein.
  • the computer program 310 may be loaded in the memory 306 from a non-transitory computer readable medium 312, on which the computer program is stored.
  • the processor 308 is configured to undertake at least the functions of a route profile determiner 314, a FQDN retriever 316 and a FQDN controller 318, as set out herein.
  • Each of the transmitter 302 and receiver 304, memory 306, processor 308, route profile determiner 314, FQDN retriever 316 and FQDN controller 318 is in electrical communication with the other features of the AS 106.
  • the AS 106 can be implemented as a combination of computer hardware and software.
  • the profile determiner 314, FQDN retriever 316 and FQDN controller 318 may be implemented as software configured to run on the processor 308.
  • the at least one memory 306 stores the various programs/executable files that are implemented by a processor 308, and also provides a storage unit for any required data.
  • the programs/executable files stored in the memory 306, and implemented by the processor 308, can include a profile determiner 314, a FQDN retriever 316 and a FQDN controller 318, but are not limited to such.
  • An exemplary OSS 109 may be configured to activate a new "last hop controlled by AS and DNS" feature, on the border element 100. This may be done through network operator provisioning procedures. Data may be transmitted from the OSS 109 to the border element 100 to activate the feature in the border element 100.
  • the OSS 109 may only generate and provide route profile IDs, and the feature is ready on the border element.
  • the generated route profile IDs may then be stored on the DNS 102, along with the other route data stored against a FQDN. If the route profile objects need to be updated/amended, the network operator may provide, via the OSS 109, individual route profiles and associated route profile IDs to the border element and that way activate the feature. As before, the route profile IDs may be stored on the DNS 102.
  • An exemplary border element 100 may be configured to determine a route profile object for a particular user. This may be done in response to receipt of a call setup message, such as a terminating INVITE message, which includes a FQDN associated with a route profile.
  • the determined route profile object may be based on route profile and route profile ID data received from the OSS 109 or may be a default route profile object already stored within the border element 100.
  • the route profile object may be stored locally in a route profile database of the border element 100.
  • exemplary border elements 100 may also determine a route group object, which may comprise a plurality of routes received from the FQDN - the DNS 102 can respond with 1 -N IP addresses/ports that correspond to routes - or may be a default route group object on the border element 100, which may comprise one or more default routes.
  • the route group object may be stored locally in a route profile database of the border element 100.
  • Exemplary border elements 100 may be configured to associate a route profile ID received from the DNS 102 to a route profile object and a route group ID received from the DNS 102 to a route group object (if necessary).
  • a route group ID is not needed and resolved FQDN IP addresses may be used for the default route group creation FQDNs are used to identify data relating to a particular route profile.
  • This data may include an IP address of a destination network, a port identifier of a destination network, transport protocol and a route profile ID (e.g., a Name Authority Pointer (NAPTR)).
  • NAPTR Name Authority Pointer
  • Route profile data is stored in a memory of the DNS 102 and is obtainable from the memory using an FQDN. Each FQDN may identify different route profile data.
  • FQDNs relating to one or more route profiles are associated with a user service profile, for example an IMS user service profile, in the HSS 108 or the AS 106.
  • the user service profiles and the associated FQDNs may be retrieved from the HSS 108 by the AS 106, or may be obtained from an internal memory 306 of the AS 106.
  • FQDNs can be mapped to associated routing constraints that are synchronised with border element routing constraints. That is, the AS 106 is aware of each of the route profiles in the border element 100 and which FQDNs are associated to which route profiles.
  • a signalling diagram shows an exemplary method for controlling last hop decisions.
  • an Interrogating Call Session Control Function transmits a Location Information Request (LIR) to the HSS 108.
  • LIR Location Information Request
  • the HSS 108 responds to the LIR request by transmitting to the l-CSCF a Location Information Answer (LIA), which comprises information about the location of the AS 106.
  • LIA Location Information Answer
  • the l-CSCF sends a terminating INVITE message towards the AS 106.
  • the route profile determiner 314 determines which route profile should be used for data relating to the call.
  • the route status lookup object determines the route profile (through the route profile id, FQDN).
  • the route profile to be used may be determined on one or more user based criteria. For example, the route profile may be determined based on one or more of a user's subscription, a time of day, a load on the home or foreign network, a required bandwidth etc.
  • the FQDN may be stored in the HSS 108 as part of a user service profile.
  • FQDN retriever 316 of the AS 106 retrieves from the HSS 108 a FQDN relating to the determined route profile.
  • the FQDN may be stored locally on the memory 306 of the AS and may relate to a user service profile also stored in the memory 306.
  • the FQDN retriever may retrieve the FQDN from the memory 306.
  • the selection of the route FQDN may be based on any relevant criteria, such as the time of the call or Call Admission Control (CAC). For example, between the hours of 8am and 4pm route 1 may be required with one last hop decision and between the hours of 4pm and 8am route 1 may be required with a different last hop decision. Different route profiles may specify different last hop decisions. Two FQDNs, FQDN 1 and FQDN 2, may therefore each specify a different route profile having a different route profile ID and specifying different last hops, but the overall route (route 1 ) will be the same. Therefore, between 8am and 4pm FQDN 1 specifying route 1 with a first last hop is retrieved, and between the hours of 4pm and 8am FQDN 2 specifying route 1 FQDN 2 specifying route 1 with a second last hop is retrieved.
  • CAC Call Admission Control
  • the FQDN controller 318 inserts the retrieved FQDN, which may be an IP- PBX FQDN, into the terminating INVITE message and controls the transmitter 302 to transmit the terminating INVITE message towards the border element 100, which may be an IBCF.
  • the terminating INVITE message may be transmitted to the CSCF 1 04 and from the CSCF 104 to the border element 100.
  • the receiver 204 of the border element 100 receives the terminating INVITE message from the AS 106 and the FQDN extractor 214 extracts the FQDN from the message.
  • the route profile data retriever 216 initiates a DNS lookup and controls the transmitter 202 to transmit a request to the DNS 102 for the route profile data relating to the extracted FQDN.
  • the DNS 102 responds with an NAPTR record that carries the route profile I D of the route profile determined by the route profile determiner 314 of the AS 106.
  • the last hop controller 218 of the border element 100 obtains from memory 206 the route profile corresponding to the retrieved route profile ID.
  • the last hop controller uses the obtained route profile together with legacy route profile data retrieved from the DNS 102, such as an IP address (1 .N) of the last hop or foreign network and a port, to determine last hop decisions for data exiting the telecommunications network for a "foreign" network.
  • the last hop controller 218 may first locate the user access network or foreign network using legacy route profile data such as the I P address and the port. Then the last hop controller 218 may determine the route profile from the retrieved route profile data. After route profile is determined, the last hop controller 218 may use the route IP address from the determined route profile route status lookup.
  • the route status lookup determines the status of the route specified in the obtained route profile ID. I it is determined that the route is inactive/down/exceeded constraints, a further route profile may be used according to a strategy. The strategy may be contained within the first (inactive) route profile. In such circumstances, the last hop controller 218 may move to the next route profile ID in a route profile group. The last hop controller 218 may check the associated route group managed object and undertake a route status lookup with the next IP address in the same group (while applying the route profile strategy).
  • the last hop controller may control the last hop of data relating to the call according to the active route profile.
  • Figure 5 shows a data flow through a border element 100, which may be a transit node or an IBCF. The data flow is described below.
  • a terminating INVITE from Telecom IMS core (AS, HSS, CSCF) is sent towards the border element 100 with route (SIP trunk) FQDN in the route header or request-URI.
  • the route (SIP trunk) FQDN is resolved to obtain route data comprising multiple IP addresses, port, transport protocol, route profile ID (NAPTR) and optional route group ID (NAPTR).
  • the route data may be obtained from the border element 100 or from the DNS 102.
  • the border element 100 uses the resolved FQDN legacy information together with the route profile ID and (optional) route group ID to undertake the associated route status lookup.
  • the route status lookup object locates the selected route profile with the route profile ID and sends the FQDN resolved IP address for route status lookup.
  • the route profile object uses the FQDN resolved IP address for constraints associated SIP statistics lookup.
  • the route profile object compares the configured route constraints values associated with route profile 1 with the real time constraints associated SIP statistics values. If there is a match, the route is "UP" (or available), and if there is not a match the route is "DOWN".
  • the route status lookup object will use the route profile route strategy and the received route group ID (from the route FQDN) to locate the next IP address for the next route status lookup.
  • the same "route profile” object is used for the next "route status lookup".
  • route profile 1 (route profile ID 1 ) is UP and so SIP network 1 508 is used to send data relating to the call to the foreign network 510.
  • a computer program may be configured to provide any of the above described methods.
  • the computer program may be provided on a computer readable medium.
  • the computer program may be a computer program product.
  • the product may comprise a non-transitory computer usable storage medium.
  • the computer program product may have computer-readable program code embodied in the medium configured to perform the method.
  • the computer program product may be configured to cause at least one processor to perform some or all of the method.
  • These computer program instructions may be provided to a processor circuit of a general purpose computer circuit, special purpose computer circuit, and/or other programmable data processing circuit to produce a machine, such that the instructions, which execute via the processor of the computer and/or other programmable data processing apparatus, transform and control transistors, values stored in memory locations, and other hardware components within such circuitry to implement the functions/acts specified in the block diagrams and/or flowchart block or blocks, and thereby create means (functionality) and/or structure for implementing the functions/acts specified in the block diagrams and/or flowchart block(s).
  • Computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer- readable medium produce an article of manufacture including instructions which implement the functions/acts specified in the block diagrams and/or flowchart block or blocks.
  • a tangible, non-transitory computer-readable medium may include an electronic, magnetic, optical, electromagnetic, or semiconductor data storage system, apparatus, or device.
  • a portable computer diskette a random access memory (RAM) circuit, a read-only memory (ROM) circuit, an erasable programmable read-only memory (EPROM or Flash memory) circuit, a portable compact disc read-only memory (CD- ROM), and a portable digital video disc read-only memory (DVD/Blu-ray).
  • RAM random access memory
  • ROM read-only memory
  • EPROM or Flash memory erasable programmable read-only memory
  • CD- ROM compact disc read-only memory
  • DVD/Blu-ray portable digital video disc read-only memory
  • the computer program instructions may also be loaded onto a computer and/or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer and/or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the block diagrams and/or flowchart block or blocks.
  • the invention may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.) that runs on a processor, which may collectively be referred to as "circuitry," "a module” or variants thereof.

Abstract

A network node for use as an application server, AS, (106) in a core network. The network node comprises a receiver (304) configured to receive a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network. The network node comprises a route profile determiner (314) configured to determine a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network. The network node comprises a Fully Qualified Domain Name, FQDN, retriever (316) configured to retrieve from a database a FQDN associated with a user service profile and the determined route profile. The network node comprises a FQDN controller (318) configured to insert the retrieved FQDN into the call setup message and to control a transmitter (302) to transmit the call setup message to a border element (100).

Description

LAST HOP DECISIONS IN TELECOMMUNICATIONS NETWORKS Technical field The invention relates to methods and apparatus for controlling last hop decisions in a telecommunications network. Specifically, the invention may relate to methods and apparatus for controlling last hop decisions within the core network, for example, by an applications server and a domain name server. Background
In current systems, last hop decisions regarding routing are fully controlled by a border element in a telecommunications network. As such, the Core Network (CN) does not control these last hop decisions.
Last hop decisions are usually used in Proxy Call Session Control Function (P- CSCF), Interconnection Border Control Function (IBCF) and Transit Internet Protocol (IP) Multimedia Service (IMS) use cases. In those use cases routing policies can be applied on a per Enterprise, Session Initiation Protocol (SIP) trunk, Access Network, or Foreign Network (independent of the CN) basis. If Constraint Based Routing (CBR) is used, it must be configured, fully controlled and applied statically at the border element. That approach is based on market legacy and has a significant impact on operation and management, and on provisioning of a telecommunications network because, for every route and signalling point, an operator must configure statically the routing constraints, even the overlapping values, and apply them per network or per user.
A border element may be, for example, a Session Border Controller (SBC) in non- IMS networks or an IBCF or Transit node in IMS networks.
In addition to the operation and maintenance impact of the above approach, border elements are single points of failure regarding last hop routing decisions, which increases instability in the network. Existing technologies impact operation and maintenance heavily since every single last hop, last hop decision and associated signalling entity (e.g., SIP trunk) must be individually configured and statically controlled by the border element application.
Summary
Aspects and embodiments of the invention aim to obviate or mitigate one or more of the problems associated with the prior art, including those mentioned above.
A route profiles data base is disclosed herein and can be replicated between nodes. Therefore, a new node added to a network can start selecting routes without provisioning or configuration. Also, there can be default route profiles per system. Without this, every network expansion will end up with re-configuration and re- provisioning regarding route selection.
There is a desire from Operators for a new "IMS business trunking for IP-Private Branching Exchange (PBX) in static mode of operation," which is the subject of on- going 3GPP standardization work, is minimal or no impact on involved IMS node configurations. Exemplary embodiments of the invention provide minimal or no impact on involved IMS node configurations can also be useful for migration or expansion projects where one customer is moving to another border element instance and the needed route selection data can be provided dynamically. The current system of last hop decisions at border elements is not able to fulfil that desire.
According to the invention in a first aspect, there is provided a network node for use as an application server, AS, (106) in a core network. The network node comprises a receiving means, which may be a receiver (304), configured to receive a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network. The network node comprises a route profile determining means, which may be a route profile determiner (314), configured to determine a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network. The network node comprises a Fully Qualified Domain Name, FQDN, retrieving means, which may be a FQDN retriever (316), configured to retrieve from a database a FQDN associated with a user service profile and the determined route profile. The network node comprises a FQDN controlling means, which may be a FQDN controller (318), configured to insert the retrieved FQDN into the call setup message and to control a transmitter (302) to transmit the call setup message to a border element (100).
As used herein, a call setup message may comprise data that at least partly is responsible for setting up a call in a telecommunications system. A call may be a voice call or any other type of connection between two nodes in a telecommunications system for the transfer of data.
As used herein, a foreign network may be any network that is not the home (or core) network of a subscriber to a telecommunications system. In addition, a foreign network may be a target or destination network in which a device is located to which a call is to be setup, and a home network may be a source network from which a call setup message originates.
Optionally, the route profile determiner (314) is configured to determine the route profile based on a subscription of a user originating the call.
Optionally, the route profile determiner (314) is configured to determine the route profile based on one or more network requirements. Optionally, the FQDN retriever (316) is configured to retrieve the FQDN from a Home Subscriber Server (108).
Optionally, the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) is configured to retrieve the FQDN from the memory.
According to the invention in a second aspect, there is provided a method for controlling a network node for use as an AS (106) in a core network. The method comprises receiving, at a receiver (304), a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network. The method comprises determining, by a route profile determiner (314), a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network. The method comprises retrieving, by a Fully Qualified Domain Name, FQDN, retriever (316) from a database, a FQDN associated with a user service profile and the determined route profile. The method comprises inserting, by a FQDN controller (318), the retrieved FQDN into the call setup message and controlling a transmitter (302) to transmit the call setup message to a border element (100). Optionally, the route profile determiner (314) determines the route profile based on a subscription of a user originating the call.
Optionally, the route profile determiner (314) determines the route profile based on one or more network requirements.
Optionally, the FQDN retriever (316) retrieves the FQDN from a Home Subscriber Server (108).
Optionally, the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) retrieves the FQDN from the memory.
According to the invention in a third aspect, there is provided a computer program (310) comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the methods described above.
According to the invention in a fourth aspect, there is provided a carrier (312) containing the computer program (310) above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or non-transitory computer readable storage medium.
According to the invention in a fifth aspect, there is provided a network node for use as a border element (100) in a core network. The network node comprises a receiving means, which may be a receiver (204), configured to receive a call setup message transmitted from an application server, AS, (106), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network. The network node comprises a FQDN extraction means, which may be a FQDN extractor (214), configured to extract the FQDN from the received call setup message. The network node comprises a route profile data retrieving means, which may be a route profile data retriever (216), configured to retrieve from a database route profile data based on the extracted FQDN, the route profile data comprising a route profile ID. The network node comprises a last hop controlling means, which may be a last hop controller (218), configured to determine routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile ID.
Optionally, the route profile data retriever is configured to retrieve the route profile data from a DNS (102). Optionally, the route profile data retriever is configured to retrieve the route profile data from a memory (206) of the network node.
Optionally, the last hop controller (218) is configured to obtain the route profile based on the route profile ID, and wherein the last hop controller (218) is further configured to determine whether the route specified by the route profile is up or down.
Optionally, if the route is up, the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the route. Optionally, if the route is down, the last hop controller (218) is configured to obtain a further route profile and to determine whether a further route specified by the further route profile is up or down.
Optionally, if the further route is up, the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the further route.
According to the invention in a sixth aspect, there is provided a method for controlling a network node for use as a border element (100) in a core network. The method comprises receiving, by a receiver (204), a call setup message transmitted from an application server, AS, (106), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network. The method comprises extracting, by a FQDN extractor (214), the FQDN from the received call setup message. The method comprises retrieving, by a route profile data retriever (216) from a database, route profile data based on the extracted FQDN, the route profile data comprising a route profile ID. The method comprises determining, by a last hop controller (218), routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile ID.
Optionally, the route profile data retriever retrieves the route profile data from a DNS (102).
Optionally, the route profile data retriever retrieves the route profile data from a memory (206) of the network node.
Optionally, the last hop controller (218) obtains the route profile based on the route profile ID, and wherein the last hop controller determines whether the route specified by the route profile is up or down.
Optionally, if the route is up, the last hop controller (218) controls the last hop of data relating to the call in accordance with the route.
Optionally, if the route is down, the last hop controller (218) obtains a further route profile and determines whether a further route specified by the further route profile is up or down.
Optionally, if the further route is up, the last hop controller (218) controls the last hop of data relating to the call in accordance with the further route.
According to the invention in a seventh aspect, there is provided a computer program (210) comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the methods described above. According to the invention in a eighth aspect, there is provided a carrier (212) containing the computer program (210) above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or non-transitory computer readable storage medium.
Brief description of drawings
Exemplary embodiments of the invention are disclosed here with reference to the accompanying drawings, in which:
Figure 1 is an architecture diagram of a telecommunications system;
Figure 2 is a block schematic diagram of a border element;
Figure 3 is a block schematic diagram of an application server;
Figure 4 is a signalling diagram for a method of controlling last hop decisions; and Figure 5 is a block schematic diagram of a border element showing data flow.
Detailed description
Disclosed herein are methods and apparatus for CN control of last hop decisions in a telecommunications network. In exemplary methods and apparatus, an operator can configure a network such that last hop decision control is provided at an Application Server (AS). In such methods and apparatus, the operator may configure and activate a "last hop controlled by AS and Domain Name Server (DNS)" feature (or "dynamic routing" feature) on the border element. This way, the last hop decision can be decided by the AS as part of the IMS user service profile and this can be especially useful for the future of the Enterprise market in the IMS core.
Specifically, by allowing the AS to control which routing profile to apply at a border element for a particular user under particular conditions, the number of routing profiles stored at the border element may be drastically reduced. In current systems every possible routing profile for every user must be stored at the border element, as the same routing profile cannot be used by more than one user. However, in the invention, each routing profile stored at the border element may be used by any one of the users and so a reduced number are required to be stored. In current systems, last hop routing features are not part of any user service profiles, but with the methods and apparatus disclosed herein, AS vendors may include such last hop routing features in the IMS user service profile through route Fully Qualified Domain Names (FQDNs). The AS vendors may map a user FQDN to routing constraints that belong to a unique route profile ID. That is, an FQDN may be used to represent a route profile ID.
The unique route FQDNs can be generated in the operator Operations & Support System (OSS), provided in a Home Subscriber Server (HSS) under an IMS subscriber service profile and accessed by an AS (e.g., as in IMS sh interface usage). This is just one implementation but others are possible.
A benefit of the methods and apparatus disclosed may be in the fact that these actions (route selection) can be seen as value added services (VAS) and part of the subscribed list of paid features. That is, by applying route profile ID selection at the AS, it is possible for operators to charge users for providing certain routing profile benefits. In the prior art this is not possible, as the AS has no control over the route profile of data for a user. The same thing can be achieved by not putting these unique route FQDNs in the IMS service profile, but instead, the AS can do the same thing by manual configuration, after the generic service profile is downloaded.
Using methods and apparatus disclosed herein, there is no need for: an individual last hop decision on a border element; individual last hop static routing strategy usage on the border element, individual last hop static route constraints configuration and static multiple signalling points grouping on the border element. Exemplary methods and apparatus therefore simplify and reduce the border element operation and maintenance requirements. Exemplary methods and apparatus include the last hop routing decision in a user service profile on an AS or HSS. Also, exemplary methods and apparatus may use dynamic objects like a "route profile", a "route group" and a "route status lookup", which can be re-used and changed to include different received and resolved FQDNs, generated and/or controlled by AS. FQDNs can be generated and associated with a route profile on an OSS as part of user service profile creation and HSS provisioning, or as an alternative, FQDNs can be generated and associated with route data on AS itself. By configuration, FQDNs can be added to user service profiles such that the FQDNs are associated with a user and a route profile.
As used herein, the term "route profile" encompasses a set of rules and procedures for determining the last hop of data relating to a call. A route profile may be identified by a "route profile ID", which is a unique identifier of a route profile. An FQDN is used as a reference to route information (including a route profile ID) stored on a DNS. Configured route profiles are stored in a border element "route profile database". Further, the term "route group" encompasses a set of routes. Typically, if a first route (e.g. IP address and port) using an associated route profile within a border element is not available then the border element will implement the next (second) associated route from a route profile group according to a particular strategy. The border element may then apply the same route profile to determine the status of the second route. A route group may be identified by a "route group ID", which is a unique identifier of a route group.
In addition, a "route status lookup" is a managed object that uses an identified "route profile", which may be an active route IP address and also uses the optional "route group" managed object for the next "route status lookup" according to a "route profile" strategy.
Different route FQDNs relate to and identify one or more "route profile ID" values relating to route profiles stored in a border element and mapped routing constraints provided by an AS. By selecting different FQDNs, an AS is able to select different route profile IDs and thereby obtain different routing constraints and strategies that can be used at the border element for data originating from a particular user.
Referring to Figure 1 , a border element 100 provides connectivity between a Foreign Network (FN) and a CN (or home network). The border element 100 may be an IBCF for IMS networks or a SBC for non-IMS networks and is in electrical communication with a DNS 102 and a Call Session Control Function (CSCF) 104. The CSCF 104 is in electrical communication with an AS 106. The AS 106 is in electrical communication with a HSS 108. The DNS 102 and the HSS 108 are each in electrical communication with an OSS 109. Figure 2 shows a schematic diagram of a border element 100. The border element 100 may be used in the architecture shown in Figure 1. The border element 100 comprises a transmitter 202 and a receiver 204. The transmitter 202 and receiver 204 are in electrical communication with other communication units, nodes, UEs, servers and/or functions in a telecommunications network and are configured to transmit and receive data accordingly. The border element 100 further comprises at least one memory 206 and at least one processor 208. The memory 206 may comprise a non-volatile memory and/or a volatile memory. The memory 206 may have a computer program 210 stored therein. The computer program 210 may be configured to undertake methods disclosed herein. The computer program 210 may be loaded in the memory 206 from a non-transitory computer readable medium 212, on which the computer program is stored. The processor 208 is configured to undertake at least the functions of a FQDN extractor 214 and a route profile data retriever 216, as set out herein.
Each of the transmitter 202 and receiver 204, memory 206, processor 208, FQDN extractor 214 and route profile data retriever 216is in electrical communication with the other features of the border element 100. The border element 100 can be implemented as a combination of computer hardware and software. In particular, the FQDN extractor 214 and route profile data retriever 216may be implemented as software configured to run on the processor 208. The at least one memory 206 stores the various programs/executable files that are implemented by a processor 208, and also provides a storage unit for any required data. The programs/executable files stored in the memory 206, and implemented by the processor 208, can include the FQDN extractor 214 and the route profile data retriever 216, but are not limited to such. Figure 3 shows a schematic diagram of a AS 106. The AS 106 may be used in the architecture shown in Figure 1 .
The AS 106 comprises a transmitter 302 and a receiver 304. The transmitter 302 and receiver 304 are in electrical communication with other communication units, nodes, UEs, servers and/or functions in a telecommunications network and are configured to transmit and receive data accordingly.
The AS 106 further comprises at least one memory 306 and at least one processor 308. The memory 306 may comprise a non-volatile memory and/or a volatile memory. The memory 306 may have a computer program 310 stored therein. The computer program 310 may be configured to undertake methods disclosed herein. The computer program 310 may be loaded in the memory 306 from a non-transitory computer readable medium 312, on which the computer program is stored. The processor 308 is configured to undertake at least the functions of a route profile determiner 314, a FQDN retriever 316 and a FQDN controller 318, as set out herein.
Each of the transmitter 302 and receiver 304, memory 306, processor 308, route profile determiner 314, FQDN retriever 316 and FQDN controller 318 is in electrical communication with the other features of the AS 106. The AS 106 can be implemented as a combination of computer hardware and software. In particular, the profile determiner 314, FQDN retriever 316 and FQDN controller 318 may be implemented as software configured to run on the processor 308. The at least one memory 306 stores the various programs/executable files that are implemented by a processor 308, and also provides a storage unit for any required data. The programs/executable files stored in the memory 306, and implemented by the processor 308, can include a profile determiner 314, a FQDN retriever 316 and a FQDN controller 318, but are not limited to such. An exemplary OSS 109 may be configured to activate a new "last hop controlled by AS and DNS" feature, on the border element 100. This may be done through network operator provisioning procedures. Data may be transmitted from the OSS 109 to the border element 100 to activate the feature in the border element 100. If the default route profile object in the border element 100 for each system (for example, the route profiles for Voice Over LTE (VoLTE) roaming, for SIP trunking or for priority services) is acceptable, the OSS 109 may only generate and provide route profile IDs, and the feature is ready on the border element. The generated route profile IDs may then be stored on the DNS 102, along with the other route data stored against a FQDN. If the route profile objects need to be updated/amended, the network operator may provide, via the OSS 109, individual route profiles and associated route profile IDs to the border element and that way activate the feature. As before, the route profile IDs may be stored on the DNS 102.
An exemplary border element 100 may be configured to determine a route profile object for a particular user. This may be done in response to receipt of a call setup message, such as a terminating INVITE message, which includes a FQDN associated with a route profile. The determined route profile object may be based on route profile and route profile ID data received from the OSS 109 or may be a default route profile object already stored within the border element 100. The route profile object may be stored locally in a route profile database of the border element 100.
If necessary, exemplary border elements 100 may also determine a route group object, which may comprise a plurality of routes received from the FQDN - the DNS 102 can respond with 1 -N IP addresses/ports that correspond to routes - or may be a default route group object on the border element 100, which may comprise one or more default routes. The route group object may be stored locally in a route profile database of the border element 100.
Exemplary border elements 100 may be configured to associate a route profile ID received from the DNS 102 to a route profile object and a route group ID received from the DNS 102 to a route group object (if necessary). When route group objects are not used, a route group ID is not needed and resolved FQDN IP addresses may be used for the default route group creation FQDNs are used to identify data relating to a particular route profile. This data may include an IP address of a destination network, a port identifier of a destination network, transport protocol and a route profile ID (e.g., a Name Authority Pointer (NAPTR)). Route profile data is stored in a memory of the DNS 102 and is obtainable from the memory using an FQDN. Each FQDN may identify different route profile data. In addition, FQDNs relating to one or more route profiles are associated with a user service profile, for example an IMS user service profile, in the HSS 108 or the AS 106. The user service profiles and the associated FQDNs may be retrieved from the HSS 108 by the AS 106, or may be obtained from an internal memory 306 of the AS 106. In the AS 106, FQDNs can be mapped to associated routing constraints that are synchronised with border element routing constraints. That is, the AS 106 is aware of each of the route profiles in the border element 100 and which FQDNs are associated to which route profiles.
Referring to Figure 4, a signalling diagram shows an exemplary method for controlling last hop decisions.
1 . In response to a call from a remote end device, an Interrogating Call Session Control Function (l-CSCF), transmits a Location Information Request (LIR) to the HSS 108. The HSS 108 responds to the LIR request by transmitting to the l-CSCF a Location Information Answer (LIA), which comprises information about the location of the AS 106. 2. To establish a call, the l-CSCF sends a terminating INVITE message towards the AS 106.
3. The route profile determiner 314 determines which route profile should be used for data relating to the call. In exemplary methods and apparatus, the route status lookup object determines the route profile (through the route profile id, FQDN). The route profile to be used may be determined on one or more user based criteria. For example, the route profile may be determined based on one or more of a user's subscription, a time of day, a load on the home or foreign network, a required bandwidth etc. The FQDN may be stored in the HSS 108 as part of a user service profile. FQDN retriever 316 of the AS 106 retrieves from the HSS 108 a FQDN relating to the determined route profile.
In other exemplary embodiments the FQDN may be stored locally on the memory 306 of the AS and may relate to a user service profile also stored in the memory 306. In such exemplary embodiments the FQDN retriever may retrieve the FQDN from the memory 306.
As mentioned above, the selection of the route FQDN may be based on any relevant criteria, such as the time of the call or Call Admission Control (CAC). For example, between the hours of 8am and 4pm route 1 may be required with one last hop decision and between the hours of 4pm and 8am route 1 may be required with a different last hop decision. Different route profiles may specify different last hop decisions. Two FQDNs, FQDN 1 and FQDN 2, may therefore each specify a different route profile having a different route profile ID and specifying different last hops, but the overall route (route 1 ) will be the same. Therefore, between 8am and 4pm FQDN 1 specifying route 1 with a first last hop is retrieved, and between the hours of 4pm and 8am FQDN 2 specifying route 1 FQDN 2 specifying route 1 with a second last hop is retrieved.
The FQDN controller 318 inserts the retrieved FQDN, which may be an IP- PBX FQDN, into the terminating INVITE message and controls the transmitter 302 to transmit the terminating INVITE message towards the border element 100, which may be an IBCF. In exemplary embodiments, the terminating INVITE message may be transmitted to the CSCF 1 04 and from the CSCF 104 to the border element 100.
The receiver 204 of the border element 100 receives the terminating INVITE message from the AS 106 and the FQDN extractor 214 extracts the FQDN from the message. The route profile data retriever 216 initiates a DNS lookup and controls the transmitter 202 to transmit a request to the DNS 102 for the route profile data relating to the extracted FQDN. As well as legacy routing information, the DNS 102 responds with an NAPTR record that carries the route profile I D of the route profile determined by the route profile determiner 314 of the AS 106.
The last hop controller 218 of the border element 100 obtains from memory 206 the route profile corresponding to the retrieved route profile ID. The last hop controller uses the obtained route profile together with legacy route profile data retrieved from the DNS 102, such as an IP address (1 .N) of the last hop or foreign network and a port, to determine last hop decisions for data exiting the telecommunications network for a "foreign" network. The last hop controller 218 may first locate the user access network or foreign network using legacy route profile data such as the I P address and the port. Then the last hop controller 218 may determine the route profile from the retrieved route profile data. After route profile is determined, the last hop controller 218 may use the route IP address from the determined route profile route status lookup. The route status lookup determines the status of the route specified in the obtained route profile ID. I it is determined that the route is inactive/down/exceeded constraints, a further route profile may be used according to a strategy. The strategy may be contained within the first (inactive) route profile. In such circumstances, the last hop controller 218 may move to the next route profile ID in a route profile group. The last hop controller 218 may check the associated route group managed object and undertake a route status lookup with the next IP address in the same group (while applying the route profile strategy).
Once a route profile is determined that is active and able to be used, the last hop controller may control the last hop of data relating to the call according to the active route profile. Figure 5 shows a data flow through a border element 100, which may be a transit node or an IBCF. The data flow is described below.
500: A terminating INVITE from Telecom IMS core (AS, HSS, CSCF) is sent towards the border element 100 with route (SIP trunk) FQDN in the route header or request-URI.
502: On IBCF/Transit node, the route (SIP trunk) FQDN is resolved to obtain route data comprising multiple IP addresses, port, transport protocol, route profile ID (NAPTR) and optional route group ID (NAPTR). The route data may be obtained from the border element 100 or from the DNS 102.
504: The border element 100 uses the resolved FQDN legacy information together with the route profile ID and (optional) route group ID to undertake the associated route status lookup. The route status lookup object locates the selected route profile with the route profile ID and sends the FQDN resolved IP address for route status lookup. The route profile object uses the FQDN resolved IP address for constraints associated SIP statistics lookup. The route profile object compares the configured route constraints values associated with route profile 1 with the real time constraints associated SIP statistics values. If there is a match, the route is "UP" (or available), and if there is not a match the route is "DOWN". If the first route is DOWN, the route status lookup object will use the route profile route strategy and the received route group ID (from the route FQDN) to locate the next IP address for the next route status lookup. The same "route profile" object is used for the next "route status lookup".
506: In the case of Figure 5, route profile 1 (route profile ID 1 ) is UP and so SIP network 1 508 is used to send data relating to the call to the foreign network 510.
A computer program may be configured to provide any of the above described methods. The computer program may be provided on a computer readable medium. The computer program may be a computer program product. The product may comprise a non-transitory computer usable storage medium. The computer program product may have computer-readable program code embodied in the medium configured to perform the method. The computer program product may be configured to cause at least one processor to perform some or all of the method.
Various methods and apparatus are described herein with reference to block diagrams or flowchart illustrations of computer-implemented methods, apparatus (systems and/or devices) and/or computer program products. It is understood that a block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by computer program instructions that are performed by one or more computer circuits. These computer program instructions may be provided to a processor circuit of a general purpose computer circuit, special purpose computer circuit, and/or other programmable data processing circuit to produce a machine, such that the instructions, which execute via the processor of the computer and/or other programmable data processing apparatus, transform and control transistors, values stored in memory locations, and other hardware components within such circuitry to implement the functions/acts specified in the block diagrams and/or flowchart block or blocks, and thereby create means (functionality) and/or structure for implementing the functions/acts specified in the block diagrams and/or flowchart block(s).
Computer program instructions may also be stored in a computer-readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer- readable medium produce an article of manufacture including instructions which implement the functions/acts specified in the block diagrams and/or flowchart block or blocks. A tangible, non-transitory computer-readable medium may include an electronic, magnetic, optical, electromagnetic, or semiconductor data storage system, apparatus, or device. More specific examples of the computer-readable medium would include the following: a portable computer diskette, a random access memory (RAM) circuit, a read-only memory (ROM) circuit, an erasable programmable read-only memory (EPROM or Flash memory) circuit, a portable compact disc read-only memory (CD- ROM), and a portable digital video disc read-only memory (DVD/Blu-ray).
The computer program instructions may also be loaded onto a computer and/or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer and/or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the block diagrams and/or flowchart block or blocks. Accordingly, the invention may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.) that runs on a processor, which may collectively be referred to as "circuitry," "a module" or variants thereof.
It should also be noted that in some alternate implementations, the functions/acts noted in the blocks may occur out of the order noted in the flowcharts. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Moreover, the functionality of a given block of the flowcharts and/or block diagrams may be separated into multiple blocks and/or the functionality of two or more blocks of the flowcharts and/or block diagrams may be at least partially integrated. Finally, other blocks may be added/inserted between the blocks that are illustrated.
The skilled person will be able to envisage other embodiments without departing from the scope of the appended claims.

Claims

CLAIMS:
1. A network node for use as an application server, AS, (106) in a core network, the network node comprising:
a receiver (304) configured to receive a call setup message from an
Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network;
a route profile determiner (314) configured to determine a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network;
a Fully Qualified Domain Name, FQDN, retriever (316) configured to retrieve from a database a FQDN associated with a user service profile and the determined route profile;
a FQDN controller (318) configured to insert the retrieved FQDN into the call setup message and to control a transmitter (302) to transmit the call setup message to a border element (100).
2. A network node according to claim 1 , wherein the route profile determiner (314) is configured to determine the route profile based on a subscription of a user originating the call.
3. A network node according to any preceding claim, wherein the route profile determiner (314) is configured to determine the route profile based on one or more network requirements.
4. A network node according to any preceding claim, wherein the FQDN retriever (316) is configured to retrieve the FQDN from a Home Subscriber Server (108).
5. A network node according to any of claims 1 to 4, wherein the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) is configured to retrieve the FQDN from the memory.
6. A method for controlling a network node for use as an AS (106) in a core network, the method comprising: receiving, at a receiver (304), a call setup message from an Interrogating Call Session Control Function, l-CSCF, wherein the call setup message requires data to be transmitted over a foreign network;
determining, by a route profile determiner (314), a route profile for data relating to the call and for control of last hop decisions in a border element (100) between the core network and the foreign network;
retrieving, by a Fully Qualified Domain Name, FQDN, retriever (316) from a database, a FQDN associated with a user service profile and the determined route profile;
inserting, by a FQDN controller (318), the retrieved FQDN into the call setup message and controlling a transmitter (302) to transmit the call setup message to a border element (100).
7. A method according to claim 6, wherein the route profile determiner (314) determines the route profile based on a subscription of a user originating the call.
8. A method according to any of claims 6 to 7, wherein the route profile determiner (314) determines the route profile based on one or more network requirements.
9. A method according to any of claims 6 to 8, wherein the FQDN retriever (316) retrieves the FQDN from a Home Subscriber Server (108).
10. A method according to any of claims 6 to 8, wherein the FQDN is stored in a memory (306) of the network node, and wherein the FQDN retriever (316) retrieves the FQDN from the memory.
1 1. A computer program (310) comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the method according to any one of claims 6 to 10.
12. A carrier (312) containing the computer program (310) of claim 1 1 , wherein the carrier is one of an electronic signal, optical signal, radio signal, or non-transitory computer readable storage medium.
13. A network node for use as a border element (100) in a core network, the network node comprising:
a receiver (204) configured to receive a call setup message transmitted from an application server, AS, (1 06), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network;
a FQDN extractor (214) configured to extract the FQDN from the received call setup message;
a route profile data retriever (216) configured to retrieve from a database route profile data based on the extracted FQDN, the route profile data comprising a route profile I D; and
a last hop controller (21 8) configured to determine routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile I D.
14. A network node according to claim 13, wherein the route profile data retriever is configured to retrieve the route profile data from a DNS (102).
15. A network node according to claim 13, wherein the route profile data retriever is configured to retrieve the route profile data from a memory (206) of the network node.
16. A network node according to any of claims 13 to 15, wherein the last hop controller (21 8) is configured to obtain the route profile based on the route profile ID, and wherein the last hop controller (218) is further configured to determine whether the route specified by the route profile is up or down.
17. A network node according to claim 16, wherein if the route is up, the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the route.
18. A network node according to claim 16 or 17, wherein if the route is down, the last hop controller (218) is configured to obtain a further route profile and to determine whether a further route specified by the further route profile is up or down.
19. A network node according to claim 18, wherein if the further route is up, the last hop controller (218) is configured to control the last hop of data relating to the call in accordance with the further route.
20. A method for controlling a network node for use as a border element (100) in a core network, the method comprising:
receiving, by a receiver (204), a call setup message transmitted from an application server, AS, (106), wherein the call setup message requires data to be transmitted over a foreign network and comprises a FQDN associated with a route profile for control of last hop decisions in a border element between the home network and the foreign network;
extracting, by a FQDN extractor (214), the FQDN from the received call setup message;
retrieving, by a route profile data retriever (216) from a database, route profile data based on the extracted FQDN, the route profile data comprising a route profile ID; and
determining, by a last hop controller (218), routing for data to be transmitted over the foreign network, based on a route profile identified by the route profile ID.
21 . A method according to claim 20, wherein the route profile data retriever retrieves the route profile data from a DNS (102).
22. A method according to claim 20, wherein the route profile data retriever retrieves the route profile data from a memory (206) of the network node.
23. A method according to any of claims 20 to 22, wherein the last hop controller (218) obtains the route profile based on the route profile ID, and wherein the last hop controller determines whether the route specified by the route profile is up or down.
24. A method according to claim 23, wherein if the route is up, the last hop controller (218) controls the last hop of data relating to the call in accordance with the route.
25. A method according to claim 23 or 24, wherein if the route is down, the last hop controller (218) obtains a further route profile and determines whether a further route specified by the further route profile is up or down.
26. A method according to claim 25, wherein if the further route is up, the last hop controller (218) controls the last hop of data relating to the call in accordance with the further route.
27. A computer program (210) comprising instructions which, when executed on at least one processor, cause the at least one processor to carry out the method according to any one of claims 20 to 26.
28. A carrier (212) containing the computer program (210) of claim 27, wherein the carrier is one of an electronic signal, optical signal, radio signal, or non-transitory computer readable storage medium.
PCT/EP2014/074403 2014-11-12 2014-11-12 Last hop decisions in telecommunications networks WO2016074715A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2014/074403 WO2016074715A1 (en) 2014-11-12 2014-11-12 Last hop decisions in telecommunications networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2014/074403 WO2016074715A1 (en) 2014-11-12 2014-11-12 Last hop decisions in telecommunications networks

Publications (1)

Publication Number Publication Date
WO2016074715A1 true WO2016074715A1 (en) 2016-05-19

Family

ID=51900861

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2014/074403 WO2016074715A1 (en) 2014-11-12 2014-11-12 Last hop decisions in telecommunications networks

Country Status (1)

Country Link
WO (1) WO2016074715A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7630372B1 (en) * 2005-12-30 2009-12-08 At&T Corp. Method and apparatus for providing access and egress uniform resource identifiers for routing
EP2506526A2 (en) * 2011-03-28 2012-10-03 Vodafone Group PLC Method and system for the improvement of routing in communications networks providing multimedia services
WO2012167184A2 (en) * 2011-06-02 2012-12-06 Interdigital Patent Holdings, Inc. Methods, apparatus, and systems for managing converged gateway communications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7630372B1 (en) * 2005-12-30 2009-12-08 At&T Corp. Method and apparatus for providing access and egress uniform resource identifiers for routing
EP2506526A2 (en) * 2011-03-28 2012-10-03 Vodafone Group PLC Method and system for the improvement of routing in communications networks providing multimedia services
WO2012167184A2 (en) * 2011-06-02 2012-12-06 Interdigital Patent Holdings, Inc. Methods, apparatus, and systems for managing converged gateway communications

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAESUNG HWANG ET AL: "The impact of FQDN database updates on name-based routing architecture", NETWORK OPERATIONS AND MANAGEMENT SYMPOSIUM WORKSHOPS (NOMS WKSPS), 2010 IEEE/IFIP, IEEE, PISCATAWAY, NJ, USA, 19 April 2010 (2010-04-19), pages 16 - 21, XP031690731, ISBN: 978-1-4244-6037-3 *

Similar Documents

Publication Publication Date Title
EP2647170B1 (en) Dynamic assignment of a serving network node
US11533369B2 (en) Computer-implemented method and system for managing tenants on a multi-tenant SIP server system
CN111869171B (en) Network slice management for IP Multimedia Subsystem (IMS) domain
US9571528B2 (en) Method and apparatus for providing network based services to non-registering endpoints
EP2528300B1 (en) Migration and activation of services in a network
US20230336495A1 (en) Management, by an intermediate device, of the quality of transmission of a data stream to a mobile terminal
US8600031B2 (en) Method for connecting calls between an IP multimedia subsystem (IMS) domain and a circuit switched (CS) domain
US20200120146A1 (en) Application Server for Dynamic IMS CSCF Overload Protection
US8654770B2 (en) Method of setting up a call in an internet protocol multimedia subsystem network
US20170126747A1 (en) Methods and nodes for managing subscription-related information of users in an ip multimedia subsystem as well as a corresponding system and computer program
US10193937B2 (en) Internet protocol multimedia subsystem (IMS) restoration support for temporary globally routable user agent uniform resource identifier (GRUU)
US10225727B2 (en) Data processing
US20130017853A1 (en) Wholesale Network User Identity Mapping in a Mobile Network
WO2016074715A1 (en) Last hop decisions in telecommunications networks
US9654440B1 (en) Modification of domain name systems using session initiation protocol messages
US10084923B2 (en) Method and system for dynamic trunk group based call routing
WO2017202448A1 (en) Instantiation in virtualized networks
EP3404900B1 (en) A communication system and method
US20210218780A1 (en) Support for IMS Virtual Clients in Multi-Operator Environment
EP3016364B1 (en) Duration based routing
US10608898B2 (en) Dynamic method for determining a list of services in an SIP network
US10298625B2 (en) Method and network entity for selecting for a subscriber a call session establishing server to be registered within a voice over internet protocol network
WO2010092147A1 (en) Efficient emergency call in ims

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14799137

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14799137

Country of ref document: EP

Kind code of ref document: A1