EP2815316A1 - Virtualized open wireless services software architecture - Google Patents

Virtualized open wireless services software architecture

Info

Publication number
EP2815316A1
EP2815316A1 EP12868870.2A EP12868870A EP2815316A1 EP 2815316 A1 EP2815316 A1 EP 2815316A1 EP 12868870 A EP12868870 A EP 12868870A EP 2815316 A1 EP2815316 A1 EP 2815316A1
Authority
EP
European Patent Office
Prior art keywords
service
server
video
hardware resource
hardware
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP12868870.2A
Other languages
German (de)
French (fr)
Other versions
EP2815316A4 (en
Inventor
James J. LOGAN
Deepak Garg
Tim Mortsolf
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Affirmed Networks Inc
Original Assignee
Affirmed Networks Inc
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 Affirmed Networks Inc filed Critical Affirmed Networks Inc
Publication of EP2815316A1 publication Critical patent/EP2815316A1/en
Publication of EP2815316A4 publication Critical patent/EP2815316A4/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Definitions

  • the invention generally relates to wireless networks, and more specifically to a virtualized open wireless services software architecture.
  • Wireless networks include many different functions that are typically mapped to different devices.
  • a 3G/4G network includes base stations, Radio Network Controllers (RNCs), Serving GPRS Support Nodes (SGSNs), Gateway GPRS Support Nodes (GGSNs), Serving Gateways (SGWs), Packet Data Network Gateways (PGWs), Mobile Management Entities (MMEs), Digital Phone Interface (DPI) probes, traffic analyzers, firewalls, Policy and Charging Rules Functions (PCRFs), Authentication, Authorization, and Accounting (AAA) servers, Lightweight Directory Access Protocol (LDAP) databases, charging servers, Hypertext Transfer Protocol (HTTP) proxies, traffic optimizers, video optimizers, and so forth.
  • RNCs Radio Network Controllers
  • SGSNs Serving GPRS Support Nodes
  • GGSNs Gateway GPRS Support Nodes
  • SGWs Serving Gateways
  • PGWs Packet Data Network Gateways
  • MMEs Mobile Management Entities
  • DPI Digital Phone Interface
  • PCRFs Policy and Charging Rules
  • the present invention provides methods and apparatus, including computer program products, for a virtualized open wireless services software architecture.
  • the invention features a method including, in a mobile network, monitoring hardware resources for utilization, receiving a request to instantiate a service, selecting a hardware resource that is underutilized, and mapping the service to the underutilized hardware resource.
  • the invention features a server including central processing units, and a memory, the memory including an operating system and grid resource management process, the grid resource management process including monitoring hardware resources in a mobile network for utilization, receiving a request to instantiate a service, selecting a hardware resource that is underutilized, and mapping the service to the underutilized hardware resource.
  • FIG. 1 is a block diagram.
  • FIG. 2 is a block diagram.
  • FIG. 3 is a flow diagram.
  • a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer.
  • a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer.
  • an application running on a server and the server can be a component.
  • One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers.
  • these components can execute from various computer readable media having various data structures stored thereon.
  • the components may communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal).
  • terms like "user equipment,” “mobile station,” “mobile,” “subscriber station,” “communication device,” “access terminal,” “terminal,” “handset,” and similar terminology refer to a wireless device (e.g., cellular phone, smart phone, computer, personal digital assistant (PDA), set-top box, Internet Protocol Television (IPTV), electronic gaming device, printer, etc.) utilized by a subscriber or user of a wireless communication service to receive or convey data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream.
  • PDA personal digital assistant
  • IPTV Internet Protocol Television
  • the terms “access point,” “base station,” “Node B,” “evolved Node B,” “home Node B (HNB),” and the like are utilized interchangeably in the subject application, and refer to a wireless network component or appliance that serves and receives data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream from a set of subscriber stations. Data and signaling streams can be packetized or frame-based flows. [0016] Furthermore, the terms “user,” “subscriber,” “customer,” and the like are employed interchangeably throughout the subject specification, unless context warrants particular distinction(s) among the terms.
  • each hardware node in a network runs a mix of active and standby applications, and, where the standby applications do not require the same amount of physical resources as the active applications, the requirements for physical resources (e.g. CPU, memory, disk space, bandwidth) is not usually taken into consideration when assigning applications to run on a hardware node.
  • the standby applications are backing up active applications distributed across the collection of hardware, and, at any given time only a subset of the applications may go active. Since this fact is not considered when assigning applications to hardware nodes, there is an inherent underutilization of the resources.
  • wireless networks include many different functions which are typically mapped to different devices.
  • a typical 3G/4G network can include base stations (BSs), R Cs, SGSNs, GGSNs, SGWs, PGWs, MMEs, DPI probes, traffic analyzers, firewalls, PCRF, AAA servers, LDAP databases, charging servers, HTTP proxies, traffic optimizers, video optimizers and so forth.
  • the operator has to deal with multiple management platforms.
  • the approach can lead to a closed software environment.
  • the software architecture of the devices that make up the network are designed specifically to support the function they have been built for by the vendors that provide them and are therefore closed in the sense that the operator cannot use the processing resources of these platforms to host nay other functions (related or unrelated to the original function) that they may want to. Even though the operator has bought the processing resources, they are very limited in what these resources can be used for.
  • the invention described herein characterizes the amount of physical resources required by applications while in their active and standby roles, and maps the distribution of active/standby processes within the collection of hardware nodes. This results in maximized hardware utilization by strategically assigning applications to run on hardware nodes based on their physical resource requirements and high availability state.
  • the invention described herein applies to all wireless networks regardless of access technology, including Global System for Mobile (GSM), Code Division Multiple Access (CDMA), Long Term Evolution (LTE), WiMAX and so forth. For ease of explanation, the invention will is described in a 4G network environment.
  • GSM Global System for Mobile
  • CDMA Code Division Multiple Access
  • LTE Long Term Evolution
  • WiMAX Worldwide Interoperability for Mobile
  • an exemplary mobile network 10 includes user equipment (UE) 12, such as a smart phone.
  • UE user equipment
  • Other examples of US 12 include, but are not limited to, cellular phone, computer, personal digital assistant (PDA), set-top box, Internet Protocol Television (IPTV), electronic gaming device, printer, tablet, Wi-Fi Hotspot and so forth.
  • the UE 12 is wirelessly linked to an Evolved Node B (eNB) 14.
  • the eNB 14 is a radio part of a cell site. A single eNB may contain several radio transmitters, receivers, control sections and power supplies.
  • the eNB 14 is backhauled to a metro ethernet ring 16, which includes a Mobility Management Entity (MME) 18 and a Serving Gateway (SGW) 20.
  • MME Mobility Management Entity
  • SGW Serving Gateway
  • Backhaul is a process of transferring packets or communication signals over relatively long distances to a separate location for processing.
  • the SGW 20 routes and forwards user data packets, while also acting as the mobility anchor for a user plane during inter-eNodeB handovers.
  • the SGW 20 is linked to an Internet Protocol (IP) backbone 22.
  • IP Internet Protocol
  • the IP backbone 22 includes links to a Online Charging System (OCS) 24, an Offline Charging Subsystem (OFCS) 26 and a Policy Control and Charging Function (PCRF) 28.
  • OCS Online Charging System
  • OFCS Offline Charging Subsystem
  • PCRF Policy Control and Charging Function
  • the OCS 24 is a set of interconnected network elements that enable the identification, rating and posting of charges in real time (or near real time).
  • the OFCS 26 receives charging data in the form of Call Detail Records (CDRs) and Diameter accounting messages from network elements after the subscriber incurs network resource usage.
  • CDRs Call Detail Records
  • Diameter accounting messages Diameter accounting messages
  • the IP backbone 22 includes a network server 30 that implements virtualized open wireless services software architecture for 3G and 4G mobile networks.
  • the network server 30 is linked to a web server 32 through an Internet Service Provider (ISP) 34.
  • ISP Internet Service Provider
  • the network server 30 includes one or more a central processing units (CPUs) 50, 52, 54 and a memory 52.
  • Memory 52 includes at least an operating system (OS) 54, such as Linux, and grid resource management process 100.
  • the grid resource management process 100 described below, monitors hardware resources, determines their utilization over time, and maps/re-maps software processes into hardware resources, e.g., the one or more a central nrncessin p units ( CPUs) 50, 52, 54, according to their availability and utilizations.
  • the grid resource management process 100 can monitor utilization of other hardware resources within the exemplary mobile network 10 and map/re-map software processes into these other hardware resources, enabling a virtualized open wireless services software architecture.
  • Monitoring the one or more CPUs 50, 52, 54 can be implemented in a number of ways. For example, In the Linux OS, monitoring can be done using "mpstat" and other tools.
  • the grid resource management process 100 includes monitoring (102) hardware resources residing in a mobile network for utilization.
  • the grid resource management process 100 receives (104) a request to instantiate a service.
  • Services that the grid resource management service 100 can intelligently map/remap to hardware resources may include a network firewall service, a serving gateway (SGW) service, a packet data network gateway (PGW) service, a HTTP Web proxy service, a video proxy service, a service module, and so forth.
  • SGW serving gateway
  • PGW packet data network gateway
  • the SGW service routes and forwards user data packets and acts as an anchor for mobility between LTE and other 3GPP technologies.
  • the PGW service provides connectivity from user equipment to external packet data networks by being a point of exit and entry of traffic for the user equipment.
  • the PGW service performs policy enforcement, packet filtering for each user, charging support, lawful interception and packet screening.
  • the HTTP Web proxy service acts as an intermediary for requests from clients seeking resources from other servers.
  • the HTTP Web proxy service provides web caching, web translating and web transcoding.
  • the video proxy service provides video caching, video translating and video transcoding.
  • this module provides related services involving content
  • the service module provides a number of services, such as, for example,
  • PEP Policy Personal Eventing Protocol
  • DFS Domain Name System
  • Access Control Packet Inspection
  • Session Term IP Transport I/O
  • charging function Policy Personal Eventing Protocol
  • policy enforcement function Policy Enforcement function
  • the charging function refers to an ability to selectively charge mobile subscribers and/or content partners based on a per flow basis by applying differentiated billing plans based on flow characteristics such as volume of packets, amount of time the flow is active, and the application associated with the flow as determined by shallow or deep packet inspection of the packet(s) in the flow or by analyzing the flow heuristics (e.g., signature analysis), or other parameters associated with servicing the flow such as time of day.
  • flow characteristics such as volume of packets, amount of time the flow is active
  • the application associated with the flow as determined by shallow or deep packet inspection of the packet(s) in the flow or by analyzing the flow heuristics (e.g., signature analysis), or other parameters associated with servicing the flow such as time of day.
  • the policy enforcement function refers to an ability to apply subscriber related QoS and gating policies to a subscriber flow on a per-flow basis, where the flow is determined by shallow or deep packet inspection, or heuristic analysis (e.g., signature analysis) of the flow pattern.
  • the latency service refers to an ability to measure network round trip latency between any selected subscriber or set of subscribers and the gateway function in the wireless core.
  • the grid resource management process 100 selects (106) a hardware resource that is underutilized.
  • the grid resource management process 100 maps (108) the service to the underutilized hardware resource.
  • the grid resource management process 100 monitors (110) mapped hardware resource.
  • the grid resource management process 100 remaps (112) the service to another underutilized hardware resource when the mapped hardware resource is over-utilized.
  • the grid resource management process 100 provides an open and modular software architecture that maps wireless network functions to processing resources in a virtualized environment that can be run on any standard processor device like a datacenter solution.
  • the grid resource management process 100 maps functions to available processor resources dynamically. Since the functions are run in a virtual environment, they can be stitched together in a different order for different services.
  • the architecture allows the operator to plug in their own modules both for protocol analyzers and for additional functions that they want to host on the platform.
  • This architecture addresses the problems raised by outdated methods. Since the functions are virtual and can be mapped to processor resources at a granular level (on a per process basis), the processor is allocated to these functions in small increments of processor capacity. This maximizes the efficiency of processor usage since only the amount needed for a function is allocated.
  • each function can be scaled as required according to the needs of a particular deployment and dynamically changing network conditions, applications and user behavior.
  • processing resources are generic, it is easy to add additional resources to the platform when needed and allocate these resources to any function based on scaling needs.
  • Service instantiation involves a planning exercise, and easy configuration through a service aware configuration interface that allows the operator to specify protocol analyzers for flow classification and a service workflow that is series of functions that are instantiated and stitched together in the desired order. This allows the operator to quickly turn services on and off and take advantage of short term service opportunities.
  • Creating a modular and virtualized environment enables a "service platform" where the operator is empowered to plug in their own protocol analyzers and software functions, and use these plugged in modules to instantiate services using the service workflow mechanism.
  • implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • a programmable processor which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer.
  • a display device e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and a pointing device e.g., a mouse or a trackball
  • Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or that includes a back-end component (e.g., a data server), or
  • middleware component e.g., an apnlicatinn server! nr that includes a front-end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components.
  • the components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), and the Internet.
  • LAN local area network
  • WAN wide area network
  • Internet the global information network
  • the computing system can include clients and servers.
  • a client and server are generally remote from each other and typically interact through a communication network.
  • the relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Methods and apparatus, including computer program products, for virtualized open wireless services software architecture. A method includes, in a mobile network, monitoring hardware resources for utilization, receiving a request to instantiate a service, selecting a hardware resource that is underutilized, and mapping the service to the underutilized hardware resource.

