[go: up one dir, main page]

WO2023003551A1 - Broker service for multiple protocols - Google Patents

Broker service for multiple protocols Download PDF

Info

Publication number
WO2023003551A1
WO2023003551A1 PCT/US2021/042534 US2021042534W WO2023003551A1 WO 2023003551 A1 WO2023003551 A1 WO 2023003551A1 US 2021042534 W US2021042534 W US 2021042534W WO 2023003551 A1 WO2023003551 A1 WO 2023003551A1
Authority
WO
WIPO (PCT)
Prior art keywords
computing device
computing resources
remote computing
request
broker service
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.)
Ceased
Application number
PCT/US2021/042534
Other languages
French (fr)
Inventor
Robert Paul Martin
Byron A. Alcorn
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co 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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to PCT/US2021/042534 priority Critical patent/WO2023003551A1/en
Priority to TW111117510A priority patent/TW202307681A/en
Publication of WO2023003551A1 publication Critical patent/WO2023003551A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Definitions

  • FIG. 1 is a block diagram of a computing device to connect to multiple remote computing resources using a plurality of protocols, according to an example of the principles described herein.
  • FIG. 2 is a block diagram of a system for connecting a computing device to multiple remote computing resources with different protocols, according to an example of the principles described herein.
  • FIG. 3 is a flow diagram illustrating a method to connect a computing device to multiple remote computing resources, according to an example of the principles described herein.
  • Fig. 4 is a sequence diagram illustrating a process of connecting a computing device to multiple remote computing resources, according to an example of the principles described herein.
  • FIG. 5 is a sequence diagram illustrating another process of connecting a computing device to multiple remote computing resources, according to an example of the principles described herein.
  • computing devices have become commonplace in today’s society and are used in a variety of contexts.
  • a user at one computing device accesses the computing resources of a computing device at another location.
  • the term computing resources refer to circuitry (e.g., a processor), memory and instructions to execute operations.
  • a user at a computing device may access the remote device over a network to gain access to computing resources on the remote device.
  • multiple remote devices may provide computing resources to a given computing device.
  • a single remote device may provide multiple computing resources to the computing device.
  • a “protocol” includes a standard set of rules that allow computing devices to communicate data with each other.
  • a protocol may include the type of data that may be exchanged, commands that are used to send and receive data, and how transfers are confirmed.
  • a protocol may allow computing devices to communicate over a network.
  • the term protocol may also be referred to as network protocol.
  • a computing device may be used for remote computing.
  • remote computing the computing resources of a remote device may be used to perform an operation and the results may be communicated to a local computing device.
  • An example of remote computing includes remote desktop sharing (also referred to as desktop remoting) where an image of the desktop of a remote device is sent to a computing device. The image of a remote frame buffer or “screen” may be displayed by the computing device to a user. A user may interact with the remote device through the desktop displayed on the computing device.
  • a remote desktop protocol may also allow human input devices (e.g., keyboards, mice, tablets, etc.) to function remotely.
  • USD Universal Scene Description
  • NVIDIA® Network Device Interface
  • NDI Network Device Interface
  • WebRTC WebRTC
  • a block-based storage protocol may be used by the computing device to communicate with a block- based storage resource.
  • a broker service may be used to connect a computing device to a remote computing resource.
  • a broker service may be hosted on a remote server (e.g., a cloud-based server).
  • the remote server hosting the broker service may include a virtual cluster of computing devices that provide cloud-based services (e.g., computing, storage, networking, database, etc.).
  • the computing device may communicate with the broker service over a network connection.
  • a broker service may facilitate connecting a computing device to a remote device in a pool or disparate pools of remote devices. For example, in the case of remote desktop, the broker service may designate a period of time during which the remote device is “checked out” to the computing device.
  • the broker service may allow a connection based on a single protocol or single protocol type.
  • the broker service may facilitate a connection in which a computing device and a remote device communicate using a remote desktop protocol.
  • the broker service does not connect the computing device to multiple remote computing resources using different protocols.
  • a computing device may communicate with a broker service to connect with multiple disparate computing resources using multiple protocols.
  • a single request may be sent from the computing device to the broker service.
  • the broker service may initiate connections between the computing device and the multiple remote computing resources.
  • a computing device could send a single request to the broker service to connect to a remote rendering machine using a remote desktop protocol, connect an application to an Omniverse Nucleus® database server using the USD protocol, and open up a browser and connect to a broadcast stream using the WebRTC® protocol.
  • the broker service may use saved client connection profiles to establish connections between the computing device and the multiple disparate computing resources.
  • the broker service may store information about a user workflow environment for a user of the computing device.
  • the broker service may determine which remote computing resources should be connected to the computing device to create the user workflow environment on the computing device.
  • the computing device includes a processor and a memory communicatively coupled to the processor and storing executable instructions that when executed cause the processor to send a request to a broker service to connect the computing device to multiple remote computing resources using different protocols.
  • the instructions also cause the processor to connect the computing device to the multiple remote computing resources using the broker service.
  • the present specification also describes a method.
  • the method includes receiving a request to connect a computing device to multiple remote computing resources using different protocols.
  • the method also includes identifying the multiple remote computing resources based on the request.
  • the method further includes connecting applications running on the computing device to the multiple remote computing resources using the different protocols.
  • the present specification also describes a system.
  • the system includes a computing device to generate a request to connect to multiple remote computing resources that use a plurality of protocols.
  • the system also includes a broker service to receive the request from the computing device.
  • the broker service is also to connect the computing device to the multiple remote computing resources in response to receiving the request from the computing device.
  • processor may be a controller, an application-specific integrated circuit (ASIC), a semiconductor-based microprocessor, a central processing unit (CPU), and a field-programmable gate array (FPGA), and/or other hardware device.
  • ASIC application-specific integrated circuit
  • CPU central processing unit
  • FPGA field-programmable gate array
  • memory may include a machine-readable storage medium, which machine-readable storage medium may contain, or store computer-usable program code for use by or in connection with an instruction execution system, apparatus, or device.
  • the memory may take many types of memory including volatile and non-volatile memory.
  • the memory may include Random Access Memory (RAM), Read Only Memory (ROM), optical memory disks, and magnetic disks, among others.
  • the executable code may, when executed by the respective component, cause the component to implement the functionality described herein.
  • Fig. 1 is a block diagram of a computing device 102 to connect to multiple remote computing resources 114 that use a plurality of protocols, according to an example of the principles described herein.
  • the computing device 102 includes a processor 104.
  • the processor 104 of the computing device 102 may be implemented as dedicated hardware circuitry ora virtualized logical processor.
  • the dedicated hardware circuitry may be implemented as a central processing unit (CPU).
  • a dedicated hardware CPU may be implemented as a single to many-core general purpose processor.
  • a dedicated hardware CPU may also be implemented as a multi-chip solution, where more than one CPU are linked through a bus and schedule processing tasks across the more than one CPU.
  • the computing device 102 may include a memory 106 communicatively coupled to the processor 104.
  • the memory 106 may be dedicated hardware circuitry to host instructions for the processor 104 to execute.
  • the memory 106 may be virtualized logical memory.
  • dedicated hardware circuitry may be implemented with dynamic random-access memory (DRAM) or other hardware implementations for storing processor instructions.
  • the virtualized logical memory may be implemented in an abstraction layer which allows the instructions to be executed on a virtualized logical processor, independent of any dedicated hardware implementation.
  • the computing device 102 may also include instructions, which are stored on the memory 106 and are executable by the processor 104.
  • the instructions may be implemented in a platform specific language that the processor 104 may decode and execute.
  • the instructions may be stored in the memory 106 during execution.
  • the instructions may include operations executable by the processor 104 to manage a remote desktop connection, according to the examples described herein.
  • the computing device 102 may be included in a system 100 that includes a broker service 112.
  • the broker service 112 may connect the computing device 102 to remote computing resources 114 (e.g., processing, memory, executable instructions, etc.).
  • the broker service 112 may be hosted on a remote server.
  • the computing device 102 may communicate with the broker service 112 over a network connection.
  • a remote device in a pool of remote devices may be capable of providing a connection to a computing device 102.
  • Each of the remote devices may provide remote computing resources 114 to the computing device 102.
  • a single remote device hosts multiple remote computing resources 114.
  • the computing device 102 may connect to a single remote device that implements different computing resources, where each computing resource uses a different protocol to communicate with the computing device 102.
  • multiple remote devices may host the multiple remote computing resources.
  • different remote devices may each provide a single computing resource or a plurality of computing resources.
  • each of the remote devices may have similar characteristics, i.e., similar hardware components and/or similar applications and datastores.
  • the different remote devices have different characteristics.
  • the processor 104 may execute request instructions 108 to send a request 116 to the broker service 112 to connect the computing device 102 to multiple remote computing resources 114 using different protocols.
  • the request 116 may be a single communication (e.g., message).
  • the request 116 may instruct the broker service 112 to connect the computing device 102 to multiple remote computing resources 114 using different protocols.
  • the request 116 may be generated based on user input.
  • a user may specify certain remote computing resources 114 that the user wishes to connect to. These multiple remote computing resources 114 may each use a different protocol to communicate with the computing device 102.
  • the user may specify a user working environment. As used herein a user working environment may include a number of applications that use data supplied by multiple remote computing resources 114.
  • a first application may include a remote desktop application that connects with a first remote computing resource 114 using a remote desktop protocol
  • a second application may connect to a second remote computing resource 114 (e.g., a database server) using the USD protocol
  • a third application e.g., a web browser
  • a broadcast stream of a third remote computing resource 114 using WebRTC may be included in a first application.
  • the broker service 112 may save the user working environment in a client connection profile.
  • the broker service 112 may map the user working environment to specific remote computing resources 114 to implement the user working environment.
  • the broker service 112 may store multiple user working environments fora given user in the client connection profile for that user.
  • User Working Environment-A may include a set of remote computing resources
  • User Working Environment-B may include a different set of remote computing resources, and so forth.
  • the broker service 112 may identify multiple remote computing resources 114 to establish a connection to the computing device 102.
  • the request 116 may specify specific remote computing resources 114.
  • the broker service 112 may identify the specific remote computing resources 114 directly from the request 116.
  • the request 116 may specify the types or classes of remote computing resources 114.
  • the broker service 112 may select from a pool of remote computing resources 114 that meet the request 116.
  • the request 116 may indicate the user working environment.
  • the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment.
  • the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile.
  • the processor 104 may execute connection instructions 110 to connect the computing device 102 to the multiple remote computing resources 114 using the broker service 112. For example, upon identifying the multiple remote computing resources 114 to connect to the computing device 102, the broker service 112 may determine connection information to establish connections between the computing device 102 and the multiple remote computing resources 114. In some examples, the connection information may include the location (e.g., IP address) of each remote computing resource 114. In some examples, the broker service 112 may instruct the multiple remote computing resources 114 to connect to applications running on the computing device 102. The multiple remote computing resources 114 may connect to the computing device 102 using different protocols.
  • a first remote computing resource 114 may connect to the computing device 102 using a first protocol
  • a second remote computing resource 114 may connect to the computing device 102 using a second protocol
  • the processor 104 may implement an agent on the local computing device 102.
  • the agent may communicate with the broker service 112.
  • the agent may also initiate applications on the computing device 102 in response to the request 116.
  • the broker service 112 may communicate the locations (e.g., IP addresses) of the multiple remote computing resources 114 to the agent.
  • the agent may would then initiate an application or multiple applications on the local computing device 102 and inform the application or multiple applications of the location of the remote computing resources 114.
  • the computing device 102 may connect to the multiple remote computing resources 114 without the plurality of protocols passing through the broker service 112.
  • the broker service 112 may initiate the connections, but the protocols are established between the computing device 102 and the multiple remote computing resources 114.
  • the request 116 may cause multiple applications to open on the computing device 102.
  • Each application may use a different protocol received from a remote computing resource 114.
  • a user may initiate the request 116.
  • the processor 104 may open the applications to establish connections with the remote computing resources 114.
  • a first remote computing resource 114 may connect to a first application using a first protocol
  • a second remote computing resource 114 may connect to a second application using a second protocol, and so forth.
  • the request 116 may cause a single application to open on the computing device 102.
  • the processor 104 may open the single application in response to the request 116 being generated.
  • the single application may use the different protocols.
  • the application may connect to a first remote computing resource 114 using a first protocol, a second remote computing resource 114 using a second protocol, and so forth.
  • multiple concurrent and disparate protocols from the same client endpoint may be established using the broker service 112. Remoting protocols beyond image-based protocols (e.g., remote desktop protocols) may be supported.
  • a single broker service 112 may be used to manage the protocols and connections of multiple computing devices 102. These examples may save time to connect to multiple remote computing resources and may help prevent incorrect connections.
  • Fig. 2 is a block diagram of a system 200 for connecting a computing device 102 to multiple remote computing resources with different protocols, according to an example of the principles described herein.
  • the system 200 may include a computing device 102, a broker service 112 and a number of remote computing resources 114a-f.
  • Each of the components depicted in Fig. 2 may include a processor and memory. That is, each component may include a processor, an application-specific integrated circuit (ASIC), a semiconductor-based microprocessor, a central processing unit (CPU), and a field-programmable gate array (FPGA), and/or other hardware device.
  • ASIC application-specific integrated circuit
  • CPU central processing unit
  • FPGA field-programmable gate array
  • the memory may include a machine-readable storage medium, which machine-readable storage medium may contain, or store computer-usable program code for use by or in connection with an instruction execution system, apparatus, or device.
  • the memory may take many types of memory including volatile and non-volatile memory.
  • the memory may include Random Access Memory (RAM), Read Only Memory (ROM), optical memory disks, and magnetic disks, among others.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • optical memory disks optical memory disks
  • magnetic disks among others.
  • the executable code may, when executed by the respective component, cause the component to implement at least the functionality described herein.
  • the computing device 102 may include instructions that when executed cause the processor of the computing device 102 to run an agent 220 to communicate with the broker service 112.
  • the agent 220 may communicate with the broker service 112.
  • the agent may also initiate applications on the computing device 102 in response to the request 116.
  • the agent 220 may receive user input to generate a request 116 for connecting the computing device 102 to multiple remote computing resources that use a plurality of protocols. Each of the multiple remote computing resources may communicate data using a different protocol.
  • the agent 220 may then send the request 116 to the broker service 112 to establish connections with the multiple remote computing resources.
  • the broker service 112 may receive the request 116 from the agent 220 of the computing device 102.
  • the broker service 112 may connect the computing device 102 to multiple remote computing resources in response to receiving the request 116 from the computing device 102.
  • the broker service 112 may select the multiple remote computing resources from a resource pool 224 or multiple disparate resource pools 224.
  • the resource pool 224 may include multiple remote devices that each host a remote computing resource.
  • the resource pool 224 may include a single remote device that hosts each of the remote computing resources.
  • a first remote device may host a first subset of the remote computing resources
  • a second remote device may host a second subset of the remote computing resources, and so forth. It should be noted that each of the remote computing resources 114a-f use a different protocol to communicate data with the computing device 102.
  • the broker service 112 may store multiple client connection profiles 222. In other examples, the broker service 112 may retrieve client connection profiles 222 from a remote database. The client connection profiles 222 may include connection information to connect the computing device 102 to multiple remote computing resources 114. The broker service 112 may determine how to connect the client device 102 to the multiple remote computing resources 114 based on a client connection profile 222 identified with the computing device 102.
  • the client connection profiles 222 may include information about a user workflow environment. For example, for a given user, a number of remote computing resources 114 may be associated with a given user workflow environment. A user may have multiple user workflow environments, where each user workflow environment uses different sets of remote computing resources 114.
  • the request 116 may indicate a given user workflow environment using the plurality of protocols.
  • the request 116 may include an identifier for the given user workflow environment.
  • the broker service 112 may identify the multiple remote computing resources 114 to connect to the computing device 102 based on the user workflow environment identified in the request 116.
  • the broker service 112 may retrieve details about the multiple remote computing resources 114 for the given user workflow environment from the client connection profile 222. For example, a number of remote computing resources 114 may be mapped to a given user workflow environment and stored in the client connection profile 222.
  • the request 116 may indicate a connection to remote computing resources A, B, and C 114a-c.
  • the broker service 112 may select the multiple remote computing resources 114a-c from a resource pool 224 based on user input in the request 116.
  • the request 116 may indicate the specific remote computing resources 114a-c.
  • the request 116 may indicate types of remote computing resources, and the broker service 112 may determine the specific remote computing resources 114a-c to connect to the computing device 102.
  • the request 116 may indicate a user workflow environment, and the broker service 112 may map the specific remote computing resources 114a-c to that user workflow environment.
  • the broker service 112 may send a message to each of the remote computing resources A, B, and C 114a-c to connect to the computing device 102.
  • the broker service 112 may provide details to the remote computing resources A, B, and C 114a-c on the network location of the computing device 102.
  • Each of the remote computing resources A, B, and C 114a-c may then contact the computing device 102 to establish a connection.
  • establishing a connection with the computing device 102 may include a given remote computing resource connecting to a given application running on the computing device 102.
  • Fig. 3 is a flow diagram illustrating a method 300 to connect a computing device 102 to multiple remote computing resources, according to an example.
  • the method 300 may be performed by a broker service 112 hosted on a remote server.
  • the broker service 112 may receive a request 116 to connect the computing device 102 to multiple remote computing resources 114.
  • Each of the multiple remote computing resources 114 may use different protocols to communicate with the computing device 102.
  • the computing device 102 may send the request 116 in response to user input. For example, a user may request a user workflow environment that uses data from the multiple remote computing resources 114.
  • the broker service 112 may identify the multiple remote computing resources 114 based on the request 116.
  • the request may indicate a user of the computing device 102, may indicate the computing device 102 itself, ora combination of both.
  • the request 116 may specify specific remote computing resources 114.
  • the broker service 112 may identify the multiple remote computing resources 114 from the request 116 itself.
  • the request 116 may specify the types or classes of remote computing resources 114.
  • the broker service 112 may select from a pool of remote computing resources 114 that meet the request 116.
  • the request 116 may indicate a user working environment.
  • the broker service 112 may identify specific remote computing resources 114 for the indicated user working environment.
  • the broker service 112 may store multiple client connection profiles that include connection information to connect the computing device 102 to the multiple remote computing resources 114.
  • the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile.
  • the broker service 112 may store a mapping of the user workflow environment to the multiple remote computing resources in a client connection profile.
  • the broker service 112 may identify the multiple remote computing resources 114 to connect to the computing device 102 based on the user workflow environment indicated in the request 116.
  • the request 116 may indicate a User Workflow Environment-A.
  • the broker service 112 may retrieve details for User Workflow Environment-A from the client connection profile for the user or computing device 102 identified in the request 116.
  • the broker service 112 may identify the set of remote computing resources 114 from the entry for User Workflow Environment-A in the client connection profile.
  • the broker service 112 may connect applications running on the computing device 102 to the multiple remote computing resources 114 using the different protocols.
  • the broker service 112 may send a message to each of the multiple remote computing resources 114 instructing the remote computing resources 114 to connect to a given application running on the computing device 102.
  • multiple remote computing resources 114 may connect to a single application.
  • each remote computing resource 114 may connect to a different application.
  • Fig. 4 is a sequence diagram illustrating a process of connecting a computing device 102 to multiple remote computing resources, according to an example.
  • a computing device 102 may send a request to a broker service to connect the computing device 102 to multiple remote computing resources using different protocols.
  • the broker service 112 may identify the multiple remote computing resources based on the request.
  • the request may specify specific remote computing resources (e.g., a first remote computing resource 114a and a second remote computing resource 114b).
  • the request may specify the types or classes of remote computing resources 114, and the broker service 112 may select from a pool of remote computing resources 114 that meet the request.
  • the broker service 112 may determine that the first remote computing resource 114a using a first protocol meets a first type of remote computing resource as indicated by the request.
  • the broker service 112 may determine that the second remote computing resource 114b using a second protocol meets a second type of remote computing resource as indicated by the request.
  • the request may indicate the user working environment.
  • the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment.
  • the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile.
  • the saved user working environment details may indicate connections to the first remote computing resource 114a and the second remote computing resource 114b.
  • the broker service 112 initiates a connection between the first remote computing resource 114a and the computing device 102.
  • broker service 112 may send a message to the first remote computing resource 114a to connect to the computing device 102.
  • the first remote computing resource 114a may connect to the computing device 102 using a first protocol.
  • the broker service 112 initiates a connection between the second remote computing resource 114b and the computing device 102.
  • broker service 112 may send a second message to the second remote computing resource 114b to connect to the computing device 102.
  • the second remote computing resource 114b may connect to the computing device 102 using a second protocol.
  • Fig. 5 is a sequence diagram illustrating another process of connecting a computing device 102 to multiple remote computing resources, according to an example.
  • a computing device 102 may send a request to a broker service to connect the computing device 102 to multiple remote computing resources using different protocols.
  • the broker service 112 may identify the multiple remote computing resources based on the request.
  • the request may specify the types or classes of remote computing resources 114, and the broker service 112 may select from a pool of remote computing resources 114 that meet the request.
  • the request may indicate the user working environment.
  • the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment.
  • the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile. The saved user working environment details may indicate connections to the first remote computing resource 114a and the second remote computing resource 114b.
  • the broker service 112 may determine connection information (e.g., the location, IP address) to connect to each remote computing resource 114.
  • the broker service 112 may send the connection information to the computing device 102.
  • broker service 112 may send a message to the computing device 102 that includes the location (e.g., IP address) of the first remote computing resource 114a and the second remote computing resource 114b.
  • the computing device 102 may connect to the first remote computing resource 114a using the connection information received from the broker service 112.
  • the connection between the computing device 102 and the first remote computing resource 114a may use a first protocol.
  • the computing device 102 may connect to the second remote computing resource 114b using the connection information received from the broker service 112.
  • the connection between the computing device 102 and the second remote computing resource 114b may use a second protocol.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

