WO2021083284A1 - 一种负载均衡方法、装置、介质和设备 - Google Patents

一种负载均衡方法、装置、介质和设备 Download PDF

Info

Publication number
WO2021083284A1
WO2021083284A1 PCT/CN2020/124879 CN2020124879W WO2021083284A1 WO 2021083284 A1 WO2021083284 A1 WO 2021083284A1 CN 2020124879 W CN2020124879 W CN 2020124879W WO 2021083284 A1 WO2021083284 A1 WO 2021083284A1
Authority
WO
WIPO (PCT)
Prior art keywords
request message
client
connection
load balancing
service server
Prior art date
Application number
PCT/CN2020/124879
Other languages
English (en)
French (fr)
Inventor
李逸骏
Original Assignee
贵州白山云科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN201911050572.XA external-priority patent/CN112751898B/zh
Application filed by 贵州白山云科技股份有限公司 filed Critical 贵州白山云科技股份有限公司
Publication of WO2021083284A1 publication Critical patent/WO2021083284A1/zh

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Definitions

  • This article relates to the field of network communication technology, in particular to load balancing methods, devices, media, and equipment.
  • the existing 7-layer load balancing schemes all require the load balancer to provide a forwarding function, which causes the load balancer to have a higher load and consume more resources.
  • the load balancer and business server are deployed in a mixed manner, it will cause additional bandwidth consumption for the network card.
  • this article provides a load balancing method, device, medium and equipment.
  • a load balancing method including:
  • the load balancing method further includes establishing a connection with the client, and when the connection established with the client includes a plurality of request messages, the parsing the request messages and determining the service server according to the load balancing rule It includes: determining a service server based on the content of each of the multiple request messages.
  • the encapsulation of the request message of the client includes: converting the message format, deleting duplicate messages, and encapsulating extended information;
  • the service server determined based on a certain request message is the same as the service server determined based on the adjacent previous request message, when the request message of the client is encapsulated, the previous request message is no longer encapsulated. The same part of the extended information of the text.
  • the extended information includes: relevant information included in the protocol used for the connection with the client, and information required by the service server to parse and respond to the request message.
  • Load balancing methods also include:
  • the connection includes one of IPC connection based on shared memory, Unix Socket, pipe, and shared memory;
  • the connection includes one of UDP connection, TCP connection, RDMA, and encrypted tunnel.
  • Load balancing methods applied to business servers, including:
  • the load balancing method applied to the business server also includes:
  • the business server When the business server changes the connection state, it sends synchronization information to the load balancer.
  • a load balancing device including:
  • the first receiving module is used to receive a request message from the client
  • the load balancing module is used to determine the business server according to the load balancing rules
  • the forwarding module is used to encapsulate the request message, and send the encapsulated request message to the service server.
  • the load balancing device further includes a first connection module, which is used to establish a connection with the client; when the connection established with the client includes a plurality of request messages, the request message is parsed and based on the load
  • the determination of the service server by the balancing rule includes: determining the service server based on the content of each request message in the plurality of request messages.
  • the encapsulation of the request message of the client includes: converting the message format, deleting duplicate messages, and encapsulating extended information;
  • the service server determined based on a certain request message is the same as the service server determined based on the adjacent previous request message, when the request message of the client is encapsulated, the previous request message is no longer encapsulated. The same part of the extended information of the text.
  • the extended information includes: relevant information included in the protocol used for the connection with the client, and information required by the service server to parse and respond to the request message.
  • the load balancing device also includes:
  • the second connection module is used to establish a connection with the service server
  • the connection includes one of IPC connection based on shared memory, Unix Socket, pipe, and shared memory;
  • the connection includes one of UDP connection, TCP connection, RDMA, and encrypted tunnel.
  • the load balancing device also includes:
  • the second receiving module is configured to receive the encapsulated request message sent by the load balancer
  • the response module is used to process the request message, generate a response message, and send the response message to the client.
  • the address change module is configured to modify the sending address of the response message to the address of the load balancer when the load balancer is not the local machine.
  • the information synchronization module is used to send synchronization information to the load balancer when the service server changes the connection state.
  • a computer-readable storage medium with a computer program stored thereon, which implements the steps of the load balancing method when the computer program is executed.
  • a computer device including a processor, a memory, and a computer program stored on the memory, and the processor implements the steps of the load balancing method when the computer program is executed by the processor.
  • This article adopts the load balancing method. After determining the business server, the business server directly responds to the client's request. In the case of flexible deployment of the load balancer, precise scheduling can be achieved while reducing the network load in the cluster and reducing the internal communication of the cluster. bandwidth.
  • Fig. 1 is a flow chart showing a load balancing method according to an exemplary embodiment.
  • Fig. 2 is a flow chart showing a load balancing method according to an exemplary embodiment.
  • Figure 3 is a schematic diagram of a load balancer and business server mixed deployment.
  • Figure 4 is a schematic diagram of a load balancer deployed as a gateway.
  • Fig. 5 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 6 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 7 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 8 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 9 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 10 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • Fig. 11 is a block diagram showing a computer device according to an exemplary embodiment.
  • Fig. 1 is a flow chart showing a load balancing method according to an exemplary embodiment. Referring to Figure 1, load balancing methods are applied to load balancers, including:
  • Step S11 Receive a request message from the client.
  • the message can be streaming media data carried on udp, http/https data on tcp, and so on.
  • Step S12 parse the request message and determine the service server according to the load balancing rule. Analyze the client's request message to further determine the service server.
  • the rules for determining the business server are determined by integrating the client IP information, the load of the business server, the resource distribution and type of the business request, the configuration of the load balancer and other information to determine, so as to achieve precise scheduling.
  • Step S13 Encapsulate the client's request message, and send the encapsulated request message to the service server. Re-encapsulate the client's request message, delete duplicate messages and useless messages, and send them to the determined service server to reduce unnecessary bandwidth consumption as much as possible. In special cases, the message format will be converted according to the server performance. At the same time, the necessary information for the business server to respond to the client's request message is sent to the business server together so that the business server can respond to the client's request.
  • the load balancing method further includes establishing a connection with the client.
  • parsing the request messages and determining the service server according to the load balancing rule includes: The content of each request message in the message determines the service server.
  • multiple request messages may be included.
  • the load balancer determines the service server based on the earlier request message, it will re-parse the message content when processing the next request message. , And re-determine the service server according to the content of the message and the preset load balancing rules, so that different service servers can respond to different content requests from the client and achieve precise scheduling.
  • the video server is used to process the video request of the client
  • the download server is used to process the download request of the client, so as to achieve precise scheduling and improve the quality of service.
  • encapsulating the client's request message includes: converting the message format, deleting duplicate messages, and encapsulating extended information; in order to further reduce the consumption of bandwidth resources, the load balancer will firstly forward the client's request message. Encapsulate the request message. For example, in order to enable the service server to respond to the client's request message smoothly, the message format needs to be appropriately converted according to the specific configuration of the server, for example, the HTTP/2 format message is converted to http /1.1 format message. In the process of encapsulating the client's request message, some non-essential content will be removed, such as repeated messages, ACK messages when the load balancer establishes a connection with the client, etc.
  • the client address and the encrypted tunnel established with the client must be encapsulated as extended information.
  • the necessary information required by the service server to parse and respond to the client request message is encapsulated, which further reduces the consumption of bandwidth resources.
  • the extended information includes: relevant information included in the protocol used for the connection with the client, and information required by the service server to parse and respond to the request message.
  • the relevant information contained in the protocol used for the connection with the client can be the parameters negotiated when the load balancer establishes a connection with the client, the configuration information of the load balancer, the connection status between the load balancer and the client, and the client's request message is an https message One or more of the status information of the TLS encrypted tunnel established between the load balancer and the client.
  • the information required by the service server to parse and respond to the request message may be client address information or other information. Through the extended information, the service server can smoothly parse the client's request message and correctly respond to the request message.
  • the load balancer encapsulates the key and client address information negotiated with the client during the https handshake process in the forwarded message .
  • the service server can use the secret key to parse the request message encrypted by the client, and send the response message to the client according to the client's address.
  • the load balancer sends the connection status with the client to the service server, and the service server can sense the change of the connection status between the load balancer and the client at any time, and construct a response message according to the connection status information. And send a response message to the correct client according to the client's address information.
  • the service server determined based on a certain request message is the same as the service server determined based on the adjacent previous request message, when the client's request message is encapsulated, the same extended information as the previous request message is no longer encapsulated section.
  • the load balancer encapsulates the request message, Only the necessary request messages are encapsulated, and the extended information is not encapsulated repeatedly. Further reduce the consumption of bandwidth resources.
  • the load balancing method further includes: establishing a connection with the business server; when the business server is the local machine, the connection with the business server includes shared memory IPC connection, Unix socket, pipe, shared memory and other local communications One of the methods; it can also be other local communication methods, and this article does not restrict it.
  • the connection with the service server includes one of UDP connection, TCP connection, RDMA, and encrypted tunnel. It can also be other feasible communication methods, and this article does not restrict it.
  • connection between the load balancer and the business server is used to forward client request messages and synchronization status. You can choose UDP connection, TCP connection or encrypted tunnel connection according to your needs, and it does not depend on the messages between the client and the load balancer. transfer method. And according to the deployment of the same machine between the business server and the load balancer, network connection mode, network connection distance, etc., different transmission methods can be selected.
  • Fig. 2 is a flow chart showing a load balancing method according to an exemplary embodiment.
  • the load balancing method is applied to the business server, including:
  • Step S21 receiving the encapsulated request message sent by the load balancer
  • Step S22 Process the encapsulated request message, generate a response message, and send the response message to the client.
  • the response message of the service server in response to the client request is no longer sent to the load balancer, but directly sent to the client, reducing the resource consumption of the load balancer.
  • the business server and the load balancer can be deployed on the same server to achieve hybrid deployment, that is, in a cluster, each server is deployed with a load balancer and a business server. It can also be deployed separately from the load balancer, which serves as a gateway.
  • connection includes shared memory-based IPC connection, Unix socket, pipe, shared memory, and of course other types
  • the connection method is not limited in this article.
  • the business server can directly respond to client requests.
  • the connection includes UDP connection, TCP connection, RDMA, one of the encrypted tunnels, and of course other types of connection methods, which are not limited in this article.
  • the service server sends the response message, it also needs to modify the sending address of the response message to the address of the load balancer.
  • the business server When the business server changes the connection state, it sends synchronization information to the load balancer. For example, when the server responds to the client's request, it will disconnect from the client. When the connection between the business server and the client is disconnected, the business server will send synchronization information to the load balancer so that the load balancer will respond to the next client's request Send to the business server.
  • Embodiment 1 is a schematic diagram of a load balancer and business server mixed deployment.
  • the load balancer receives the client's request message, parses the client's request message, and determines the business server according to the load balancing rules. For example, the load balancer establishes a TCP connection with the client, and the client's request includes request A and request B. According to the load balancing rules, the load balancer determines that the server A responds to the client's request A, and the business server B responds to the client's request B. Therefore, the load balancer parses different requests from the same client to different business servers.
  • business server A since it is the same server as the load balancer, it can receive client request A encapsulated by the load balancer by sharing memory, respond to request A, and send the response message directly to the client.
  • the load balancer is other servers in the cluster. Therefore, the load balancer needs to first establish a connection with business server B to forward encapsulated request messages and synchronization messages.
  • Business server B parses the encapsulated request B sent by the load balancer according to the extended information, and sends the response message directly to the client. In order for the client to successfully receive the response message, the business server also needs to send the response message Change the sending address to the address of the load balancer.
  • FIG. 4 is a schematic diagram of a load balancer deployed as a gateway.
  • the load balancer receives the client's request message, establishes a connection with the client, parses the client's request message, and determines the service server according to the load balancing rules.
  • the client's request is an HTTPS request
  • the load balancer shakes hands with the client and negotiates an encryption key.
  • the load balancer parses the client's request, which includes request A and request B.
  • the load balancer determines that the server A responds to the client's request A, and the business server B responds to the client's request B. Therefore, the load balancer parses different requests from the same client to different service servers.
  • the load balancer encapsulates the client's request message, clears duplicate messages, and after the ACK message when shaking hands with the client , Send request A's message and encryption key, client address, load balancer address and other information necessary to respond to request A to business server A, and request B's message and encrypted information, client address, load balancer
  • the information necessary to respond to request B is sent to service server B.
  • the business server parses the encapsulated request message sent by the load balancer, and sends the response message directly to the client after being encrypted with the encryption key.
  • the business server returns The sending address of the response message needs to be modified to the address of the load balancer.
  • the load balancer only needs to undertake the incoming message parsing and forwarding, and does not need to undertake the output content, which reduces one bandwidth forwarding, and can significantly reduce the amount of data in the cluster in the CDN scenario.
  • Bandwidth consumption Realize accurate load balancing for messages above layer 4, and can realize content-based load balancing for encrypted traffic. At the same time, for long connections, different requests within a single request can be balanced separately.
  • Fig. 5 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing device is applied to a load balancer, and includes a first receiving module 501, a load balancing module 502, and a forwarding module 503.
  • the first receiving module 501 is configured to receive a request message from a client.
  • the load balancing module 502 is configured to determine the service server according to the load balancing rule.
  • the forwarding module 503 is configured to encapsulate the request message of the client, and send the encapsulated request message to the service server.
  • Fig. 6 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing apparatus further includes a first connection module 601, which is configured to establish a connection with a client; when the connection established with the client includes multiple request messages, it is resolved
  • the request message and the determination of the service server according to the load balancing rule include: determining the service server based on the content of each of the multiple request messages. ;
  • Encapsulating the client's request message includes: converting the message format, deleting duplicate messages, and encapsulating extended information.
  • the service server determined based on a certain request message is the same as the service server determined based on the adjacent previous request message, when the client's request message is encapsulated, the same extended information as the previous request message is no longer encapsulated section.
  • the extended information includes: related information included in the protocol used for the connection with the client, and information required by the service server to parse and respond to the request message.
  • Fig. 7 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing device further includes: a second connection module 701.
  • the second connection module 701 is configured to establish a connection with a service server.
  • connection When the business server is the local machine, the connection includes one of IPC connection based on shared memory, Unix Socket, pipe, and shared memory;
  • the connection is one of UDP connection, TCP connection, RDMA, and encrypted tunnel.
  • Fig. 8 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing device applied to the service server includes: a second receiving module 801 and a response module 802.
  • the second receiving module 801 is configured to receive the encapsulated request message sent by the load balancer.
  • the response module 802 is configured to process the encapsulated request message, generate a response message, and send the response message to the client.
  • Fig. 9 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing device further includes: an address change module 901.
  • the address changing module 901 is configured to modify the sending address of the response message to the address of the load balancer when the load balancer is not the local machine.
  • Fig. 10 is a block diagram showing a load balancing device according to an exemplary embodiment.
  • the load balancing device further includes: an information synchronization module 1001.
  • the information synchronization module is configured to send synchronization information to the load balancer when the service server changes the connection state.
  • Fig. 11 is a block diagram showing a computer device 1100 according to an exemplary embodiment.
  • the computer device 1100 may be provided as a server. 11, the computer device 1100 includes a processor 1101, and the number of processors can be set to one or more as required.
  • the computer device 1100 further includes a memory 1102 for storing instructions executable by the processor 1101, such as application programs. The number of memories can be set to one or more as required.
  • the stored application program can be one or more.
  • the processor 1101 is configured to execute instructions to perform the load balancing method described above.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data) , Including but not limited to RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridge, magnetic tape, magnetic disk storage or other magnetic storage device, or can be used for Any other medium that stores desired information and can be accessed by a computer.
  • communication media usually contain computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as carrier waves or other transmission mechanisms, and may include any information delivery media. .
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • the embodiment of the present invention provides a method and device for load balancing.
  • the load balancer only needs to bear the incoming message parsing and forwarding, and does not need to bear the output content, which reduces one bandwidth forwarding, and can significantly reduce the bandwidth consumption in the cluster in the cloud computing scenario.

