Patent Description:
This section introduces aspects that may be helpful to facilitating a better understanding of the inventions.

Fourth generation (<NUM>) wireless mobile telecommunications technology, also known as Long Term Evolution (LTE) technology, was designed to provide high capacity mobile multimedia with high data rates particularly for human interaction. Next generation or fifth generation (<NUM>) technology is intended to be used not only for human interaction, but also for machine type communications in so-called Internet of Things (IoT) networks.

While <NUM> networks are intended to enable massive IoT services (e.g., very large numbers of limited capacity devices) and mission-critical IoT services (e.g., requiring high reliability), improvements over legacy mobile communication services are supported in the form of enhanced mobile broadband (eMBB) services providing improved wireless Internet access for mobile devices.

Mobile devices that access LTE, <NUM>, or hybrid systems typically have a home network with which a given mobile device is considered a subscriber device. However, such subscriber devices may access one or more services through a visited network which is considered a roaming network since the given subscriber device may typically move between visited networks. Coordination of how the home network and a visited network interwork can be a significant challenge. International publication no. <CIT> relates to handling service level related performance data for roaming user terminals. US publication no. <CIT> relates to a policy enabled roaming gateway in a communication network. International publication no. <CIT> relates to dynamic service level agreement negotiation.

Illustrative embodiments provide techniques for automated management of a service level agreement between a first communication network and a second communication network. For example, one of the communication networks is a visited network while the other is a home network.

These and other features and advantages of embodiments described herein will become more apparent from the accompanying drawings and the following detailed description.

Embodiments will be illustrated herein in conjunction with example communication systems and associated techniques for providing automated service level agreement management in communication systems. It should be understood, however, that the scope of the claims is not limited to particular types of communication systems and/or processes disclosed. Embodiments can be implemented in a wide variety of other types of communication systems, using alternative processes and operations. For example, although illustrated in the context of wireless cellular systems utilizing 3GPP system elements such as a 3GPP next generation system (<NUM>), the disclosed embodiments can be adapted in a straightforward manner to a variety of other types of communication systems.

In an example communication system, user equipment (<NUM> UE in a <NUM> network or, more broadly, a UE) such as a mobile terminal (subscriber device) communicates over an air interface with a base station or access point referred to as a gNB in a <NUM> network. The access point (e.g., gNB) is illustratively part of an access network of the communication system. For example, in a <NUM> network, the access network is referred to as a <NUM> System and.

is described in <NUM> Technical Specification (TS) <NUM>, V15. <NUM>, entitled "Technical Specification Group Services and System Aspects; System Architecture for the <NUM> System". In general, the access point (e.g., gNB) provides access for the UE to a core network (CN), which then provides access for the UE to other UEs and/or a data network such as a packet data network (e.g., Internet). TS <NUM> goes on to define a <NUM> Service-Based Architecture (SBA) which models services as network functions (NFs) that communicate with each other using representational state transfer application programming interfaces (Restful APIs). Furthermore, <NUM> Technical Specification (TS) <NUM>, V15. <NUM>, entitled "Technical Specification Group Services and System Aspects; Security Architecture and Procedures for the <NUM> System", further describes security management details associated with a <NUM> network.

In accordance with illustrative embodiments implemented in a <NUM> communication system environment, one or more 3GPP technical specifications (TS) and technical reports (TR) provide further explanation of user equipment and network elements/functions and/or operations that interact with one or more illustrative embodiments, e.g., the above-referenced 3GPP TS <NUM> and 3GPP TS <NUM>. Other 3GPP TS/TR documents provide other conventional details that one of ordinary skill in the art will realize. However, while illustrative embodiments are well-suited for implementation associated with the above-mentioned <NUM>-related 3GPP standards, alternative embodiments are not necessarily intended to be limited to any particular standards.