In an example in accordance with the present disclosure, a computing device is described. The computing device includes a processor and a memory communicatively coupled to the processor and storing executable instructions. The instructions, when executed, cause the processor to send a request to a broker service to connect the computing device to multiple remote computing resources using different protocols. The instructions, when executed, cause the processor to connect the computing device to the multiple remote computing resources using the broker service.

Description

BROKER SERVICE FOR MULTIPLE PROTOCOLS
BACKGROUND
[0001] Electronic technology has advanced to become virtually ubiquitous in society and has been used to improve many activities in society. For example, electronic devices are used to perform a variety of tasks, including work activities, communication, research, and entertainment. Different varieties of electronic circuits may be utilized to provide different varieties of electronic technology.
BRIEF DESCRIPTION OF THE DRAWINGS
[0002] The accompanying drawings illustrate various examples of the principles described herein and are part of the specification. The illustrated examples are given merely for illustration, and do not limit the scope of the claims.
[0003] Fig. 1 is a block diagram of a computing device to connect to multiple remote computing resources using a plurality of protocols, according to an example of the principles described herein.
[0004] Fig. 2 is a block diagram of a system for connecting a computing device to multiple remote computing resources with different protocols, according to an example of the principles described herein.
[0005] Fig. 3 is a flow diagram illustrating a method to connect a computing device to multiple remote computing resources, according to an example of the principles described herein. [0006] Fig. 4 is a sequence diagram illustrating a process of connecting a computing device to multiple remote computing resources, according to an example of the principles described herein.
[0007] Fig. 5 is a sequence diagram illustrating another process of connecting a computing device to multiple remote computing resources, according to an example of the principles described herein.
[0008] Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements. The figures are not necessarily to scale, and the size of some parts may be exaggerated to more clearly illustrate the example shown. Moreover, the drawings provide examples and/or implementations consistent with the description; however, the description is not at least to the examples and/or implementations provided in the drawings.
DETAILED DESCRIPTION
[0009] Computing devices have become commonplace in today’s society and are used in a variety of contexts. In one particular context, a user at one computing device accesses the computing resources of a computing device at another location. As used herein, the term computing resources refer to circuitry (e.g., a processor), memory and instructions to execute operations. In some examples, a user at a computing device may access the remote device over a network to gain access to computing resources on the remote device. In some examples, multiple remote devices may provide computing resources to a given computing device. In other examples, a single remote device may provide multiple computing resources to the computing device.
[0010] While such remote networks greatly expand the utility of computer networks and computer usage in general, some developments may enhance their useability. For example, computing resources may communicate data using different protocols. As used herein, a “protocol” includes a standard set of rules that allow computing devices to communicate data with each other. In some examples, a protocol may include the type of data that may be exchanged, commands that are used to send and receive data, and how transfers are confirmed. Thus, a protocol may allow computing devices to communicate over a network. The term protocol may also be referred to as network protocol.
[0011] In some examples, a computing device may be used for remote computing. With remote computing, the computing resources of a remote device may be used to perform an operation and the results may be communicated to a local computing device. An example of remote computing includes remote desktop sharing (also referred to as desktop remoting) where an image of the desktop of a remote device is sent to a computing device. The image of a remote frame buffer or “screen” may be displayed by the computing device to a user. A user may interact with the remote device through the desktop displayed on the computing device. A remote desktop protocol may also allow human input devices (e.g., keyboards, mice, tablets, etc.) to function remotely.
[0012] As remote computing expands beyond screen-based interaction, and as network connectivity and performance are increasing dramatically, new protocols are emerging. For example, Universal Scene Description (USD) is a protocol that can be used to describe arbitrarily complex three-dimensional (3D) scenes, materials, motions, etc. USD has been adopted by NVIDIA® in the Omniverse® environment. Another example of protocols that may be used in a remote computing setting include virtual reality streaming protocols (e.g., CloudXR®), which allow the remoting of virtual reality (VR) experiences from remote computing resources to a local computing device. Other examples of protocols that may be used in a remote computing setting include protocols for video streaming (e.g., Network Device Interface (NDI)), and audio/video conferencing (e.g., WebRTC®). In yet other examples, a block-based storage protocol may be used by the computing device to communicate with a block- based storage resource.
[0013] In some examples, a broker service may be used to connect a computing device to a remote computing resource. For example, a broker service may be hosted on a remote server (e.g., a cloud-based server). In some examples, the remote server hosting the broker service may include a virtual cluster of computing devices that provide cloud-based services (e.g., computing, storage, networking, database, etc.). The computing device may communicate with the broker service over a network connection. In some examples, a broker service may facilitate connecting a computing device to a remote device in a pool or disparate pools of remote devices. For example, in the case of remote desktop, the broker service may designate a period of time during which the remote device is “checked out” to the computing device.
[0014] In some approaches, the broker service may allow a connection based on a single protocol or single protocol type. For example, in these approaches, the broker service may facilitate a connection in which a computing device and a remote device communicate using a remote desktop protocol. However, in these approaches, the broker service does not connect the computing device to multiple remote computing resources using different protocols.
[0015] In the examples described herein, a computing device may communicate with a broker service to connect with multiple disparate computing resources using multiple protocols. In some examples, a single request may be sent from the computing device to the broker service. In response to receiving the single request, the broker service may initiate connections between the computing device and the multiple remote computing resources. For example, a computing device could send a single request to the broker service to connect to a remote rendering machine using a remote desktop protocol, connect an application to an Omniverse Nucleus® database server using the USD protocol, and open up a browser and connect to a broadcast stream using the WebRTC® protocol.
[0016] In some examples, the broker service may use saved client connection profiles to establish connections between the computing device and the multiple disparate computing resources. For example, the broker service may store information about a user workflow environment for a user of the computing device. Upon receiving the request from the computing device, the broker service may determine which remote computing resources should be connected to the computing device to create the user workflow environment on the computing device. [0017] Accordingly, the present specification provides computing devices, methods, and systems to establish connections to multiple remote computing resources using different protocols via a broker service. Specifically, a computing device is described. The computing device includes a processor and a memory communicatively coupled to the processor and storing executable instructions that when executed cause the processor to send a request to a broker service to connect the computing device to multiple remote computing resources using different protocols. The instructions also cause the processor to connect the computing device to the multiple remote computing resources using the broker service.
[0018] The present specification also describes a method. The method includes receiving a request to connect a computing device to multiple remote computing resources using different protocols. The method also includes identifying the multiple remote computing resources based on the request. The method further includes connecting applications running on the computing device to the multiple remote computing resources using the different protocols. [0019] The present specification also describes a system. The system includes a computing device to generate a request to connect to multiple remote computing resources that use a plurality of protocols. The system also includes a broker service to receive the request from the computing device. The broker service is also to connect the computing device to the multiple remote computing resources in response to receiving the request from the computing device.
[0020] As used in the present specification and in the appended claims, the term “a number of” or similar language is meant to be understood broadly as any positive number including 1 to infinity.
[0021] As used in the present specification and in the appended claims, the term “processor” may be a controller, an application-specific integrated circuit (ASIC), a semiconductor-based microprocessor, a central processing unit (CPU), and a field-programmable gate array (FPGA), and/or other hardware device. [0022] As used in the present specification and in the appended claims, the term “memory” may include a machine-readable storage medium, which machine-readable storage medium may contain, or store computer-usable program code for use by or in connection with an instruction execution system, apparatus, or device. The memory may take many types of memory including volatile and non-volatile memory. For example, the memory may include Random Access Memory (RAM), Read Only Memory (ROM), optical memory disks, and magnetic disks, among others. The executable code may, when executed by the respective component, cause the component to implement the functionality described herein.
[0023] Turning now to the figures, Fig. 1 is a block diagram of a computing device 102 to connect to multiple remote computing resources 114 that use a plurality of protocols, according to an example of the principles described herein. In some examples, the computing device 102 includes a processor 104. The processor 104 of the computing device 102 may be implemented as dedicated hardware circuitry ora virtualized logical processor. The dedicated hardware circuitry may be implemented as a central processing unit (CPU). A dedicated hardware CPU may be implemented as a single to many-core general purpose processor. A dedicated hardware CPU may also be implemented as a multi-chip solution, where more than one CPU are linked through a bus and schedule processing tasks across the more than one CPU. [0024] The computing device 102 may include a memory 106 communicatively coupled to the processor 104. The memory 106 may be dedicated hardware circuitry to host instructions for the processor 104 to execute. In another implementation, the memory 106 may be virtualized logical memory. Analogous to the processor 104, dedicated hardware circuitry may be implemented with dynamic random-access memory (DRAM) or other hardware implementations for storing processor instructions. Additionally, the virtualized logical memory may be implemented in an abstraction layer which allows the instructions to be executed on a virtualized logical processor, independent of any dedicated hardware implementation. [0025] The computing device 102 may also include instructions, which are stored on the memory 106 and are executable by the processor 104. The instructions may be implemented in a platform specific language that the processor 104 may decode and execute. The instructions may be stored in the memory 106 during execution. The instructions may include operations executable by the processor 104 to manage a remote desktop connection, according to the examples described herein.
[0026] The computing device 102 may be included in a system 100 that includes a broker service 112. In some examples, the broker service 112 may connect the computing device 102 to remote computing resources 114 (e.g., processing, memory, executable instructions, etc.). In some examples, the broker service 112 may be hosted on a remote server. For example, the computing device 102 may communicate with the broker service 112 over a network connection.
[0027] Within a computer network there may be a pool or multiple pools of remote computing resources 114. For example, a remote device in a pool of remote devices may be capable of providing a connection to a computing device 102. Each of the remote devices may provide remote computing resources 114 to the computing device 102. In some examples, a single remote device hosts multiple remote computing resources 114. For example, the computing device 102 may connect to a single remote device that implements different computing resources, where each computing resource uses a different protocol to communicate with the computing device 102. In some examples, multiple remote devices may host the multiple remote computing resources. For example, different remote devices may each provide a single computing resource or a plurality of computing resources.
[0028] In some examples, each of the remote devices may have similar characteristics, i.e., similar hardware components and/or similar applications and datastores. In another example, the different remote devices have different characteristics.
[0029] In some examples, the processor 104 may execute request instructions 108 to send a request 116 to the broker service 112 to connect the computing device 102 to multiple remote computing resources 114 using different protocols. The request 116 may be a single communication (e.g., message). The request 116 may instruct the broker service 112 to connect the computing device 102 to multiple remote computing resources 114 using different protocols.
[0030] In some examples, the request 116 may be generated based on user input. For example, a user may specify certain remote computing resources 114 that the user wishes to connect to. These multiple remote computing resources 114 may each use a different protocol to communicate with the computing device 102. In some examples, the user may specify a user working environment. As used herein a user working environment may include a number of applications that use data supplied by multiple remote computing resources 114. For example, a first application may include a remote desktop application that connects with a first remote computing resource 114 using a remote desktop protocol, a second application may connect to a second remote computing resource 114 (e.g., a database server) using the USD protocol, a third application (e.g., a web browser) may connect to a broadcast stream of a third remote computing resource 114 using WebRTC.
[0031] In some examples, the broker service 112 may save the user working environment in a client connection profile. The broker service 112 may map the user working environment to specific remote computing resources 114 to implement the user working environment. In some examples, the broker service 112 may store multiple user working environments fora given user in the client connection profile for that user. For example, User Working Environment-A may include a set of remote computing resources, User Working Environment-B may include a different set of remote computing resources, and so forth.
[0032] Upon receiving the request 116, the broker service 112 may identify multiple remote computing resources 114 to establish a connection to the computing device 102. In some examples, the request 116 may specify specific remote computing resources 114. In this case, the broker service 112 may identify the specific remote computing resources 114 directly from the request 116. In other examples, the request 116 may specify the types or classes of remote computing resources 114. In this case, the broker service 112 may select from a pool of remote computing resources 114 that meet the request 116. In yet other examples, the request 116 may indicate the user working environment. In this case, the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment. In some examples, the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile.
[0033] In some examples, the processor 104 may execute connection instructions 110 to connect the computing device 102 to the multiple remote computing resources 114 using the broker service 112. For example, upon identifying the multiple remote computing resources 114 to connect to the computing device 102, the broker service 112 may determine connection information to establish connections between the computing device 102 and the multiple remote computing resources 114. In some examples, the connection information may include the location (e.g., IP address) of each remote computing resource 114. In some examples, the broker service 112 may instruct the multiple remote computing resources 114 to connect to applications running on the computing device 102. The multiple remote computing resources 114 may connect to the computing device 102 using different protocols. For example, a first remote computing resource 114 may connect to the computing device 102 using a first protocol, a second remote computing resource 114 may connect to the computing device 102 using a second protocol, and so forth. [0034] In some examples, the processor 104 may implement an agent on the local computing device 102. The agent may communicate with the broker service 112. The agent may also initiate applications on the computing device 102 in response to the request 116. The broker service 112 may communicate the locations (e.g., IP addresses) of the multiple remote computing resources 114 to the agent. The agent may would then initiate an application or multiple applications on the local computing device 102 and inform the application or multiple applications of the location of the remote computing resources 114. [0035] It should be noted that the computing device 102 may connect to the multiple remote computing resources 114 without the plurality of protocols passing through the broker service 112. In other words, the broker service 112 may initiate the connections, but the protocols are established between the computing device 102 and the multiple remote computing resources 114.
[0036] In some examples, when the computing device 102 generates the request 116, the request 116 may cause multiple applications to open on the computing device 102. Each application may use a different protocol received from a remote computing resource 114. For example, a user may initiate the request 116. The processor 104 may open the applications to establish connections with the remote computing resources 114. In an example, a first remote computing resource 114 may connect to a first application using a first protocol, a second remote computing resource 114 may connect to a second application using a second protocol, and so forth.
[0037] In some examples, the request 116 may cause a single application to open on the computing device 102. For example, the processor 104 may open the single application in response to the request 116 being generated. The single application may use the different protocols. For example, the application may connect to a first remote computing resource 114 using a first protocol, a second remote computing resource 114 using a second protocol, and so forth. [0038] As seen by these examples, multiple concurrent and disparate protocols from the same client endpoint may be established using the broker service 112. Remoting protocols beyond image-based protocols (e.g., remote desktop protocols) may be supported. Furthermore, a single broker service 112 may be used to manage the protocols and connections of multiple computing devices 102. These examples may save time to connect to multiple remote computing resources and may help prevent incorrect connections.
[0039] Fig. 2 is a block diagram of a system 200 for connecting a computing device 102 to multiple remote computing resources with different protocols, according to an example of the principles described herein. In an example, the system 200 may include a computing device 102, a broker service 112 and a number of remote computing resources 114a-f. Each of the components depicted in Fig. 2 may include a processor and memory. That is, each component may include a processor, an application-specific integrated circuit (ASIC), a semiconductor-based microprocessor, a central processing unit (CPU), and a field-programmable gate array (FPGA), and/or other hardware device.
[0040] The memory may include a machine-readable storage medium, which machine-readable storage medium may contain, or store computer-usable program code for use by or in connection with an instruction execution system, apparatus, or device. The memory may take many types of memory including volatile and non-volatile memory. For example, the memory may include Random Access Memory (RAM), Read Only Memory (ROM), optical memory disks, and magnetic disks, among others. The executable code may, when executed by the respective component, cause the component to implement at least the functionality described herein.
[0041] In some examples, the computing device 102 may include instructions that when executed cause the processor of the computing device 102 to run an agent 220 to communicate with the broker service 112. As described above, the agent 220 may communicate with the broker service 112. The agent may also initiate applications on the computing device 102 in response to the request 116. The agent 220 may receive user input to generate a request 116 for connecting the computing device 102 to multiple remote computing resources that use a plurality of protocols. Each of the multiple remote computing resources may communicate data using a different protocol. The agent 220 may then send the request 116 to the broker service 112 to establish connections with the multiple remote computing resources.
[0042] The broker service 112 may receive the request 116 from the agent 220 of the computing device 102. The broker service 112 may connect the computing device 102 to multiple remote computing resources in response to receiving the request 116 from the computing device 102. In some examples, the broker service 112 may select the multiple remote computing resources from a resource pool 224 or multiple disparate resource pools 224. In some examples, the resource pool 224 may include multiple remote devices that each host a remote computing resource. In some examples, the resource pool 224 may include a single remote device that hosts each of the remote computing resources. In some examples, a first remote device may host a first subset of the remote computing resources, a second remote device may host a second subset of the remote computing resources, and so forth. It should be noted that each of the remote computing resources 114a-f use a different protocol to communicate data with the computing device 102.
[0043] In some examples, the broker service 112 may store multiple client connection profiles 222. In other examples, the broker service 112 may retrieve client connection profiles 222 from a remote database. The client connection profiles 222 may include connection information to connect the computing device 102 to multiple remote computing resources 114. The broker service 112 may determine how to connect the client device 102 to the multiple remote computing resources 114 based on a client connection profile 222 identified with the computing device 102.
[0044] In some examples, the client connection profiles 222 may include information about a user workflow environment. For example, for a given user, a number of remote computing resources 114 may be associated with a given user workflow environment. A user may have multiple user workflow environments, where each user workflow environment uses different sets of remote computing resources 114.
[0045] In some examples, the request 116 may indicate a given user workflow environment using the plurality of protocols. For example, the request 116 may include an identifier for the given user workflow environment. The broker service 112 may identify the multiple remote computing resources 114 to connect to the computing device 102 based on the user workflow environment identified in the request 116. In some examples, the broker service 112 may retrieve details about the multiple remote computing resources 114 for the given user workflow environment from the client connection profile 222. For example, a number of remote computing resources 114 may be mapped to a given user workflow environment and stored in the client connection profile 222.
[0046] In the example of Fig. 2, the request 116 may indicate a connection to remote computing resources A, B, and C 114a-c. In this example, the broker service 112 may select the multiple remote computing resources 114a-c from a resource pool 224 based on user input in the request 116. For example, the request 116 may indicate the specific remote computing resources 114a-c. In another example, the request 116 may indicate types of remote computing resources, and the broker service 112 may determine the specific remote computing resources 114a-c to connect to the computing device 102. In yet another example, the request 116 may indicate a user workflow environment, and the broker service 112 may map the specific remote computing resources 114a-c to that user workflow environment.
[0047] Upon determining that the computing device 102 is to connect to remote computing resources A, B, and C 114a-c, the broker service 112 may send a message to each of the remote computing resources A, B, and C 114a-c to connect to the computing device 102. For example, the broker service 112 may provide details to the remote computing resources A, B, and C 114a-c on the network location of the computing device 102. Each of the remote computing resources A, B, and C 114a-c may then contact the computing device 102 to establish a connection. In some examples, establishing a connection with the computing device 102 may include a given remote computing resource connecting to a given application running on the computing device 102.
[0048] Fig. 3 is a flow diagram illustrating a method 300 to connect a computing device 102 to multiple remote computing resources, according to an example. In some examples, the method 300 may be performed by a broker service 112 hosted on a remote server.
[0049] At 302, the broker service 112 may receive a request 116 to connect the computing device 102 to multiple remote computing resources 114. Each of the multiple remote computing resources 114 may use different protocols to communicate with the computing device 102. In some examples, the computing device 102 may send the request 116 in response to user input. For example, a user may request a user workflow environment that uses data from the multiple remote computing resources 114.
[0050] At 304, the broker service 112 may identify the multiple remote computing resources 114 based on the request 116. For example, the request may indicate a user of the computing device 102, may indicate the computing device 102 itself, ora combination of both. In some examples, the request 116 may specify specific remote computing resources 114. In this case, the broker service 112 may identify the multiple remote computing resources 114 from the request 116 itself.
[0051] In some examples, the request 116 may specify the types or classes of remote computing resources 114. In this case, the broker service 112 may select from a pool of remote computing resources 114 that meet the request 116.
[0052] In some examples, the request 116 may indicate a user working environment. In this case, the broker service 112 may identify specific remote computing resources 114 for the indicated user working environment. In some examples, the broker service 112 may store multiple client connection profiles that include connection information to connect the computing device 102 to the multiple remote computing resources 114. The broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile. In some examples, the broker service 112 may store a mapping of the user workflow environment to the multiple remote computing resources in a client connection profile.
[0053] The broker service 112 may identify the multiple remote computing resources 114 to connect to the computing device 102 based on the user workflow environment indicated in the request 116. For example, the request 116 may indicate a User Workflow Environment-A. The broker service 112 may retrieve details for User Workflow Environment-A from the client connection profile for the user or computing device 102 identified in the request 116. The broker service 112 may identify the set of remote computing resources 114 from the entry for User Workflow Environment-A in the client connection profile. [0054] At 306, the broker service 112 may connect applications running on the computing device 102 to the multiple remote computing resources 114 using the different protocols. For example, the broker service 112 may send a message to each of the multiple remote computing resources 114 instructing the remote computing resources 114 to connect to a given application running on the computing device 102. In some examples, multiple remote computing resources 114 may connect to a single application. In some examples, each remote computing resource 114 may connect to a different application.
[0055] Fig. 4 is a sequence diagram illustrating a process of connecting a computing device 102 to multiple remote computing resources, according to an example. At 401 , a computing device 102 may send a request to a broker service to connect the computing device 102 to multiple remote computing resources using different protocols.
[0056] At 403, the broker service 112 may identify the multiple remote computing resources based on the request. For example, the request may specify specific remote computing resources (e.g., a first remote computing resource 114a and a second remote computing resource 114b).
[0057] In another example, the request may specify the types or classes of remote computing resources 114, and the broker service 112 may select from a pool of remote computing resources 114 that meet the request. For example, the broker service 112 may determine that the first remote computing resource 114a using a first protocol meets a first type of remote computing resource as indicated by the request. The broker service 112 may determine that the second remote computing resource 114b using a second protocol meets a second type of remote computing resource as indicated by the request.
[0058] In yet another example, the request may indicate the user working environment. In this case, the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment. In some examples, the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile. The saved user working environment details may indicate connections to the first remote computing resource 114a and the second remote computing resource 114b. [0059] At 405, the broker service 112 initiates a connection between the first remote computing resource 114a and the computing device 102. For example, broker service 112 may send a message to the first remote computing resource 114a to connect to the computing device 102. At 407, the first remote computing resource 114a may connect to the computing device 102 using a first protocol. [0060] At 409, the broker service 112 initiates a connection between the second remote computing resource 114b and the computing device 102. For example, broker service 112 may send a second message to the second remote computing resource 114b to connect to the computing device 102. At 411 , the second remote computing resource 114b may connect to the computing device 102 using a second protocol.
[0061] Fig. 5 is a sequence diagram illustrating another process of connecting a computing device 102 to multiple remote computing resources, according to an example. At 501, a computing device 102 may send a request to a broker service to connect the computing device 102 to multiple remote computing resources using different protocols.
[0062] At 503, the broker service 112 may identify the multiple remote computing resources based on the request. For example, the request may specify the types or classes of remote computing resources 114, and the broker service 112 may select from a pool of remote computing resources 114 that meet the request. In yet another example, the request may indicate the user working environment. In this case, the broker service 112 may identify specify specific remote computing resources 114 for the indicated user working environment. In some examples, the broker service 112 may retrieve details for the multiple remote computing resources 114 from the client connection profile. The saved user working environment details may indicate connections to the first remote computing resource 114a and the second remote computing resource 114b. In some examples, the broker service 112 may determine connection information (e.g., the location, IP address) to connect to each remote computing resource 114.
[0063] At 505, the broker service 112 may send the connection information to the computing device 102. For example, broker service 112 may send a message to the computing device 102 that includes the location (e.g., IP address) of the first remote computing resource 114a and the second remote computing resource 114b.
[0064] At 507, the computing device 102 may connect to the first remote computing resource 114a using the connection information received from the broker service 112. The connection between the computing device 102 and the first remote computing resource 114a may use a first protocol.
[0065] At 509, the computing device 102 may connect to the second remote computing resource 114b using the connection information received from the broker service 112. The connection between the computing device 102 and the second remote computing resource 114b may use a second protocol.