Abstract

本文是关于一种负载均衡方法、装置、介质及设备。负载均衡方法包括,负载均衡器接收客户端的请求报文;解析所述请求报文并根据负载均衡规则确定业务服务器;封装所述客户端的请求报文,发送封装后的请求报文至所述业务服务器。负载均衡器只需要承担进入的报文解析和转发,不需要承担输出的内容,减少了一次带宽转发,在云计算场景下可显著减少集群内的带宽消耗。

Description

一种负载均衡方法、装置、介质和设备
本申请要求在2019年10月31日提交中国专利局、申请号为201911050572.X、发明名称为“负载均衡方法、装置、介质及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本文涉及网络通信技术领域,尤其涉及负载均衡方法、装置、介质及设备。
背景技术
相关技术中,现有的7层负载均衡方案,都需要负载均衡器提供转发功能,导致负载均衡器有较高的负载,消耗较多的资源。同时如果负载均衡器和业务服务器混合部署,会导致网卡有额外的带宽消耗。
发明内容
为克服相关技术中存在的问题,本文提供一种负载均衡方法、装置、介质及设备。
根据本文的第一方面,提供一种负载均衡方法,包括:
接收客户端的请求报文;
解析所述请求报文并根据负载均衡规则确定业务服务器;
封装所述请求报文,发送封装后的请求报文至所述业务服务器。
所述负载均衡方法还包括与所述客户端建立连接,当所述与所述客户端建立的连接包括多个请求报文时,所述解析所述请求报文并根据负载均衡规则确定业务服务器包括:基于所述多个请求报文中的每一个请求报文的内容,确定业务服务器。
所述封装所述客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息;
当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,所述封装所述客户端的请求报文时,不再封装与所述前一请求报文的扩展信息相同的部分。
所述扩展信息包括:与所述客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。
负载均衡方法还包括:
建立与所述业务服务器的连接;
当所述业务服务器为本机时,所述连接包括基于共享内存的IPC连接,Unix Socket,管道,共享内存中的一种;
当所述业务服务器为集群内其他服务器时,所述连接包括UDP连接,TCP连接,RDMA,加密隧道中的一种。
负载均衡方法,应用于业务服务器,包括:
接收负载均衡器发送的封装后的请求报文;
处理所述封装后的请求报文,生成响应报文并发送所述响应报文至所述客户端。
负载均衡方法应用于业务服务器还包括:
当所述负载均衡器不是本机时,修改所述响应报文的发送地址为负载均衡器的地址。
当业务服务器改变连接状态时,发送同步信息给负载均衡器。
根据本文的另一方面,提供一种负载均衡装置,包括:
第一接收模块,用于接收客户端的请求报文;
负载均衡模块,用于根据负载均衡规则确定业务服务器;
转发模块,用于封装所述请求报文,发送封装后的请求报文至所述业务服务器。
负载均衡装置还包括第一连接模块,用于与所述客户端建立连接;当所述与所述客户端建立的连接包括多个请求报文时,所述解析所述请求报文并根据负载均衡规则确定业务服务器包括:基于所述多个请求报文中的每一个请求报 文的内容,确定业务服务器。
所述封装所述客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息;
当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,所述封装所述客户端的请求报文时,不再封装与所述前一请求报文的扩展信息相同的部分。
所述扩展信息包括:与所述客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。
负载均衡装置还包括:
第二连接模块,用于建立与所述业务服务器的连接;
当所述业务服务器为本机时,所述连接包括基于共享内存的IPC连接,Unix Socket,管道,共享内存中的一种;
当所述业务服务器为集群内其他服务器时,所述连接包括UDP连接,TCP连接,RDMA,加密隧道中的一种。
负载均衡装置还包括:
第二接收模块,用于接收负载均衡器发送的封装后的请求报文;
响应模块,用于处理所述请求报文,生成响应报文并发送所述响应报文至所述客户端。
地址变更模块,用于当所述负载均衡器不是本机时,修改所述响应报文的发送地址为负载均衡器的地址。
信息同步模块,用于当业务服务器改变连接状态时,发送同步信息给负载均衡器。
根据本文的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现负载均衡方法的步骤。
根据本文的另一方面,提供一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现负载均衡方法的步骤。
本文通过负载均衡方法,在确定业务服务器后,有业务服务器直接响应客户端的请求,在负载均衡器灵活部署的情况下,实现精准调度的同时,可降低集群内网络的负载,减少集群内部通讯的带宽。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,本发明实施例的示意性实施例及其说明用于解释本发明实施例,并不构成对本发明实施例的不当限定。在附图中:
图1是根据一示例性实施例示出的一种负载均衡方法的流程图。
图2是根据一示例性实施例示出的一种负载均衡方法的流程图。
图3是一种负载均衡器和业务服务器混合部署时的示意图。
图4是一种负载均衡器作为网关部署时的示意图。
图5是根据一示例性实施例示出的一种负载均衡装置的框图。
图6是根据一示例性实施例示出的一种负载均衡装置的框图。
图7是根据一示例性实施例示出的一种负载均衡装置的框图。
图8是根据一示例性实施例示出的一种负载均衡装置的框图。
图9是根据一示例性实施例示出的一种负载均衡装置的框图。
图10是根据一示例性实施例示出的一种负载均衡装置的框图。
图11是根据一示例性实施例示出的一种计算机设备的框图。
具体实施方式
现结合附图和具体实施方式对本发明实施例进一步说明。
为使本文实施例的目的、技术方案和优点更加清楚,下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。需要说明的是,在不冲突的情况下,本文中的实施例 及实施例中的特征可以相互任意组合。
图1是根据一示例性实施例示出的一种负载均衡方法的流程图。参考图1,负载均衡方法应用于负载均衡器,包括:
步骤S11,接收客户端的请求报文。报文可以是承载在udp上的流媒体数据、tcp上的http/https数据等。
步骤S12,解析请求报文并根据负载均衡规则确定业务服务器。对客户端的请求报文进行解析,进一步确定业务服务器。确定业务服务器的规则,综合客户端IP信息、业务服务器负载、业务请求的资源分布和类型、负载均衡器的配置等信息来确定,从而实现精准的调度。
步骤S13,封装客户端的请求报文,发送封装后的请求报文至业务服务器。将客户端的请求报文重新封装,删除重复报文及无用报文后,发送到确定的业务服务器,尽可能减少不必要的带宽消耗。特殊情况下,还会根据服务器性能,转换报文格式。同时将业务服务器响应客户端请求报文的必要信息,一起发送到业务服务器,以使业务服务器对客户端的请求进行响应。
在一实施例中,负载均衡方法还包括与客户端建立连接,当与客户端建立的连接包括多个请求报文时,解析请求报文并根据负载均衡规则确定业务服务器包括:基于多个请求报文中每一个请求报文的内容,确定业务服务器。
在与客户端建立的同一连接中,可能包括多个请求报文,负载均衡器基于时间较早的请求报文确定了业务服务器后,在处理下一个请求报文时,会重新解析报文内容,并根据报文内容和预设的负载均衡规则重新确定业务服务器,从而实现不同的业务服务器响应客户端的不同内容的请求,实现精准调度。例如,使用视频服务器处理客户端的视频类请求,使用下载服务器处理客户端的下载类请求,实现精准调度,提升服务质量。
在一实施例中,封装客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息;为了进一步减少带宽资源的消耗,负载均衡器在转发客户端的请求报文时,会先对请求报文进行封装,例如,为了使业务服务器可以顺利地响应客户端的请求报文,需要根据服务器的具体配置,适当的转换报文格式,例如,将http/2格式的报文转换为http/1.1格式的报文。在对客户端的请求报文进行封装的过程中,会清除一些非必要的内容,如重复的报文,负载均衡器与客户端建立连接时的ACK报文等。同时,为了使业务服务器正确解析 客户端的请求,并正确做出响应,在对客户端的请求报文进行封装时,还要将客户端地址,与客户端建立的加密隧道等信息作为扩展信息进行封装。在本实施例中,仅将业务服务器解析并响应客户端请求报文所需的必要信息进行封装,进一步减少对带宽资源的消耗。
扩展信息包括:与客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。与客户端的连接所用协议包含的相关信息可以为负载均衡器与客户端建立连接时协商的参数,负载均衡器的配置信息,负载均衡器与客户端的连接状态,客户端的请求报文为https报文时,负载均衡器与客户端建立的TLS加密隧道的状态信息中的一种或多种。业务服务器解析并响应所述请求报文所需的信息可以为客户端地址信息或其他信息。通过扩展信息,业务服务器能够顺利解析客户端的请求报文,并正确响应请求报文,例如负载均衡器将在https握手过程中与客户端协商出的密钥和客户端地址信息封装在转发报文中,业务服务器可以使用秘钥解析客户端加密的请求报文,并将响应报文根据客户端地址发送到客户端。又如,负载均衡器将与客户端的连接状态发送给业务服务器,业务服务器可以随时感知负载均衡器和客户端的连接状态的变化,并根据连接状态信息构造响应报文。并根据客户端的地址信息发送响应报文到正确的客户端。
当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,封装客户端的请求报文时,不再封装与前一请求报文的扩展信息相同的部分。对于同一连接中的连续的客户端的请求报文,如果基于请求报文的内容确定的业务服务器相同,由于该业务服务器已经有了和连接相关的扩展信息,负载均衡器在封装请求报文时,只封装必要的请求报文,不再重复封装扩展信息。进一步减少带宽资源的消耗。
在一实施例中,负载均衡方法还包括:建立与业务服务器的连接;当业务服务器为本机时,与业务服务器的连接包括共享内存的IPC连接,Unix Socket,管道,共享内存等本机通讯方法中的一种;也可以为其他本机通讯方式,本文不做限制。
当业务服务器为集群内其他服务器时,与业务服务器的连接包括UDP连接,TCP连接,RDMA,加密隧道中的一种。也可为其他可行的通讯方式,本文不做限制。
负载均衡器与业务服务器的连接,用于转发客户端请求报文和同步状态,可根据需要选择UDP连接、TCP连接或是加密隧道连接等,可以不取决于客户端与负载均衡器的报文传输方式。并可根据业务服务器与负载均衡器之间同机部署、网络连接方式、网络连接距离等情况,选择不同的传输方式。
图2是根据一示例性实施例示出的一种负载均衡方法的流程图。参考图2,负载均衡方法应用于业务服务器,包括:
步骤S21,接收负载均衡器发送的封装后的请求报文;
步骤S22,处理封装后的请求报文,生成响应报文并发送响应报文至客户端。
在本实施例中,业务服务器响应客户端请求的响应报文不再发往负载均衡器,而是直接发送到客户端,减少负载均衡器的资源消耗。
业务服务器可以与负载均衡器部署在同一台服务器上实现混合部署,即一个集群内,每台服务器均部署负载均衡器和业务服务器。也可以与负载均衡器分开部署,负载均衡器作为网关使用。
当业务服务器与负载均衡器同机部署时,例如,业务服务器与负载均衡器建立连接,连接包括基于共享内存的IPC连接,Unix Socket,管道,共享内存中的一种,当然还包括其他类型的连接方式,本文不做限制。业务服务器可直接对客户端请求进行响应。当业务服务器与负载均衡器分开部署时,连接包括UDP连接,TCP连接,RDMA,加密隧道中的一种,当然还包括其他类型的连接方式,本文不做限制。为了客户端正确接收响应报文,业务服务器在发送响应报文时,还需要修改响应报文的发送地址为负载均衡器的地址。
当业务服务器改变连接状态时,发送同步信息给负载均衡器。例如当服务器响应完客户端的请求后,会断开与客户端的连接,当业务服务器和客户端的连接断开后,业务服务器会发送同步信息给负载均衡器,以便负载均衡器将下一个客户端的请求发送到该业务服务器。
为更好的理解本文中的负载均衡方法,现举例说明:
实施例1,图3是一种负载均衡器和业务服务器混合部署时的示意图。参考图3,负载均衡器接收客户端的请求报文,解析客户端的请求报文,根据负载均衡规则,确定业务服务器。例如,负载均衡器与客户端建立了TCP连接,客户端的请求中包括请求A,请求B。负载均衡器根据负载均衡规则,确定由服务器 A响应客户端的请求A,由业务服务器B响应客户端的请求B。于是,负载均衡器将同一客户端的不同请求解析到不同的业务服务器。对于业务服务器A,由于与负载均衡器为同一服务器,可通过共享内存的方式,接收负载均衡器封装后的客户端请求A,响应请求A,并将响应报文直接发送给客户端。对于业务服务器B,相对负载均衡器为集群内的其他服务器,因此负载均衡器需要先与业务服务器B建立连接,用于转发封装后的请求报文和同步消息。业务服务器B根据扩展信息,解析负载均衡器发送的封装后的请求B,并将响应报文直接发送给客户端,为了使客户端能成功接收响应报文,业务服务器还需要将响应报文的发送地址修改为负载均衡器的地址。
实施例2,图4是一种负载均衡器作为网关部署时的示意图。参考图4,负载均衡器接收客户端的请求报文,与客户端建立连接,解析客户端的请求报文,根据负载均衡规则,确定业务服务器。例如,客户端的请求为HTTPS请求,负载均衡器与客户端握手,并协商出加密秘钥。负载均衡器解析客户端的请求,该请求中包括请求A,请求B。负载均衡器根据负载均衡规则,确定由服务器A响应客户端的请求A,由业务服务器B响应客户端的请求B。于是,负载均衡器将同一客户端的不同请求解析到不同的业务服务器,为了减少带宽消耗,负载均衡器对客户端的请求报文进行封装,清除重复报文,与客户端握手时的ACK报文后,将请求A的报文及加密秘钥,客户端地址,负载均衡器地址等响应请求A所必须的信息发送给业务服务器A,将请求B的报文及加密信息,客户端地址,负载均衡器地址等响应请求B所必须的信息发送给业务服务器B。业务服务器根据扩展信息,解析负载均衡器发送的封装后的请求报文,并将响应报文使用加密秘钥加密后直接发送给客户端,为了使客户端能成功接收响应报文,业务服务器还需要将响应报文的发送地址修改为负载均衡器的地址。
通过以上实施例,使用本文中的负载均衡方法,负载均衡器只需要承担进入的报文解析和转发,不需要承担输出的内容,减少了一次带宽转发,在CDN场景下可显著减少集群内的带宽消耗。实现针对4层以上报文的精准负载均衡,可以对加密流量实现基于内容的负载均衡。同时,针对长连接可实现单个请求内不同请求的分别均衡。
图5是根据一示例性实施例示出的一种负载均衡装置的框图。参考图5,负载均衡装置应用于负载均衡器,包括第一接收模块501,负载均衡模块502,转 发模块503。
该第一接收模块501被配置为用于接收客户端的请求报文。
该负载均衡模块502被配置为用于根据负载均衡规则确定业务服务器。
该转发模块503被配置为用于封装客户端的请求报文,发送封装后的请求报文至所述业务服务器。
图6是根据一示例性实施例示出的一种负载均衡装置的框图。参考图6,负载均衡装置还包括第一连接模块601,该第一连接模块601被配置为用于与客户端建立连接;当与所述客户端建立的连接包括多个请求报文时,解析请求报文并根据负载均衡规则确定业务服务器包括:基于多个请求报文中的每一个请求报文的内容,确定业务服务器。;
封装客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息。
当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,封装客户端的请求报文时,不再封装与前一请求报文的扩展信息相同的部分。
扩展信息包括:与所述客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。
图7是根据一示例性实施例示出的一种负载均衡装置的框图。参考图7,负载均衡装置还包括:第二连接模块701。
该第二连接模块701被配置为用于建立与业务服务器的连接。
当业务服务器为本机时,该连接包括基于共享内存的IPC连接,Unix Socket,管道,共享内存中的一种;
当业务服务器为集群内其他服务器时,该连接为UDP连接,TCP连接,RDMA,加密隧道中的一种。
图8是根据一示例性实施例示出的一种负载均衡装置的框图。参考图8,负载均衡装置应用于业务服务器包括:第二接收模块801,响应模块802。
该第二接收模块801被配置为用于接收负载均衡器发送的封装后的请求报文。
该响应模块802被配置为用于处理封装后的请求报文,生成响应报文并发 送响应报文至客户端。
图9是根据一示例性实施例示出的一种负载均衡装置的框图。参考图9,负载均衡装置还包括:地址变更模块901。
该地址变更模块901被配置为用于当负载均衡器不是本机时,修改响应报文的发送地址为负载均衡器的地址。
图10是根据一示例性实施例示出的一种负载均衡装置的框图。参考图10,负载均衡装置还包括:信息同步模块1001。
该信息同步模块被配置为用于当业务服务器改变连接状态时,发送同步信息给负载均衡器。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图11是根据一示例性实施例示出的一种计算机设备1100的框图。例如,计算机设备1100可以被提供为一服务器。参照图11,计算机设备1100包括处理器1101,处理器的个数可以根据需要设置为一个或者多个。计算机设备1100还包括存储器1102,用于存储可由处理器1101的执行的指令,例如应用程序。存储器的个数可以根据需要设置一个或者多个。其存储的应用程序可以为一个或者多个。处理器1101被配置为执行指令,以执行上述负载均衡的方法。
本领域技术人员应明白,本文的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本文可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本文可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质,包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质等。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文是参照根据本文实施例的方法、装置(设备)和计算机程序产品的流 程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
尽管已描述了本文的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本文范围的所有变更和修改。
显然,本领域的技术人员可以对本文进行各种改动和变型而不脱离本文的精神和范围。这样,倘若本文的这些修改和变型属于本文权利要求及其等同技术的范围之内,则本文的意图也包含这些改动和变型在内。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例的技术方案的精神和范围。
工业实用性
本发明的实施例提供了一种负载均衡的方法、装置。负载均衡器只需要承担进入的报文解析和转发,不需要承担输出的内容,减少了一次带宽转发,在云计算场景下可显著减少集群内的带宽消耗。