Description

VIRTU ALIZED OPEN WIRELESS SERVICES
SOFTWARE ARCHITECTURE
BACKGROUND OF THE INVENTION
[001] The invention generally relates to wireless networks, and more specifically to a virtualized open wireless services software architecture.
[002] Wireless networks include many different functions that are typically mapped to different devices. For example, a 3G/4G network includes base stations, Radio Network Controllers (RNCs), Serving GPRS Support Nodes (SGSNs), Gateway GPRS Support Nodes (GGSNs), Serving Gateways (SGWs), Packet Data Network Gateways (PGWs), Mobile Management Entities (MMEs), Digital Phone Interface (DPI) probes, traffic analyzers, firewalls, Policy and Charging Rules Functions (PCRFs), Authentication, Authorization, and Accounting (AAA) servers, Lightweight Directory Access Protocol (LDAP) databases, charging servers, Hypertext Transfer Protocol (HTTP) proxies, traffic optimizers, video optimizers, and so forth. As these wireless networks have evolved, each additional function that is added has required the introduction of a new device that hosts that function or multiple hardware processors in the same device hosting different functions.
SUMMARY OF THE INVENTION
[003] The following presents a simplified summary of the innovation in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is intended to neither identify key or critical elements of the invention nor delineate the scope of the invention. Its sole purpose is to present some concepts of the invention in a simplified form as a prelude to the more detailed description that is presented later.
[004] The present invention provides methods and apparatus, including computer program products, for a virtualized open wireless services software architecture.
[005] In general, in one aspect, the invention features a method including, in a mobile network, monitoring hardware resources for utilization, receiving a request to instantiate a service, selecting a hardware resource that is underutilized, and mapping the service to the underutilized hardware resource.
[006] On another aspect, the invention features a server including central processing units, and a memory, the memory including an operating system and grid resource management process, the grid resource management process including monitoring hardware resources in a mobile network for utilization, receiving a request to instantiate a service, selecting a hardware resource that is underutilized, and mapping the service to the underutilized hardware resource.
[007] Other features and advantages of the invention are apparent from the following description, and from the claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[008] The invention will be more fully understood by reference to the detailed description, in conjunction with the following figures, wherein:
[009] FIG. 1 is a block diagram.
[0010] FIG. 2 is a block diagram.
[0011] FIG. 3 is a flow diagram.
DETAILED DESCRIPTION
[0012] The subject innovation is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It may be evident, however, that the present invention may be practiced without these specific details. In other instances, well- known structures and devices are shown in block diagram form in order to facilitate describing the present invention.
[0013] As used in this application, the terms "component," "system," "platform," and the like can refer to a computer-related entity or an entity related to an operational machine with one or more specific functionalities. The entities disclosed herein can be either hardware, a combination of hardware and software, software, or software in execution. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a component. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers. Also, these components can execute from various computer readable media having various data structures stored thereon. The components may communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal).
[0014] In addition, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or." That is, unless specified otherwise, or clear from context, "X employs A or B" is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then "X employs A or B" is satisfied under any of the foregoing instances. Moreover, articles "a" and "an" as used in the subject specification and annexed drawings should generally be construed to mean "one or more" unless specified otherwise or clear from context to be directed to a singular form.
[0015] Moreover, terms like "user equipment," "mobile station," "mobile," "subscriber station," "communication device," "access terminal," "terminal," "handset," and similar terminology, refer to a wireless device (e.g., cellular phone, smart phone, computer, personal digital assistant (PDA), set-top box, Internet Protocol Television (IPTV), electronic gaming device, printer, etc.) utilized by a subscriber or user of a wireless communication service to receive or convey data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream. The foregoing terms are utilized interchangeably in the subject specification and related drawings. Likewise, the terms "access point," "base station," "Node B," "evolved Node B," "home Node B (HNB)," and the like, are utilized interchangeably in the subject application, and refer to a wireless network component or appliance that serves and receives data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream from a set of subscriber stations. Data and signaling streams can be packetized or frame-based flows. [0016] Furthermore, the terms "user," "subscriber," "customer," and the like are employed interchangeably throughout the subject specification, unless context warrants particular distinction(s) among the terms.
[0017] In a distributed, high availability environment, where each hardware node in a network runs a mix of active and standby applications, and, where the standby applications do not require the same amount of physical resources as the active applications, the requirements for physical resources (e.g. CPU, memory, disk space, bandwidth) is not usually taken into consideration when assigning applications to run on a hardware node. The standby applications are backing up active applications distributed across the collection of hardware, and, at any given time only a subset of the applications may go active. Since this fact is not considered when assigning applications to hardware nodes, there is an inherent underutilization of the resources.
[0018] For example, wireless networks include many different functions which are typically mapped to different devices. A typical 3G/4G network can include base stations (BSs), R Cs, SGSNs, GGSNs, SGWs, PGWs, MMEs, DPI probes, traffic analyzers, firewalls, PCRF, AAA servers, LDAP databases, charging servers, HTTP proxies, traffic optimizers, video optimizers and so forth. As these networks have evolved, each additional function that is added has required the introduction of a new device that hosts that function or multiple hardware processors in the same device hosting different functions. This approach causes some major problems.
[0019] The approach leads to inefficient use of resources. Since the functions are mapped to processing resources in a relatively static manner, this potentially leads to scenarios where some devices are underutilized and some overloaded, with no flexibility to use underutilized processing resources to offload the overload devices.
[0020] The approach leads to scalability issues. As the demand on the network increases, each device has to be scaled up independently to manage the increased load which is sub- optimal from a cost perspective. In addition, as new functions are added, new devices have to be added to the network.
[0021] The approach leads to management issues. The more devices there are, the harder it is to monitor and maintain them. Typically each device has its own management interface, and integrating them into a single management platform becomes very complex.
Alternatively, the operator has to deal with multiple management platforms.
[0022] The approach leads to inflexibility in ordering of functions. Different end-end services may require a different ordering in functions. For example, one service may require charging before the firewall function, and another may require the reverse. Since these functions are on different devices, the ordering is a function of how they are wired up and therefore fairly static. Trying to change the order leads to multiple extra hops for traffic which is highly inefficient as well as increases latency.
[0023] The approach can lead to complexity of service instantiation. Any time a new service is introduced, multiple functions have to be configured to instantiate the end-end service. This is a cumbersome and error prone process since the configuration on multiple devices has to be modified. In addition, an error in configuring one of these devices could impact existing services. Furthermore, the complexity associated with this process means that it takes a lot of effort and a lot of time from when a service is identified to when it is actually executed. As a consequence, most operators only enable services that are very lucrative and long lasting, and miss out on opportunities for services that may be less lucrative and more short term (for example, offering premium access to a sporting event).
[0024] The approach can lead to a closed software environment. The software architecture of the devices that make up the network are designed specifically to support the function they have been built for by the vendors that provide them and are therefore closed in the sense that the operator cannot use the processing resources of these platforms to host nay other functions (related or unrelated to the original function) that they may want to. Even though the operator has bought the processing resources, they are very limited in what these resources can be used for.
[0025] The invention described herein characterizes the amount of physical resources required by applications while in their active and standby roles, and maps the distribution of active/standby processes within the collection of hardware nodes. This results in maximized hardware utilization by strategically assigning applications to run on hardware nodes based on their physical resource requirements and high availability state. [0026] The invention described herein applies to all wireless networks regardless of access technology, including Global System for Mobile (GSM), Code Division Multiple Access (CDMA), Long Term Evolution (LTE), WiMAX and so forth. For ease of explanation, the invention will is described in a 4G network environment.
[0027] As shown in FIG. 1, an exemplary mobile network 10 includes user equipment (UE) 12, such as a smart phone. Other examples of US 12 include, but are not limited to, cellular phone, computer, personal digital assistant (PDA), set-top box, Internet Protocol Television (IPTV), electronic gaming device, printer, tablet, Wi-Fi Hotspot and so forth. The UE 12 is wirelessly linked to an Evolved Node B (eNB) 14. The eNB 14 is a radio part of a cell site. A single eNB may contain several radio transmitters, receivers, control sections and power supplies. The eNB 14 is backhauled to a metro ethernet ring 16, which includes a Mobility Management Entity (MME) 18 and a Serving Gateway (SGW) 20. Backhaul is a process of transferring packets or communication signals over relatively long distances to a separate location for processing. The SGW 20 routes and forwards user data packets, while also acting as the mobility anchor for a user plane during inter-eNodeB handovers.
[0028] The SGW 20 is linked to an Internet Protocol (IP) backbone 22. The IP backbone 22 includes links to a Online Charging System (OCS) 24, an Offline Charging Subsystem (OFCS) 26 and a Policy Control and Charging Function (PCRF) 28. In general, the OCS 24 is a set of interconnected network elements that enable the identification, rating and posting of charges in real time (or near real time). The OFCS 26 receives charging data in the form of Call Detail Records (CDRs) and Diameter accounting messages from network elements after the subscriber incurs network resource usage.
[0029] The IP backbone 22 includes a network server 30 that implements virtualized open wireless services software architecture for 3G and 4G mobile networks. The network server 30 is linked to a web server 32 through an Internet Service Provider (ISP) 34.
[0030] As shown in FIG. 2, the network server 30 includes one or more a central processing units (CPUs) 50, 52, 54 and a memory 52. Memory 52 includes at least an operating system (OS) 54, such as Linux, and grid resource management process 100. The grid resource management process 100, described below, monitors hardware resources, determines their utilization over time, and maps/re-maps software processes into hardware resources, e.g., the one or more a central nrncessinp units (CPUs) 50, 52, 54, according to their availability and utilizations. In addition, the grid resource management process 100 can monitor utilization of other hardware resources within the exemplary mobile network 10 and map/re-map software processes into these other hardware resources, enabling a virtualized open wireless services software architecture.
[0031] Monitoring the one or more CPUs 50, 52, 54, can be implemented in a number of ways. For example, In the Linux OS, monitoring can be done using "mpstat" and other tools.
[0032] As shown in FIG. 3, the grid resource management process 100 includes monitoring (102) hardware resources residing in a mobile network for utilization.
[0033] The grid resource management process 100 receives (104) a request to instantiate a service.
[0034] Services that the grid resource management service 100 can intelligently map/remap to hardware resources may include a network firewall service, a serving gateway (SGW) service, a packet data network gateway (PGW) service, a HTTP Web proxy service, a video proxy service, a service module, and so forth.
[0035] The SGW service routes and forwards user data packets and acts as an anchor for mobility between LTE and other 3GPP technologies.
[0036] The PGW service provides connectivity from user equipment to external packet data networks by being a point of exit and entry of traffic for the user equipment. The PGW service performs policy enforcement, packet filtering for each user, charging support, lawful interception and packet screening.
[0037] The HTTP Web proxy service acts as an intermediary for requests from clients seeking resources from other servers. The HTTP Web proxy service provides web caching, web translating and web transcoding.
[0038] The video proxy service provides video caching, video translating and video transcoding. In addition, this module provides related services involving content
manipulation such as advertisement insertion, splicing content together or rewriting adaptive bit rate manifest files.
[0039] The service module provides a number of services, such as, for example,
Radius/Diameter, Policy Personal Eventing Protocol (PEP), Packet Forwarding, Content Filtering, Session Management, Domain Name System (DNS) Service, Access Control, Packet Inspection, Session Term, IP Transport I/O, a charging function, a policy enforcement function, a traffic steering function, a latency service function, and so forth.
[0040] The charging function refers to an ability to selectively charge mobile subscribers and/or content partners based on a per flow basis by applying differentiated billing plans based on flow characteristics such as volume of packets, amount of time the flow is active, and the application associated with the flow as determined by shallow or deep packet inspection of the packet(s) in the flow or by analyzing the flow heuristics (e.g., signature analysis), or other parameters associated with servicing the flow such as time of day.
[0041] The policy enforcement function refers to an ability to apply subscriber related QoS and gating policies to a subscriber flow on a per-flow basis, where the flow is determined by shallow or deep packet inspection, or heuristic analysis (e.g., signature analysis) of the flow pattern.
[0042] The latency service refers to an ability to measure network round trip latency between any selected subscriber or set of subscribers and the gateway function in the wireless core.
[0043] The grid resource management process 100 selects (106) a hardware resource that is underutilized.
[0044] The grid resource management process 100 maps (108) the service to the underutilized hardware resource.
[0045] The grid resource management process 100 monitors (110) mapped hardware resource.
[0046] The grid resource management process 100 remaps (112) the service to another underutilized hardware resource when the mapped hardware resource is over-utilized.
[0047] The grid resource management process 100 provides an open and modular software architecture that maps wireless network functions to processing resources in a virtualized environment that can be run on any standard processor device like a datacenter solution. The grid resource management process 100 maps functions to available processor resources dynamically. Since the functions are run in a virtual environment, they can be stitched together in a different order for different services. In addition to implementing standard wireless functions as virtual software modules, the architecture allows the operator to plug in their own modules both for protocol analyzers and for additional functions that they want to host on the platform.
[0048] This architecture addresses the problems raised by outdated methods. Since the functions are virtual and can be mapped to processor resources at a granular level (on a per process basis), the processor is allocated to these functions in small increments of processor capacity. This maximizes the efficiency of processor usage since only the amount needed for a function is allocated.
[0049] Since the allocations of functions to resources are done dynamically in small increments, each function can be scaled as required according to the needs of a particular deployment and dynamically changing network conditions, applications and user behavior. In addition, since the processing resources are generic, it is easy to add additional resources to the platform when needed and allocate these resources to any function based on scaling needs.
[0050] Since multiple functions can be mapped to a single scalable platform with generic resources, a number of functions can be hosted on the same platform. It is much easier to manage a single platform running multiple functions in an integrated manner than multiple platforms running single functions.
[0051] Since the functions are running in a virtualized environment as software process on the same platform, they can be invoked in any order for any flow.
[0052] There can be a single management interface for multiple functions that allows these functions to be stitched together in any order with ease, end to end service instantiation becomes easy. Service instantiation involves a planning exercise, and easy configuration through a service aware configuration interface that allows the operator to specify protocol analyzers for flow classification and a service workflow that is series of functions that are instantiated and stitched together in the desired order. This allows the operator to quickly turn services on and off and take advantage of short term service opportunities.
[0053] Creating a modular and virtualized environment enables a "service platform" where the operator is empowered to plug in their own protocol analyzers and software functions, and use these plugged in modules to instantiate services using the service workflow mechanism.
[0054] Various implementations of the systems and techniques described here can be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs
(application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various implementations can include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
[0055] These computer programs (also known as programs, software, software applications or code) include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the terms "machine-readable medium" "computer-readable medium" refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term "machine-readable signal" refers to any signal used to provide machine instructions and/or data to a programmable processor.
[0056] To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback), and input from the user can be received in any form, including acoustic, speech, or tactile input.
[0057] The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., a data server), or that includes a
middleware component (e.g., an apnlicatinn server! nr that includes a front-end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), and the Internet.
[0058] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
[0059] The foregoing description does not represent an exhaustive list of all possible implementations consistent with this disclosure or of all possible variations of the
implementations described. A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the systems, devices, methods and techniques described here. For example, various forms of the flows shown above may be used, with steps re-ordered, added, or removed. Accordingly, other implementations are within the scope of the following claims.
[0060] What is claimed is :

