DE102022200313A1 - Client-gesteuertes cloud-netzwerkzugriffs-system und verfahren - Google Patents

Client-gesteuertes cloud-netzwerkzugriffs-system und verfahren Download PDF

Info

Publication number
DE102022200313A1
DE102022200313A1 DE102022200313.6A DE102022200313A DE102022200313A1 DE 102022200313 A1 DE102022200313 A1 DE 102022200313A1 DE 102022200313 A DE102022200313 A DE 102022200313A DE 102022200313 A1 DE102022200313 A1 DE 102022200313A1
Authority
DE
Germany
Prior art keywords
server
service
ihs
servers
application
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.)
Pending
Application number
DE102022200313.6A
Other languages
English (en)
Inventor
Farzad Khosrowpour
Mitchell Anthony MARKOW
Liam B. Quinn
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.)
Dell Products LP
Original Assignee
Dell Products LP
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 Dell Products LP filed Critical Dell Products LP
Publication of DE102022200313A1 publication Critical patent/DE102022200313A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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
    • 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
    • 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/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • 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/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • 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
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • 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/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • 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/10Protocols in which an application is distributed across nodes in the network
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Es werden Ausführungsformen von Systemen und Verfahren für ein client-gesteuertes Cloud-Netzwerkzugriffssystem und -verfahren beschrieben. In einer veranschaulichenden, nicht einschränkenden Ausführungsform kann ein IHS computerausführbare Anweisungen zum Empfangen einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation von einer Anwendung und Erzeugen eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind, umfassen. Das aggregierte Datenpaket wird dann an eine Vielzahl von Servern übertragen, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen. Jeder der Server erzeugt und sendet eine Antwort an das aggregierte Datenpaket, das ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann. Das IHS kann dann einen der Server gemäß dem angekündigten Leistungsniveau auswählen und mit dem ausgewählten Server kommunizieren, um die angeforderte Operation bereitzustellen.