Furthermore, illustrative embodiments will be explained herein in the context of the Open Systems Interconnection model (OSI model) which is a model that conceptually characterizes communication functions of a communication system such as, for example, a <NUM> network. The OSI model is typically conceptualized as a hierarchical stack with a given layer serving the layer above and being served by the layer below. Typically, the OSI model comprises seven layers with the top layer of the stack being the application layer (layer <NUM>) followed by the presentation layer (layer <NUM>), the session layer (layer <NUM>), the transport layer (layer <NUM>), the network layer (layer <NUM>), the data link layer (layer <NUM>), and the physical layer (layer <NUM>). One of ordinary skill in the art will appreciate the functions and interworkings of the various layers and, thus, further details of each layer are not described herein. However, it is to be appreciated that while illustrative embodiments are well-suited for implementations that utilize an OSI model, alternative embodiments are not necessarily limited to any particular communication function model.

Illustrative embodiments are related to automated service level agreement management associated with the Service-Based Architecture (SBA) for <NUM> networks. Prior to describing such illustrative embodiments, a general description of main components of a <NUM> network will be described below in the context of <FIG>.

<FIG> shows a communication system <NUM> within which illustrative embodiments are implemented. It is to be understood that the elements shown in communication system <NUM> are intended to represent main functions provided within the system, e.g., UE access functions, mobility management functions, authentication functions, serving gateway functions, etc. As such, the blocks shown in <FIG> reference specific elements in <NUM> networks that provide these main functions. However, other network elements are used in other embodiments to implement some or all of the main functions represented. Also, it is to be understood that not all functions of a <NUM> network are depicted in <FIG>. Rather, functions that facilitate an explanation of illustrative embodiments are represented. Subsequent figures depict some additional elements and/or functions.

Accordingly, as shown, communication system <NUM> comprises user equipment (UE) <NUM> that communicates via an air interface <NUM> with an access point (gNB) <NUM>. The UE <NUM> in some embodiments is a mobile station, and such a mobile station may comprise, by way of example, a mobile telephone, a computer, or any other type of communication device. The term "user equipment" as used herein is therefore intended to be construed broadly, so as to encompass a variety of different types of devices such as, for example, devices referred to as mobile devices, mobile stations, subscriber devices, subscriber stations or, more generally, communication devices. Examples include, but are not limited to, a combination of a data card inserted in a laptop or other equipment such as a smart phone or other cellular device. In some embodiments, mobile devices include IoT devices. The term user equipment is also intended to encompass devices commonly referred to as access terminals.

In one embodiment, UE <NUM> is comprised of a Universal Integrated Circuit Card (UICC) part and a Mobile Equipment (ME) part. The UICC is the user-dependent part of the UE and contains at least one Universal Subscriber Identity Module (USIM) and appropriate application software. The USIM securely stores the permanent subscription identifier and its related key, which are used to identify and authenticate subscribers to access networks. The ME is the user-independent part of the UE and contains terminal equipment (TE) functions and various mobile termination (MT) functions.

Note that, in one example, the permanent subscription identifier is an International Mobile Subscriber Identity (IMSI) of a UE. In one embodiment, the IMSI is a fixed <NUM>-digit length and consists of a <NUM>-digit Mobile Country Code (MCC), a <NUM>-digit Mobile Network Code (MNC), and a <NUM>-digit Mobile Station Identification Number (MSIN). In a <NUM> communication system, an IMSI is referred to as a Subscription Permanent Identifier (SUPI). In the case of an IMSI as a SUPI, the MSIN provides the subscriber identity. Thus, only the MSIN portion of the IMSI typically needs to be encrypted. The MNC and MCC portions of the IMSI provide routing information, used by the serving network to route to the correct home network. When the MSIN of a SUPI is encrypted, it is referred to as a Subscription Concealed Identifier (SUCI).

The access point <NUM> is illustratively part of an access network of the communication system <NUM>. Such an access network comprises, for example, a <NUM> System having a plurality of base stations and one or more associated radio network control functions. The base stations and radio network control functions in some embodiments are logically separate entities, but in some embodiments are implemented in the same physical network element, such as, for example, a base station router or femto cellular access point.

The access point <NUM> in this illustrative embodiment is operatively coupled to mobility management functions <NUM>. In a <NUM> network, the mobility management function is implemented by an Access and Mobility Management Function (AMF). A Security Anchor Function (SEAF) in some embodiments is also implemented with the AMF connecting a UE with the mobility management function. A mobility management function, as used herein, is the element or function (i.e., entity) in the core network (CN) part of the communication system that manages or otherwise participates in, among other network operations, access and mobility (including authentication/authorization) operations with the UE (through the access point <NUM>). The AMF is also referred to herein, more generally, as an access and mobility management entity.