Claims (16)

  1. 一种负载均衡方法,应用于负载均衡器,其特征在于,包括:
    接收客户端的请求报文;
    解析所述请求报文并根据负载均衡规则确定业务服务器;
    封装所述请求报文,发送封装后的请求报文至所述业务服务器。
  2. 如权利要求1所述的负载均衡方法,其特征在于,所述负载均衡方法还包括与所述客户端建立连接,当所述与所述客户端建立的连接包括多个请求报文时,所述解析所述请求报文并根据负载均衡规则确定业务服务器包括:基于所述多个请求报文中的每一个请求报文的内容,确定业务服务器。
  3. 如权利要求2所述的负载均衡方法,其特征在于,
    所述封装所述客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息;
    当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,所述封装所述客户端的请求报文时,不再封装与所述前一请求报文的扩展信息相同的部分;
    所述扩展信息包括:与所述客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。
  4. 如权利要求1所述的负载均衡方法,其特征在于,还包括:
    建立与所述业务服务器的连接;
    当所述业务服务器为本机时,所述连接包括基于共享内存的IPC连接,UnixSocket,管道,共享内存中的一种;
    当所述业务服务器为集群内其他服务器时,所述连接包括UDP连接,TCP连接,RDMA,加密隧道中的一种。
  5. 一种负载均衡方法,应用于业务服务器,其特征在于,包括:
    接收负载均衡器发送的封装后的请求报文;
    处理所述封装后的请求报文,生成响应报文并发送所述响应报文至所述客 户端。
  6. 如权利要求5所述的负载均衡方法,其特征在于,还包括:
    当所述负载均衡器不是本机时,修改所述响应报文的发送地址为所述负载均衡器的地址。
  7. 如权利要求5所述的负载均衡方法,其特征在于,还包括:
    当业务服务器改变连接状态时,发送同步信息给所述负载均衡器。
  8. 一种负载均衡装置,应用于负载均衡器,其特征在于,包括:
    第一接收模块,用于接收客户端的请求报文;
    负载均衡模块,用于根据负载均衡规则确定业务服务器;
    转发模块,用于封装所述请求报文,发送封装后的请求报文至所述业务服务器。
  9. 如权利要求8所述负载均衡装置,其特征在于,还包括第一连接模块,用于与所述客户端建立连接;当所述与所述客户端建立的连接包括多个请求报文时,所述解析所述请求报文并根据负载均衡规则确定业务服务器包括:基于所述多个请求报文中的每一个请求报文的内容,确定业务服务器。
  10. 如权利要求8所述的负载均衡装置,其特征在,所述封装所述客户端的请求报文包括:转换报文格式,删除重复报文,封装扩展信息;
    当基于某一请求报文确定的业务服务器与基于相邻的前一请求报文确定的业务服务器相同时,所述封装所述客户端的请求报文时,不再封装与所述前一请求报文的扩展信息相同的部分;
    所述扩展信息包括:与所述客户端的连接所用协议包含的相关信息,业务服务器解析并响应所述请求报文所需的信息。
  11. 如权利要求8所述的负载均衡装置,其特征在于,还包括:
    第二连接模块,用于建立与所述业务服务器的连接;
    当所述业务服务器为本机时,所述连接包括基于共享内存的IPC连接,UnixSocket,管道,共享内存中的一种;
    当所述业务服务器为集群内其他服务器时,所述连接包括UDP连接,TCP连 接,RDMA,加密隧道中的一种。
  12. 一种负载均衡装置,应用于业务服务器,其特征在于,包括:
    第二接收模块,用于接收负载均衡器发送的封装后的请求报文;
    响应模块,处理所述请求报文,生成响应报文并发送所述响应报文至所述客户端。
  13. 如权利要求12所述的负载均衡装置,其特征在于,还包括:
    地址变更模块,用于当所述负载均衡器不是本机时,修改所述响应报文的发送地址为所述负载均衡器的地址。
  14. 如权利要求12所述的负载均衡转置,其特征在于,还包括:
    信息同步模块,用于当业务服务器改变连接状态时,发送同步信息给所述负载均衡器。
  15. 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-7中任意一项所述方法的步骤。
  16. 一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7中任意一项所述方法的步骤。