Claims

CLAIMS What is claimed is:
1. A computing device, comprising: a processor; and a memory communicatively coupled to the processor and storing executable instructions that when executed cause the processor to: send a request to a broker service to connect the computing device to multiple remote computing resources using different protocols; and connect the computing device to the multiple remote computing resources using the broker service.
2. The computing device of claim 1 , wherein each of the multiple remote computing resources communicate data using a different protocol.
3. The computing device of claim 1 , wherein multiple remote devices host the multiple remote computing resources.
4. The computing device of claim 1 , wherein a single remote device hosts the multiple remote computing resources.
5. The computing device of claim 1 , further comprising executable instructions that when executed cause the processor to run an agent to communicate with the broker service.
6. The computing device of claim 5, wherein the agent is to: receive user input to generate the request; and send the request to the broker service to establish connections with the multiple remote computing resources.
7. The computing device of claim 1 , wherein the request is to cause multiple applications to open on the computing device, wherein each application uses a different protocol.
8. The computing device of claim 1 , wherein the request is to cause a single application to open on the computing device, wherein the single application uses the different protocols.
9. A method, comprising: receiving a request to connect a computing device to multiple remote computing resources using different protocols; identifying the multiple remote computing resources based on the request; and connecting applications running on the computing device to the multiple remote computing resources using the different protocols.
10. The method of claim 9, wherein the method is performed by a broker service hosted on a remote server.
11. The method of claim 9, further comprising: storing multiple client connection profiles comprising connection information to connect the computing device to the multiple remote computing resources; and determining how to connect to the multiple remote computing resources based on a client connection profile identified with the computing device.
12. The method of claim 9, further comprising selecting the multiple remote computing resources from a resource pool or multiple disparate resource pools based on user input in the request.
13. A system, comprising: a computing device to: generate a request to connect to multiple remote computing resources that use a plurality of protocols; and a broker service to: receive the request from the computing device; and connect the computing device to the multiple remote computing resources in response to receiving the request from the computing device.
14. The system of claim 13, wherein the computing device is to connect to the multiple remote computing resources without the plurality of protocols passing through the broker service.
15. The system of claim 13, wherein the request indicates a user workflow environment using the plurality of protocols, and wherein the broker service identifies the multiple remote computing resources to connect to the computing device based on the user workflow environment.
PCT/US2021/042534 2021-07-21 2021-07-21 Broker service for multiple protocols Ceased WO2023003551A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/US2021/042534 WO2023003551A1 (en) 2021-07-21 2021-07-21 Broker service for multiple protocols
TW111117510A TW202307681A (en) 2021-07-21 2022-05-10 Broker service for multiple protocols

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2021/042534 WO2023003551A1 (en) 2021-07-21 2021-07-21 Broker service for multiple protocols