The AMF <NUM> in this illustrative embodiment is operatively coupled to home subscriber functions <NUM>, i.e., one or more functions that are resident in the home network of the subscriber. Recall that UE <NUM> has a home network with which it is considered a subscriber, but accesses one or more services (available through a data network, e.g., Internet <NUM>) through a visited network which is considered a roaming network since UE <NUM> may move between visited networks. In <FIG>, AMF <NUM> is considered part of the visited network currently being accessed by UE <NUM>. Coordination of how the home network and a visited network interwork can be a significant challenge. One such challenge, for which illustrative embodiments described herein will focus, is service level agreement management. Problems that exist with management of service level agreements and automated solutions according to illustrative embodiments will be described in detail below. "Service level agreement" or SLA is generally defined as an agreement between two parties as to the level of service to be provided by one or both parties. In illustrative embodiments, SLA is between two network (or telecom) operators: a network operator of a home network of a subscriber; and a network operator of a network which the subscriber is accessing (visited network). Such SLAs are sometimes referred to as roaming SLAs.

Returning to <FIG>, some of the home network functions include the Unified Data Management (UDM) function, as well as an Authentication Server Function (AUSF). The AUSF and UDM (separately or collectively) are also referred to herein, more generally, as an authentication entity. In addition, home subscriber functions include, but are not limited to, Network Slice Selection Function (NSSF), Network Exposure Function (NEF), Network Function Repository Function (NRF, also sometimes referred to as a Network Repository Function), Policy Control Function (PCF), and Application Function (AF).

The access point <NUM> is also operatively coupled to a serving gateway function, i.e., Session Management Function (SMF) <NUM>, which is operatively coupled to a User Plane Function (UPF) <NUM>. UPF <NUM> is operatively coupled to a Packet Data Network, e.g., Internet <NUM>. As is known in <NUM> and other communication networks, the user plane (UP) or data plane carries network user traffic while the control plane (CP) carries signaling traffic. SMF <NUM> supports functionalities relating to UP subscriber sessions, e.g., establishment, modification and release of PDU sessions. UPF <NUM> supports functionalities to facilitate UP operations, e.g., packet routing and forwarding, interconnection to the data network (e.g., <NUM> in <FIG>), policy enforcement, and data buffering.

It is to be appreciated that <FIG> is a simplified illustration in that not all communication links and connections between NFs and other system elements are illustrated in <FIG>. One ordinarily skilled in the art given the various 3GPP TSs/TRs will appreciate the various links and connections not expressly shown or that may otherwise be generalized in <FIG>.

Further typical operations and functions of certain network elements are not described herein in detail when they are not the focus of illustrative embodiments but can be found in appropriate 3GPP <NUM> documentation. It is to be appreciated that the particular arrangement of system elements in <FIG> is an example only, and other types and arrangements of additional or alternative elements can be used to implement a communication system in other embodiments. For example, in other embodiments, the system <NUM> comprises other elements/functions not expressly shown herein. Also, although only single elements/functions are shown in the <FIG> embodiment, this is for simplicity and clarity of illustration only. A given alternative embodiment may include larger numbers of such system elements, as well as additional or alternative elements of a type commonly associated with conventional system implementations.

It is also to be noted that while <FIG> illustrates system elements as singular functional blocks, the various subnetworks that make up the <NUM> network are partitioned into so-called network slices. Network slices (network partitions) comprise a series of network function (NF) sets (i.e., function chains) for each corresponding service type using network function virtualization (NFV) on a common physical infrastructure. The network slices are instantiated as needed for a given service, e.g., eMBB service, massive IoT service, and mission-critical IoT service. A network slice or function is thus instantiated when an instance of that network slice or function is created. In some embodiments, this involves installing or otherwise running the network slice or function on one or more host devices of the underlying physical infrastructure. UE <NUM> is configured to access one or more of these services via gNB <NUM>. NFs can also access services of other NFs.