Claims

1. A method comprising:
in a mobile network, monitoring hardware resources for utilization;
receiving a request to instantiate a service;
selecting a hardware resource that is underutilized; and
mapping the service to the underutilized hardware resource.
2. The method of claim 1 further comprising:
monitoring the mapped hardware resource; and
remapping the service to another underutilized hardware resource when the mapped hardware resource is over-utilized.
3. The method of claim 1 wherein the service is selected from the group consisting of a network firewall service, a serving gateway (SGW) service, a packet data network gateway (PGW) service, a HTTP Web proxy service, a video proxy service, a service module and a custom service.
4. The method of claim 3 wherein the SGW service routes and forwards user data packets and acts as an anchor for mobility between LTE and other 3 GPP technologies.
5. The method of claim 3 wherein the PGW service provides connectivity from user equipment to external packet data networks by being a point of exit and entry of traffic for the user equipment.
6. The method of claim 3 wherein the HTTP Web proxy service acts as an intermediary for requests from clients seeking resources from other servers.
7. The method of claim 3 wherein the video proxy service provides video caching, video translating and video transcoding.
8. The method of claim 3 wherein the service module is selected from the group consisting of a Radius/Diameter service, a Policy Personal Eventing Protocol (PEP) service, a Packet Forwarding service, a Content Filtering service, a Session Management service, a Domain Name System (DNS) service, an Access Control service, a Packet Inspection service, a Session Term service, an IP Transport I/O service, a charging function service, a policy enforcement function service, a traffic steering function service, and a latency service function service.
9. The method of claim 1 wherein the hardware resources are selected from the group consisting of central processor units (CPUs), memory, disk space, and bandwidth.
10. A server comprising:
central processing units; and
a memory, the memory comprising an operating system and grid resource
management process, the grid resource management process comprising:
monitoring hardware resources in a mobile network for utilization;
receiving a request to instantiate a service;
selecting a hardware resource that is underutilized; and
mapping the service to the underutilized hardware resource.
11. The server of claim 10 wherein the grid resource management process further comprises: monitoring the mapped hardware resource; and
remapping the service to another underutilized hardware resource when the mapped hardware resource is over-utilized.
12. The server of claim 10 wherein the service is selected from the group consisting of a network firewall service, a serving gateway (SGW) service, a packet data network gateway (PGW) service, a HTTP Web proxy service, a video proxy service, a service module and a custom service.
13. The server of claim 12 wherein the SGW service routes and forwards user data packets and acts as an anchor for mobility between LTE and other 3 GPP technologies.
14. The server of claim 12 wherein the PGW service provides connectivity from user equipment to external packet data networks by being a point of exit and entry of traffic for the user equipment.
15. The server of claim 12 wherein the HTTP Web proxy service acts as an intermediary for requests from clients seeking resources from other servers.
16. The server of claim 12 wherein the video proxy service provides video caching, video translating and video transcoding.
17. The server of claim 12 wherein the service module is selected from the group consisting of a Radius/Diameter service, a Policy Personal Eventing Protocol (PEP) service, a Packet Forwarding service, a Content Filtering service, a Session Management service, a Domain Name System (DNS) service, an Access Control service, a Packet Inspection service, a Session Term service, an IP Transport I/O service, a charging function service, a policy enforcement function service, a traffic steering function service, and a latency service function service.
18. The server of claim 10 wherein the hardware resources are selected from the group consisting of central processor units (CPUs), memory, disk space, and bandwidth.
19. The server of claim 10 wherein the service is selected from standby applications backing up active applications distributed across a collection of hardware.
EP12868870.2A 2012-02-17 2012-02-17 Virtualized open wireless services software architecture Withdrawn EP2815316A4 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2012/025577 WO2013122597A1 (en) 2012-02-17 2012-02-17 Virtualized open wireless services software architecture