Publications (1)

Publication Number Publication Date
WO2023003551A1 true WO2023003551A1 (en) 2023-01-26

Family

ID=84980078

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2021/042534 Ceased WO2023003551A1 (en) 2021-07-21 2021-07-21 Broker service for multiple protocols

Country Status (2)

Country Link
TW (1) TW202307681A (en)
WO (1) WO2023003551A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12450201B2 (en) 2016-04-26 2025-10-21 Umbra Technologies Ltd. Systems and methods for routing data to a parallel file system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070056044A1 (en) * 2005-08-24 2007-03-08 Illg Jason J Matching entitlement information for multiple sources
US20190207922A1 (en) * 2016-05-20 2019-07-04 Sap Se Application managed service instances
US11057464B1 (en) * 2020-06-04 2021-07-06 Citrix Systems, Inc. Synchronization of data between local and remote computing environment buffers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070056044A1 (en) * 2005-08-24 2007-03-08 Illg Jason J Matching entitlement information for multiple sources
US20190207922A1 (en) * 2016-05-20 2019-07-04 Sap Se Application managed service instances
US11057464B1 (en) * 2020-06-04 2021-07-06 Citrix Systems, Inc. Synchronization of data between local and remote computing environment buffers

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12450201B2 (en) 2016-04-26 2025-10-21 Umbra Technologies Ltd. Systems and methods for routing data to a parallel file system