As mentioned above, coordination of service level agreement management between a home network and a visited network can be a significant challenge. Currently, service level agreements (SLAs) between two telecom operators (e.g., between a mobile network operator (MNO) of a home network and an MNO of a visited network) are based on the Groupe Speciale Mobile (or Global System Mobile Communication) Association (GSMA) guidelines as, for example, specified in GSMA Permanent Reference Document (PRD) IR. <NUM>, version <NUM>, dated July <NUM>, <NUM>. GSMA PRD IR. <NUM>, version <NUM>, dated July <NUM>, <NUM>, and GSMA PRD IR. <NUM>, version <NUM>, June <NUM>, <NUM>, are also under use by telecom operators to make roaming agreements.

Note that the PRD IR. <NUM> guidelines are directed to an LTE (<NUM>) communication system. Though various versions of PRD IR. <NUM>, as well as the other PRDs mentioned above, have existed for some time, SLAs are still typically implemented as paper agreements. A main problem with such an approach is that manually setting up roaming SLAs (e.g., SLA between a visited network and a home network that defines contractual terms of interworking and other functions) between a variety of MNOs is very cumbersome.

Illustrative embodiments address these and other drawbacks by automating management (e.g., negotiation and/or enforcement) of a roaming SLA between two network operators by utilizing a Security Edge Protection Proxy (SEPP) introduced in the <NUM> network architecture. As will be further explained below, a SEPP is the entity residing at the perimeter of a network (e.g., one at the edge of a visited network and one at the edge of a home network) used to protect the network from outside traffic and additionally to implement transport layer security (TLS) and application layer security (ALS) for all the data and signalling exchanged between two inter-network network functions at the service layer. In some embodiments, PRD IR. <NUM> guidelines and agreements for services can be dynamically negotiated and applied between two operator networks via the SEPPs of the two networks. <FIG> will depict further details of the illustrative solutions.

While embodiments are not limited to SLA negotiation and enforcement according to PRD IR. <NUM>, some relevant details of PRD IR. <NUM> are now described for context. As mentioned, PRD IR. <NUM> defines LTE roaming, and LTE networks are expected to co-exist along with <NUM> networks. Thus, while illustrative solutions are described herein from the perspective of automated SLA management in roaming scenarios for <NUM> networks, scenarios where one of the networks is an LTE network and the other is a <NUM> network are contemplated as well.

<NUM> defines LTE and Evolved Packet Core (EPC) roaming guidelines required for interwork and definition of mobile network capabilities when subscribers roam. Consequently, PRD IR. <NUM> provides technical roaming guidelines for Voice-over-LTE (VoLTE) using the local breakout (LBO) option in the LTE roaming architecture. In the LBO roaming scenario, Internet Protocol (IP) Multimedia Subsystem (IMS) traffic is broken out from the packet data network gateway (P-GW) in the visited network traversing the IMS network-to-network interface (IMS-NNI) to the functions in the home network and utilizes optimized media routing methods defined in 3GPP standards.

<NUM> also covers relocation to circuit switched (CS) voice and short message system (SMS) services using CS fall back (CSFB) as defined in 3GPP TS <NUM> when VoLTE or SMS-over-IP (SMSoIP) is not available. Furthermore, PRD IR. <NUM> specifies capabilities to facilitate roaming for IMS-based services, such as VoLTE, and based on the IMS access point name (APN).

<NUM>, the interconnection between two network operators can be implemented as one of three models, i.e., three IPX connectivity options defined in GSMA AA. <NUM> [<NUM>], "IPX Definition and Releases," version <NUM>. Note that IPX or IP exchange is a telecommunications interconnection model for the exchange of IP-based traffic between subscribers of separate mobile and fixed operators as well as other types of service providers via IMS-NNI. The three IPX connectivity options (models) include:.

Multi-lateral Service Transit mode with PMN interconnection provided by IPX Diameter Agents.

Automated SLA management according to illustrative embodiments supports each of these three IPX options/models. Additionally or alternatively, illustrative embodiments support:.

It is realized herein that there is no existing mechanism to enforce the paper agreements and operating parameters between the network elements in an automated and dynamic fashion to operational parameters between network elements.

However, as mentioned above in accordance with the <NUM> network architecture, 3GPP has adopted an SBA approach and introduced the SEPP element to protect the visited public land mobile network (VPLMN) elements and home public land mobile network (HPLMN) elements when communicating over the N32 interface and to facilitate UE authentication while roaming.