Publications (2)

Publication Number Publication Date
EP2815316A1 true EP2815316A1 (en) 2014-12-24
EP2815316A4 EP2815316A4 (en) 2015-10-07

Family

ID=48984566

Family Applications (1)

Application Number Title Priority Date Filing Date
EP12868870.2A Withdrawn EP2815316A4 (en) 2012-02-17 2012-02-17 Virtualized open wireless services software architecture

Country Status (6)

Country Link
EP (1) EP2815316A4 (en)
JP (1) JP2015512096A (en)
KR (2) KR20140127324A (en)
CN (1) CN104508633A (en)
HK (1) HK1209204A1 (en)
WO (1) WO2013122597A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10505796B2 (en) 2014-06-25 2019-12-10 Hewlett Packard Enterprise Development Lp Network function virtualization
US9572097B2 (en) 2014-10-13 2017-02-14 International Business Machines Corporation Determining a preferred WIFI hotspot
EP3528472B1 (en) 2014-11-07 2020-09-23 Huawei Technologies Co., Ltd. Method for managing hardware resource, method for querying location of hardware resource, and related apparatus
US10042662B1 (en) 2015-04-07 2018-08-07 Sprint Communications Company L.P. Network function virtualization (NFV) parameter trust in data communication systems
US10498764B2 (en) * 2015-12-08 2019-12-03 Jpu.Io Ltd Network routing and security within a mobile radio network
US10142491B1 (en) 2017-07-05 2018-11-27 International Business Machines Corporation Support system for cellular based resource sharing service

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4292693B2 (en) * 2000-07-07 2009-07-08 株式会社日立製作所 Computer resource dividing apparatus and resource dividing method
US20020107966A1 (en) * 2001-02-06 2002-08-08 Jacques Baudot Method and system for maintaining connections in a network
US20030187982A1 (en) * 2002-03-27 2003-10-02 Patrick Petit System and method for resource load balancing in a portal server
US20060294238A1 (en) * 2002-12-16 2006-12-28 Naik Vijay K Policy-based hierarchical management of shared resources in a grid environment
US7680478B2 (en) * 2006-05-04 2010-03-16 Telefonaktiebolaget Lm Ericsson (Publ) Inactivity monitoring for different traffic or service classifications
CN1913461A (en) * 2006-08-30 2007-02-14 北京天地互连信息技术有限公司 Remote vedio monitoring system based on next generation interconnection network and its implementing method
JP5340304B2 (en) * 2007-12-05 2013-11-13 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Resource allocation for operators sharing a frequency band
US9842004B2 (en) 2008-08-22 2017-12-12 Red Hat, Inc. Adjusting resource usage for cloud-based networks
EP2166804A1 (en) * 2008-09-17 2010-03-24 Panasonic Corporation Deactivation of semi-persistent resource allocations in a mobile communication network
JP5320618B2 (en) * 2008-10-02 2013-10-23 株式会社日立製作所 Route control method and access gateway apparatus
WO2010066430A1 (en) * 2008-12-10 2010-06-17 Nec Europe Ltd. A method for operating at least one virtual network on a substrate network and a virtual network environment
US8233408B2 (en) * 2009-12-10 2012-07-31 Wei Lu Mobile cloud architecture based on open wireless architecture (OWA) platform
US8571040B2 (en) * 2010-03-01 2013-10-29 Deutsche Telekom Ag Apparatus, method, manufacture, and system for providing network services from building blocks
JP2012032877A (en) * 2010-07-28 2012-02-16 Fujitsu Ltd Program, method and apparatus for managing information processor

