WO2013049079A2 - Gestion de demande dynamique au moyen de capacités informatiques en nuage - Google Patents

Gestion de demande dynamique au moyen de capacités informatiques en nuage Download PDF

Info

Publication number
WO2013049079A2
WO2013049079A2 PCT/US2012/057148 US2012057148W WO2013049079A2 WO 2013049079 A2 WO2013049079 A2 WO 2013049079A2 US 2012057148 W US2012057148 W US 2012057148W WO 2013049079 A2 WO2013049079 A2 WO 2013049079A2
Authority
WO
WIPO (PCT)
Prior art keywords
cloud computing
request
requests
cloud
edge
Prior art date
Application number
PCT/US2012/057148
Other languages
English (en)
Other versions
WO2013049079A3 (fr
Inventor
Jason Thibeault
Original Assignee
Limelight 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
Priority claimed from US13/245,582 external-priority patent/US8849976B2/en
Priority claimed from US13/245,601 external-priority patent/US8244874B1/en
Application filed by Limelight Networks, Inc. filed Critical Limelight Networks, Inc.
Publication of WO2013049079A2 publication Critical patent/WO2013049079A2/fr
Publication of WO2013049079A3 publication Critical patent/WO2013049079A3/fr

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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • 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/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests

Definitions

  • compute resources i.e., applications, etc.
  • a cloud provider's network e.g., servers which are aggregated in a centralized location, a datacenter, etc.
  • All requests are load-balanced back to that cluster.
  • a cluster e.g., servers which are aggregated in a centralized location, a datacenter, etc.
  • All requests are load-balanced back to that cluster.
  • such an implementation does not necessarily provide the best performance or experience for end users who may, for example, be located far away from the centralized cluster.
  • a data center 105 includes a compute platform 110 which is in communication with devices which produce user requests 1 15. As such, user requests 1 15 are received by the data center 105, which includes the cloud resources. As requests increase, software and services within the data center 105 are spun-up by additional cloud resources using the compute platform 110. The distance between the compute platform 110 and the user requests 1 15 may be great, and therefore, responsiveness and user experience are diminished greatly.
  • aspects of the present invention distribute new resources closer to end-users which are requesting the resource.
  • additional virtualized instances are spun-up within servers that are physically near to the network equipment (i.e., web servers, switches, routers, load balancers) which are receiving the requests. Accordingly, by moving computational resources closer to the requesting users in cloud computing environments, the user experience is significantly enhanced.
  • Further aspects of the present invention include dynamically routing requests for applications to one of multiple cloud computing environments.
  • the method may dynamically route an application request to an application that is hosted in multiple clouds (deployed within a management application) based upon a specified criteria.
  • the routing of requests for the application to a specific cloud in which the application is deployed may be based upon a criteria(s) that the application owner specifies. This may provide the application owner an ability to positively affect quality of service (QoS) for application delivery, ensure uninterrupted access to the application in the event of failure by one or more clouds, and provide more efficient application performance.
  • QoS quality of service
  • FIG. 1 shows a system for implementing cloud computing.
  • FIG. 2 shows a system for implementing edge-based resource spin-up for cloud computing.
  • FIG. 3 shows a method of implementing edge-based resource spin-up for cloud computing.
  • FIGS. 4A-4D show systems for implementing edge-based resource spin-up for cloud computing.
  • FIGS. 5A-5D show methods of implementing dynamic route requests for multiple clouds.
  • FIGS. 6A and 6B show systems for implementing dynamic route requests for multiple clouds.
  • FIG. 7 shows an embodiment of a content distribution system.
  • FIG. 8 shows an embodiment of a computer system.
  • FIG. 2 shows a system for implementing edge-based resource spin-up for cloud computing, in accordance with one embodiment of the present invention.
  • edge-based resource spin-up includes carrying out computational activities within a cloud computing environment closer to the end user. As such, an increase in responsiveness as well as a more efficient use of resources is realized.
  • System 200 includes a data center 205a and 205b.
  • data centers 205 may be a facility used to house computer systems and associated components, such as telecommunications, networking systems, storage systems, etc. Furthermore, the data centers 205 may also be designated as points of presence (PoPs).
  • PoPs points of presence
  • the data centers 205a and 205b may include edge servers 210a and 210b, respectively. Further, edge servers 210a and 210b may include compute platforms 215a and 215b, respectively. It should be noted that one skilled in the art would conclude that any number of data centers, edge serves, and/or compute platforms may be included, and only two of each are shown for ease of explanation and illustration.
  • system 200 may include a load balancer 220 in communication with both data centers 205a and 205b, as well as user devices issuing user requests 225a and 225b.
  • a load balancer 220 in communication with both data centers 205a and 205b, as well as user devices issuing user requests 225a and 225b.
  • many user requests may be received, and proper allocation and division of cloud resources should be allocated to handle the requests.
  • many of the requests are time sensitive and latency sensitive (i.e., UI intensive applications, computation intensive applications, etc.), so ensuring fast response times to requests can be important.
  • the load balancer 220 is configured to determine the "fastest" responding edge server/compute platform to direct the request.
  • fastest response time means the edge server closest physically to the requesting user device.
  • fastest may mean the edge server with the lowest latency relative to the requesting device.
  • the closest and the lowest latency edge server may be the same server, but not always. For example, if the physically closest edge server is experiencing a heavy load of traffic and requests, the response time and/or network latency of the server may outweigh the physically close proximity to the requesting device.
  • the load balancer 220 is configured to ensure that the needed resources to respond to the user requests 225a and 225b are routed to the edge servers 210a and 201b which will provide the fastest response time for the request, which in many cases will be the edge server which is in the closest proximity to the requesting user device.
  • two groups of users make requests from two different geographical locations.
  • the load balancer 220 then receives the requests and, based on the location of the request, distributes the request to the data center 205a or 205b closest to the user
  • the request may be routed to the data center which will provide the faster response time).
  • a "localized cloud instance” which is a de-centralized cloud computing environment with resources spun-up as physically close to the requesting device as possible.
  • such localized resources may be synchronized around the network to ensure that requests come to one localized cluster are treated in the same manner as other requests. Then, based on the request load that is delivered to that "localized cloud instance," resources are spun-up in that locality based upon demand (i.e., subsequent user requests).
  • FIG. 3 shows a method 300 of implementing edge-based resource spin-up for cloud computing, in accordance with one embodiment of the present invention.
  • a request for data or a service may be received at an edge server from a user device.
  • the closest edge server to the requesting device may be determined by using an enhanced anycast methodology. Accordingly, the edge server which provides the fastest response time relative to the requesting user device is selected.
  • the request may be for an application, such as an enterprise application, a media application, etc.
  • the request may be for data, such a video file, a music file, a document, etc.
  • Each request may have associated information sent with the request which identifies the application and/or data used to service the request. The identification information may be embedded or attached to the request.
  • the edge server may extract the identification information. Then, based on the information, the edge server can identify the edge server.
  • the identification information may specifically identify the application by name or some other identifier, or alternatively the information may include an application type, etc.
  • the selected edge server may be in communication with one or more compute platforms, which may be co-located or remotely-located with the edge server.
  • each of the compute platforms may have one or more containers running which provide a virtual construct for allocating resources.
  • these containers may be a type of virtualized resource which is different from a virtualized instanced, such as elastic computing cloud (EC2).
  • EC2 elastic computing cloud
  • all of the edge- based compute platforms may include the "DNA" for running an application (e.g., an XML dataset that specifies instructions for each application to be run in a container), and the determination for being able to run the application based on the current levels of utilization. As such, the allocation of the compute platform becomes a predictive determination.
  • a compute platform is capable of running the application if the compute platform has sufficient unused resources, if the necessary application is loaded on the compute platform, etc.
  • an available compute platform (or on other words, a compute platform which has available resources) is identified. Accordingly, it may not matter if the application is not currently running, as the application can be spun up;
  • a container identified as running the application then a determination is made whether the container has sufficient resources to handle the increased load of the new request (decision block 325). If the container does not have sufficient resources to handle the increased load, then at process block 335, a container (or containers) may be spun-up to run the identified application.
  • the request is routed to the compute platform with the container already running the identified application.
  • the load is effectively balanced to the compute platform and container with available resources from the edge server with the closest physical proximity to the requesting device; thus, providing the most efficient user experience.
  • a user may click on a link/file that the user desires to purchase.
  • the file includes an associated cookie which is used to point the request to the MediaTag application.
  • the application makes a request of the cookie which has been stored on the user's machine by the website providing the music download; MediaTag then takes the cookie, explodes it, and carries out computational activity against the results.
  • the edge server then upon receiving the request interprets the tag and identifies a compute platform which is capable of spinning-up resources for the MediaTag application.
  • the determination may be based solely on geography—the closest POP with resources; there is sometimes a tradeoff between locality and capacity— as a system may chose to actually go to a more distant compute resource to carry out my request because the latency of serving the response is actually less than the latency caused in the local edge by the lack of capacity.
  • the compute platform spins-up a container running the MediaTag application.
  • the MediaTag application then creates a unique file based on the request (the file may include identification information, such as the username of the requester, the origination location, etc.). Again, alternatively, the choice may be based on both proximity and the current utilization level of that current proximal location; there is a tradeoff.
  • a response to the request is sent to the user (process block 345).
  • This entire process is implemented using the edge-based cloud computing solution of the present invention.
  • resources and servers are chosen based on their physical proximity to the requesting user device, thus increasing the efficiency and executing time of the MediaTag application.
  • the system 400 may include a user device 405.
  • the user device 405 may be a mobile device, a cellular device, a SmartPhone, a mobile computing platform, a user terminal, etc.
  • the user device 405 may be configured to send requests and access data, services, and applications. Further, the user device 405 may be in
  • system 400 communication with a cloud computing network as shown in system 400.
  • the user device 405 may be in communication with a point of presence (PoP) 410.
  • PoP 410 may be configured as an access point to the Internet 430, a physical location that houses servers, routers, ATM switches, digital/analog call aggregators, etc. Further, PoP 410 may be either part of the facilities of a telecommunications provider that the Internet service provider (ISP) rents or a location separate from the ISP.
  • ISP Internet service provider
  • PoPs are also located at Internet exchange points and collocation centers.
  • An edge server 415 may be located within PoP 410.
  • the edge server 415 may be operated by a cloud computing provider, or the like.
  • the edge server 415 may represent one of the cloud computing provider's closest connection points to the Internet 430.
  • the edge server 415 is uniquely qualified to provide the fastest and most efficient service to the user device 405, particularly with regard to spinning-up resources for use in a cloud computing environment.
  • the edge server 415 in communication with a compute platform 420, may direct the compute platform 420 to handle the requests.
  • edge server 415 may direct compute platform 420 to spin-up a container 420a to handle the incoming request.
  • spinning-up container 420a includes allocating and assigning the necessary resources and applications to handle the request. For example, if the request is for application 420b, then an instance of application 420b (e.g., MediaTag, video player, gaming application, etc.) will be initiated in container 420a.
  • application 420b e.g., MediaTag, video player, gaming application, etc.
  • the PoP 410 may be selected as being the "closest" PoP to the user device 405.
  • closest means the closest in physical proximity to the user device 405, which in turn provides the fastest response time to requests, thus enhancing the cloud computing experience.
  • such a cloud computing configuration as in system 400 can provide a more efficient use of resources.
  • the de-centralized model allows for resources to be spun-up in order to handle specific user requests.
  • system 400 (additionally, systems 401-403) provides a scalable solution, such that as additional requests are received by compute platform 420, the platform can direct additional containers to be spun-up to dynamically handle the increased load.
  • the containers allow for dynamically creating instances of the systems' operating system which has been "tuned" for a specific purpose. Therefore, the necessary resources are provided in response to the received requests, and the resources are provided at the closest location to the requesting device.
  • edge server 415 may be physically closer to user device 405, but edge server 415 may be heavily congested.
  • edge server X (which is physically further from user device 405) may have a better effective distance or latency, and may ultimately be selected to process the request, despite its distance from user device 405.
  • outages and other issues may be considered when determining which edge serve will actually (or effectively) provide the fastest response time and ultimately the most desirable user experience.
  • Such a cloud computing environment uniquely provides what a centralized cloud computing environment is unable to provide: scalability, efficiency, and faster response times.
  • configuration files may be used to determine the edge server and/or the compute platform to handle certain user requests. For example, a certain edge server may be closest to the user device 405, but because the edge server does not have access to the requested application or other resource, a further edge server may need to be used. Therefore, the configuration file may provide such designation and mappings, such that requests are routed to edge servers and compute platforms that are actually equipped to handle the request. Additionally, the configuration files may also provide an accounting of the physical as well as the virtual resources available to each edge server, which can assist in routing decisions by not overloading edge servers above their resource capability capacity, etc.
  • An additional advantage of edge-based cloud computing may be that requests are able to be routed using URLs.
  • URLs uniquely allow for information to be appended to the URL which can provide the necessary information to the edge server for more efficient routing and resource allocation.
  • URL-based routing enables a variety of systems (e.g., anything capable of dealing with HTTP) the ability to forward the request along. This makes for a very flexible application architecture and a distributed computing environment in that individual application components, all making URL (i.e., HTTP -based) requests, can be completed from different compute resources, not necessarily all the same resource— the resources used for these requests can be fanned out.
  • FIG. 4B shows an alternative embodiment of an edge-based cloud computing configuration.
  • system 401 may have the compute platform 420 co- located with edge server 415 at PoP 410.
  • multiple compute platforms 420a, 420b to 420n may be provided.
  • the additional compute platforms may provide the edge server with access to additional resources in order to handle additional requests.
  • the edge server 415 since the compute platforms 420a to 420n are co-located with the edge server 415 at the PoP 410, latency can be significantly reduced. Accordingly, computations for user requests are pushed even closer to the user device 405 originating the request. Accordiongly, the edge is "super-charged" with readily available compute resources to meet specific types of requests. In addition, new intelligence is added to the edge to better route request traffic (i.e., URLS) to other edge resources, different POPs, etc., depending upon performance and/or availability factors that reflect customer preferences.
  • URLS request traffic
  • each of the compute platforms 420a through 420n are capable of spinning-up multiple containers 422a through 422n.
  • each of the containers 422a through 422n can also provide instances of applications 423a through 423n.
  • each compute platform 420 can expand or shrink to effectively and efficiently accommodate an increase or decrease in user requests.
  • the dynamic nature of resource allocation coupled with the relative closeness in proximity to the user device 405 provide for an optimal user experience in a cloud computing environment.
  • FIG. 4C shows another embodiment of an edge-based cloud computing
  • System 402 shows an alternative configuration in which the compute platforms 420a through 420n are located at a compute server 435, which may be remotely located from the edge server 415 and PoP 410.
  • a compute server 435 which may be remotely located from the edge server 415 and PoP 410.
  • server space may be expensive within the PoP 410
  • the diminished response time (which is minimal) may be outweighed by the reduced cost of non-PoP space (in particular, if the same edge resources are being utilized for other purposes (i.e., streaming)).
  • the computational power at the edge server 415 can be significantly increased, and as such is able to handle an increased amount of requests; thus increasing the scalability and efficiency of the cloud computing
  • FIG. 4D shows a further embodiment of an edge-based cloud computing environment.
  • a router or the like
  • the router 412 may be configured to route requests from the PoP 410 to the edge server 415.
  • the edge server 415 can direct the requests to the appropriate compute platform 420 within the compute server 435.
  • the compute server 435 may be co-located with edge server 415, or alternatively the compute server 435 may be remotely-located from the edge server 415.
  • Further aspects of this invention include dynamically routing requests for applications to one of multiple cloud computing environments.
  • the method may dynamically route an application request to an application that is hosted in multiple clouds (deployed within a management application) based upon a specified criteria.
  • the routing of requests for the application to a specific cloud in which the application is deployed may be based upon a criteria(s) that the application owner specifies. This may provide the application owner an ability to positively affect quality of service (QoS) for application delivery, ensure uninterrupted access to the application in the event of failure by one or more clouds, and provide more efficient application performance.
  • QoS quality of service
  • One embodiment of the present invention may provide that a customer signs up for a "multi-cloud application deployment" which entails provisioning for a content delivery network (CDN) account (i.e., providing HTTP service or the like), as well as enabling the customer access to a portal (or other web-based UI) that allows the customer to specify the cloud-based locations of their applications, the URLs to those applications, the business rules the customer wants the applications to follow when shuttling requests to different clouds, etc.
  • CDN content delivery network
  • portal or other web-based UI
  • Each cloud that the customer specifies may require a unique hostname provided by the CDN.
  • method 500 may be executed.
  • a request may be received by the end user. This request may then be passed to the edge of the CDN via a CNAME or designated hostname provided by the CDN to the customer that configures their application URLs accordingly (process block 504).
  • the request may then be passed through a request analysis unit (or similar module) to gather metrics on the response provided by the application to which the request is being used. For example, a historical picture of specific cloud responses may be generated and developed.
  • a cloud control unit may then determine the cloud to which to direct the request.
  • the response from the cloud for the request is captured by a request analysis unit (or similar module) and the response is returned to the user (process block 512).
  • a historical picture of cloud responsiveness for the application is developed through the following two ways: 1) Actual data— the request analysis unit captures ongoing data about the responses from clouds to user requests and develops a histogram (or the like) to depict overall cloud responsiveness (which may be provided to the customer), or 2) Analytics— based upon the activities carried out in the actual data, the system develops an overall picture of cloud performance (by day, by time, by geographic request, etc.) using a systematic "pinging" of the cloud application over a period of time. Thus, the aggregation of these "pings" to the application may then be utilized to further shape the data picture of the overall responsiveness of a specific cloud.
  • aspects of the invention also provide customers with the ability to specify business rules that determine when and why a request should be routed to a specific cloud. These business rules may be dynamically adjusted within parameters (rather than, for example, hard and fast thresholds) based upon analysis provided by the data gathered from actual and analytics data.
  • customer cloud computing network routing preferences may be received.
  • the preferences may include cost, performance, applications provided, network conditions, outages, business relationships, peering relationships, proximity, etc.
  • the customer may prefer to optimize cloud usage to be most cost efficient as possible.
  • the least expensive cloud computing network may be selected for routing requests for this particular customer, even at the expense of performance.
  • cost may be secondary to providing the highest level of performance.
  • the determination of which of the cloud computing networks to route requests may be based in whole or in part on the customer's preferences.
  • an additional consideration may be driven by providing benefits to the network provider.
  • one or more cloud computing networks may be underutilized and so requests may be routed to the underutilized cloud computing networks in order to balance the load among the various clouds.
  • certain clouds may provide services and applications and, as such, requests may be directed to the clouds which align with the requested service or application.
  • the customers may also be able to provide weighting and/or ranking for each of the preferences (process block 522).
  • the customer may have preferences set for cost, performance, and quality of service, and each of these categories may have a weight associated with it.
  • performance may be, for example, weighted at a first value while cost may be weighted at a second (lower) value. Accordingly, when analyzing which cloud to route requests, the weights of each preferences may guide and direct the decision making process.
  • a cloud computing network routing table (or similar construction) may be generated (process block 524). Accordingly, in one embodiment, the routing table may be used to provide real-time routing changes and decisions for directing requests to the most optimal and favorable cloud computing networks.
  • the routing table may be dynamically updated as preferences and weighting change and in response to changes in the network conditions and performance.
  • the cloud and network conditions may be determined based in part on status requests (pinging, multicast, and the like) sent to each of the cloud computing networks (process block 526). As such, the status for each cloud computing network can be updated based on the response received form the status requests (process block 528).
  • process block 530 in addition to the performance updates, historical data for each cloud may be tracked, analyzed, and stored. Additionally, performance data may also be stored. Such information may be used in conjunction with the real-time status update information, preferences, and rankings to dynamically update the cloud computing network routing table (process block 532). Therefore, intelligent decision-making with regard to where to route each individual cloud-based application or service request can be realized.
  • a method 503 is illustrated in accordance with embodiments of the present invention.
  • a request for cloud-based applications or service may be received at the DNS level.
  • the request may be routed to an edge server or the like (process block 542).
  • the customer rules/policies may be applied to the incoming request (process block 544).
  • requests can be routed to a preferential cloud computing network.
  • the request is then routed to that cloud computing network (process block 546).
  • a response is received from the cloud computing network.
  • response time and other metrics may be collected and recorded for assisting in making future routing decisions.
  • the response may be routed back to the edge server and on to the requesting customer (process block 550).
  • FIG. 5D illustrates a method 505 in accordance with embodiments of the present invention.
  • a cloud-based application request may be received at the edge server.
  • the request may be analyzed with respect to the cloud computing network routing table and the policies associated with the customer originating the request (process block 562). Accordingly, based on the policies and cloud routing table, a cloud is determined to route the request (process block 564).
  • performance update and reports may be received regarding the request as well as the status of each cloud.
  • this information may be used to provide a centralized (or single) view for status and performance of each of the cloud computing networks. Accordingly, such a user interface may provide a dynamic view of each cloud's performance, status, applications, and service providers, etc. Accordingly, an administrator may be able to utilize such information to make routing decisions in real-time in order to provide the most optimal cloud-based application and service experience.
  • the routing table may also be updated (process block 568). As such, as subsequent requests are received by the edge server, these requests may be routed/re-routed to various clouds to reflect the changes to performance, cost, etc. of the clouds (process block 570). For example, a cloud based in India may have a higher latency for customers in New York than a cloud based in Atlanta. However, because of congestion (or other link conditions) the Indian cloud may be able to out-perform the Atlanta cloud despite the latency issues. As such, the routing table would be changed to reflect the change, and requests would be routed accordingly.
  • the routing table would be updated accordingly, and requests would then be routed back to the Atlanta-based cloud from the Indian-based cloud, and so forth.
  • System 600 may include a user device (or system) 605 in communication with a CDN 610 or PoP 410.
  • the user device 605 is configured to direct cloud-based application requests to the edge server 415 within the CDN 610 or PoP 410.
  • the edge server 415 may then direct the requests to a request analysis unit 615.
  • the request analysis unit 615 may be configured to determine the application or service associated with the request, the customer associated with the request, etc.
  • a cloud control unit 620 may access a business rule/policy database 625 to determine the business rules and/or policies associated with the originating customer or destination application associated with the request.
  • the customer preferences may be used to determine which cloud to route various requests. For example, a request from customer X for application Y may be routed differently for requests for application Z, and so forth.
  • the cloud control unit 620 may also access network performance conditions for each of the cloud computing networks 630a - 630n.
  • the cloud control unit 620 may utilize any combination of the request characteristics, the link performance conditions, customer preferences, business rules, policies, etc.
  • FIG. 7 a block diagram of an embodiment of a content distribution system 700 is shown in which a content originator 710 offloads delivery of content objects to a content delivery network (CDN).
  • the content originator 710 produces and/or distributes the content objects and may include one or more publishers 706 and content sites 708.
  • the CDN delivers the content objects over the Internet 704 to end users 722 via corresponding end user devices 720.
  • the CDN may include an origin server 712, a policy server 716, and various points of presence (PoPs) 718.
  • PoPs 718 can be deployed throughout content distribution system 700 and may serve content objects to end user devices 720 in a particular geographic area and/or in connection with a particular service provider.
  • a PoP 718 may be designated to serve content objects over Internet 704 to end users 722 in a particular city, on a particular access network, etc. to promote efficient delivery and a good user experience.
  • the various CDN elements may be connected by a private network such as WAN 714 and/or a public network such as Internet 704.
  • An end user 722 may browse for content objects at a content site 708 with its respective end user device 720.
  • a content object can be any computer- accessible content and may include audio data, video data, images, etc. in any number of computer-accessible formats.
  • the terms content and content object may be used
  • End user devices 720 can include personal computers, media players, handheld computers, Internet appliances, smart phones, personal digital assistants, streaming radios, or any other device that receives and processes content objects.
  • the content site 708 could be a web page from which content is accessible via a web browser.
  • Links to content at the content site 708 may point to locations in the content delivery network.
  • the request may be assigned to a PoP 718 which, in turn, can deliver the requested content object to the end user device 720. If the content object is not available at the assigned PoP location, the request may be propagated toward the core of the CDN and may ultimately be fulfilled from origin server 712. Content may be cached at various points between the core CDN and edge locations to improve efficiency.
  • Distribution of content objects often represents an important source of revenue for publishers 706.
  • content sites 708 may generate advertising revenue based on the number of times that a content object is viewed, clicked, or downloaded by end users 722.
  • publishers 706 may seek to reach as many end users 722 with their content as possible while providing a good overall user experience.
  • end user devices 720 can vary widely in their respective capabilities and the manner in which they interact with content objects. Different end user devices 720 may support different collections of multimedia formats and different delivery schemes. For example, beginning with OS version 3.0, the iPhoneTM from Apple, Inc. supports M3U8 playlists and MPEG-2 segmented video with iPhoneTM HTTP Streaming (IHS) delivery, entirely over HTTP (Hypertext Transfer Protocol). On the other hand, the Blackberry StormTM from Research in Motion, Ltd. supports playback of multimedia content in Third Generation Partnership Project (3GPP) format, over RTSP (Real-Time Streaming Protocol).
  • 3GPP Third Generation Partnership Project
  • the manner in which delivery of a content object is initiated may vary from device to device.
  • some end user devices 720 may need help orchestrating a browser-to-player (B2P) handoff for certain types of content objects.
  • B2P browser-to-player
  • the manner in which a content object is delivered may depend on the type of connection to Internet 704 available to the end user device 720 at a particular place and time.
  • the playback capabilities of the Blackberry StormTM may differ depending upon whether it is connected to the Internet 704 via a WIFI connection in a cybercafe, or via a cellular network in a remote location.
  • policy server 716 is coupled to content site 708 via Internet 704 and receives a notification when new content objects are available from publishers 706.
  • a publisher 706 may upload its content to an origin server 712 and policy server 716 may receive notifications via WAN 714 when a new content object becomes available.
  • policy server 716 may be located within PoPs 718, origin server 712, or other parts of the content delivery network. Also, it will be recognized that the various operations of policy server 716 may be carried out by multiple individual servers such as decisioning servers, merge servers, assembly servers, etc.
  • policy server 716 determines how it should be made available to end users.
  • the different versions of the content object may correspond to different production or encoding profiles maintained at policy server 716.
  • the production profiles may be based upon a publisher's requirements for the distribution of its content objects. For example, a publisher may prefer to distribute its content in a specific media format or formats, to exploit device- specific capabilities (such as IHS streaming for iPhones), to optimize separately for high bitrate and low bitrate environments, to target specific operating systems and/or platforms such as WindowsTM or Mac OS, etc.
  • Policy server 716 may associate the different versions of a content object with a single network identifier such as a uniform resource locator (URL).
  • the single network identifier can then be returned to the publisher 706 which created the content.
  • the publisher 706 can add the network identifier to one or more content sites 708 which are accessible to end users 722.
  • policy server 716 can determine a preferred version of the content object for the end user device 720 and can orchestrate its delivery to the requesting end user.
  • the preferred version and delivery method can be customized for hardware and software capabilities of the end user device 720, bandwidth and connection quality, viewing habits, user preferences, or any combination of factors.
  • the preferred version may also include a selection of advertisements which are matched to information about the end user device and/or the end user.
  • policy server 716 provides publishers 706 with a one-to-many approach to optimized content delivery. Specifically, a single network identifier can point to multiple versions of a given content object from which policy server 716 selects a preferred version for use with a particular end user device. Policy server 716 thus relieves publishers 706 of the burden of staying up-to-date with technology.
  • Policy server 716 determines the preferred version of a content object in a manner that is transparent to the end user and thus avoids complicated configuration, specialized software, or manual selection. The end user experience is further improved by selecting a delivery method and sending the preferred version of the content object from a PoP 718 location with a fast response time for the user's location, network access, etc.
  • FIG. 8 provides a schematic illustration of one embodiment of a computer system 800 that can perform the methods of the invention, as described herein. It should be noted that Fig. 8 is meant only to provide a generalized illustration of various components, any or all of which may be utilized as appropriate. Fig. 8, therefore, broadly illustrates how individual system elements may be implemented in a relatively separated or relatively more integrated manner.
  • the computer system 800 is shown comprising hardware elements that can be electrically coupled via a bus 805 (or may otherwise be in communication, as appropriate).
  • the hardware elements can include one or more processors 810, including without limitation, one or more general purpose processors and/or one or more special purpose processors (such as digital signal processing chips, graphics acceleration chips, and/or the like); one or more input devices 815, which can include without limitation a mouse, a keyboard and/or the like; and one or more output devices 820, which can include without limitation a display device, a printer and/or the like.
  • the computer system 800 may further include (and/or be in communication with) one or more storage devices 825, which can comprise, without limitation, local and/or network accessible storage and/or can include, without limitation, a disk drive, a drive array, an optical storage device, a solid state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash updateable and/or the like.
  • storage devices 825 can comprise, without limitation, local and/or network accessible storage and/or can include, without limitation, a disk drive, a drive array, an optical storage device, a solid state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash updateable and/or the like.
  • RAM random access memory
  • ROM read-only memory
  • the computer system 800 might also include a communications subsystem 830, which can include without limitation a modem, a network card (wireless or wired), an infrared communication device, a wireless communication device and/or chipset (such as a BluetoothTM device, an 802.1 1 device, a WiFi device, a WiMax device, cellular communication facilities, etc.), and/or the like.
  • the communications subsystem 830 may permit data to be exchanged with a network (such as the network described below, to name one example), and/or any other devices described herein.
  • the computer system 800 will further comprise a working memory 835, which can include a RAM or ROM device, as described above.
  • the computer system 800 also can comprise software elements, shown as being currently located within the working memory 835, including an operating system 840 and/or other code, such as one or more application programs 845, which may comprise computer programs of the invention, and/or may be designed to implement methods of the invention and/or configure systems of the invention, as described herein.
  • an operating system 840 and/or other code such as one or more application programs 845, which may comprise computer programs of the invention, and/or may be designed to implement methods of the invention and/or configure systems of the invention, as described herein.
  • one or more procedures described with respect to the method(s) discussed above might be implemented as code and/or instructions executable by a computer (and/or a processor within a computer).
  • a set of these instructions and/or codes might be stored on a computer-readable storage medium, such as the storage device(s) 825 described above. In some cases, the storage medium might be incorporated within a computer system, such as the system 800.
  • the storage medium might be separate from a computer system (i.e., a removable medium, such as a compact disc, etc.), and is provided in an installation package, such that the storage medium can be used to program a general purpose computer with the instructions/code stored thereon.
  • These instructions might take the form of executable code, which is executable by the computer system 800 and/or might take the form of source and/or installable code, which, upon compilation and/or installation on the computer system 800 (e.g., using any of a variety of generally available compilers, installation programs, compression/decompression utilities, etc.), then takes the form of executable code.
  • the computer or machine-readable medium may be non-transitory.
  • the invention employs a computer system (such as the computer system 800) to perform methods of the invention.
  • a computer system such as the computer system 800
  • some or all of the procedures of such methods are performed by the computer system 800 in response to processor 810 executing one or more sequences of one or more instructions (which might be incorporated into the operating system 840 and/or other code, such as an application program 845) contained in the working memory 835.
  • Such instructions may be read into the working memory 835 from another machine-readable medium, such as one or more of the storage device(s) 825.
  • execution of the sequences of instructions contained in the working memory 835 might cause the processor(s) 810 to perform one or more procedures of the methods described herein.
  • machine-readable medium and “computer readable medium,” as used herein, refer to any medium that participates in providing data that causes a machine to operate in a specific fashion.
  • various machine-readable media might be involved in providing instructions/code to processor(s) 810 for execution and/or might be used to store and/or carry such
  • a computer-readable medium is a physical and/or tangible storage medium. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
  • Non-volatile media includes, for example, optical or magnetic disks, such as the storage device(s) 825.
  • Volatile media includes, without limitation, dynamic memory, such as the working memory 835.
  • Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 805, as well as the various components of the communications subsystem 830 (and/or the media by which the communications subsystem 830 provides communication with other devices).
  • transmission media can also take the form of waves (including without limitation radio, acoustic and/or light waves, such as those generated during radio wave and infrared data communications).
  • wave including without limitation radio, acoustic and/or light waves, such as those generated during radio wave and infrared data communications.
  • Common forms of physical and/or tangible computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read instructions and/or code.
  • Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to the processor(s) 810 for execution.
  • the instructions may initially be carried on a magnetic disk and/or optical disc of a remote computer.
  • a remote computer might load the instructions into its dynamic memory and send the instructions as signals over a transmission medium to be received and/or executed by the computer system 800.
  • These signals which might be in the form of electromagnetic signals, acoustic signals, optical signals and/or the like, are all examples of carrier waves on which instructions can be encoded, in accordance with various embodiments of the invention.
  • the communications subsystem 830 (and/or components thereof) generally will receive the signals, and the bus 805 then might carry the signals (and/or the data, instructions, etc., carried by the signals) to the working memory 835, from which the processor(s) 810 retrieves and executes the instructions.
  • the instructions received by the working memory 835 may optionally be stored on a storage device 825 either before or after execution by the processor(s) 810.
  • the present invention may be embodied in other specific forms.
  • the partial object cache as previously described, can be associated with a plurality of versions of programming structures.
  • Those skilled in the art will recognize, or be able to ascertain using no more than routine experimentation, many equivalents to the specific embodiments of the invention described herein. Such equivalents are intended to be encompassed by the following claims.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