Also Published As

Publication number Publication date
TW202307681A (en) 2023-02-16

Similar Documents

Publication Publication Date Title
CN114968478B (en) A data processing method, device, server and system
CN113300985B (en) Data processing method, device, equipment and storage medium
US10841366B2 (en) Service graph based serverless cloud platform
CN103270492B (en) Method and system for the hardware-accelerated graphics of network-enabled application
US7937452B2 (en) Framework for rendering plug-ins in remote access services
US10165058B2 (en) Dynamic local function binding apparatus and method
US20160335738A1 (en) System and Method for Distributed Virtualization of GPUs in Desktop Cloud
US20090006537A1 (en) Virtual Desktop Integration with Terminal Services
US20190196875A1 (en) Method, system and computer program product for processing computing task
CN106354559A (en) Method and device for processing cloud desktop resources
CN107580011B (en) A data sharing method and desktop cloud server
WO2018223786A1 (en) Cloud desktop system, and image sequence compression and encoding method, and medium therefor
CN111698346A (en) Private network address conversion method and device, private network gateway and storage medium
CN106569874B (en) Operation method of storage device and physical server
WO2021169264A1 (en) Automatic scheduling method and apparatus for database access layer middleware
CN115550354A (en) Data processing method and device and computer readable storage medium
WO2023003551A1 (en) Broker service for multiple protocols
CN103019813B (en) Method for obtaining interactive strength of SaaS-based interactive program
CN111414238A (en) Remote control method and system
CN111651146A (en) A function generation method, apparatus, device and medium
Jeong et al. WebRTC-based resource offloading in smart home environments
WO2023035619A1 (en) Scene rendering method and apparatus, device and system
CN115396500A (en) Service platform switching method and system based on private network and electronic equipment
CN110198266B (en) Real-time data stream processing method and system
CN114661441A (en) Computing platform, computing force expansion method and device of computing platform

Legal Events

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

Ref document number: 21951080

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21951080

Country of ref document: EP

Kind code of ref document: A1