Illustrative embodiments utilize the SEPP and service-based application programming interfaces (APIs) to provide automated negotiation and dynamic implementation of roaming SLAs between two network operators, which is not possible with existing approaches.

In accordance with the "roam-like home" policy from the European Union (EU), all EU operators are forced to support inter-PLMN roaming with the same resource and service privileges to users as in their home networks. This can become a huge burden on both HPLMN and VPLMN, unless they have very efficient tools to manage this effectively. Illustrative embodiments provide such automated SLA management tools as will now be explained in the context of <FIG>.

<FIG> is a block diagram of network entities for providing automated SLA management in an illustrative embodiment. As shown, system architecture <NUM> is shown comprising part of a visited network <NUM> coupled via a network interface <NUM> to part of a home network <NUM>. The visited network <NUM> comprises a first network entity <NUM> (network entity <NUM>) while the home network <NUM> comprises a second network entity <NUM> (network entity <NUM>). Each network entity depicted in <FIG> may be considered a SEPP element/function with an automated SLA management element/function incorporated therein in some embodiments, or a combination of separate SEPP and automated SLA management elements/functions in other embodiments. In yet further embodiments that comprise separate SEPP and automated SLA management elements/functions, portions of the automated SLA management functionalities are incorporated in the SEPP element/function while other portions of the automated SLA management functionalities are part of the automated SLA management element/function. Other arrangements of the SEPP function and the automated SLA management function are within the scope of embodiments described herein. Also, while the SEPP function and the automated SLA management function are contemplated as being in the same network entity in the <FIG> embodiment, the SEPP function and the automated SLA management function are implemented in different network entities in alternative embodiments.

The first network entity <NUM> comprises a processor <NUM> coupled to a memory <NUM> and interface circuitry <NUM>. The processor <NUM> of the network entity <NUM> includes a service level agreement processing module <NUM> that in some embodiments is implemented at least in part in the form of software executed by the processor <NUM>. The processing module <NUM> performs automated service level agreement management functionalities described in conjunction with subsequent figures and otherwise herein. The memory <NUM> of the network entity <NUM> includes a service level agreement storage module <NUM> that stores data generated or otherwise used during automated service level agreement management operations.

The second network entity <NUM> comprises a processor <NUM> coupled to a memory <NUM> and interface circuitry <NUM>. The processor <NUM> of the network entity <NUM> includes a service level agreement processing module <NUM> that in some embodiments is implemented at least in part in the form of software executed by the processor <NUM>. The processing module <NUM> performs automated service level agreement management functionalities described in conjunction with subsequent figures and otherwise herein. The memory <NUM> of the network entity <NUM> includes a service level agreement storage module <NUM> that stores data generated or otherwise used during automated service level agreement management operations.

The processors <NUM> and <NUM> of the respective network entities <NUM> and <NUM> in some embodiments comprise, for example, microprocessors, application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs) or other types of processing devices or integrated circuits, as well as portions or combinations of such elements. Such integrated circuit devices, as well as portions or combinations thereof, are examples of "circuitry" as that term is used herein. A wide variety of other arrangements of hardware and associated software or firmware are used in implementing alternative embodiments.

The memories <NUM> and <NUM> of the respective network entities <NUM> and <NUM> in some embodiments store one or more software programs that are executed by the respective processors <NUM> and <NUM> to implement at least a portion of the functionality described herein. For example, automated service level agreement management operations and other functionalities as described in conjunction with subsequent figures and otherwise herein are implemented in embodiments using software code executed by processors <NUM> and <NUM>.

A given one of the memories <NUM> or <NUM> may therefore be viewed as an example of what is more generally referred to herein as a computer program product or still more generally as a processor-readable storage medium that has executable program code embodied therein. Other examples of processor-readable storage media may include disks or other types of magnetic or optical media, in any combination. Illustrative embodiments can include articles of manufacture comprising such computer program products or other processor-readable storage media.

The memory <NUM> or <NUM> in some embodiments more particularly comprises, for example, an electronic random-access memory (RAM) such as static RAM (SRAM), dynamic RAM (DRAM) or other types of volatile or non-volatile electronic memory. The latter may include, for example, non-volatile memories such as flash memory, magnetic RAM (MRAM), phase-change RAM (PC-RAM) or ferroelectric RAM (FRAM). The term "memory" as used herein is intended to be broadly construed, and may additionally or alternatively encompass, for example, a read-only memory (ROM), a disk-based memory, or other type of storage device, as well as portions or combinations of such devices.