La présente invention, selon certains aspects, porte sur la distribution de nouvelles ressources plus près des utilisateurs finaux qui effectuent des demandes accrues en invoquant des instances virtualisées additionnelles (dans le cadre d'une mise en service de type nuage) à l'intérieur de serveurs qui sont physiquement à proximité de l'équipement de réseau (par exemple serveurs web, commutateurs, routeurs, équilibreurs de charge) qui reçoivent les demandes.
PCT/US2012/057148 2011-09-26 2012-09-25 Gestion de demande dynamique au moyen de capacités informatiques en nuage WO2013049079A2 (fr)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/245,582 US8849976B2 (en) 2011-09-26 2011-09-26 Dynamic route requests for multiple clouds
US13/245,601 US8244874B1 (en) 2011-09-26 2011-09-26 Edge-based resource spin-up for cloud computing
US13/245,582 2011-09-26
US13/245,601 2011-09-26

Publications (2)

Publication Number Publication Date
WO2013049079A2 true WO2013049079A2 (fr) 2013-04-04
WO2013049079A3 WO2013049079A3 (fr) 2013-05-30

Family

ID=47996708

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2012/057148 WO2013049079A2 (fr) 2011-09-26 2012-09-25 Gestion de demande dynamique au moyen de capacités informatiques en nuage

Country Status (1)

Country Link
WO (1) WO2013049079A2 (fr)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3023108A1 (fr) * 2014-06-30 2016-01-01 Orange Procede et dispositif d'orchestration de ressources
WO2016168029A1 (fr) * 2015-04-17 2016-10-20 Microsoft Technology Licensing, Llc Fourniture de services dans un système ayant un plan d'accélération matériel et un plan logiciel
US9792154B2 (en) 2015-04-17 2017-10-17 Microsoft Technology Licensing, Llc Data processing system having a hardware acceleration plane and a software plane
WO2018196775A1 (fr) * 2017-04-26 2018-11-01 贵州白山云科技有限公司 Procédé et appareil de traitement équilibré d'accès à un point d'accès sans fil soudain, support et dispositif
US10198294B2 (en) 2015-04-17 2019-02-05 Microsoft Licensing Technology, LLC Handling tenant requests in a system that uses hardware acceleration components
US10216555B2 (en) 2015-06-26 2019-02-26 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
US10270709B2 (en) 2015-06-26 2019-04-23 Microsoft Technology Licensing, Llc Allocating acceleration component functionality for supporting services
US10296392B2 (en) 2015-04-17 2019-05-21 Microsoft Technology Licensing, Llc Implementing a multi-component service using plural hardware acceleration components
US10511478B2 (en) 2015-04-17 2019-12-17 Microsoft Technology Licensing, Llc Changing between different roles at acceleration components
CN110688213A (zh) * 2018-07-05 2020-01-14 深圳先进技术研究院 一种基于边缘计算的资源管理方法、系统及电子设备
CN112492047A (zh) * 2020-12-11 2021-03-12 深圳职业技术学院 云计算调用优化方法、装置及电子设备
CN112839111A (zh) * 2015-09-11 2021-05-25 亚马逊科技公司 边缘位置处的可定制的事件触发计算的系统、方法和介质
CN112835691A (zh) * 2021-01-05 2021-05-25 华翔翔能科技股份有限公司 一种物联网通讯的边缘数据处理方法及系统
CN113726846A (zh) * 2021-07-14 2021-11-30 阿里巴巴新加坡控股有限公司 边缘云系统、资源调度方法、设备及存储介质
CN114095578A (zh) * 2020-08-03 2022-02-25 中国移动通信集团浙江有限公司 功能分发方法、统一调度平台、边缘节点及计算设备
EP4207711A1 (fr) * 2021-12-30 2023-07-05 Thales Système de dissémination de contenus dans une fédération de réseaux ; procédé de dissémination et produit programme d'ordinateur associés
US11895212B2 (en) 2015-09-11 2024-02-06 Amazon Technologies, Inc. Read-only data store replication to edge locations
US12069147B2 (en) 2015-09-11 2024-08-20 Amazon Technologies, Inc. Customizable event-triggered computation at edge locations

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155478B2 (en) * 2001-10-03 2006-12-26 International Business Machines Corporation Selectively handling data processing requests in a computer communications network
US20110119381A1 (en) * 2009-11-16 2011-05-19 Rene Glover Methods and apparatus to allocate resources associated with a distributive computing network
US20110145413A1 (en) * 2009-12-11 2011-06-16 International Business Machines Corporation Resource exchange management within a cloud computing environment
US20110166835A1 (en) * 2010-01-05 2011-07-07 International Business Machines Corporation Analyzing anticipated value and effort in using cloud computing to process a specified workload

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155478B2 (en) * 2001-10-03 2006-12-26 International Business Machines Corporation Selectively handling data processing requests in a computer communications network
US20110119381A1 (en) * 2009-11-16 2011-05-19 Rene Glover Methods and apparatus to allocate resources associated with a distributive computing network
US20110145413A1 (en) * 2009-12-11 2011-06-16 International Business Machines Corporation Resource exchange management within a cloud computing environment
US20110166835A1 (en) * 2010-01-05 2011-07-07 International Business Machines Corporation Analyzing anticipated value and effort in using cloud computing to process a specified workload

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11178062B2 (en) 2014-06-30 2021-11-16 Orange Orchestrating physical and virtual resources for delivering digital contents
WO2016001502A1 (fr) * 2014-06-30 2016-01-07 Orange Orchestration de ressources physiques et virtuelles pour la livraison de contenus numériques
FR3023108A1 (fr) * 2014-06-30 2016-01-01 Orange Procede et dispositif d'orchestration de ressources
US11099906B2 (en) 2015-04-17 2021-08-24 Microsoft Technology Licensing, Llc Handling tenant requests in a system that uses hardware acceleration components
CN107533481A (zh) * 2015-04-17 2018-01-02 微软技术许可有限责任公司 在具有硬件加速平面和软件平面的系统中提供服务
US9792154B2 (en) 2015-04-17 2017-10-17 Microsoft Technology Licensing, Llc Data processing system having a hardware acceleration plane and a software plane
US10198294B2 (en) 2015-04-17 2019-02-05 Microsoft Licensing Technology, LLC Handling tenant requests in a system that uses hardware acceleration components
US10296392B2 (en) 2015-04-17 2019-05-21 Microsoft Technology Licensing, Llc Implementing a multi-component service using plural hardware acceleration components
US10511478B2 (en) 2015-04-17 2019-12-17 Microsoft Technology Licensing, Llc Changing between different roles at acceleration components
US11010198B2 (en) 2015-04-17 2021-05-18 Microsoft Technology Licensing, Llc Data processing system having a hardware acceleration plane and a software plane
WO2016168029A1 (fr) * 2015-04-17 2016-10-20 Microsoft Technology Licensing, Llc Fourniture de services dans un système ayant un plan d'accélération matériel et un plan logiciel
US10216555B2 (en) 2015-06-26 2019-02-26 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
US10270709B2 (en) 2015-06-26 2019-04-23 Microsoft Technology Licensing, Llc Allocating acceleration component functionality for supporting services
US20190155669A1 (en) 2015-06-26 2019-05-23 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
US10819657B2 (en) 2015-06-26 2020-10-27 Microsoft Technology Licensing, Llc Allocating acceleration component functionality for supporting services
US10977104B2 (en) 2015-06-26 2021-04-13 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
US12069147B2 (en) 2015-09-11 2024-08-20 Amazon Technologies, Inc. Customizable event-triggered computation at edge locations
CN112839111A (zh) * 2015-09-11 2021-05-25 亚马逊科技公司 边缘位置处的可定制的事件触发计算的系统、方法和介质
CN112839111B (zh) * 2015-09-11 2024-02-02 亚马逊科技公司 边缘位置处的可定制的事件触发计算的系统、方法和介质
US11895212B2 (en) 2015-09-11 2024-02-06 Amazon Technologies, Inc. Read-only data store replication to edge locations
WO2018196775A1 (fr) * 2017-04-26 2018-11-01 贵州白山云科技有限公司 Procédé et appareil de traitement équilibré d'accès à un point d'accès sans fil soudain, support et dispositif
CN110688213A (zh) * 2018-07-05 2020-01-14 深圳先进技术研究院 一种基于边缘计算的资源管理方法、系统及电子设备
CN114095578B (zh) * 2020-08-03 2024-05-07 中国移动通信集团浙江有限公司 功能分发方法、统一调度平台、边缘节点及计算设备
CN114095578A (zh) * 2020-08-03 2022-02-25 中国移动通信集团浙江有限公司 功能分发方法、统一调度平台、边缘节点及计算设备
CN112492047A (zh) * 2020-12-11 2021-03-12 深圳职业技术学院 云计算调用优化方法、装置及电子设备
CN112835691A (zh) * 2021-01-05 2021-05-25 华翔翔能科技股份有限公司 一种物联网通讯的边缘数据处理方法及系统
CN113726846B (zh) * 2021-07-14 2024-03-05 阿里巴巴新加坡控股有限公司 边缘云系统、资源调度方法、设备及存储介质
CN113726846A (zh) * 2021-07-14 2021-11-30 阿里巴巴新加坡控股有限公司 边缘云系统、资源调度方法、设备及存储介质
FR3131674A1 (fr) * 2021-12-30 2023-07-07 Thales Système de dissémination de contenus dans une fédération de réseaux ; Procédé de dissémination et produit programme d'ordinateur associés
EP4207711A1 (fr) * 2021-12-30 2023-07-05 Thales Système de dissémination de contenus dans une fédération de réseaux ; procédé de dissémination et produit programme d'ordinateur associés

Also Published As

Publication number Publication date
WO2013049079A3 (fr) 2013-05-30

Similar Documents

Publication Publication Date Title
US8244874B1 (en) Edge-based resource spin-up for cloud computing
US8849976B2 (en) Dynamic route requests for multiple clouds
WO2013049079A2 (fr) Gestion de demande dynamique au moyen de capacités informatiques en nuage
US8745239B2 (en) Edge-based resource spin-up for cloud computing
US11863417B2 (en) Routing mode and point-of-presence selection service
US10673777B2 (en) Intent-based services orchestration
US10091096B1 (en) Routing mode and point-of-presence selection service
US10033627B1 (en) Routing mode and point-of-presence selection service
JP7037511B2 (ja) 基地局、アクセス要求の応答方法、装置及びシステム
US9634922B2 (en) Apparatus, system, and method for cloud-assisted routing
US11924650B2 (en) System, method and service product for content delivery
US10601698B2 (en) Techniques for managing telemetry data for content delivery and/or data transfer networks
US20150046591A1 (en) Dynamic edge server allocation
KR20150121713A (ko) 네트워크 노드 기능을 제공하기 위한 네트워크 노드들 사이의 할당 리소스
KR20110053906A (ko) Ims 네트워크를 통한 멀티미디어 서비스의 최적화를 위한 방법 및 시스템
Mukerjee et al. The impact of brokers on the future of content delivery
Ibn-Khedher et al. OPAC: An optimal placement algorithm for virtual CDN
US20140189092A1 (en) System and Method for Intelligent Data Center Positioning Mechanism in Cloud Computing
US9722851B1 (en) Optimized retrieval of network resources
KR102389334B1 (ko) 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템 및 방법
KR101613513B1 (ko) 네트워크 대역폭 및 cpu 이용률을 고려한 가상머신 배치 방법 및 시스템
CN106209952B (zh) 服务节点分配方法、装置、cdn管理服务器及系统
Meng et al. Elastic caching solutions for content dissemination services of ip-based internet technologies prospective
CN116076061A (zh) 边缘服务支持服务器和边缘服务支持服务器的操作方法
Cordeiro Edge caching with mobility prediction in virtualized LTE mobile networks Andre S. Gomes, Bruno Sousa, David Palma, Vitor Fonseca, Zhongliang Zhao, Edmundo Monteiro, Torsten Braun, Paulo Simoes

Legal Events

Date Code Title Description
122 Ep: pct application non-entry in european phase

Ref document number: 12834708

Country of ref document: EP

Kind code of ref document: A2