Also Published As

Publication number Publication date
HK1209204A1 (en) 2016-03-24
CN104508633A (en) 2015-04-08
JP2015512096A (en) 2015-04-23
EP2815316A4 (en) 2015-10-07
WO2013122597A1 (en) 2013-08-22
KR20180091107A (en) 2018-08-14
KR20140127324A (en) 2014-11-03

Similar Documents

Publication Publication Date Title
US9013993B2 (en) Virtualized open wireless services software architecture
US11070477B2 (en) Distributed software defined wireless packet core system
US11234158B2 (en) System and method for deferred delivery of content based on congestion in a network environment
US10122547B2 (en) Enabling high-bandwidth, responsive mobile applications in LTE networks
US10833978B2 (en) Integrated wireline and wireless access using software defined networking
CN104255046B (en) The method of customized mobile broadband network system and customization mobile broadband network
US8804530B2 (en) Systems and methods for gateway relocation
US20130232267A1 (en) System and method for resource-based network policy control in a network environment
US8780909B2 (en) System and method for modifying media protocol feedback loop based on mobile system information
US11184778B2 (en) Mobile service chain placement
WO2013122597A1 (en) Virtualized open wireless services software architecture
CN105939527A (en) Congestion mitigation for roamers
JP7443563B2 (en) Load balancing and service selection in mobile networks
CN110870256B (en) Method, system and computer readable medium for operating a telecommunication network
US11153801B2 (en) Facilitating dynamic multiple public land mobile network resource management in advanced networks
EP3652980B1 (en) Virtual anchoring in anchorless mobile networks
US20130235800A1 (en) Method of and System for Packet Gateway and Content Management Integration
JP2019121848A (en) Radio communication system and radio communication method
Oredope et al. Cloud Services in Mobile Environments-The IU-ATC UK-India Mobile Cloud Proxy Function
Mäkelä et al. Evaluation of an information service for enhanced multiaccess media delivery
Hodges The Design and Implementation of an Over-the-top Cloud-based Vertical Handover Decision Service for Heterogeneous Wireless Networks

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20140910

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
RA4 Supplementary search report drawn up and despatched (corrected)

Effective date: 20150904

RIC1 Information provided on ipc code assigned before grant

Ipc: H04L 12/24 20060101ALI20150831BHEP

Ipc: G06F 9/46 20060101AFI20150831BHEP

17Q First examination report despatched

Effective date: 20170125

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20170607