The interface circuitries <NUM> and <NUM> of the respective network entities <NUM> and <NUM> illustratively comprise transceivers or other communication hardware or firmware that allows the associated system elements to communicate with one another in the manner described herein.

It is apparent from <FIG> that network entity <NUM> is configured for communication with network entity <NUM> and vice-versa via their respective interface circuitries <NUM> and <NUM>. This communication involves network entity <NUM> sending data to the network entity <NUM>, and the network entity <NUM> sending data to the network entity <NUM>. However, in alternative embodiments, other network elements may be operatively coupled between, as well as to, the network entities <NUM> and <NUM>. The term "data" as used herein is intended to be construed broadly, so as to encompass any type of information that may be sent between network entities (as well as between user equipment and a core network) including, but not limited to, service level agreement data, messages, tokens, identifiers, keys, indicators, user data, control data, etc..

Thus, in one illustrative embodiment, network entity <NUM> is an "SLA server" of a visited network and network entity <NUM> is an "SLA server" of a home network that communicate through respective SEPP entities, as will be further explained below in the context of <FIG> and <FIG>. However, in alternative embodiments, the SLA server and SEPP functions for a given communication network (home or visited) are combined in the same network entity.

It is to be appreciated that the particular arrangement of components shown in <FIG> is an example only, and numerous alternative configurations are used in other embodiments. For example, any given network entity can be configured to incorporate additional or alternative components and to support other communication protocols.

Other system elements such as UE <NUM>, gNB <NUM>, or any of the network elements/functions depicted in <FIG> may each also be configured to include components such as a processor, memory and network interface. These elements need not be implemented on separate stand-alone processing platforms, but could instead, for example, represent different functional portions of a single common processing platform.

<FIG> illustrates a communication system architecture with automated service level agreement management, according to an illustrative embodiment. More particularly, <FIG> depicts a <NUM> architecture <NUM> in a configuration comprising a visited public land mobile network (VPLMN) <NUM> operatively coupled via an intermediate Internetwork Packet Exchange (IPX) network <NUM> to a home public land mobile network (HPLMN) <NUM>. <FIG> also illustrates the presence of a Security Edge Protection Proxy (SEPP) at the edge of each PLMN, i.e., vSEPP <NUM> in VPLMN <NUM> and hSEPP <NUM> in HPLMN <NUM>. Furthermore, VPLMN <NUM> comprises an SLA server <NUM> operatively coupled to vSEPP <NUM>, while HPLMN <NUM> comprises an SLA server <NUM> operatively coupled to hSEPP <NUM>. As will be further explained below, SLA servers <NUM> and <NUM> automatically manage one or more SLAs between VPLMN <NUM> and HPLMN <NUM>. An SLA server is one example of an automated SLA management function.

Note that there can be more than one IPX network operatively coupled between VPLMN <NUM> and HPLMN <NUM>. For example, in the exploded view of IPX network <NUM> (denoted by the dashed outline box in <FIG>), there are two IPX networks shown. vIPX <NUM>-<NUM> is the trusted IPX network associated with vSEPP <NUM>, while hIPX <NUM>-<NUM> is the trusted IPX network associated with hSEPP <NUM>.

It is to be appreciated that the various network functions shown in the VPLMN <NUM> and the HPLMN <NUM> are known and described in detail in various <NUM> specifications such as, but not limited to, the above-referenced TS <NUM> and TS <NUM>.

As mentioned above, in <NUM>, SBA is introduced to model services as network functions (NFs) that communicate with each other using RESTful application programming interfaces (Representational State Transfer APIs). In the scenario where the two communicating NFs are in two different PLMNs (e.g., VPLMN <NUM> and HPLMN <NUM>), communication happens over a roaming inter-network interface (N32) between the two participating PLMNs. For example, SLA server <NUM> and SLA server <NUM> are configured to communicate with each other (via SEPPs <NUM> and <NUM>) using one or more Restful APIs.