PCT/CN2020/124879 2019-10-31 2020-10-29 一种负载均衡方法、装置、介质和设备 WO2021083284A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911050572.X 2019-10-31
CN201911050572.XA CN112751898B (zh) 2019-10-31 负载均衡方法、装置、介质及设备

Publications (1)

Publication Number Publication Date
WO2021083284A1 true WO2021083284A1 (zh) 2021-05-06

Family

ID=75641287

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/124879 WO2021083284A1 (zh) 2019-10-31 2020-10-29 一种负载均衡方法、装置、介质和设备

Country Status (1)

Country Link
WO (1) WO2021083284A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113746933A (zh) * 2021-09-14 2021-12-03 京东科技信息技术有限公司 显示信息的方法和装置
CN114244846A (zh) * 2021-12-15 2022-03-25 山石网科通信技术股份有限公司 一种流量报文转发方法、装置,中间设备及存储介质
CN114422616A (zh) * 2022-01-29 2022-04-29 杭州迪普科技股份有限公司 数据通讯方法、客户端、服务器及系统
CN114827161A (zh) * 2022-04-20 2022-07-29 微位(深圳)网络科技有限公司 服务调用请求发送方法、装置、电子设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545275A (zh) * 2003-11-21 2004-11-10 清华大学深圳研究生院 基于Netfilter架构的流媒体集群服务内容调度方法
CN101252591A (zh) * 2008-04-03 2008-08-27 中国科学技术大学 实现上下行数据分离的方法和装置
WO2013097484A1 (zh) * 2011-12-26 2013-07-04 华为技术有限公司 虚拟机集群的负载均衡方法、服务器及系统
CN106713499A (zh) * 2017-01-23 2017-05-24 天地融科技股份有限公司 一种负载均衡方法、设备及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545275A (zh) * 2003-11-21 2004-11-10 清华大学深圳研究生院 基于Netfilter架构的流媒体集群服务内容调度方法
CN101252591A (zh) * 2008-04-03 2008-08-27 中国科学技术大学 实现上下行数据分离的方法和装置
WO2013097484A1 (zh) * 2011-12-26 2013-07-04 华为技术有限公司 虚拟机集群的负载均衡方法、服务器及系统
CN106713499A (zh) * 2017-01-23 2017-05-24 天地融科技股份有限公司 一种负载均衡方法、设备及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113746933A (zh) * 2021-09-14 2021-12-03 京东科技信息技术有限公司 显示信息的方法和装置
CN114244846A (zh) * 2021-12-15 2022-03-25 山石网科通信技术股份有限公司 一种流量报文转发方法、装置,中间设备及存储介质
CN114244846B (zh) * 2021-12-15 2024-02-09 山石网科通信技术股份有限公司 一种流量报文转发方法、装置,中间设备及存储介质
CN114422616A (zh) * 2022-01-29 2022-04-29 杭州迪普科技股份有限公司 数据通讯方法、客户端、服务器及系统
CN114827161A (zh) * 2022-04-20 2022-07-29 微位(深圳)网络科技有限公司 服务调用请求发送方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN112751898A (zh) 2021-05-04