Description

  • Feld
  • Die vorliegende Offenbarung betrifft allgemein Informationshandhabungssysteme (IHS) und insbesondere ein client-gesteuertes Cloud-Netzwerkzugriffssystem und -verfahren.
  • Hintergrund
  • Wenn der Wert und die Verwendung von Information weiter zunehmen, suchen Einzelpersonen und Unternehmen nach zusätzlichen Wegen, um sie zu verarbeiten und zu speichern. Eine Option, die Benutzern zur Verfügung steht, sind Informationshandhabungssysteme (IHS). Ein IHS verarbeitet, kompiliert, speichert und/oder kommuniziert im Allgemeinen Information oder Daten für geschäftliche, persönliche oder andere Zwecke, wodurch es Benutzern ermöglicht wird, den Wert der Information zu nutzen. Da Technologie- und Informationshandhabungsbedürfnisse und - anforderungen zwischen verschiedenen Benutzern oder Anwendungen variieren, können IHS auch variieren, was mit Information gehandhabt wird, wie die Information gehandhabt wird, wie viel Information verarbeitet, gespeichert oder kommuniziert wird und wie schnell und effizient die Information verarbeitet, gespeichert oder kommuniziert werden kann. Die Variationen in IHS ermöglichen es, dass IHS allgemein oder für einen spezifischen Benutzer oder eine spezifische Verwendung konfiguriert sind, wie etwa Finanztransaktionsverarbeitung, Fluglinienreservierungen, Unternehmensdatenspeicherung oder globale Kommunikation. Zusätzlich können IHS eine Vielzahl von Hardware- und Softwarekomponenten umfassen, die konfiguriert sein können, um Information zu verarbeiten, zu speichern und zu kommunizieren, und können ein oder mehrere Computersysteme, Datenspeichersysteme und Netzwerksysteme umfassen.
  • IHS kommunizieren häufig über Netzwerke, um Verarbeitungsaufgaben durchzuführen, die allgemein als Cloud-Dienste bezeichnet werden. Im Allgemeinen stellen Client-IHS Kommunikation über ein Netzwerk zu einem Server-IHS her, um viele Arten von Cloud-Diensten durchzuführen. Unterschiedliche Arten von Netzwerken unterstützen unterschiedliche Arten von Kommunikation mit unterschiedlichen Datenübertragungsraten. Beispiele für Netzwerke umfassen, sind aber nicht beschränkt auf, das Internet, das öffentliche Telefonnetz (PSTN) und die drahtlosen Funknetzwerke von Mobiltelefon-Telekommunikationsanbietern.
  • Mobilfunknetze der fünften Generation (5G) haben ihre Dienstbereiche in kleinere geografische Bereiche oder „Zellen“ unterteilt. Im Gegensatz zu ihren Vorgängern unterstützen 5G-Netzwerke Kommunikationen mit sehr großer Bandbreite von bis zu 10 Gigabit pro Sekunde, was zahlreiche neue Cloud-Dienste ergibt, die bereitgestellt werden können. 5G führt auch das Konzept des Slicing von Mobilfunknetzen ein. Insbesondere ermöglicht das Slicing von 5G-Netzwerken das Multiplexen von virtualisierten und unabhängigen logischen Netzwerken auf derselben physischen Netzwerkinfrastruktur. Jedes Netzwerk-Slice ist ein isoliertes Ende-zu-Ende-Netzwerk, das darauf zugeschnitten ist, verschiedene Quality-of-Service- oder „QoS“-Anforderungen zu erfüllen, die von einer gegebenen Zielanwendung angefordert werden, die auf dem Client-IHS ausgeführt wird.
  • Herkömmliche Netzwerke, wie 5G-Mobilfunknetze, haben bisher einen Top-Down-Ansatz (z. B. Stovepipe) verwendet, bei dem Leistungsparameter, die zum Kommunizieren mit Clients verwendet werden, von dem Cloud-Netzwerk auf diese Clients heruntergeschoben werden, ohne Berücksichtigung irgendwelcher besonderer Bedürfnisse von Anwendungen, die auf diesen Clients laufen. Das heißt, es gibt derzeit keine Laufzeitzustandsverwaltung zwischen nativen und entfernten Diensten, um die besten Einstellungen, Konfiguration und IO-Steuerung für verbesserte Leistung auf den Client-Vorrichtungen zu identifizieren. Aktuelle Technologie stellt bestenfalls statische Einstellungen bereit, die sich nicht leicht anpassen, um sich zu ändern, und Variationen von Arbeitslasten, die sich häufig während des Laufzeitverhaltens von Client-Anwendungen ändern. Es ist mit diesen Bedenken im Sinn, dass Ausführungsformen der vorliegenden Offenbarung hierin offenbart sind.
  • Zusammenfassung
  • Es werden Ausführungsformen von Systemen und Verfahren für ein client-gesteuertes Cloud-Netzwerkzugriffssystem und -verfahren beschrieben. In einer veranschaulichenden, nicht einschränkenden Ausführungsform kann ein IHS computerausführbare Anweisungen zum Empfangen einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation von einer Anwendung und Erzeugen eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind, umfassen. Das aggregierte Datenpaket wird dann an eine Vielzahl von Servern übertragen, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen. Jeder der Server erzeugt und sendet eine Antwort an das aggregierte Datenpaket, das ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann. Das IHS kann dann einen der Server gemäß dem angekündigten Leistungsniveau auswählen und mit dem ausgewählten Server kommunizieren, um die angeforderte Operation bereitzustellen.
  • Gemäß einer anderen Ausführungsform umfasst ein Verfahren das Empfangen einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation von einer Anwendung und das Erzeugen eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind, durch ein Client-IHS. Das Verfahren umfasst ferner das Übertragen des aggregierten Datenpakets durch das IHS an mehrere Server, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen. Jeder der Server erzeugt und sendet eine Antwort an das aggregierte Datenpaket, das ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann. Dementsprechend wählt das Verfahren dann durch das IHS einen der Server gemäß dem angekündigten Leistungsniveau aus und kommuniziert mit dem ausgewählten Server, um die angeforderte Operation bereitzustellen.
  • Gemäß noch einer anderen Ausführungsform beinhaltet eine Arbeitsspeichervorrichtung ausführbare Anweisungen zum Empfangen einer Anforderung zum Durchführen einer Operation von einer Anwendung, zum Erzeugen eines aggregierten Datenpakets und zum Übertragen des aggregierten Datenpakets an mehrere Server, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen. Das aggregierte Datenpaket beinhaltet die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind. Jeder der Server erzeugt und sendet eine Antwort an das aggregierte Datenpaket, das ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann. Das IHS kann dann einen der Server gemäß dem angekündigten Leistungsniveau auswählen und mit dem ausgewählten Server kommunizieren, um die angeforderte Operation bereitzustellen.
  • Figurenliste
  • Es wird/werden die vorliegende(n) Erfindung(en) beispielhaft veranschaulicht und ist/sind nicht durch die begleitenden Figuren beschränkt, in denen gleiche Bezugszeichen ähnliche Elemente angeben. Die Elemente in den Figuren werden der Einfachheit und Klarheit halber veranschaulicht und sind nicht notwendigerweise maßstabsgetreu gezeichnet.
    • 1 veranschaulicht ein beispielhaftes client-gesteuertes Cloud-Netzwerkzugriffssystem gemäß einer Ausführungsform der vorliegenden Offenbarung.
    • 2 ist ein Blockdiagramm, das beispielhafte Komponenten eines beispielhaften IHS veranschaulicht, das konfiguriert ist, um eine Kommunikationsverbindung mit einer drahtlosen Dockingstation gemäß einer Ausführungsform der vorliegenden Offenbarung zu verwalten.
    • 3 veranschaulicht mehrere Elemente von jedem von einem Client-IHS und einem Edge-Server, die implementiert werden können, um die verschiedenen Merkmale des client-gesteuerten Cloud-Netzwerkzugriffssystems 100 gemäß einer Ausführungsform der vorliegenden Offenbarung durchzuführen.
    • 4 veranschaulicht ein beispielhaftes Cloud-Dienstauswahlverfahren, das durch Elemente im System durchgeführt werden kann, um eine Verbindung zwischen einem Client-IHS und einem oder mehreren Edge-Servern bereitzustellen, die einen Dienst für das Client-IHS gemäß einer Ausführungsform der vorliegenden Offenbarung bereitstellen.
    • 5 veranschaulicht ein beispielhaftes Optimierungsverfahren, das darstellt, wie Client-IHS mit dem Edge-Server funktionieren kann, um eine End-zu-End- (E2E) Optimierung eines Diensts bereitzustellen, der der Anwendung bereitgestellt wird.
    • 6 veranschaulicht mehrere Elemente eines beispielhaften Cloud-Netzwerks, das verwendet werden kann, um eine Übergabeprozedur von einem Edge-Server zu einem anderen Edge-Server gemäß einer Ausführungsform der vorliegenden Offenbarung zu implementieren.
    • 7 veranschaulicht ein beispielhaftes Übergabeverfahren, das durch das client-gesteuerte Cloud-Netzwerkzugriffssystem gemäß einer Ausführungsform der vorliegenden Offenbarung durchgeführt werden kann.
  • Ausführliche Beschreibung
  • Die Ausführungsformen der vorliegenden Offenbarung stellen ein client-gesteuertes Cloud-Netzwerkzugriffssystem und -verfahren bereit, das es Anwendungen, die auf Client-IHS ausgeführt werden, ermöglicht, einen Dienst aus mehreren Diensten auszuwählen, die optimal zu ihren speziellen Bedürfnissen passen (z. B. Quality of Service (QoS), Durchsatz (Bandbreite), Latenzanforderungen, Zuverlässigkeit). Die Auswahl eines speziellen Diensts wird durch einen Bietungsprozess bereitgestellt, in dem ein Client-IHS eine Anforderung zum Bereitstellen einer Operation an mehrere Server überträgt, die jeweils einen Kandidatendienst besitzen, der durch das Client-IHS verwendet werden soll. Im Gegenzug schätzt jeder Server ein Leistungsniveau, das sein Dienst für das Client-IHS bereitstellen kann, so dass das Client-IHS einen Server auswählen kann, der die speziellen Bedürfnisse der Anwendung, die auf dem Client-IHS läuft, optimal bereitstellt. Zusätzlich kann eine kooperative Machine-Learning- (ML-) Technik sowohl durch Client-IHS als auch Server durchgeführt werden, um die Leistung sowohl der Anwendung als auch des Diensts zu optimieren. Diese Optimierung der Anwendung und des Diensts, die durch die Anwendung verwendet werden, bildet eine Affinität zwischen der Anwendung und dem ausgewählten Dienst, so dass, wenn Ensueing-Anforderungen für den Dienst durch das Client-IHS ausgegeben werden, die Affinität zwischen dem ausgewählten Dienst und der Anwendung dem Server ermöglichen kann, bessere geschätzte Leistungsniveaus als andere Server-IHS im Cloud-Netzwerk anzukündigen.
  • Derzeit gibt es keine Laufzeitzustandsverwaltung zwischen Client-IHS (nativen Vorrichtungen) und Servern (entfernten Vorrichtungen), um Client-IHS über die besten Einstellungen, Konfiguration und I/O-Steuerung für verbesserte Leistung zu informieren. Aktuelle Technologie stellt bestenfalls statische Einstellungen bereit, die sich in vielen Fällen nicht an Änderungen und Variationen von Arbeitslasten und Systemen anpassen, die diese Arbeitslasten bereitstellen. Client-IHS können entfernte Manager-Agenten aufweisen, die ihre Operation gemäß Konnektivität und Cloud-Protokollen anpassen, aber diese entfernten Manager-Agenten besitzen keine Intelligenz über bestimmte Anforderungen von Anwendungen, die die Cloud-Dienste verwenden, wie etwa Verhinderung von potentiellen Sicherheitsverletzungen, die dadurch entstehen können.
  • Bei der Entstehung von 5G-Konnektivität, die mit differenzierten Merkmalen bereitgestellt wird, wie etwa niedriger Latenz, erhöhtem Durchsatz (z. B. Bandbreite) und Netzwerkkapazität, können die Einschränkungen der heutigen Netzwerkkonnektivität erheblich reduziert werden. Diese verbesserten Netzwerkmerkmale ermöglichen Änderungen in der Fähigkeit, Teile der nativen Client-Berechnung, Speicherung und Orchestrierung über verbesserte Dienste zum Cloud-Netzwerk zu bewegen, ohne die Benutzererfahrung zu beeinträchtigen. Angesichts dieser verbesserten Dienste können Client-IHS nun mit einem relativ hohen Grad an Verfügbarkeit und Zuverlässigkeit arbeiten, um verbesserte Leistung für verschiedene Arbeitslasten und Anwendungen bereitzustellen.
  • 1 veranschaulicht ein beispielhaftes client-gesteuertes Cloud-Netzwerkzugriffssystem 100 gemäß einer Ausführungsform der vorliegenden Offenbarung. System 100 beinhaltet ein Client-IHS 102 in Kommunikation mit einem Cloud-Netzwerk 104, das in diesem besonderen Beispiel ein Mobilfunknetz der fünften Generation (5G) ist. Cloud-Netzwerk 104 beinhaltet mehrere Edge-Server 106, die jeweils konfiguriert sind, einen besonderen Dienst 108 für eine Anwendung 110 bereitzustellen, die auf Client-IHS 102 ausgeführt wird. Wie nachstehend ausführlich beschrieben wird, beinhaltet Client-IHS 102 ausführbare Logik oder Anweisungen, die auf Anforderung von Anwendung 110 ein aggregiertes Datenpaket erzeugen, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten beinhaltet, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind, und das aggregierte Datenpaket an jeden verfügbaren Edge-Server 106 im Cloud-Netzwerk 104 übertragen. Als Reaktion erzeugt jeder verfügbare Edge-Server 106 eine Antwort, die ein angekündigtes Leistungsniveau beinhaltet, das zurück an Client-IHS 102 übertragen wird. Angesichts des angekündigten Leistungsniveaus, das von jedem Edge-Server 106 erhalten wird, kann Client-IHS 102 einen Edge-Server auswählen, um den Dienst 108 für die Anwendung 110 bereitzustellen.
  • Durch Ermöglichen, dass Client-IHS 102 einen aus mehreren Edge-Servern 106 auswählt, um den Dienst bereitzustellen, kann Client-IHS 102 befähigt werden, einen Dienst auszuwählen, der die Bedürfnisse der Anwendung 110 optimal erfüllt. Da das Cloud-Netzwerk 104, wie etwa das 5G-Netzwerk, softwaredefiniert ist, können gewünschte Merkmale und Profile des Netzwerks auf Grundlage von Arbeitslastarten, - profilen, -einstellungen und dergleichen angepasst werden. Zusätzlich kann, da das 5G-Slicing auf das Client-IHS 102 erweitert werden kann, es Intelligenz bereitstellen, um spezifische Arbeitslasten einem von vielen Slices über demselben Netzwerk zuzuweisen, um die von der Anwendung 110 spezifizierten Anforderungen (z. B. QoS) zu erfüllen.
  • Unter Verwendung von 5G-Mobilfunktechnologien wurden Edge-Server 106 an oder in der Nähe von Basisstationen eingesetzt, um niedrigere Latenz und höhere Bandbreite bereitzustellen, indem Kommunikation über das Netzwerk zu Anwendungsservern eliminiert oder reduziert wird. Somit können bestimmte Edge-Server 106 in der Lage sein, bessere Leistung als ihre anderen Edge-Server-Gegenstücke bereitzustellen. Ausführungsformen der vorliegenden Offenbarung nutzen diese Fähigkeit, indem sie Client-IHS 102 befähigen, einen Edge-Server 106 auszuwählen, um den gewünschten Dienst bereitzustellen. Zusätzlich kann eine iterative ML-Technik sowohl durch Client-IHS 102 als auch Edge-Server 106 durchgeführt werden, um die Leistung sowohl der Anwendung 110 als auch des Diensts 108 zu optimieren, die durch Edge-Server 106 bereitgestellt wird, wodurch eine Affinität zwischen der Anwendung 110 und dem ausgewählten Dienst 108 entsteht, so dass, wenn eine Anforderung für den Dienst 108 in der Zukunft durch das Client-IHS 102 ausgegeben wird, die Affinität zwischen dem ausgewählten Dienst 108 und der Anwendung 110 dem Edge-Server 106 ermöglichen kann, bessere geschätzte Leistungsniveaus als andere Server im Cloud-Netzwerk 104 anzukündigen.
  • Wie hierin verwendet, kann ein Edge-Server 106 eine beliebige elektronische Vorrichtung sein, die in der Lage ist, mit anderen elektronischen oder logischen Elementen über das Cloud-Netzwerk 104 zu interagieren oder zu kommunizieren. Beispiele für einen solchen Edge-Server können einen Router, ein Modem, ein Netzwerk-Gateway, einen Verbrauchermedienserver, eine Set-Top-Box, einen Medienrekorder, eine Firewall und dergleichen beinhalten. In einer Ausführungsform kann der Edge-Server 106 in unmittelbarer Nähe zu einer Basisstation oder einem Funkzugangsnetz (RAN) konfiguriert sein, um drahtlos mit dem Client-IHS 102 zu kommunizieren.
  • Obwohl gezeigt ist, dass jeder Edge-Server 106 einen einzelnen Dienst 108 ausführt, versteht es sich, dass jeder Edge-Server 106 mehrere Dienste 108 für Anwendung 110 ausführen kann, die auf Client-IHS 102 ausgeführt wird. In einer Ausführungsform können ein oder mehrere Edge-Server 106 in einer Zone (z. B. Amazon Web Services (AWS)™ konfiguriert sein, in der jeder Edge-Server 106 mehrere Dienste 108 (z. B. Amazon Elastic Compute Cloud (EC2)™ Instanzen als virtuelle private Cloud (VPC) für Client-IHS 102 ausführt. Angesichts einer solchen Architektur können bestimmte Dienste 108, die durch den VPC bereitgestellt werden, über mehrere Edge-Server 106 verteilt sein, sodass Client-IHS 102 einen oder mehrere Dienste 108 (z. B. Amazon EC2-Instanzen) aus einem beliebigen oder einer Gruppe von Edge-Servern 106 auswählen kann. Zusätzlich kann jeder Edge-Server 106 konfiguriert sein, mehrere Dienste 108 gemäß den Anforderungen der Anwendung 110 auszuführen. Eine solche Architektur kann ermöglichen, dass der VPC skalierbar ist, um die Verarbeitungsanforderungen für die Anwendung 110 zu erfüllen. Das heißt, wenn die Anwendungsbedürfnisse zunehmen, können mehr Dienste 108 (EC2-Instanzen) instanziiert werden und umgekehrt; wenn die Anwendungsbedürfnisse abnehmen, können bestimmte Dienste 108 (EC2-Instanz) gelöscht werden, um die Verarbeitungslast auf ihrem jeweiligen Edge-Server 106 zu reduzieren. Ausführungsformen der vorliegenden Offenbarung können sich auf diese Architektur ausdehnen, indem sie ermöglichen, dass die Anwendung 110 auswählt, welche Dienste 108 von jedem Edge-Server 106 verwendet werden, sodass die Anwendung 110 die Dienste 108, die vom VPC bereitgestellt werden, optimal nutzt.
  • Arten von Diensten, die vom Edge-Server 106 bereitgestellt werden können, beinhalten Multimedia-(Sprach-, Video-)Kommunikationen, Ultra-High-Definition-(UHD-)Video, Spieledienste, Dienste, die „Internet der Dinge“-(IOT-)Vorrichtungen bereitgestellt werden, selbstfahrende Autodienste, Industrieautomatisierung und dergleichen. Jeder dieser Dienste erfordert unterschiedliche Kommunikationsleistungsparameter, um ordnungsgemäß zu funktionieren. Zum Beispiel erfordert das Betrachten von Ultra-High-Definition-(UHD-)Video oder 3D-Video massive Bandbreite mit einigen Zuverlässigkeits- und Latenzanforderungen, während IOT-Vorrichtungen, die durch interagierende Sensoren veranschaulicht werden, die eine schwankende Anzahl von Nachrichten, Maschineninteraktionen und automatisierten Aktionen auslösen, hohe Zuverlässigkeit erfordern können. Außerdem wird erwartet, dass selbstfahrende Autos besonders auf schnelle und zuverlässige Nachrichtenübermittlung angewiesen sind. Andere Dienste können Industrieautomatisierung beinhalten, die als Kommunikationen betrachtet werden kann, die missionskritischen IOT ähnlich sind, aber mit entspannteren Zeit- und Zuverlässigkeitsanforderungen mit höheren Datenanforderungen, möglicherweise zum Verbinden mit Menschen. Multi-Media-(Sprach-, Video-)Kommunikationen, Spiele und UHD/3D-Video können Kommunikation zu oder mit einem Menschen beinhalten und haben daher sicherlich Latenz-/Zuverlässigkeitsanforderungen, die größtenteils auf die Abhängigkeit des Individuums von Feedback zurückzuführen sind. Spiele unterscheiden sich etwas darin, dass sie mehr Datenbandbreite als Sprach-/Videokommunikationen benötigen, aber ähnliche Latenz-/Zuverlässigkeitsanforderungen haben. Zusätzlich erfordert UHD/3D-Videobetrachtung ein relativ hohes Maß an Bandbreite, während das Zwischenspeichern an oder in der Nähe der Anzeigevorrichtung typischerweise zu entspannten Latenz- und Zuverlässigkeitsanforderungen führt. Somit ist ersichtlich, dass Dienste, die durch die 5G-Netzwerktopologie bereitgestellt werden, in einem relativ großen Maße variieren können, sodass Anwendungen, die solche Dienste verwenden, die Gesamtleistungsverbesserungen, die durch die neuen 5G-Netzwerke bereitgestellt werden können, vollständig realisieren können.
  • 2 ist ein Blockdiagramm, das Komponenten eines beispielhaften IHS 202 veranschaulicht, das konfiguriert ist, um eine Kommunikationsverbindung mit einer drahtlosen Dockingstation gemäß einer Ausführungsform der vorliegenden Offenbarung zu verwalten. Bestimmte Komponenten des IHS 202 können mindestens einen Abschnitt des Client-IHS 202 oder des Server-IHS 106 umfassen, die vorstehend unter Bezugnahme auf 1 beschrieben sind.
  • Wie gezeigt, beinhaltet das IHS 202 einen oder mehrere Prozessoren 201, wie etwa eine Zentraleinheit (CPU), die Code ausführen, der aus dem Systemarbeitsspeicher 205 abgerufen wird. Obwohl das IHS 202 mit einem einzelnen Prozessor 201 veranschaulicht ist, können andere Ausführungsformen zwei oder mehr Prozessoren beinhalten, die jeweils identisch konfiguriert sein können, oder um spezialisierte Verarbeitungsvorgänge bereitzustellen. Prozessor 201 kann einen beliebigen Prozessor beinhalten, der in der Lage ist, Programmanweisungen auszuführen, wie etwa einen Prozessor der Intel Pentium™-Serie oder beliebige Allzweck- oder eingebettete Prozessoren, die eine beliebige einer Vielzahl von Befehlssatzarchitekturen (Instruction Set Architectures, ISAs) implementieren, wie etwa die x86-, POWERPC®-, ARM®-, SPARC®- oder MIPS®-ISAs oder eine beliebige andere geeignete ISA.
  • In der Ausführungsform aus 2 beinhaltet der Prozessor 201 eine integrierte Arbeitsspeichersteuerung 218, die direkt innerhalb der Schaltungsanordnung des Prozessors 201 implementiert sein kann, oder die Arbeitsspeichersteuerung 218 kann eine separate integrierte Schaltung sein, die sich auf demselben Die wie der Prozessor 201 befindet. Arbeitsspeichersteuerung 218 kann konfiguriert sein, die Übertragung von Daten zu und vom Systemarbeitsspeicher 205 von IHS 202 über Hochgeschwindigkeitsarbeitsspeicherschnittstelle 204 zu verwalten. Systemarbeitsspeicher 205, der mit dem Prozessor 201 gekoppelt ist, stellt dem Prozessor 201 einen Hochgeschwindigkeitsarbeitsspeicher bereit, der bei der Ausführung von Computerprogrammanweisungen durch den Prozessor 201 verwendet werden kann.
  • Dementsprechend kann Systemarbeitsspeicher 205 Arbeitsspeicherkomponenten beinhalten, wie etwa statischen RAM (SRAM), dynamischen RAM (DRAM) und/oder NAND-Flash-Arbeitsspeicher, die zum Unterstützen von Hochgeschwindigkeitsarbeitsspeicheroperationen durch den Prozessor 201 geeignet sind. In bestimmten Ausführungsformen kann Systemarbeitsspeicher 205 sowohl dauerhaften, nichtflüchtigen Arbeitsspeicher als auch flüchtigen Arbeitsspeicher kombinieren. In bestimmten Ausführungsformen kann Systemarbeitsspeicher 205 mehrere entfernbare Arbeitsspeichermodule beinhalten.
  • IHS 202 verwendet Chipsatz 203, der eine oder mehrere integrierte Schaltungen beinhalten kann, die mit dem Prozessor 201 verbunden sind. In der Ausführungsform aus 2 ist Prozessor 201 als eine Komponente von Chipsatz 203 dargestellt. In anderen Ausführungsformen kann der gesamte Chipsatz 203 oder können Abschnitte von Chipsatz 203 direkt innerhalb der integrierten Schaltungsanordnung des Prozessors 201 implementiert sein. Chipsatz 203 stellt Prozessor(en) 201 mit Zugriff auf eine Vielzahl von Ressourcen bereit, auf die über Bus 202 zugegriffen werden kann. In IHS 202 ist Bus 202 als ein einzelnes Element veranschaulicht. Verschiedene Ausführungsformen können eine beliebige Anzahl von separaten Bussen verwenden, um die veranschaulichten Pfade bereitzustellen, die durch Bus 202 bedient werden.
  • In verschiedenen Ausführungsformen kann IHS 202 einen oder mehrere E/A-Ports 216 beinhalten, die entfernbare Kopplungen mit verschiedenen Arten von externen Vorrichtungen und Systemen unterstützen können, beinhaltend entfernbare Kopplungen mit peripheren Vorrichtungen, die für den Betrieb durch einen bestimmten Benutzer von IHS 202 konfiguriert sein können. Zum Beispiel können E/A-Ports 216 USB-(Universal Serial Bus)-Ports beinhalten, durch die eine Vielzahl von externen Vorrichtungen mit IHS 202 gekoppelt sein können. Zusätzlich zu oder anstelle von USB-Ports können E/A-Ports 216 verschiedene Arten von physischen E/A-Ports beinhalten, auf die ein Benutzer über das Gehäuse des IHS 202 zugreifen kann.
  • In bestimmten Ausführungsformen kann Chipsatz 203 zusätzlich eine oder mehrere E/A-Steuerungen 210 verwenden, die jeweils den Betrieb von Hardwarekomponenten unterstützen können, wie etwa Benutzer-E/A-Vorrichtungen 211, die periphere Komponenten beinhalten können, die physisch mit E/A-Port 216 gekoppelt sind, und/oder periphere Komponenten, die drahtlos mit IHS 202 über Netzwerkschnittstelle 209 gekoppelt sind. In verschiedenen Implementierungen kann E/A-Steuerung 210 den Betrieb einer oder mehrerer Benutzer-E/A-Vorrichtungen 211 unterstützen, wie etwa einer Tastatur, Maus, einem Touchpad, einem Touchscreen, einem Mikrofon, Lautsprechern, einer Kamera und anderen Eingabe- und Ausgabevorrichtungen, die mit IHS 202 gekoppelt sein können. Benutzer-E/A-Vorrichtungen 211 können über drahtgebundene oder drahtlose Kopplungen, die von IHS 202 unterstützt werden, mit einer E/A-Steuerung 210 eine Schnittstelle bilden. In einigen Fällen können E/A-Steuerungen 210 einen konfigurierbaren Betrieb von unterstützten peripheren Vorrichtungen unterstützen, wie etwa Benutzer-E/A-Vorrichtungen 211.
  • Wie veranschaulicht, können eine Vielzahl von zusätzlichen Ressourcen über den Chipsatz 203 mit dem/den Prozessor(en) 201 des IHS 202 gekoppelt sein. Zum Beispiel kann Chipsatz 203 mit Netzwerkschnittstelle 209 gekoppelt sein, die unterschiedliche Arten von Netzwerkkonnektivität unterstützen kann. IHS 202 kann auch eine oder mehrere Netzwerkschnittstellensteuerungen (Network Interface Controllers, NICs) 222 und 223 umfassen, von denen jede die Hardware implementieren kann, die zum Kommunizieren über eine spezifische Netzwerktechnologie erforderlich ist, wie etwa Wi-Fi, BLUETOOTH, Ethernet und mobile Mobilfunknetze (z. B. CDMA, TDMA, LTE). Netzwerkschnittstelle 209 kann Netzwerkverbindungen durch drahtgebundene Netzwerksteuerungen 222 und drahtlose Netzwerksteuerungen 223 unterstützen. Jede Netzwerksteuerung 222 und 223 kann über verschiedene Busse mit Chipsatz 203 gekoppelt sein, um unterschiedliche Arten von Netzwerkkonnektivität zu unterstützen, wie etwa die Netzwerkkonnektivität, die durch IHS 202 verwendet wird.
  • Chipsatz 203 kann auch Zugriff auf eine oder mehrere Anzeigevorrichtung(en) 208 und 213 über Grafikprozessor 207 bereitstellen. Grafikprozessor 207 kann innerhalb einer Videokarte, Grafikkarte oder innerhalb einer eingebetteten Steuerung, die innerhalb von IHS 202 installiert ist, beinhaltet sein. Zusätzlich oder alternativ kann Grafikprozessor 207 innerhalb von Prozessor 201 integriert sein, wie etwa eine Komponente eines Systemon-Chip (SoC). Grafikprozessor 207 kann Anzeigeinformation erzeugen und die erzeugte Information an eine oder mehrere Anzeigevorrichtung(en) 208 und 213 bereitstellen, die mit IHS 202 gekoppelt sind.
  • Eine oder mehrere Anzeigevorrichtungen 208 und 213, die mit IHS 202 gekoppelt sind, können LCD, LED, OLED oder andere Anzeigetechnologien verwenden. Jede Anzeigevorrichtung 208 und 213 kann in der Lage sein, Berührungseingaben zu empfangen, wie etwa über eine Berührungssteuerung, die eine eingebettete Komponente der Anzeigevorrichtung 208 und 213 oder Grafikprozessor 207 sein kann, oder sie kann eine separate Komponente von IHS 202 sein, auf die über Bus 202 zugegriffen wird. In einigen Fällen kann Leistung an Grafikprozessor 207, integrierte Anzeigevorrichtung 208 und/oder externe Anzeigevorrichtung 213 ausgeschaltet oder konfiguriert sein, um bei minimalen Leistungsniveaus zu arbeiten, als Reaktion darauf, dass IHS 202 in einen Niedrigleistungszustand (z. B. Standby) eintritt.
  • Wie veranschaulicht, kann IHS 202 eine integrierte Anzeigevorrichtung 208 unterstützen, wie etwa eine Anzeige, die in einen Laptop, ein Tablet, eine 2-in-1-konvertierbare Vorrichtung oder eine mobile Vorrichtung integriert ist. IHS 202 kann auch die Verwendung einer oder mehrerer externer Anzeigevorrichtungen 213 unterstützen, wie etwa externer Monitore, die mit IHS 202 über verschiedene Arten von Kopplungen gekoppelt sein können, wie etwa durch Verbinden eines Kabels von der externen Anzeigevorrichtung 213 mit dem externen E/A-Port 216 des IHS 202. In bestimmten Szenarien kann der Betrieb von integrierten Anzeigen 208 und externen Anzeigen 213 für einen bestimmten Benutzer konfiguriert sein. Zum Beispiel kann ein bestimmter Benutzer spezifische Helligkeitseinstellungen bevorzugen, die die Anzeigehelligkeit basierend auf der Tageszeit und Umgebungslichtbedingungen variieren können.
  • Chipsatz 203 stellt Prozessor 201 auch Zugriff auf eine oder mehrere Speichervorrichtungen 219 bereit. In verschiedenen Ausführungsformen kann Speichervorrichtung 219 in IHS 202 integriert sein oder kann extern zu IHS 202 sein. In bestimmten Ausführungsformen kann auf Speichervorrichtung 219 über eine Speichersteuerung zugegriffen werden, die eine integrierte Komponente der Speichervorrichtung sein kann. Speichervorrichtung 219 kann unter Verwendung einer beliebigen Arbeitsspeichertechnologie implementiert werden, die es IHS 202 ermöglicht, Daten zu speichern und abzurufen. Zum Beispiel kann Speichervorrichtung 219 ein magnetisches Festplattenlaufwerk oder ein Festkörperspeicherlaufwerk sein. In bestimmten Ausführungsformen kann Speichervorrichtung 219 ein System von Speichervorrichtungen sein, wie etwa ein Cloud-System oder Unternehmensdatenverwaltungssystem, auf das über Netzwerkschnittstelle 209 zugegriffen werden kann.
  • Wie veranschaulicht, beinhaltet IHS 202 auch Basic Input/Output System (BIOS) 217, das in einem nichtflüchtigen Arbeitsspeicher gespeichert sein kann, auf den Chipsatz 203 über Bus 202 zugegriffen werden kann. Beim Einschalten oder Neustarten von IHS 202 können Prozessor(en) 201 BIOS 217-Anweisungen verwenden, um Hardwarekomponenten zu initialisieren und zu testen, die mit dem IHS 202 gekoppelt sind. BIOS 217-Anweisungen können auch ein Betriebssystem (OS) (z. B. WINDOWS, MACOS, iOS, ANDROID, LINUX usw.) zur Verwendung durch IHS 202 laden.
  • BIOS 217 stellt eine Abstraktionsschicht bereit, die es dem Betriebssystem ermöglicht, sich mit den Hardwarekomponenten des IHS 202 zu verbinden. Die Unified Extensible Firmware Interface (UEFI) wurde als Nachfolger von BIOS konzipiert. Infolgedessen verwenden viele moderne IHS UEFI zusätzlich zu oder anstelle eines BIOS. Wie hierin verwendet, soll BIOS auch UEFI umfassen.
  • Wie veranschaulicht, können bestimmte Ausführungsformen von IHS 202 den Sensor-Hub 214 verwenden, der in der Lage ist, Daten von einer Vielzahl von Sensoren abzutasten und/oder zu sammeln. Zum Beispiel kann der Sensor-Hub 214 Hardwareressourcensensor(en) 212 verwenden, die elektrische Strom- oder Spannungssensoren beinhalten können, die in der Lage sind, den Stromverbrauch verschiedener Komponenten von IHS 202 (z. B. CPU 201, GPU 207, Systemarbeitsspeicher 205 usw.) zu bestimmen. In bestimmten Ausführungsformen kann der Sensor-Hub 214 auch Fähigkeiten zum Bestimmen eines Standorts und einer Bewegung von IHS 202 auf Grundlage von Triangulation von Netzwerksignalinformation und/oder auf Grundlage von Information beinhalten, auf die über das OS oder ein Standortteilsystem, wie etwa ein GPS-Modul, zugegriffen werden kann.
  • In einigen Ausführungsformen kann der Sensor-Hub 214 Näherungssensor(en) 215 unterstützen, einschließlich optischer, Infrarot- und/oder Sonarsensoren, die konfiguriert sein können, um eine Angabe der Anwesenheit eines Benutzers in der Nähe von IHS 202, der Abwesenheit von IHS 202 und/oder der Entfernung von IHS 202 (z. B. Nahfeld, Mittelfeld oder Fernfeld) bereitzustellen.
  • In bestimmten Ausführungsformen kann der Sensor-Hub 214 ein unabhängiger Mikrocontroller oder eine andere Logikeinheit sein, die mit der Hauptplatine von IHS 202 gekoppelt ist. Der Sensor-Hub 214 kann eine Komponente eines integrierten System-on-Chip sein, der in Prozessor 201 integriert ist, und er kann mit Chipsatz 203 über eine Busverbindung, wie etwa einen I2C-Bus (Inter-Integrated Circuit) oder eine andere geeignete Art von Busverbindung, kommunizieren. Der Sensor-Hub 214 kann auch einen I2C-Bus zum Kommunizieren mit verschiedenen Sensoren verwenden, die durch IHS 202 unterstützt werden.
  • Wie veranschaulicht, kann IHS 202 eingebettete Steuerung (EC) 220 verwenden, die eine Hauptplatinenkomponente von IHS 202 sein kann und eine oder mehrere Logikeinheiten beinhalten kann. In bestimmten Ausführungsformen kann EC 220 von einer separaten Leistungsebene von den Hauptprozessoren 201 und somit den OS-Operationen von IHS 202 aus arbeiten. Firmwareanweisungen, die durch EC 220 verwendet werden, können verwendet werden, um ein sicheres Ausführungssystem zu betreiben, das Operationen zum Bereitstellen verschiedener Kernfunktionen von IHS 202 beinhalten kann, wie etwa Leistungsverwaltung, Verwaltung von Betriebsmodi, in denen IHS 202 physisch konfiguriert sein kann, und Unterstützung für bestimmte integrierte E/A-Funktionen.
  • EC 220 kann auch Operationen zum Verbinden mit Leistungsadaptersensor 221 beim Verwalten von Leistung für IHS 202 implementieren. Diese Operationen können verwendet werden, um den Leistungsstatus von IHS 202 zu bestimmen, wie etwa, ob IHS 202 von Batterieleistung aus arbeitet oder in eine AC-Leistungsquelle eingesteckt ist (z. B., ob das IHS im Nur-AC-Modus, Nur-DC-Modus oder AC+DC-Modus arbeitet). In einigen Ausführungsformen können EC 220 und Sensor-Hub 214 über einen Außerband-Signalisierungsweg oder Bus 224 kommunizieren.
  • In verschiedenen Ausführungsformen beinhaltet IHS 202 möglicherweise nicht jede der in 2 gezeigten Komponenten. Zusätzlich oder alternativ kann IHS 202 verschiedene zusätzliche Komponenten zusätzlich zu jenen beinhalten, die in 2 gezeigt sind. Ferner können einige Komponenten, die in 2 als separate Komponenten dargestellt sind, in bestimmten Ausführungsformen stattdessen mit anderen Komponenten integriert sein. Zum Beispiel können in bestimmten Ausführungsformen die gesamte oder ein Teil der Funktionalität, die durch die veranschaulichten Komponenten bereitgestellt wird, stattdessen durch Komponenten bereitgestellt werden, die in den einen oder die mehreren Prozessor(en) 201 als ein SoC integriert sind.
  • 3 veranschaulicht mehrere Elemente von jedem von einem Client-IHS 202 und einem Server-IHS 106, die implementiert werden können, um die verschiedenen Merkmale des Cloud-Netzwerkverbindungssystems 100 gemäß einer Ausführungsform der vorliegenden Offenbarung durchzuführen. Wie gezeigt, kommuniziert Client-IHS 202 mit einem Server-IHS 106 über ein Kommunikationsnetzwerk 104, wie etwa ein 5G-Telekommunikationsnetzwerk.
  • Im Allgemeinen unterstützen Mobilfunknetze der fünften Generation (5G) Kommunikationen mit großer Bandbreite von bis zu 10 Gigabit pro Sekunde und ermöglichen neue Anwendungen. 5G führt auch das Konzept des Slicing von Mobilfunknetzen ein. Insbesondere ermöglicht das Slicing von 5G-Netzwerken das Multiplexen von virtualisierten und unabhängigen logischen Netzwerken auf derselben physischen Netzwerkinfrastruktur. Jedes Netzwerk-Slice ist ein isoliertes Ende-zu-Ende-Netzwerk, das darauf zugeschnitten ist, verschiedene Quality-of-Service- oder „QoS“-Anforderungen zu erfüllen, die von einer gegebenen Anwendung angefordert werden.
  • Client-IHS 102 kann eine drahtlose Kommunikationsvorrichtung (z. B. ein Telefon, ein Tablet, eine Uhr, ein Laptop usw.) darstellen, die einem Benutzer oder Empfänger der beabsichtigten drahtlosen Kommunikation zugeordnet ist. Client-IHS 102 umfasst die Anwendungs-ML-Engine 306, eine Client-Datenbank 302 und einen Anwendungsprofilmanager 304, der mit einer oder mehreren Anwendungen 108 kommuniziert, die auf Client-IHS 102 konfiguriert sind, um ein System zum Optimieren der Leistung der Anwendung 110 zu erzeugen. Die Anwendungs-ML-Engine 306 empfängt Telemetriedaten, die dem Betrieb der Anwendung 110 zugeordnet sind, und klassifiziert Netzwerkverkehr, der von der Anwendung 110 erzeugt wird, um 5G-Mobilfunknetzwerkslices zu verwenden und eine oder mehrere Profilempfehlungen zum Optimieren der Leistung der Anwendung 110 zu erzeugen.
  • Der Serverauswahlmanager 328 kann als ein Softwareagent ganz oder teilweise auf Client-IHS 102 arbeiten, um Anforderungen von der Anwendung 110 zum Durchführen einer Operation zu verarbeiten und mit mehreren Edge-Servern 106 zu kommunizieren, die im Cloud-Netzwerk 104 konfiguriert sind, um einen Edge-Server 106 zum Bereitstellen des Diensts für die Anwendung 110 auszuwählen. Zum Beispiel kann der Serverauswahlmanager 328 ein angefordertes Leistungsniveau zusammen mit Telemetriedaten erhalten, die der Anwendung 110 zugeordnet sind, um ein aggregiertes Datenpaket zu erzeugen, das an jeden Edge-Server 106 übertragen wird. Wenn eine Antwort auf das aggregierte Datenpaket von jedem Edge-Server 106 empfangen wird, kann der Serverauswahlmanager 328 dann einen Edge-Server 106 gemäß seinem angekündigten Leistungsniveau auswählen und die Anwendung 110 konfigurieren, mit dem ausgewählten Edge-Server 106 zu kommunizieren, um der Anwendung 110 den Dienst bereitzustellen.
  • Der Serverauswahlmanager 328 kann das angeforderte Leistungsniveau von einer beliebigen geeigneten Quelle erhalten. In einer Ausführungsform kann der Serverauswahlmanager 328 das angeforderte Leistungsniveau direkt von der anfordernden Anwendung 110 erhalten. In einer anderen Ausführungsform kann der Serverauswahlmanager 328 das angeforderte Leistungsniveau von einer Nachschlagetabelle erhalten, die in einem Arbeitsspeicher (Client-Datenbank 302) des Client-IHS 102 gespeichert ist, in dem die Nachschlagetabelle Einträge für jede Anwendung 110 und ein angefordertes Leistungsniveau umfasst, das der Anwendung 110 zuzuordnen ist. Der Serverauswahlmanager 328 kann auch die Telemetriedaten von einer beliebigen geeigneten Quelle erhalten, einschließlich direkt von der Anwendung 110 oder vom Arbeitsspeicher des Client-IHS 102, in dem Telemetriedaten gespeichert wurden, die von einer vorherigen durch die Anwendung 110 durchgeführten Operation erhalten wurden.
  • Das Aggregieren des angeforderten Leistungsniveaus und der Telemetriedaten zusammen mit der Anforderung ermöglicht es, selbstbeschreibend zu sein. Darüber hinaus stellt das Einbeziehen des angeforderten Leistungsniveaus und der Telemetriedaten die meisten oder alle Information bereit, die benötigt wird, um den angeforderten Dienst bereitzustellen, wodurch die Notwendigkeit, bestimmte Information (z. B. Konfigurationsinformation, die dem Client-IHS 102 und/oder der Anwendung 110 zugeordnet ist) zu erhalten, die ansonsten erforderlich wäre, um effektive Kommunikationen zwischen der Anwendung 110 und ihrem angeforderten Dienst herzustellen, überflüssig gemacht wird. Zusätzlich kann, da das aggregierte Datenpaket selbstbeschreibend ist, es effizient zwischen der Anwendung 110 und dem Dienst 108 in einer verbindungslosen Umgebung übermittelt werden und zwischen Diensten umgeschaltet werden, die durch mehrere Edge-Server 106 bereitgestellt werden, die im Cloud-Netzwerk 104 konfiguriert sind.
  • In einer Ausführungsform kann der Serverauswahlmanager 328 eine eindeutige Kennung (UID) mit dem aggregierten Datenpaket enthalten. Die UID kann enthalten sein, so dass Operationen zustandslos durchgeführt werden können. Das heißt, die UID kann mit jeder Anforderung enthalten sein, so dass jede Operation eindeutig identifiziert werden kann, unter anderem zum Aufrechterhalten des Status und Kontexts jeder Operation. Wenn zum Beispiel die Kommunikation mit einem ersten Edge-Server 106 während der Ausführung einer Operation verloren geht, kann das System 100 automatisch einen anderen zweiten Edge-Server 106 auswählen, um die Operation abzuschließen, wobei mitgenommen wird, wo der erste Edge-Server 106 ausgestiegen ist. Tatsächlich dient die UID als eine Kennung für das Cloud-Netzwerk 104, um irgendwelche und alle Edge-Server 106 im Cloud-Netzwerk 104 zu verwenden, um jede angeforderte Operation abzuschließen, während ein Status und Kontext davon aufrechterhalten werden, wie die Operation durch jeden Edge-Server 106 durchgeführt wird.
  • Der Anwendungsprofilmanager 304 kann als ein Softwareagent ganz oder teilweise auf dem Client-IHS 102 arbeiten, um Profilempfehlungen von der Anwendungs-MI,-Engine 306 zu empfangen, um eine oder mehrere Einstellungen des Client-IHS 102 anzupassen, um die Leistung der Anwendung 110 zu optimieren. In einer Ausführungsform kann der Anwendungsprofilmanager 304 konfiguriert sein, um einen Container 308 bereitzustellen, der eine oder mehrere Netzwerkfunktionen (NFs) 310 umfasst. Beispiele solcher Container können DOCKER oder einen beinhalten, der Cluster von orchestrierten Containern, wie KUBERNETES, bereitstellt. Obwohl der Anwendungsprofilmanager 304 hier gezeigt und beschrieben ist, um einen Container 308 bereitzustellen, wenn er durch das Client-IHS 102 angefordert wird, versteht es sich, dass der Anwendungsprofilmanager 304 konfiguriert sein kann, um andere Schnittstellen (z. B. NFs) für Kommunikationsnetzwerke bereitzustellen, wie physische Maschinen (Bare Metal Machines), virtuelle Maschinen (VMs) und dergleichen, wenn sie durch die Anwendung 110 angefordert werden.
  • Im Allgemeinen können die Netzwerkfunktionen 310 im Container 308 verwendet werden, um Kommunikation zwischen Client-IHS 102 und Server-IHS 106 zu unterstützen. Das heißt, die NFs 310 sind die Knoten in der 5G-Systemarchitektur, die Dienste für die Clients und Server im Netzwerk bereitstellen. Beispiele für Netzwerkfunktionen (NFs) können einen HTTPS-Server NF, eine Datenbank NF, ein Netzwerkelement NF, wie eine Routing-Funktion, eine Host-Firewall NF, ein Paket-Gateway NF und dergleichen beinhalten. In vielen Fällen wäre es vorteilhaft, Parameter für diese NFs zu spezifizieren, da sie bereitgestellt werden, um Kommunikation über das Netzwerk gemäß einem Diensttyp (z. B. eMBB, uRLLC, mMTC und/oder einer Kombination davon) zu optimieren. Gemäß Ausführungsformen der vorliegenden Offenbarung empfängt der Anwendungsprofilmanager 304 Profilempfehlungen von der Anwendungs-ML-Engine 306 und wählt Parameter für die NFs 310 aus, die Kommunikation über das 5G-Netzwerk optimieren.
  • Die Client-Datenbank 302 wird zum Speichern von Profilempfehlungen 312 bereitgestellt, die durch den Anwendungsprofilmanager 304 erzeugt werden. Wenn die Anwendungs-ML-Engine 306 Profilempfehlungen erzeugt, werden sie dem Anwendungsprofilmanager 304 zur Optimierung der Anwendung und einem Serverprofilmanager 320 zur Optimierung des Diensts 108 bereitgestellt. Der Anwendungsprofilmanager 304 speichert auch die Profilempfehlungen 312 in der Datenbank 302 zur späteren Verwendung. Während einer ersten Verwendung der Anwendung 110 kann der Anwendungsprofilmanager 304 zum Beispiel in Verbindung mit dem Serverprofilmanager 320 zur kooperativen Optimierung der Anwendung 110 und des Diensts 108 arbeiten, der der Anwendung 110 bereitgestellt wird. Da die Profilempfehlungen 312 gespeichert werden, kann der Anwendungsprofilmanager 304, wenn die Anwendung 110 zu einem späteren Zeitpunkt oder zu einer späteren Zeit verwendet wird, um auf den Dienst 108 zuzugreifen, auf die gespeicherten Profilempfehlungen zur weiteren Optimierung der Anwendung 110 und des entsprechenden Diensts 108 zugreifen, der durch die Anwendung 110 verwendet wird.
  • Wie gezeigt, kann das Server-IHS 106 einen einzelnen IHS 104 darstellen, der einen oder mehrere Dienste 106 nach Bedarf für Anwendungen 108 bereitstellt. In anderen Ausführungsformen kann das Server-IHS 106 mehrere IHS 104 darstellen, die zusammen funktionieren, um einen oder mehrere Dienste 106 für die Anwendung 110 bereitzustellen. Das Server-IHS 106 beinhaltet den Dienst 108, die Dienst-ML-Engine 314, eine Serverdatenbank 318 und einen Serverprofilmanager 320, der mit einem oder mehreren Diensten 106 kommuniziert, die auf dem Server-IHS 106 konfiguriert sind, um ein System zum Bereitstellen von Diensten 106 für das Client-IHS 102 unter Verwenden von Profilempfehlungen, die von der Dienst-ML-Engine 314 erhalten werden, sowie von Profilempfehlungen, die von der Anwendungs-ML-Engine 306 erhalten werden, zu erzeugen.
  • Die Dienst-ML-Engine 314 empfängt Telemetriedaten, die dem Betrieb des Diensts 108 zugeordnet sind, und erzeugt eine oder mehrere Profilempfehlungen zum Optimieren der Leistung des Diensts 108. Der Serverprofilmanager 320 kann als ein Softwareagent ganz oder teilweise auf dem Server-IHS 106 arbeiten, um Profilempfehlungen von der Dienst-ML-Engine 314 zu empfangen und eine oder mehrere Einstellungen des Diensts 108 anzupassen, um seine Leistung zu optimieren. Ähnlich wie der Anwendungsprofilmanager 304 kann der Serverprofilmanager 320 konfiguriert sein, um einen Container 324 bereitzustellen, der eine oder mehrere Netzwerkfunktionen 326 umfasst, die als eine Schnittstelle zum Kommunikationsnetzwerk 104 fungieren.
  • Die Anwendungs-ML-Engine 306 und die Dienst-ML-Engine 314 überwachen jeweils Daten, die dem Betrieb der Zielanwendung 110 und des Diensts 108 zugeordnet sind, um ihre Leistung zu charakterisieren. Zum Beispiel kann die Anwendungs-ML-Engine 306 oder die Dienst-ML-Engine 314 jeweils Telemetriedaten von einem anderen Prozess erhalten, der auf dem Client-IHS 102 läuft, und/oder direkt von Sensoren (z. B. 212, 215, 221), die im IHS 100 konfiguriert sind, um ein oder mehrere Leistungsmerkmale zu bestimmen, die der Zielanwendung 110 bzw. dem Dienst 108 zugeordnet sind. In verschiedenen Ausführungsformen kann die Anwendungs-ML-Engine 306 oder die Dienst-ML-Engine 314 Telemetriedaten von einer Energieschätzungsengine erhalten, wie etwa der MICROSOFT-E3-Engine, die konfiguriert ist, um Energienutzungsdaten bereitzustellen, die von Anwendungen, Diensten, Aufgaben und/oder Hardware in einem IHS heruntergebrochen werden. In einigen Fällen kann der Prozess (z. B. Energieschätzungsengine) Software- und/oder Hardwaresensoren verwenden, die konfiguriert sind, um zum Beispiel zu bestimmen, ob die Zielanwendung 110 im Vordergrund oder im Hintergrund (z. B. minimiert, verborgen usw.) der grafischen Benutzerschnittstelle (GUI) des IHS ausgeführt wird.
  • Sobald die Anwendungs-ML-Engine 306 oder die Dienst-ML-Engine 314 über einen Zeitraum Eigenschaften gesammelt hat, kann sie dann die gesammelten Daten unter Verwendung statistischer Deskriptoren verarbeiten, um die Anwendungsleistungsmerkmale der Zielanwendung 110 bzw. des Diensts 108 zu extrahieren. Zum Beispiel können die Anwendungs-ML-Engine 306 und die Dienst-ML-Engine 314 ihrejeweiligen IHS im Laufe der Zeit überwachen, um ihre Ressourcennutzung in Bezug auf verschiedene Aspekte zu schätzen, wie etwa, welche von der Zielanwendung 110 durchgeführten Aktionen bestimmte Ressourcen dazu veranlassen, auf Belastung zu treffen, Ereignisse, die auf dem Client-IHS 102 auftreten, die bewirken, dass die Zielanwendung 110 ein relativ hohes Maß an Ressourcennutzung erfordert, und eine Tageszeit, in der diese Aktionen angetroffen werden. Sobald die Anwendungs-ML-Engine 306 und die Dienst-ML-Engine 314 über einen Zeitraum Eigenschaften gesammelt haben, können sie dann die gesammelten Daten unter Verwendung statistischer Deskriptoren verarbeiten, um die Anwendungsleistungsmerkmale zu extrahieren, die der Zielanwendung 110 oder dem Dienst 108 zugeordnet sind. Sowohl die Dienst-ML-Engine 314 als auch die Anwendungs-ML-Engine 306 können einen Machine-Learning-Algorithmus verwenden, wie etwa zum Beispiel einen Bayes'schen Algorithmus, einen Linearen Regressionsalgorithmus, einen Entscheidungsbaumalgorithmus, einen Random-Forest-Algorithmus, einen Neuronalen Netzalgorithmus oder dergleichen. In einer Ausführungsform können der Anwendungsprofilmanager 304 und/oder der Serverprofilmanager 320 Merkmale umfassen oder einen Teil des DELL PRECISION OPTIMIZER bilden.
  • 4 veranschaulicht ein beispielhaftes Verfahren 400, das durch Elemente im System 100 durchgeführt werden kann, um eine Verbindung zwischen einem Client-IHS 102 und einem oder mehreren Edge-Servern 106 bereitzustellen, die einen Dienst für das Client-IHS 102 gemäß einer Ausführungsform der vorliegenden Offenbarung bereitstellen. Zum Beispiel können die Schritte des offenbarten Verfahrens 400 jedes Mal durchgeführt werden, wenn eine Anwendung 110 anfordert, eine Operation über einen Dienst 108 durchzuführen, der durch das Cloud-Netzwerk 104 bereitgestellt wird.
  • Anfänglich empfängt der Client-IHS 102 bei Schritt 402 eine Anforderung von einer Anwendung 110 zum Durchführen einer Operation. Die Operation kann eine beliebige Art sein, die durch einen Cloud-bezogenen Dienst bereitgestellt werden kann, wie etwa eine Multimedia-(Audio-, Video-)Sitzung, eine Telekonferenzsitzung, eine Spielesitzung oder eine IOT-Datenerfassungs- und/oder -steuerungssitzung. Der Client-IHS 102 aggregiert dann bei Schritt 404 Telemetrietelemetriedaten, QoS-Anforderungen und eine Anforderung zum Bilden eines aggregierten Datenpakets, das dann an mehrere Edge-Server 106 im Cloud-Netzwerk 104 übertragen wird, die den angeforderten Dienst 108 bei Schritt 406 bereitstellen.
  • Bei Schritt 408 empfängt jeder verfügbare Edge-Server 106 ein aggregiertes Datenpaket und bestimmt ein geschätztes Leistungsniveau, das durch seinen Dienst 108 bereitgestellt werden kann. Zum Beispiel kann der Edge-Server 106 das Leistungsniveau des Diensts 108 durch Zugreifen auf Telemetriedaten, die dem Dienst 108 zugeordnet sind, und Telemetriedaten, die der Anwendung 110 zugeordnet sind, beurteilen, um das geschätzte Leistungsniveau abzuleiten, das durch den Dienst 108 bereitgestellt werden kann. In einer Ausführungsform kann der Edge-Server 106 auf Profilempfehlungen 312 zugreifen, die im Serverarbeitsspeicher 318 gespeichert sind, um jegliche Optimierungen der Leistung des Diensts 108 zu identifizieren, die durch die Dienst-ML-Engine 314 während der Ausführung eines vorherigen Betriebs des Diensts 108 bereitgestellt wurden, wie nachstehend unter Bezugnahme auf 5 beschrieben. Das Verwenden von Profilempfehlungen, die während einer vorherigen durch den Dienst 108 durchgeführten Operation erhalten wurden, kann in einigen Fällen eine Affinität zwischen der Anwendung 110 und dem für die Anwendung 110 durchgeführten Dienst 108 ergeben. Das heißt, weil die durch die Dienst-ML-Engine 314 bereitgestellten Profilempfehlungen die Leistung des Diensts 108 verbessert haben, kann sie dem Client-IHS 102 bessere geschätzte Leistungsniveaus als andere Edge-Server 106 ankündigen, die keiner ML- Technik mit der Anwendung 110 unterzogen wurden. Danach überträgt bei Schritt 410 jeder verfügbare Edge-Server 106 sein jeweiliges geschätztes Leistungsniveau zurück an das Client-IHS 102.
  • Bei Schritt 412 wählt Client-IHS 102 einen Edge-Server aus den mehreren verfügbaren Edge-Servern 106 gemäß dem geschätzten Leistungsniveau, das durch jeden angekündigt wird, aus. Das heißt, der Client-IHS 102 kann den Edge-Server 106 mit Leistungsparametern (z. B. Durchsatz, Latenz, Zuverlässigkeit usw.) auswählen, die am besten mit den QoS-Anforderungen der Anwendung 110 übereinstimmen. Der Client-IHS 102 verwendet dann bei Schritt 414 den ausgewählten Edge-Server 106, um die Operation für die Anwendung 110 durchzuführen.
  • 5 veranschaulicht ein beispielhaftes Optimierungsverfahren 500, das darstellt, wie Client-IHS 102 mit dem Server-IHS 106 funktionieren kann, um eine End-zu-End- (E2E) Optimierung eines Diensts 108 bereitzustellen, der einer Anwendung 110 bereitgestellt wird. Insbesondere sind die Schritte 502 -506, 510, 512 und 526 -530 jene, die durch Client-IHS 102 durchgeführt werden können, die Schritte 514 -518, 522 und 524 jene, die durch Server-IHS 106 durchgeführt werden können, und die Schritte 508 und 520 jene, die durch Cloud-Kommunikationsnetzwerk 104 durchgeführt werden können. Es ist wichtig anzumerken, dass die Schritte des offenbarten Verfahrens 500 mehrere Male während einer Kommunikationssitzung zwischen Client-IHS 102 und Server-IHS 106 durchgeführt werden können, um die Leistung der Anwendung 110 und des Diensts 108 iterativ zu optimieren. Das heißt, die Schritte können ein erstes Mal durchgeführt werden, um anfänglich eine Verbindung (z. B. Slice) zwischen Client-IHS 102 und Server-IHS 106 einzurichten und die Leistung der Anwendung 110 und des Diensts 108 kooperativ zu optimieren und zu einem späteren Zeitpunkt die Schritte des Verfahrens 500 erneut durchzuführen, um die Leistung der Anwendung 110 und des Diensts 108 iterativ zu verbessern.
  • Bei Schritt 502 erhält der Anwendungsprofilmanager 304 Telemetrieattribute über die Anwendung 110. Wenn das Verfahren 500 zum ersten Mal durchgeführt wird, kann der Anwendungsprofilmanager 304 Telemetriedaten über die Anwendung 110 erhalten, die während einer vorherigen Verwendung der Anwendung 110 erhalten wurden, wie etwa, wenn die Anwendung 110 auf einen anderen Dienst vom Cloud-Kommunikationsnetzwerk 104 zugegriffen hat. Zusätzlich kann der Anwendungsprofilmanager 304 generische Informationen über einen Diensttyp (z. B. eMBB, uRLLC, mMTC) erhalten, die der Anwendung 110 zugeordnet sein können, um die Telemetriedaten zu erhalten. Wenn das Verfahren 500 jedoch erneut durchgeführt wird, kann der Anwendungsprofilmanager 304 Telemetrieattribute erhalten, die der Anwendung 110 zugeordnet sind, die seit dem vorherigen Durchführen des Verfahrens 500 erhalten wurden. Diese Telemetrieattribute können von der Anwendungs-ML-Engine 306 verwendet werden, um anfängliche Profilempfehlungen an den Anwendungsprofilmanager 304 bei Schritt 504 zu erzeugen. Danach stellt der Anwendungsprofilmanager 304 bei Schritt 506 einen Container 308 zum Herstellen von Kommunikation über das Cloud-Kommunikationsnetzwerk 104 basierend auf den von der Anwendungs-ML-Engine 304 empfangenen Profilempfehlungen bereit. Das Cloud-Kommunikationsnetzwerk 104 empfängt dann Attribute, die dem Container 308 zugeordnet sind, um eine Verbindung zwischen dem Client-IHS 102 und dem Dienst-IHS 104 bei Schritt 508 zuzuweisen. In einer besonderen Ausführungsform, in der das Cloud-Kommunikationsnetzwerk 104 ein 5G-Netzwerk umfasst, kann ein Slice instanziiert werden.
  • Bei Schritt 510 optimiert der Anwendungsprofilmanager 304 die Anwendung 110 gemäß den durch die Anwendungs-ML-Engine 306 erzeugten Profilempfehlungen. Der Anwendungsprofilmanager 304 kann die Anwendung auf eine beliebige geeignete Weise optimieren. In einer Ausführungsform optimiert der Anwendungsprofilmanager 304 die Anwendung 110 durch Optimieren einer oder mehrerer Ressourcen, wie etwa CPU 201, GPU 207 und/oder Speicher (z. B. Systemarbeitsspeicher 205), die verwendet werden, um die Ausführung der Anwendung 110 auf dem Client-IHS 102 zu unterstützen. Zum Beispiel kann der Anwendungsprofilmanager 304 die CPU 201 durch Anpassen eines auf die CPU angewendeten Leistungsniveaus, Anpassen eines Übertaktungs- oder Untertaktungsniveaus der CPU optimieren. Der Anwendungsprofilmanager 304 kann auch die GPU 207 durch Anpassen einer oder mehrerer von einer Bildrate, die häufig in Bildern pro Sekunde (FPS) bewertet wird, einer Aktualisierungsrate oder einer Rechenbildrate der GPU optimieren. Für ein anderes Beispiel kann der Anwendungsprofilmanager 304 den Speicher (z. B. Systemarbeitsspeicher 205) durch Anpassen einer schreiboptimierten Einstellung oder einer leseoptimierten Einstellung der Speichereinheit oder durch Erhöhen oder Verringern seiner Cache-Größe im RAM-Arbeitsspeicher optimieren, um das durch die Speicherressource verursachte Lastniveau zu handhaben.
  • Bei Schritt 512 überträgt der Anwendungsprofilmanager 304 die Profilempfehlungen an das Server-IHS 106 und speichert eine Kopie (z. B. Momentaufnahme) der Profilempfehlungen in der Client-Datenbank 302. Die Dienst-ML-Engine 314 empfängt diese Profilempfehlungen und erzeugt zusammen mit Telemetriedaten, die über den Dienst 108 erhalten werden, erweiterte Profilempfehlungen an den Serverprofilmanager 320 bei Schritt 516. Innerhalb dieser Offenbarung beziehen sich erweiterte Profilempfehlungen auf Profilempfehlungen, die dem Dienst 108 zugeordnet sind, die erweitert wurden, um Profilempfehlungen zu beinhalten, die gemäß dem Betrieb der Anwendung 110 erzeugt werden.
  • Danach stellt der Serverprofilmanager 320 bei Schritt 518 einen Server-Container 324 zum Herstellen von Kommunikation über das Cloud-Kommunikationsnetzwerk 104 bereit, um mit der Anwendung 110 zu kommunizieren, die auf dem Client-IHS 102 läuft, unter Verwendung von erweiterten Profilempfehlungen, die sowohl von der Anwendungs-ML-Engine 306 als auch der Dienst-ML-Engine 314 erhalten werden. Das Cloud-Kommunikationsnetzwerk 104 passt dann die Verbindung (z. B. Slice) gemäß den Attributen an, die im Server-Container 324 bei Schritt 520 erzeugt werden.
  • Der Serverprofilmanager 320 stellt auch den Dienst 108 unter Verwendung der erweiterten Profilempfehlungen bereit, die durch die Dienst-ML-Engine 314 und die Anwendungs-ML-Engine 306 bei Schritt 522 bereitgestellt werden. Zum Beispiel kann der Serverprofilmanager 320 den Dienst 108 durch Anpassen der Ressourcen (z. B. CPU, GPU, Speicher usw.) des Server-IHS 106 bereitstellen, die verwendet werden, um den Dienst 108 zu unterstützen oder auszuführen. Bei Schritt 524 überträgt der Serverprofilmanager 320 die erweiterten Profilempfehlungen an das Client-IHS 102 und speichert eine Kopie in der Server-Datenbank 318.
  • Bei Schritt 526 erzeugt die Anwendungs-ML-Engine 306 weitere erweiterte Profilempfehlungen basierend auf den erweiterten Profilempfehlungen, die vom Serverprofilmanager 320 erhalten werden, zusammen mit ihren Profilempfehlungen, die bei Schritt 504 erzeugt werden. Bei Schritt 528 verwendet der Anwendungsprofilmanager 304 die weiteren erweiterten Profilempfehlungen, um die Einstellungen, die mit dem Client-Container 308 assoziiert sind, iterativ anzupassen, um seine Leistung iterativ zu verbessern, und bei Schritt 530 verwendet er diese weiteren erweiterten Profilempfehlungen, um die Einstellung, die mit der Anwendung 110 assoziiert ist, iterativ anzupassen.
  • Bei Schritt 532 fährt das Verfahren mit der Verarbeitung bei Schritt 504 fort, um den Dienst und die Verbindung gemäß den Anwendungsanforderungen iterativ zu optimieren. D. h., wenn die Anwendung 110 weiterhin den Dienst 108 verwendet, können die Schritte des Verfahrens 500 wiederholt zur weiteren Optimierung sowohl der Anwendung 110 als auch des Diensts 108 durchgeführt werden. Die Schritte des Verfahrens 500 können zu einer beliebigen geeigneten Zeit wiederholt werden. Zum Beispiel können die Schritte des Verfahrens 500 kontinuierlich in spezifizierten laufenden Zeitintervallen (z. B. alle 5 Sekunden, alle 30 Sekunden, alle 2 Minuten usw.) durchgeführt werden, so dass die Leistung der Anwendung 110 und des Diensts 108 kontinuierlich optimiert werden kann. In einer anderen Ausführungsform kann einer oder beide des Anwendungsprofilmanagers 304 oder des Serverprofilmanagers 320 ausgelöst werden, um die Schritte des Verfahrens 500 durchzuführen, wenn ein spezifizierter Schwellenwert eines bestimmten Telemetriedatenelements überschritten wurde, wie etwa, wenn ein Benutzer beginnt, die Anwendung 110 auf eine andere Weise zu verwenden, was einen neuen Satz von Profilempfehlungen ergibt, die verwendet werden sollten, um die Leistung von jeder der Anwendung 110 und des Diensts 108, der von der Anwendung 110 verwendet wird, zu optimieren. In noch einer anderen Ausführungsform können die Schritte des Verfahrens 500 erneut durchgeführt werden, selbst nach einem Zeitraum, in dem die Anwendung 110 den Dienst 108 nicht verwendet oder darauf zugreift, wie etwa, wenn das Client-IHS 102 ausgeschaltet ist oder wenn die Anwendung 110 aktuell nicht auf dem Client-IHS 102 ausgeführt wird. In einem solchen Fall kann der Anwendungsprofilmanager 304, wenn die Anwendung 110 erneut anfordert, mit dem Dienst 108 zu kommunizieren, auf die Client-Datenbank 302 zugreifen, um zu bestimmen, ob Profilempfehlungen für diese Anwendung 110, die anfordert, den spezifizierten Dienst 108 zu verwenden, gefunden werden, und wenn dies der Fall ist, kann der Anwendungsprofilmanager 304 auf die in der Client-Datenbank 302 gespeicherten Profilempfehlungen 312 zugreifen und den Betrieb über die anderen Schritte des Verfahrens 500 fortsetzen.
  • An diesem Punkt wurde der Dienst 108 zur Verwendung durch die Anwendung 110 bereitgestellt und eine Kommunikationsverbindung wird zwischen dem Client-IHS 102 und dem Server-IHS 106 hergestellt, so dass die Anwendung 110 Ressourcen (z. B. Information, Berechnungen, Algorithmen usw.) verbrauchen kann, die durch den Dienst 108 bereitgestellt werden. Darüber hinaus wurden sowohl die Anwendung 110 als auch der Dienst 108 basierend auf Telemetriedaten optimiert, die über ihren eigenen Betrieb sowie den Betrieb voneinander erhalten wurden.
  • Dennoch endet das Verfahren 500, wenn die Verwendung des Verfahrens 500 nicht mehr benötigt oder gewünscht ist.
  • Obwohl 5 ein Beispiel eines Prozesses beschreibt, der durch das IHS 100 durchgeführt werden kann, um ein Leistungsniveau einer Zielanwendung 110 und eines Diensts 108 zu verbessern, die der Anwendung 110 bereitgestellt werden, können die Merkmale des offenbarten Prozesses in anderen spezifischen Formen verkörpert sein, ohne vom Wesen und Umfang der vorliegenden Offenbarung abzuweichen. Zum Beispiel können gewisse Schritte des offenbarten Prozesses sequentiell durchgeführt werden oder alternativ können sie gleichzeitig durchgeführt werden. Als ein anderes Beispiel kann das Verfahren 500 zusätzliche, weniger oder andere Operationen als die Operationen durchführen, wie im vorliegenden Beispiel beschrieben. Als noch ein anderes Beispiel können die Schritte des hierin beschriebenen Prozesses durch ein anderes Rechensystem als das Client-IHS 102 durchgeführt werden, wie durch einen anderen Cloud-Dienst, der im Cloud-Netzwerk vorhanden ist, das mit dem Client-IHS 102 kommuniziert, um die vorstehend beschriebenen ML-Verbesserungsmerkmale zu implementieren.
  • 6 veranschaulicht mehrere Elemente des Cloud-Netzwerks 104, die verwendet werden können, um eine Übergabeprozedur von einem Edge-Server 606a zu einem anderen Edge-Server 606b gemäß einer Ausführungsform der vorliegenden Offenbarung zu implementieren. Die Elemente des Cloud-Netzwerks 104 beinhalten eine versorgende Basisstation 602a, eine Nachbarbasisstation 602b in Kommunikation mit einem Kernnetzwerk 604, um ein drahtloses Netzwerk zu bilden. Die versorgende Basisstation 602a, die Nachbarbasisstation 602b bilden zusammen mit anderen Basisstationen (nicht gezeigt) im Cloud-Netzwerk 104 ein Funkzugangsnetz, wie ein entwickeltes universelles terrestrisches Funkzugangsnetz (E-UTRAN). Der versorgende Edge-Server 606a und der Nachbar Edge-Server 606b kommunizieren mit dem Client-IHS 102 über die versorgende Basisstation 602a bzw. die Nachbarbasisstation 602b unter Verwendung eines beliebigen geeigneten Protokolls, wie etwa einer Xe-Schnittstelle.
  • Das Cloud-Netzwerk 104 beinhaltet auch eine Zugriffs- und Mobilitätsfunktion (AMF) 606, die Steuerfunktionen bereitstellt, wie etwa Authentifizierung von Client-IHS 102, Autorisierung, Mobilitätsverwaltung und dergleichen. Im Allgemeinen stellt die AMF 606 Funktionen bereit, wie etwa Gewähren von Zugriff auf Edge-Server 606a, 606b durch das Client-IHS 102, Verwalten von Mobilität von Anwendungen und assoziierten Daten und Kontext der Anwendungen zwischen Edge-Servern 606a, 606b. Gemäß Ausführungsformen der vorliegenden Offenbarung kann die AMF 606 auch konfiguriert sein, um eine Übergabeoperation eines durch den versorgenden Edge-Server 606a bereitgestellten Diensts zu einem durch den Nachbar Edge-Server 606b bereitgestellten ähnlichen Dienst durchzuführen. Wie nachstehend ausführlich beschrieben wird, kann die AMF 606 eine eindeutige Kennung (UID) verwenden, die in einem aggregierten Datenpaket enthalten ist, das vom Client-IHS 102 empfangen wird, um vom versorgenden Edge-Server 606a zum Nachbar Edge-Server 606b zu übergeben (z. B. umzuschalten), während sie es Client-IHS 102 ermöglicht, zu bestimmen, welcher Nachbar Edge-Server 606b aus mehreren Nachbar Edge-Servern, die verfügbar sein können, verwendet werden kann. Obwohl nur eine Kombination aus Nachbarbasisstation 602b, Edge-Server 606b gezeigt ist, versteht es sich, dass das Cloud-Netzwerk 104 mehrere alternative Kombinationen aus Nachbarbasisstation 602b, Edge-Server 606b bereitstellen kann, ohne vom Wesen und Umfang der vorliegenden Offenbarung abzuweichen.
  • 7 veranschaulicht ein beispielhaftes Übergabeverfahren 700, das durch das client-gesteuerte Cloud-Netzwerkzugriffssystem gemäß einer Ausführungsform der vorliegenden Offenbarung durchgeführt werden kann. Anfänglich verbraucht das Client-IHS 102 aktuell einen Dienst, der durch den bedienenden Edge-Server 606a bereitgestellt wird, wie etwa einen, bei dem der Dienst durch Durchführen der Schritte des Edge-Server-Auswahlverfahrens 400 initiiert wurde, das vorstehend unter Bezugnahme auf 4 beschrieben ist.
  • Bei Schritt 702 hört das Client-IHS 102 auf, mit dem Edge-Server 606a zu kommunizieren. Das Client-IHS 102 kann aus einem beliebigen von mehreren Gründen aufhören, mit dem Edge-Server 606a zu kommunizieren. Zum Beispiel kann das Client-IHS 102 aufhören, mit dem Edge-Server 606a aufgrund eines Verlusts der drahtlosen Verbindung zu kommunizieren, oder der Edge-Server 606a hört auf, ordnungsgemäß zu funktionieren. Als Reaktion aggregiert das Client-IHS 102 die Telemetriedaten und QoS-Anforderungen, die der Anwendung 110 zugeordnet sind, zusammen mit einer Anforderung zum Bilden eines aggregierten Datenpakets bei Schritt 704. Das Client-IHS 102 überträgt dann bei Schritt 706 das aggregierte Datenpaket an mehrere Nachbar-Edge-Server 106 im Cloud-Netzwerk 104.
  • Bei Schritt 708 empfängt jeder verfügbare Nachbar-Edge-Server 106 das aggregierte Datenpaket und bestimmt ein geschätztes Leistungsniveau, das durch seinen Dienst 108 bereitgestellt werden kann. Wie zuvor beschrieben, greift jeder Nachbar-Edge-Server 106 auf Profilempfehlungen 318 zu, die in der Serverdatenbank 318 gespeichert sind, um jegliche Optimierungen der Leistung des Diensts 108 zu identifizieren, die durch die Dienst-ML-Engine 314 während der Ausführung eines vorherigen Betriebs des Diensts 108 bereitgestellt wurden, um das geschätzte Leistungsniveau zu bestimmen, das er ankündigen kann. Jeder verfügbare Edge-Server 606a, 606b überträgt dann sein jeweiliges geschätztes Leistungsniveau zurück an das Client-IHS 102 bei Schritt 710.
  • Bei Schritt 712 wählt das Client-IHS 102 einen Nachbar-Edge-Server aus den mehreren Nachbar-Edge-Servern 106 mit einem optimalen geschätzten Leistungsniveau gemäß seinen QoS-Anforderungen (z. B. Durchsatz, Latenz, Zuverlässigkeit usw.) aus. Das Client-IHS 102 überträgt dann eine Gewinngebotsnachricht an den ausgewählten Nachbar-Edge-Server 106, die angibt, dass er ausgewählt wurde, den Dienst bei Schritt 714 bereitzustellen. Als Reaktion benachrichtigt der Nachbar-Edge-Server 606b die AMF 606 bei Schritt 716 über die Gewinngebotsnachricht. Die Gewinngebotsnachricht kann die UID enthalten, die im aggregierten Datenpaket an den bedienenden Server-Edge-Server 606a bei Schritt 506 des Edge-Server-Auswahlverfahrens 500 übertragen wurde.
  • Die AMF 606 identifiziert bei Schritt 718 den bedienenden Edge-Server 606a aus mehreren Edge-Servern im Cloud-Netzwerk, die einen Abschnitt der Operation unter Verwenden der UID durchgeführt haben. Beispielsweise kann die AMF 606 den bedienenden Edge-Server 606a durch Rundsenden einer Abfragenachricht, die die UID umfasst, an einige, die meisten oder alle Edge-Server im Cloud-Netzwerk 104 und Empfangen einer Antwortnachricht vom bedienenden Edge-Server 606a, der die UID aufweist, die bei Schritt 506 erhalten wurde, identifizieren. Als ein anderes Beispiel kann die AMF 606 den bedienenden Edge-Server 606a durch Zugreifen auf seinen Speicher für eine Benachrichtigungsnachricht identifizieren, die vom bedienenden Edge-Server 606a erhalten wurde, wenn sie zuerst beginnt, den Dienst bei Schritt 514 des Edge-Server-Auswahlverfahrens 500 bereitzustellen. Als noch ein anderes Beispiel kann die AMF 606 den bedienenden Edge-Server 606a durch Empfangen, vom bedienenden Edge-Server 606a, einer Benachrichtigungsnachricht, die die UID umfasst, die angibt, dass der verbrauchte Dienst nur teilweise bei Schritt 514 des Edge-Server-Auswahlverfahrens 500 abgeschlossen wurde, identifizieren.
  • Danach überträgt bei Schritt 720 die AMF 606 Statusinformation über die abgebrochene Operation, die durch den bedienenden Edge-Server 606a durchgeführt wird, an den Nachbar-Edge-Server 606b. Die AMF 606 kann Information darüber erhalten, wie viel des Diensts bereitgestellt wurde, bevor er abgebrochen wurde. Wenn der Dienst zum Beispiel eine Multimediapräsentation war, die ungefähr 7,0 Minuten lang war und nach 1,3 Minuten abgebrochen wurde, kann die AMF 606 diese Information an den Nachbar-Edge-Server 606b bereitstellen, so dass die Multimediapräsentation bei der 1,3-Minutenmarkierung durch den Nachbar-Edge-Server 606b wiederaufgenommen werden kann. Die AMF 606 kann auch Kontextinformation vom bedienenden Edge-Server 606a erhalten, wie Telemetriedaten und/oder QoS-Anforderungen, so dass der Nachbar-Edge-Server 606b die Operation bei oder in der Nähe desselben Leistungsniveaus wiederaufnehmen kann, wie es durch den bedienenden Edge-Server 606a bereitgestellt wurde.
  • Sobald die Statusinformation an den Nachbar-Edge-Server 606b übertragen wurde, kann der Nachbar-Edge-Server 606b beginnen, den Dienst für das Client-IHS 102 bei Schritt 722 bereitzustellen. Der Nachbar-Edge-Server 606b stellt weiterhin den Dienst bereit, bis die Operation abgeschlossen ist. Wenn der Nachbar-Edge-Server 606b jedoch aufhört, die dem Client-IHS 102 bereitgestellte Operation abzuschließen, können die Schritte des vorstehend erwähnten Übergabeprozesses 700 erneut durchgeführt werden, um noch einen anderen Edge-Server 106 zu finden, um den Dienst für das Client-IHS 102 bereitzustellen. Dennoch endet das Übergabeverfahren 700, wenn die Verwendung des Übergabeverfahrens 700 nicht mehr benötigt oder gewünscht ist.
  • Obwohl 7 ein Beispiel eines Übergabeprozesses beschreibt, der durch das Cloud-Netzwerk 104 durchgeführt werden kann, um einen Übergabeprozess durchzuführen, können die Merkmale des offenbarten Prozesses in anderen spezifischen Formen verkörpert sein, ohne vom Wesen und Umfang der vorliegenden Offenbarung abzuweichen. Zum Beispiel können gewisse Schritte des offenbarten Übergabeverfahrens 700 sequentiell durchgeführt werden oder alternativ können sie gleichzeitig durchgeführt werden. Als ein anderes Beispiel kann das Übergabeverfahren 700 zusätzliche, weniger oder andere Operationen als die Operationen durchführen, wie im vorliegenden Beispiel beschrieben. Als noch ein anderes Beispiel können die Schritte des hierin beschriebenen Übergabeverfahrens 700 durch ein anderes Rechensystem als den bedienenden Edge-Server 606a und/oder den Nachbar-Edge-Server 606b durchgeführt werden. Zum Beispiel können gewisse Schritte, wie vorstehend beschrieben, durch ein vorstehend offenbartes Netzwerkelement (z. B. das Kernnetzwerk 604, die bedienende Basisstation 602a, die Nachbarbasisstation 602b) oder ein beliebiges anderes Netzwerkelement, das im Cloud-Netzwerk 104 enthalten ist, durchgeführt werden.
  • Es versteht sich, dass verschiedene hierin beschriebene Operationen in Software implementiert werden können, die durch Verarbeitungsschaltungsanordnung, Hardware oder eine Kombination davon ausgeführt wird. Die Reihenfolge, in der jede Operation eines gegebenen Verfahrens durchgeführt wird, kann geändert werden, und verschiedene Operationen können hinzugefügt, neu geordnet, kombiniert, weggelassen, modifiziert usw. werden. Es ist beabsichtigt, dass die hierin beschriebene(n) Erfindung(en) alle derartigen Modifikationen und Änderungen umfasst/umfassen und dementsprechend die vorstehende Beschreibung in einem veranschaulichenden und nicht in einem einschränkenden Sinn betrachtet werden sollte.
  • Die Begriffe „greifbar“ und „nicht transitorisch“, wie hierin verwendet, sollen ein computerlesbares Speichermedium (oder „Speicher“) beschreiben, das sich ausbreitende elektromagnetische Signale ausschließt; sie sollen aber nicht die Art von physischer computerlesbarer Speichervorrichtung, die durch den Ausdruck computerlesbares Medium oder Speicher umfasst ist, anderweitig einschränken. Zum Beispiel sollen die Begriffe „nicht transitorisches computerlesbares Medium“ oder „greifbarer Speicher“ Arten von Speichervorrichtungen umfassen, die nicht notwendigerweise Information permanent speichern, einschließlich zum Beispiel RAM. Programmanweisungen und Daten, die auf einem greifbaren computerzugänglichen Speichermedium in nicht transitorischer Form gespeichert sind, können danach durch Übertragungsmedien oder Signale, wie etwa elektrische, elektromagnetische oder digitale Signale, übertragen werden, die über ein Kommunikationsmedium, wie etwa ein Netzwerk und/oder eine drahtlose Verbindung, übermittelt werden können.
  • Obwohl die Erfindung(en) hierin unter Bezugnahme auf spezifische Ausführungsformen beschrieben ist/sind, können verschiedene Modifikationen und Änderungen vorgenommen werden, ohne vom Umfang der vorliegenden Erfindung(en) abzuweichen, wie in den nachstehenden Ansprüchen dargelegt. Dementsprechend sind die Beschreibung und die Figuren in einem veranschaulichenden und nicht in einem einschränkenden Sinn zu betrachten und alle derartigen Modifikationen sollen im Umfang der vorliegenden Erfindung(en) beinhaltet sein. Alle Nutzen, Vorteile oder Lösungen von Problemen, die hierin in Bezug auf spezifische Ausführungsformen beschrieben sind, sollen nicht als ein kritisches, erforderliches oder wesentliches Merkmal oder Element eines beliebigen oder aller Ansprüche ausgelegt werden.
  • Wenn nicht anders angegeben, werden Begriffe wie „erster“ und „zweiter“ verwendet, um willkürlich zwischen den Elementen zu unterscheiden, die solche Begriffe beschreiben. Somit sollen diese Begriffe nicht notwendigerweise eine zeitliche oder andere Priorisierung solcher Elemente angeben. Die Begriffe „gekoppelt“ oder „wirkgekoppelt“ sind als verbunden definiert, obwohl nicht notwendigerweise direkt und nicht notwendigerweise mechanisch. Die Begriffe „ein“ und „eine“ sind als eine oder mehrere definiert, sofern nicht anders angegeben. Die Begriffe „umfassen“ (und jede Form von umfassen, wie „umfasst“ und „umfassend“), „aufweisen“ (und jede Form von aufweisen, wie „aufweist“ und „aufweisend“), „beinhalten“ (und jede Form von beinhalten, wie „beinhaltet“ und „beinhaltend“) und „enthalten“ (und jede Form von enthalten, wie „enthält“ und „enthaltend“) sind offene Verbindungsverben. Infolgedessen besitzt ein System, ein Gerät oder eine Vorrichtung, die ein oder mehrere Elemente „umfasst“, „aufweist“, „beinhaltet“ oder „enthält“, dieses eine oder diese mehreren Elemente, ist aber nicht darauf beschränkt, nur dieses eine oder diese mehreren Elemente zu besitzen. Ähnlich besitzt ein Verfahren oder ein Prozess, das eine oder diese mehreren Operationen „umfasst“, „aufweist“, „beinhaltet“ oder „enthält“, diese eine oder diese mehreren Operationen, ist aber nicht darauf beschränkt, nur diese eine oder diese mehreren Operationen zu besitzen.

Claims (20)

  1. Informationshandhabungssystem (IHS), umfassend: mindestens einen Prozessor; und mindestens einen Arbeitsspeicher, der mit dem mindestens einen Prozessor gekoppelt ist, wobei der mindestens eine Arbeitsspeicher darauf gespeicherte Programmanweisungen aufweist, die bei Ausführung durch den mindestens einen Prozessor das IHS veranlassen zum: Empfangen einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation von einer Anwendung; Erzeugen eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind; Übertragen des aggregierten Datenpakets an eine Vielzahl von Servern, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen, wobei jeder der Server eine Antwort auf das aggregierte Datenpaket erzeugt und die Antwort an das IHS überträgt, wobei die Antwort ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann; Auswählen eines der Server gemäß dem angekündigten Leistungsniveau; und Kommunizieren mit dem ausgewählten Server, um die angeforderte Operation bereitzustellen.
  2. IHS nach Anspruch 1, wobei der Server ferner konfiguriert ist zum: Erhalten von Diensttelemetriedaten, die einer Leistung des Diensts zugeordnet sind; Durchführen, unter Verwenden der erhaltenen Diensttelemetriedaten, eines Machine-Learning- (ML-) Prozesses, um eine oder mehrere Profilempfehlungen zum Optimieren einer Leistung des Diensts zu erzeugen; Speichern der Profilempfehlungen in einem Arbeitsspeicher des Servers; und wenn eine zweite Anforderung zum Durchführen einer anderen Operation empfangen wird, Verwenden der gespeicherten Profilempfehlungen, um das angekündigte Leistungsniveau zu berechnen, das als Reaktion auf die Anforderung an das IHS gesendet wird.
  3. IHS nach Anspruch 2, wobei der Server ferner konfiguriert ist zum: Durchführen, unter Verwenden der Anwendungstelemetriedaten, die im aggregierten Datenpaket enthalten sind, des Machine-Learning- (ML-) Prozesses, um die Profilempfehlungen zu erzeugen.
  4. IHS nach Anspruch 1, wobei die Anweisungen ferner ausgeführt werden zum: Hinzufügen einer eindeutigen Kennung (UID) zum ersten aggregierten Datenpaket, wobei der ausgewählte Server das aggregierte Datenpaket in einem Arbeitsspeicher des Servers speichert; und wenn der ausgewählte Server die Operation nicht abschließt, Übertragen eines zweiten aggregierten Datenpakets an die anderen Server, wobei jeder der anderen Server eine zweite Antwort auf das aggregierte Datenpaket erzeugt und die zweite Antwort an das IHS überträgt, wobei die zweite Antwort ein zweites angekündigtes Leistungsniveau umfasst, auf dem der andere Server den Cloud-Dienst bereitstellen kann; Auswählen eines der anderen Server gemäß dem zweiten angekündigten Leistungsniveau; und Kommunizieren mit dem ausgewählten anderen Server, um die angeforderte Operation abzuschließen.
  5. IHS nach Anspruch 4, wobei der Server ferner konfiguriert ist zum: Empfangen einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Rundsenden einer Abfragenachricht, die die UID umfasst, an jeden der anderen Server und Empfangen einer Antwortnachricht vom ersten Server, der die UID aufweist; und Übertragen von Statusinformation, die mit der Operation assoziiert ist, die teilweise durch den ersten Dienst durchgeführt wird, wobei der ausgewählte andere Dienst konfiguriert ist, die Statusinformation zu verwenden, um die angeforderte Operation abzuschließen.
  6. IHS nach Anspruch 4, wobei der Server ferner konfiguriert ist zum: Empfangen einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Zugreifen auf den Serverarbeitsspeicher, um eine Identität des ersten Servers unter Verwenden der UID zu erhalten; und Übertragen von Statusinformation, die mit der Operation assoziiert ist, die teilweise durch den ersten Dienst durchgeführt wird, wobei der ausgewählte andere Dienst konfiguriert ist, die Statusinformation zu verwenden, um die angeforderte Operation abzuschließen.
  7. IHS nach Anspruch 4, wobei der Server ferner konfiguriert ist zum: Empfangen einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Empfangen, vom ersten Server, einer Benachrichtigungsnachricht, die die UID umfasst, die angibt, dass der verbrauchte Dienst nur teilweise auf dem ersten Server abgeschlossen wurde.
  8. IHS nach Anspruch 1, wobei das Cloud-Netzwerk ein Mobilfunknetz der fünften Generation (5G) ist.
  9. Verfahren, umfassend: Empfangen von Anweisungen, die in mindestens einem Arbeitsspeicher gespeichert sind und durch mindestens einen Prozessor ausgeführt werden, von einer Anwendung, einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation; Erzeugen, unter Verwenden der Anweisungen, eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind; Übertragen, unter Verwenden der Anweisungen, des aggregierten Datenpakets an eine Vielzahl von Servern, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen, wobei jeder der Server eine Antwort auf das aggregierte Datenpaket erzeugt und die Antwort an das IHS überträgt, wobei die Antwort ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann; Auswählen, unter Verwenden der Anweisungen, eines der Server gemäß dem angekündigten Leistungsniveau; und Kommunizieren, unter Verwenden der Anweisungen, mit dem ausgewählten Server, um die angeforderte Operation bereitzustellen.
  10. Verfahren nach Anspruch 9, ferner umfassend Erhalten, durch den Server, von Diensttelemetriedaten, die einer Leistung des Diensts zugeordnet sind; Durchführen, durch den Server, eines Machine-Learning- (ML-) Prozesses, um eine oder mehrere Profilempfehlungen zum Optimieren der Leistung des Diensts unter Verwenden der erhaltenen Diensttelemetriedaten zu erzeugen; Speichern, durch den Server, der Profilempfehlungen in einem Arbeitsspeicher des Servers; und wenn eine zweite Anforderung zum Durchführen einer anderen Operation empfangen wird, Verwenden, durch den Server, der gespeicherten Profilempfehlungen, um das angekündigte Leistungsniveau zu berechnen, das als Reaktion auf die Anforderung an das IHS gesendet wird.
  11. Verfahren nach Anspruch 10, ferner umfassend: Durchführen, unter Verwenden der Anwendungstelemetriedaten, die im aggregierten Datenpaket enthalten sind, des Machine-Learning- (ML-) Prozesses, um die Profilempfehlungen durch den Server zu erzeugen.
  12. Verfahren nach Anspruch 9, ferner umfassend: Hinzufügen, durch das IHS, einer eindeutigen Kennung (UID) zum ersten aggregierten Datenpaket, wobei der ausgewählte Server das aggregierte Datenpaket in einem Arbeitsspeicher des Servers speichert; und wenn der ausgewählte Server die Operation nicht abschließt, Übertragen, durch das IHS, eines zweiten aggregierten Datenpakets an die anderen Server, wobei jeder der anderen Server eine zweite Antwort auf das aggregierte Datenpaket erzeugt und die zweite Antwort an das IHS überträgt, wobei die zweite Antwort ein zweites angekündigtes Leistungsniveau umfasst, auf dem der andere Server den Cloud-Dienst bereitstellen kann; Auswählen, durch das IHS, eines der anderen Server gemäß dem zweiten angekündigten Leistungsniveau; und Kommunizieren, durch das IHS, mit dem ausgewählten anderen Server, um die angeforderte Operation abzuschließen.
  13. Verfahren nach Anspruch 12, ferner umfassend: Empfangen, durch den Server, einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren, durch den Server, des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Rundsenden einer Abfragenachricht, die die UID umfasst, an jeden der anderen Server und Empfangen einer Antwortnachricht vom ersten Server, der die UID aufweist; und Übertragen, durch den Server, von Statusinformation, die mit der Operation assoziiert ist, die teilweise durch den ersten Dienst durchgeführt wird, wobei der ausgewählte andere Dienst konfiguriert ist, die Statusinformation zu verwenden, um die angeforderte Operation abzuschließen.
  14. Verfahren nach Anspruch 12, ferner umfassend: Empfangen, durch den Server, einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren, durch den Server, des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Zugreifen auf den Serverarbeitsspeicher, um eine Identität des ersten Servers unter Verwenden der UID zu erhalten; und Übertragen, durch den Server, von Statusinformation, die mit der Operation assoziiert ist, die teilweise durch den ersten Dienst durchgeführt wird, wobei der ausgewählte andere Dienst konfiguriert ist, die Statusinformation zu verwenden, um die angeforderte Operation abzuschließen.
  15. Verfahren nach Anspruch 12, ferner umfassend: Empfangen, durch den Server, einer Benachrichtigungsnachricht vom ausgewählten anderen Server, die angibt, dass der ausgewählte andere Server die angeforderte Operation abschließen soll; Identifizieren, durch den Server, des ersten Servers aus der Vielzahl von Servern, die den Dienst anfänglich bereitgestellt haben, durch Empfangen, vom ersten Server, einer Benachrichtigungsnachricht, die die UID umfasst, die angibt, dass der verbrauchte Dienst nur teilweise auf dem ersten Server abgeschlossen wurde.
  16. Verfahren nach Anspruch 9, wobei das Cloud-Netzwerk ein Mobilfunknetz der fünften Generation (5G) ist.
  17. Arbeitsspeichervorrichtung mit darauf gespeicherten Programmanweisungen, die bei Ausführung durch einen oder mehrere Prozessoren eines Informationshandhabungssystems (IHS) das IHS veranlassen zum: Empfangen einer Anforderung zum Durchführen einer durch einen Cloud-Dienst bereitgestellten Operation von einer Anwendung; Erzeugen eines aggregierten Datenpakets, das die Anforderung, ein angefordertes Leistungsniveau, das durch den Dienst bereitzustellen ist, und Anwendungstelemetriedaten umfasst, die einem gemessenen Leistungsniveau der Anwendung zugeordnet sind; Übertragen des aggregierten Datenpakets an eine Vielzahl von Servern, die jeweils konfiguriert sind, den Cloud-Dienst bereitzustellen, wobei jeder der Server eine Antwort auf das aggregierte Datenpaket erzeugt und die Antwort an das IHS überträgt, wobei die Antwort ein angekündigtes Leistungsniveau umfasst, auf dem der Server den Cloud-Dienst bereitstellen kann; Auswählen eines der Server gemäß dem angekündigten Leistungsniveau; und Kommunizieren mit dem ausgewählten Server, um die angeforderte Operation bereitzustellen.
  18. Arbeitsspeichervorrichtung nach Anspruch 17, wobei der Server ferner konfiguriert ist zum: Erhalten von Diensttelemetriedaten, die einer Leistung des Diensts zugeordnet sind; Durchführen, unter Verwenden der erhaltenen Diensttelemetriedaten, eines Machine-Learning- (ML-) Prozesses, um eine oder mehrere Profilempfehlungen zum Optimieren einer Leistung des Diensts zu erzeugen; Speichern der Profilempfehlungen in einem Arbeitsspeicher des Servers; und wenn eine zweite Anforderung zum Durchführen einer anderen Operation empfangen wird, Verwenden der gespeicherten Profilempfehlungen, um das angekündigte Leistungsniveau zu berechnen, das als Reaktion auf die Anforderung an das IHS gesendet wird.
  19. Arbeitsspeichervorrichtung nach Anspruch 18, wobei der Server ferner konfiguriert ist zum: Durchführen, unter Verwenden der Anwendungstelemetriedaten, die im aggregierten Datenpaket enthalten sind, des Machine-Learning- (ML-) Prozesses, um die Profilempfehlungen zu erzeugen.
  20. Arbeitsspeichervorrichtung nach Anspruch 17, wobei die Anweisungen ferner ausgeführt werden zum: Hinzufügen einer eindeutigen Kennung (UID) zum ersten aggregierten Datenpaket, wobei der ausgewählte Server das aggregierte Datenpaket in einem Arbeitsspeicher des Servers speichert; und wenn der ausgewählte Server die Operation nicht abschließt, Übertragen eines zweiten aggregierten Datenpakets an die anderen Server, wobei jeder der anderen Server eine zweite Antwort auf das aggregierte Datenpaket erzeugt und die zweite Antwort an das IHS überträgt, wobei die zweite Antwort ein zweites angekündigtes Leistungsniveau umfasst, auf dem der andere Server den Cloud-Dienst bereitstellen kann; Auswählen eines der anderen Server gemäß dem zweiten angekündigten Leistungsniveau; und Kommunizieren mit dem ausgewählten anderen Server, um die angeforderte Operation abzuschließen.
DE102022200313.6A 2021-01-13 2022-01-13 Client-gesteuertes cloud-netzwerkzugriffs-system und verfahren Pending DE102022200313A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/148,345 2021-01-13
US17/148,345 US11496601B2 (en) 2021-01-13 2021-01-13 Client driven cloud network access system and method

Publications (1)

Publication Number Publication Date
DE102022200313A1 true DE102022200313A1 (de) 2022-07-14

Family

ID=82116694

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022200313.6A Pending DE102022200313A1 (de) 2021-01-13 2022-01-13 Client-gesteuertes cloud-netzwerkzugriffs-system und verfahren

Country Status (3)

Country Link
US (1) US11496601B2 (de)
CN (1) CN114765613A (de)
DE (1) DE102022200313A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11973663B2 (en) * 2022-03-30 2024-04-30 Bank Of America Corporation Artificial intelligence based real-time service discovery and binding technique

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6446028B1 (en) * 1998-11-25 2002-09-03 Keynote Systems, Inc. Method and apparatus for measuring the performance of a network based application program
AU2752201A (en) * 1999-11-08 2001-06-06 Megaxess, Inc. Quality of service (qos) negotiation procedure for multi-transport protocol access for supporting multi-media applications with qos assurance
US7391769B2 (en) * 2003-06-27 2008-06-24 Lucent Technologies Inc. Packet aggregation for real time services on packet data networks
ITMI20071141A1 (it) * 2007-06-04 2008-12-05 Torino Politecnico Metodo per rilevare un singolo flusso dati all' interno di un flusso aggregato di dati a pacchetti e per identificare l' applicazione generatrice del singolo flusso dati.
US8204986B2 (en) * 2007-07-27 2012-06-19 Vmware, Inc. Multi-hierarchy latency measurement in data centers
US20110035272A1 (en) * 2009-08-05 2011-02-10 Yahoo! Inc. Feature-value recommendations for advertisement campaign performance improvement
US8244874B1 (en) * 2011-09-26 2012-08-14 Limelight Networks, Inc. Edge-based resource spin-up for cloud computing
US8488575B2 (en) * 2010-11-18 2013-07-16 At&T Intellectual Property, I, L.P. Methods, devices, and computer program products for providing a plurality of application services via a customized private network connection
US9026862B2 (en) * 2010-12-02 2015-05-05 Robert W. Dreyfoos Performance monitoring for applications without explicit instrumentation
US8849976B2 (en) * 2011-09-26 2014-09-30 Limelight Networks, Inc. Dynamic route requests for multiple clouds
WO2014010992A1 (ko) * 2012-07-13 2014-01-16 삼성전자 주식회사 컨텐츠 이름 기반의 컨텐츠 중심 네트워크에서 컨텐츠 및 실시간 스트리밍 컨텐츠 제공을 위한 컨텐츠 요청자 및 컨텐츠 제공자의 통신 방법
US20140188977A1 (en) * 2012-12-28 2014-07-03 Futurewei Technologies, Inc. Appratus, method for deploying applications in a virtual desktop interface system
US20150264157A1 (en) * 2014-03-13 2015-09-17 Rockwell Automation Technologies, Inc. Industrial automation system web application performance enhancement system and method
WO2016034196A1 (en) * 2014-09-01 2016-03-10 Telefonaktiebolaget L M Ericsson (Publ) Collision avoidance for uplink radio resource allocation in reoccurring time intervals
CN104834562B (zh) * 2015-04-30 2018-12-18 上海新储集成电路有限公司 一种异构数据中心及该数据中心的运行方法
US20190045412A1 (en) * 2017-08-02 2019-02-07 Sears Brands, L.L.C. Automatically switching communication pathways between connected devices
US10963330B2 (en) * 2017-11-24 2021-03-30 Microsoft Technology Licensing, Llc Correlating failures with performance in application telemetry data
US10671621B2 (en) * 2017-12-08 2020-06-02 Microsoft Technology Licensing, Llc Predictive scaling for cloud applications
US10567269B2 (en) * 2018-03-14 2020-02-18 International Business Machines Corporation Dynamically redirecting affiliated data to an edge computing device
US11190971B2 (en) * 2019-02-22 2021-11-30 Apple Inc. UE assistance application detection and policy control in QoS deployment
US11012332B2 (en) * 2019-04-18 2021-05-18 International Business Machines Corporation Dynamic network management based on user, device, application, and network characteristics
US11711268B2 (en) * 2019-04-30 2023-07-25 Intel Corporation Methods and apparatus to execute a workload in an edge environment
US11507884B2 (en) * 2020-01-06 2022-11-22 Sap Se Embedded machine learning
US20200167258A1 (en) * 2020-01-28 2020-05-28 Intel Corporation Resource allocation based on applicable service level agreement
US11237806B2 (en) * 2020-04-30 2022-02-01 International Business Machines Corporation Multi objective optimization of applications
US11521126B2 (en) * 2020-05-21 2022-12-06 Buurst, Inc. User friendly system to generate and process machine learning request
US20210014133A1 (en) * 2020-09-25 2021-01-14 Intel Corporation Methods and apparatus to coordinate edge platforms
US11271810B1 (en) * 2020-11-30 2022-03-08 Getac Technology Corporation Heterogeneous cross-cloud service interoperability

Also Published As

Publication number Publication date
CN114765613A (zh) 2022-07-19
US11496601B2 (en) 2022-11-08
US20220224770A1 (en) 2022-07-14

Similar Documents

Publication Publication Date Title
DE102019133923B4 (de) Anwendungsverwendung in einem behältermanagementsystem
DE102020203877A1 (de) Verfahren und einrichtungen zum steuern einer verarbeitung von telemetriedaten auf einer edge-plattform
DE102015105884B4 (de) Rechenknoten und Verfahren zur Migration einer virtuellen Maschine, Rechenzentrummanager zur Migration virtueller Maschinen, Maschinenlesbares Speichermedium und Rechenvorrichtungen
DE102020208110A1 (de) Verfahren und vorrichtungen zum aggregieren von telemetriedaten in einer edge-umgebung
DE102020132078A1 (de) Ressourcenzuteilung basierend auf anwendbarem service level agreement
DE102019105193A1 (de) Technologien zum beschleunigen von edge-vorrichtungsarbeitslasten
DE112017001762T5 (de) Technologien für den einsatz dynamischer underlay-netzwerke in cloud-computing-infrastrukturen
DE112017000046T5 (de) Beurteilung der Genauigkeit eines Maschinenlernmodells
DE112013003289T5 (de) Gerät, System und Verfahren für client-geregelte Sitzungspersistenz zwischen ein oder mehreren Clients und Servern eines Rechenzentrums
DE102016103733A1 (de) Kanaleigentum in einem Veröffentlichungs-/Abonnier-System
DE102012207695A1 (de) Übertragung des Anwendungsstatus über verschiedene Vorrichtungen hinweg
DE102012207698A1 (de) Übertragung des Anwendungsstatus über verschiedene Vorrichtungen hinweg mit Kontrollpunkten
CN103957237A (zh) 一种弹性云的体系结构
CN110688213B (zh) 一种基于边缘计算的资源管理方法、系统及电子设备
US10884768B2 (en) Solution which can improve VDI user experience automatically
DE112008004056T5 (de) Dateitypzuordnung bei einer Fernrechensitzung
DE112016002846T5 (de) Dynamisches Management eines Inaktivitätszeitgebers während der Kommunikation zwischen Prozessoren
DE102022208684A1 (de) Verfahren und einrichtung für resilienz mithilfe digitaler zwillinge
DE102022101324A1 (de) Statischer rechenzentrum-leistungsausgleich und konfiguration
DE102018209188A1 (de) Technologien zum Verwalten der Dienstgüte für Plattformverbindungen
CN108881379B (zh) 一种服务器集群间数据同步的方法和装置
DE102013201664B4 (de) Vorausschauendes Zwischenspeichern bei Telekommunikationstürmen unter Verwendung der Weitergabe der Kennung von Elementen von Daten mit hohem Bedarf auf einer geographischen Ebene
DE102022200313A1 (de) Client-gesteuertes cloud-netzwerkzugriffs-system und verfahren
DE112016005672T5 (de) Verbesserter virtueller Switch für Netzwerkfunktionsvirtualisierung
DE102022200071A1 (de) System und verfahren zur fernunterstützten optimierung von nativen diensten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: BARDEHLE PAGENBERG PARTNERSCHAFT MBB PATENTANW, DE