To protect NF specific content in the messages that are sent over the roaming inter-network interface, <NUM> introduces the SEPP as the entity residing at the perimeter of the PLMN network to protect the PLMN from outside traffic and additionally to implement transport layer security (TLS) and application layer security (ALS) for all the data and signalling exchanged between two inter-network network functions at the service layer. For example, the SEPP performs security management functions on information elements (IE) in HyperText Transport Protocol (HTTP) messages before the messages are sent externally over the roaming N32 interface. The protected HTTP messages are referred to as N32 messages. Protection such as ALS involves protecting information sent in various parts of the HTTP message including, but not limited to, HTTP Request/Response Line, HTTP header and HTTP Payload. However, some parts of this message may need to be modified by intermediaries (e.g., network provider of IPX <NUM> as shown in <FIG>) between the two SEPPs.

Thus, in <NUM> SBA, the PLMN operator deploys a SEPP at the edge of its network to interoperate and obtain services from network functions in its roaming partner networks. The SEPP interfaces with one or more other SEPPs in one or more other networks over the N32 interface. As an edge proxy, the SEPP implements ALS as mentioned above to protect HTTP messages exchanged between a network function in its network and another network function in the roaming partner network.

While two NFs can be in different PLMNs as <FIG> illustrates, some NFs in the same PLMN also have a need to communicate. In either scenario (inter-PLMN communication or intra-PLMN communication), the SBA communication model includes security methods that enable an "NF service consumer" (service client) to be authenticated and authorized to access a service provided by or otherwise associated with an "NF service producer" (service server). One of the supported authorization methods in the above-referenced 3GPP TS <NUM> (Release <NUM>) is based on the OAuth <NUM> access token methodology. In a <NUM> system, the following model is adopted when OAuth <NUM> is used: (i) the NRF is the OAuth <NUM> authorization server; (ii) the NF service consumer is the OAuth <NUM> client; and (iii) the NF service producer is the OAuth <NUM> resource server.

The NF service consumer (client) discovers the NF service producer (resource server) via the NRF, and then obtains an access token to present to the NF service producer when invoking the service API request.

Given the concepts described above, illustrative embodiments that provide automated SLA management between two network operators will now be further described. More particularly, illustrative embodiments, as depicted in <FIG>, use the SEPP to negotiate and implement the SLA parameters between two operator networks. While <FIG> depicts an SLA server as a separate server attached to a SEPP, the SLA server can be additional functionality of the SEPP in alternative embodiments.

In one or more illustrative embodiments, SLA servers <NUM> and <NUM> facilitate exchange of the procedures and parameters between the two PLMNs. By way of example only, in support for technical requirements and recommendations for interfaces, such procedures and parameters comprise:.

While automating SLA using SEPP, in some embodiments, parameter negotiations are executed using one or more protocols such as, but not limited to, eXtensible Markup Language (XML) or JavaScript Object Notation (JSON). In such embodiments, legacy Diameter attribute value pairs (AVPs) are carried over XML/JSON.

A wide variety of benefits are realized by the automation of roaming SLAs in accordance with illustrative embodiments. For example, some benefits include:.

In some embodiments, automated SLA management comprises defining profiles/policies in the form of XML-schemes. In such embodiments, SLA servers <NUM> and <NUM> are configured to automatically evaluate the XML-schemes. A set of pre-configured profiles is useful to limit the number of options. For example, assume SLA server <NUM> contacts SLA server <NUM> after an initial handshake between SEPP <NUM> and SEPP <NUM>. Assume that SLA server <NUM> has set preferences as to what to except from any SLA server of a visited network, e.g., SLA server <NUM>. SLA server <NUM> checks whether or not preferences match with the provided profile of SLA server <NUM>. A resolution mechanism is used if there is no match, e.g., in one embodiment, the fall back is manual checking. One advantage of such automation is that the SLA agreed upon between SLA server <NUM> and SLA server <NUM> is checked every time either one contacts the other. When pre-configured profiles are used, in some embodiments, the check comprises comparing a single digit. The SEPP involves the SLA server, which is configured to evaluate/compare the profile configuration.