Similar Documents

Publication Publication Date Title
WO2021083284A1 (zh) 一种负载均衡方法、装置、介质和设备
US11848961B2 (en) HTTPS request enrichment
US10694005B2 (en) Hardware-based packet forwarding for the transport layer
WO2020228505A1 (zh) 一种移动边缘计算节点的选择方法、装置及系统
US11483243B2 (en) Smarter policy decisions based on metadata in data flows
JP7125788B2 (ja) プロキシを用いてセキュアデバイスとアンセキュアデバイスとの間を通信するシステム及び方法
US9602389B1 (en) Method and system for defining logical channels and channel policies in an application acceleration environment
Grigorik High Performance Browser Networking: What every web developer should know about networking and web performance
US20230133809A1 (en) Traffic forwarding and disambiguation by using local proxies and addresses
US9479534B2 (en) Method, system, and logic for in-band exchange of meta-information
WO2021083281A1 (zh) 一种负载均衡方法、装置、介质和设备
US20150333930A1 (en) Dynamic service function chaining
CN104272290A (zh) 用于实时通信的冗余
EP3241338A1 (en) Methods and systems for an end-to-end solution to deliver content in a network
WO2023151264A1 (zh) 负载均衡方法、装置、节点及存储介质
EP3735768B1 (en) Improving qoe for video and web services using cross-layer information
US11671410B2 (en) Providing enrichment information using hypertext transfer protocol secure (HTTPS)
CN108064441B (zh) 一种加速网络传输优化方法以及系统
Emmanuel et al. A peer-to-peer architecture for real-time communication using Webrtc
Caviglione et al. A deep analysis on future web technologies and protocols over broadband GEO satellite networks
CN112751898B (zh) 负载均衡方法、装置、介质及设备
Vidal et al. SCoT: A secure content-oriented transport
CN107196984A (zh) 一种元数据的共享方法、元数据源设备及网络中间设备
CN115442784A (zh) 蓝牙设备的通信方法、装置及设备
CN112995065A (zh) 一种互联网流量控制方法、装置及电子设备

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: 20883611

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: 20883611

Country of ref document: EP

Kind code of ref document: A1