<FIG> illustrates a message flow <NUM> for automated service level agreement management, according to an illustrative embodiment. As shown, PLMN A <NUM> (visited network) comprises SLA server <NUM> operatively coupled to SEPP <NUM>. PLMN A is operatively coupled via an N32 interface <NUM> to PLMN B <NUM> (home network). PLMN B <NUM> comprises SEPP <NUM> operatively coupled to SLA server <NUM>. Note that the SLA server is a logical function that may be co-located with the SEPP or part of the SEPP.

In accordance with the illustrative message flow <NUM>, an initial handshake is performed between SEPP <NUM> and SEPP <NUM> to exchange required parameters (<NUM>) for implementing security on the N32 interface during establishment (<NUM>).

It is assumed that one of the SEPPs initiates verification of an SLA with the peer SEPP in another PLMN. In this example, it is assumed that SEPP <NUM> initiates verification of an SLA with SEPP <NUM>. SEPP <NUM> obtains the SLA for the partner PLMN <NUM> from its local SLA server <NUM> as follows.

In step <NUM>, SEPP <NUM> sends a message to SLA server <NUM> requesting that the subject SLA be sent to PLMN B <NUM>.

In step <NUM>, SLA server <NUM> provides the SLA to SEPP <NUM>.

In step <NUM>, SEPP <NUM> sends the SLA over the N32 interface <NUM> to SEPP <NUM>.

In step <NUM>, SEPP <NUM> provides the SLA to SLA server <NUM> for a verification and compliance check.

In step <NUM>, SLA server <NUM> checks its locally configured database and verifies that the SLA is configured for PLMN A <NUM> and that parameters of the obtained SLA match parameters that are locally stored in PLMN B <NUM>. In some embodiments, verification is performed cryptographically by verifying the hash of the SLA against what is configured. In some embodiments, SEPP <NUM> sends a hash of the SLA to SEPP <NUM> over N32 interface <NUM> rather than sending the full SLA.

Results of the verification and compliance check are conveyed from PLMN B <NUM> back to PLMN A <NUM> over N32 interface <NUM>. For example, in step <NUM>, SLA server <NUM> provides a response to SEPP <NUM>. In step <NUM>, SEPP <NUM> sends the response to SEPP <NUM>. In step <NUM>, SEPP <NUM> provides the response to SLA server <NUM>.

Depending on the results, manual intervention by network operator administrators may be required for synchronising the SLA between the two PLMNs.

In one or more illustrative embodiments, SLAs are exchanged across the N32 interface in a standardized format representing the SLA. In one embodiment, a standardized XML format is used to represent the SLA. Other embodiments comprise representing the SLA as a JSON document, e.g., see Internet Engineering Task Force (IETF) Request for Comments (RFC) <NUM> "The JavaScript Object Notation (JSON) Data Interchange Format," December <NUM>.

In one or more illustrative embodiments, a default SLA profile with all common parameters included in an SLA is provided. An example profile for subscriber roaming comprises:
{
Roaming duration: day/week etc.
Data Usage: Unlimited/Max 1GB,
Incoming Calls: Allowed/Not allowed
Outgoing calls: Allowed/Not Allowed
SMS/Text: Allowed/Not allowed
Roaming charges:
{
Data (per MB):
Voice (per minute):
SMS (per SMS)
}
}.

The particular processing operations and other system functionality described in conjunction with the message flow diagram of <FIG> are presented by way of illustrative example only, and should not be construed as limiting the scope of the disclosure in any way. Alternative embodiments can use other types of processing operations and messaging protocols. For example, the ordering of the steps may be varied in other embodiments, or certain steps may be performed at least in part concurrently with one another rather than serially. Also, one or more of the steps may be repeated periodically, or multiple instances of the methods can be performed in parallel with one another.

Claim 1:
A method comprising:
receiving a message at a first communication network (<NUM>) from a second communication network (<NUM>), wherein at least a portion of the message relates to a service level agreement between the first communication network and the second communication network; and
performing an automated verification of information in the message at the first communication network to determine compliance with the service level agreement;
wherein the message receiving step (<NUM>) is performed by a security edge protection proxy function (<NUM>) of the first communication network and the automated verification performing step (<NUM>) is performed by a service level agreement management function (<NUM>) of the first communication network;
wherein the security edge protection proxy function and the service level agreement management function are executed by at least one processing device comprising a processor operatively coupled to a memory.