WO2023088564A1 - Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application - Google Patents

Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application Download PDF

Info

Publication number
WO2023088564A1
WO2023088564A1 PCT/EP2021/082330 EP2021082330W WO2023088564A1 WO 2023088564 A1 WO2023088564 A1 WO 2023088564A1 EP 2021082330 W EP2021082330 W EP 2021082330W WO 2023088564 A1 WO2023088564 A1 WO 2023088564A1
Authority
WO
WIPO (PCT)
Prior art keywords
controller
field
data packet
indicator
weight
Prior art date
Application number
PCT/EP2021/082330
Other languages
English (en)
Inventor
Ben-Shahar BELKAR
Reuven Cohen
Original Assignee
Huawei Technologies Co., Ltd.
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 Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Priority to PCT/EP2021/082330 priority Critical patent/WO2023088564A1/fr
Publication of WO2023088564A1 publication Critical patent/WO2023088564A1/fr

Links

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
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request

Definitions

  • the disclosure relates to a controller configured to perform load-balancing in a nonapplication layer, utilizing a non-application protocol, and more particularly, the disclosure relates the controller is configured to transmit a data packet. Moreover, the disclosure also relates to a method for use in the controller configured to perform the load-balancing in the non-application layer, utilizing the non-application protocol.
  • Modem high-traffic websites handle hundreds of thousands of client requests per second, tens of millions of concurrent requests from different clients, and return the requested text, images, video, or application data, all in a fast and reliable manner.
  • Modem computing systems generally require the addition of more servers to accomplish the above requirements.
  • To cost-effectively scale while meeting these requirements, modem computing best practice generally requires adding more servers.
  • a load balancer that acts as a “traffic cop”, placed in front of web servers and routes client requests across all servers capable of fulfilling those requests in a manner that maximizes speed and capacity utilization and ensures that no server is overworked, which could degrade performance. If a single server goes down, the load balancer redirects traffic to the remaining online servers. When a new server is added to the server group, the load balancer automatically starts to send requests to it.
  • a known communication system model includes partitions called abstraction layers.
  • the abstraction layers, layer 4 to layer 7 (L4-L7) are defined based on their function.
  • L4 refers to transport layer
  • L5 refers to session layer
  • L6 refers to the presentation layer
  • L7 refers to the application layer.
  • the transport layer is used for the transmission of data between points on a network.
  • the session layer manages connections between applications.
  • the presentation layer provides mapping and communication to the applications.
  • the application layer interacts and communicates with the end-user.
  • the load balancer implies a load balancing technique to assign new connections to the servers.
  • the load balancer assigns new connections to the servers using a load balancing technique.
  • the load balancer applies different types of load balancing techniques depending upon the requirement. When a group of servers requires a distribution of requests, a round-robin load balancing technique is applied. When a new request is sent to a server with the lowest number of client connections, then a least connections load balancing technique is used. The server that has the least connections is determined by factoring in a relative computing capacity of each server. When requests are sent to a selected server using a parameter, then the least time load balancing technique is used. The parameter is computed by combining the fastest response time and lowest active connections. The least time load balancing technique is exclusively used for NGINX plus load balancer.
  • a hash load balancing technique is used.
  • the key is defined using client internet protocol (IP) address or request uniform resource locator (URL).
  • IP internet protocol
  • URL uniform resource locator
  • the hash load balancing technique is used by the NGINX plus load balancer for minimizing redistribution of loads if a set of data upstream servers change.
  • IP address of the client is used to determine which server receives a request
  • the IP hash load balancing technique is used.
  • a random with two choices load balancing technique is used by sending a request to a server that is picked randomly out of two servers, then by applying the least connections load balancing technique on the selected server.
  • the least time load balancing technique is used for NGINX plus load balancer.
  • FIG. 1 A is an exemplary diagram 100A of performing load-balancing at the transport layer in accordance with the prior art.
  • the exemplary diagram 100A includes a client device 102, a load balancer 104, and backend servers 106A-N.
  • the load balancer 104 at the transport layer performs load-balancing on the source and destination IP addresses and ports that are recorded in a packet header.
  • the load balancer’s IP address is broadcast to the client device 102 for a website or a service. So, the client device 102 registers the load balancer’s IP address as the destination IP address in their requests.
  • the load balancer 104 at the transport layer When the load balancer 104 at the transport layer receives a request and makes a load balancing decision, it performs network address translation (NAT) on the request packet to change the recorded destination IP address from the "server IP address" to a specifically chosen machine for this connection. Similarly, before forwarding backend servers 106A-N responses to the client device 102, the load balancer 104 can change the source address recorded in the packet header from the server’s IP address to its own. The destination and source TCP port numbers recorded in the packets are sometimes also changed similarly.
  • the load balancer 104 at the transport layer may be a hardware device that runs proprietary load-balancing software, and NAT operations if exist, maybe specialized chips rather than software. The load balancer 104 balances effectively for simple packetlevel load balancing.
  • the load balancer 104 at the transport layer manages network traffic based on network information such as application ports and protocols without considering the actual content of data messages. Moreover, the content of data messages is neither inspected nor decrypted to be forwarded quickly, efficiently, and securely. Hence, the load balancer 104 cannot route the traffic based on the media type, localization rules, or other criteria.
  • the load balancer 104 at the transport layer requires less computation. But the performance of the load balancer 104 at the transport layer has become negligible or irrelevant.
  • FIG. IB is an exemplary diagram 100B of performing load-balancing at an application layer in accordance with the prior art.
  • the exemplary diagram 100B includes a client device 108, a load balancer 110, and backend servers 112A-N.
  • the load balancer 110 at the application layer performs load balancing using techniques such as hypertext transfer protocol (HTTP) and simple mail transfer protocol (SMTP) to provide decisions based on the actual content of each message.
  • HTTP hypertext transfer protocol
  • SMTP simple mail transfer protocol
  • the load balancer 110 at the application layer terminates network traffic, performs decryption of messages as needed, inspects messages, makes content-based routing decisions, initiates a new transmission control protocol (TCP) connection to the appropriate upstream server, and writes the request to the server.
  • TCP transmission control protocol
  • the load balancer 110 at the application layer determines more intelligent load balancing decisions and content optimizations.
  • the load balancer 110 identifies unique client sessions to provide server persistence, or “sticky sessions”, sending all client requests to the same server for greater efficiency by viewing or actively injecting cookies. Packet-level visibility allows content caching to be used, holding frequently accessed items in memory for easy retrieval.
  • the load balancer 110 at the application layer provides intelligence to handle protocols that multiplex requests onto a single connection to optimize traffic and reduce overhead.
  • the load balancer 110 at the application layer is expensive and adds complexity to act as a termination point and establish a connection to the backend servers 112A-N.
  • the disclosure provides a controller configured to perform load balancing in a non- application layer utilizing a non-application protocol, the controller is configured to transmit a data packet, and a method for use in the controller configured to perform the load balancing in the non-application layer utilizing the non-application protocol.
  • a controller to perform load-balancing in a non-application layer utilizing a non-application protocol.
  • the load-balancing includes determining which backend server out of a pool of servers a data packet should be sent to.
  • the controller configured to receive a data packet.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller configured to determine the operation and/or the weight for the data packet based on the at least one unencrypted field.
  • the controller configured to determine a server to send the data packet to based on the operation and/or the weight for the data packet.
  • the controller reduces cost of a load balancer and uses an L4 load balancer with decoding capabilities of higher layers load balancing.
  • the controller reduces the latency as there is no need to generate a termination point on the load balancer.
  • the controller reduces the number of connections to the pool of servers as there is no need to terminate proxy connection at the load balancer.
  • the controller provides intelligent load balancing decisions and content optimizations. The controller requires less computation. As the controller routes, the traffic based on a media type, localization rules, or other criteria with knowledge of the content of data message, the performance of the controller at the transport layer is very efficient.
  • the controller is configured to determine the server to send the data packet to based on the server current load.
  • the at least one field is an optional header field.
  • the at least one field may be a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry an operation indicator.
  • the at least one field may be timestamp field.
  • the controller is further configured to determine the operation based on the operation indicator carried in the at least one field.
  • the controller is further configured to determine the weight based on a weight indicator carried in the at least one field.
  • the at least one field is a field assigned to indicate a destination port (DST), but utilized to carry the weight indicator.
  • the weight indicator includes a service indicator.
  • the controller is further configured to determine the weight of the operation of the data packet based on the operation indicator in combination with the service indicator.
  • the controller is further configured to determine the weight of the operation of the data packet based on a table-lookup.
  • the controller is further configured to determine the server to send the data packet so that data packets of similar services are sent to a same group of servers handling such services.
  • the non-application layer is a transport layer and the protocol is a transport protocol for transmitting data.
  • the non-application layer is a network layer and the protocol is a transport protocol for transmitting data.
  • controller is further configured to perform application layer loadbalancing in the non-application layer.
  • a controller configured to transmit a data packet.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller is configured to include an operation indicator and/or a weight indicator for the data packet in at least one unencrypted field of the data packet.
  • the controller provides intelligent load balancing decisions and content optimizations.
  • the controller requires less computation.
  • the controller routes, the traffic based on a media type, localization rules, or other criteria with knowledge of the content of data message, the performance of the controller at the transport layer is very efficient.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry the operation indicator.
  • DST IP Internet Protocol address
  • the at least one field is a field assigned to indicate a port (DST PORT), but utilized to carry the weight indicator.
  • the weight indicator is a service indicator.
  • a device including a controller.
  • a method for use in a controller configured to perform loadbalancing in a non-application layer, utilizing a non-application protocol.
  • the loadbalancing includes determining which backend server out of a pool of servers a data packet should be sent to.
  • the method includes receiving a data packet.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the method includes determining the operation and/or the weight for the data packet based on the at least one unencrypted field.
  • the method includes determining a server to send the data packet to based on the operation and/or the weight for the data packet.
  • the method for use in the controller reduces cost of the load balancer and uses an L4 load balancer with decoding capabilities of higher layers load balancing.
  • the method for use in the controller reduces the latency as there is no need to generate a termination point on the load balancer.
  • the method for use in the controller reduces the number of connections to the pool of servers as there is no need to terminate a proxy connection at the load balancer.
  • the method for use in the controller establishes a different connection with backend servers.
  • the method provides intelligent load balancing decisions and content optimizations.
  • the method for use in the controller requires less computation.
  • the method further includes determining the server to send the data packet to based on the server current load.
  • the at least one field is an optional header field.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry an operation indicator.
  • the at least one field is timestamp field.
  • the method further includes determining the operation based on the operation indicator carried in the at least one field.
  • the method further includes determining the weight based on a weight indicator carried in the at least one field.
  • the at least one field is a field assigned to indicate a destination port (DST), but utilized to carry the weight indicator.
  • DST destination port
  • the weight indicator includes a service indicator.
  • the method further includes determining the weight of the operation of the data packet based on the operation indicator in combination with the service indicator.
  • the method further includes determining the weight of the operation of the data packet based on a table-lookup.
  • the method further includes determining the server to send the data packet so that data packets of similar services are sent to a same group of servers handling such services.
  • the non-application layer is a transport layer and the protocol is a transport protocol for transmitting data.
  • the non-application layer is a network layer and the protocol is a transport protocol for transmitting data.
  • the method further includes performing application layer load-balancing in the non-application layer.
  • a method for use in a controller configured to transmit a data packet.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller is configured to include an operation indicator and/or a weight indicator for the data packet in at least one unencrypted field of the data packet.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry the operation indicator.
  • DST IP Internet Protocol address
  • the at least one field is a field assigned to indicate a port (DST PORT), but utilized to carry the weight indicator.
  • the weight indicator may be a service indicator.
  • a device including a controller that when loaded with instructions and executing those instructions is caused to execute the above methods.
  • the controller configured to perform load balancing in a non-application layer utilizing a non-application protocol.
  • the controller is configured to transmit a data packet, the data packet includes one or more fields and a data pay load.
  • the controller reduces cost of the load balancer and uses an L4 load balancer with decoding capabilities of higher layers load balancing.
  • the controller reduces the latency as there is no need to generate a termination point on the load balancer.
  • the controller reduces number of connections to the pool of servers as there is no need to terminate proxy connection at the load balancer.
  • the controller establishes a different connection with backend servers.
  • the controller provides intelligent load balancing decisions and content optimizations. The controller requires less computation.
  • a network sniffer checks if similar requests are getting same values on the one or more fields of the data packet. The network sniffer checks if different requests are different same values on the one or more fields of the data packet.
  • FIGS. 1A and IB are exemplary diagrams of performing load-balancing at a transport layer and an application layer in accordance with the prior art
  • FIG. 2 is a block diagram of a controller configured to perform load-balancing in a nonapplication layer, utilizing a non-application protocol in accordance with an implementation of the disclosure
  • FIG. 3 is an exemplary block diagram that illustrates a controller for performing loadbalancing to determine a server to send a data packet to based on an operation indicator and/or a weight indicator for the data packet in accordance with an implementation of the disclosure
  • FIG. 4 is an exemplary block diagram that illustrates a controller for assigning timestamp field to determine a server to send a data packet to in accordance with an implementation of the disclosure
  • FIG. 5 is a flow diagram that illustrates a method for use in a controller configured to perform load-balancing in a non-application layer, utilizing a non-application protocol in accordance with an implementation of the disclosure.
  • FIG. 6 is an illustration of a computing arrangement (e.g. a controller) that is used in accordance with implementations of the disclosure.
  • a computing arrangement e.g. a controller
  • Implementations of the disclosure provide a controller configured to perform load balancing in a non-application layer, utilizing a non-application protocol, the controller is configured to transmit a data packet, and a method for use in the controller configured to perform the load balancing in the non-application layer utilizing the non-application protocol.
  • FIG. 2 is a block diagram 200 of a controller 202 configured to perform load-balancing in a non-application layer, utilizing a non-application protocol in accordance with an implementation of the disclosure.
  • the block diagram 200 includes the controller 202, and a pool of servers 204A-N.
  • the load-balancing includes determining which backend server out of the pool of servers 204A-N a data packet should be sent to.
  • the controller 202 configured to receive the data packet.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller 202 configured to determine the operation and/or the weight for the data packet based on the at least one unencrypted field.
  • the controller 202 configured to determine a server to send the data packet to based on the operation and/or the weight for the data packet.
  • the controller 202 reduces cost of a load balancer and uses an L4 load balancer with decoding capabilities of higher layers load balancing.
  • the controller 202 reduces the latency as there is no need to generate a termination point on the load balancer d.
  • the controller 202 reduces number of connections to the pool of servers 204A-N as there is no need to terminate proxy connection at the load balancer.
  • the controller 202 establishes a different connection with backend servers.
  • the controller 202 provides intelligent load balancing decisions and content optimizations. As the controller 202 routes, the traffic based on a media type, localization rules, or other criteria with knowledge of the content of data message, the performance of the controller 202 at the transport layer is very efficient.
  • the controller 202 is configured to determine a server to send the data packet to based on the server current load.
  • the at least one field is an optional header field.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry an operation indicator.
  • DST IP Internet Protocol address
  • the at least one field timestamp field.
  • the controller 202 is further configured to determine the operation based on an operation indicator carried in the at least one field.
  • the controller 202 is further configured to determine the weight based on a weight indicator carried in the at least one field.
  • the weight indicator includes a service indicator.
  • controller 202 is further configured to determine the weight of the operation of the data packet based on the operation indicator in combination with the service indicator.
  • controller 202 is further configured to determine the weight of the operation of the data packet based on a table-lookup.
  • the non-application layer is a transport layer and the protocol is a transport protocol for transmitting data.
  • the non-application layer is a network layer and the protocol is a transport protocol for transmitting data.
  • controller 202 is further configured to perform application layer loadbalancing in the non-application layer.
  • FIG. 3 is an exemplary diagram 300 that illustrates a controller 304 for performing loadbalancing to determine a server to send a data packet to based on an operation indicator and/or a weight indicator for the data packet in accordance with an implementation of the disclosure.
  • the exemplary diagram 300 includes a client device 302, the controller 304, and a pool of servers 306A, 306B.
  • the client device 302 transmits the data packet.
  • the controller 304 is configured to receive the data packet from the client device 302.
  • the controller 304 is configured to transmit the data packet to the server.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller 304 is configured to include an operation indicator and/or a weight indicator for the data packet in at least one unencrypted field of the data packet.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry the operation indicator.
  • the at least one field is a field assigned to indicate a port (DST PORT), but utilized to carry the weight indicator.
  • the weight indicator is a service indicator.
  • an Internet Protocol address (DST IP) of the client device 302 may be 44.1.1.1
  • the IP address of the controller 304 may be 44.2.2.2, and 44.2.2.3
  • the DST IP addresses of the pool of servers 306A, 306B may be 44.3.3.3, 44.4.4.4, 44.5.5.5, and 44.6.6.6.
  • a table 308 that includes Ips of the controller 304 which performs load-balancing in a non-application layer, a type of contents (e.g. feed, shopping), a type of services (e.g. comments, pictures, add/remove an item, checkout) and DSP port correspond to each DST server IP.
  • Each DST server IP has a weight indicator and current load, for example, the DST server IP 44.3.3.3 has the weight indicator 1 and the current load A, the DST server IP 44.4.4.4 has the weight indicator 3 and the current load B, the DST server IP 44.5.5.5 has the weight indicator 1 and the current load C and the DST server IP 44.6.6.6 has the weight indicator 5 and the current load D.
  • the controller 304 looks at the IP and DST port and knows what is the operation and weight. As the controller 304 knows the weight of the operation, the controller 304 can direct the packet to a least loaded backend server from an operation server pool. For example, if the client device 302 sends the data packet, the controller 304 looks at the IP and DST port corresponding to the DST server IP 44.3.3.3 and knows what is the operation and weight of the DST server IP
  • the controller 304 can direct the packet to the server that includes the DST server IP 44.3.3.3.
  • the controller 304 is configured to receive feedback from the pool of servers 306A, 306B about their current state.
  • the controller 304 is configured to receive all the calculation of a backend server load using timestamps and capabilities.
  • the current state may be a current load state and/or any configuration change of the pool of servers 306A, 306B. If the current load of any server is more, the controller 304 may change the server or add another server to send the data packet to.
  • FIG. 4 is an exemplary diagram 400 that illustrates a controller 404 for assigning timestamp field to determine a server to send a data packet to in accordance with an implementation of the disclosure.
  • the exemplary diagram 400 includes a client device 402, the controller 404, and a pool of servers 406.
  • the client device 402 transmits the data packet to the controller 404.
  • the data packet includes one or more fields and a data payload 408.
  • the at least one field is an optional header field.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry the operation indicator.
  • the at least one field of the data packet includes timestamp field.
  • DST IP Internet Protocol address
  • an Internet Protocol (IP) address of the client device 402 may be 44.1.1.1 and the DST IP address of the controller 404 may be 44.2.2.2, the DST IP addresses of the pool of servers 406 may be 44.3.3.3, 44.4.4.4.
  • IP Internet Protocol
  • the timestamp field, and an optional header field depict characteristics of the data pay load 408.
  • the characteristics of the data pay load 408 may include media access control (MAC) header, IP header, transport layer protocol (TCP) header, TCP option 8, kind, length, timestamp value, and timestamp echo reply.
  • the optional header field may be used to carry information in that field.
  • the information may be a weight indicator.
  • the DST IP and DST together define the weight indicator.
  • the timestamp field may be used to carry other information.
  • the DST ports may include a service on an application of the client device 402. Each application may have one or more DST ports.
  • the controller 404 is further configured to determine the weight of the operation of the data packet based on the tablelookup 410.
  • the service may be, for example, pictures, comments, etc.
  • the data payload is encrypted, and the at least one field of the one or more fields is unencrypted.
  • the information of the weight indicator is encoded into the unencrypted field of the data payload.
  • the application of the client device 402 inserts an encoding identifier of the data payload and a content identifier into the unencrypted field of the data payload.
  • the controller 404 is configured to decode the unencrypted field of the data payload and decide which backend server to direct the data packet to.
  • the controller 404 is configured to add request routing decisions based on the characteristics of the data pay load.
  • FIG. 5 is a flow diagram 500 that illustrates a method for use in a controller configured to perform load-balancing in a non-application layer, utilizing a non-application protocol in accordance with an implementation of the disclosure.
  • the load balancing includes determining which backend server out of a pool of servers a data packet should be sent to.
  • a data packet is received at the controller.
  • the data packet includes one or more fields and a data payload.
  • the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the operation and/or the weight for the data packet are determined based on the at least one unencrypted field.
  • a server is determined to send the data packet to based on the operation and/or the weight for the data packet.
  • the method for use in the controller reduces cost of the load balancer and uses an L4 load balancer with decoding capabilities of higher layers load balancing.
  • the method for use in the controller reduces the latency as there is no need to generate a termination point on the load balancer.
  • the method for use in the controller reduces the number of connections to the pool of servers as there is no need to terminate a proxy connection at the load balancer.
  • the method for use in the controller establishes a different connection with backend servers.
  • the method provides intelligent load balancing decisions and content optimizations.
  • the method for use in the controller requires less computation. As the method for use in the controller routes, the traffic based on a media type, localization rules, or other criteria with knowledge of the content of data message, the performance of the controller at the transport layer is very efficient.
  • the method further includes determining the server to send the data packet to based on the server current load.
  • the at least one field is an optional header field.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry an operation indicator.
  • the at least one field is timestamp field.
  • the method further includes determining the operation based on the operation indicator carried in the at least one field.
  • the method further includes determining the weight based on a weight indicator carried in the at least one field.
  • the at least one field is a field assigned to indicate a destination port (DST), but utilized to carry the weight indicator.
  • DST destination port
  • the weight indicator includes a service indicator.
  • the method further includes determining the weight of the operation of the data packet based on the operation indicator in combination with the service indicator.
  • the method further includes determining the weight of the operation of the data packet based on a table-lookup.
  • the method further includes determining the server to send the data packet so that data packets of similar services are sent to a same group of servers handling such services.
  • the non-application layer is a transport layer and the protocol is a transport protocol for transmitting data.
  • the non-application layer is a network layer and the protocol is a transport protocol for transmitting data.
  • the method further includes performing application layer load-balancing in the non-application layer.
  • a method for use in a controller configured to transmit a data packet includes one or more fields and a data payload, wherein the data payload is encrypted and at least one field of the one or more fields is unencrypted.
  • the controller is configured to include an operation indicator and/or a weight indicator for the data packet in at least one unencrypted field of the data packet.
  • the at least one field is a field assigned to indicate an Internet Protocol address (DST IP), but utilized to carry the operation indicator.
  • the at least one field is a field assigned to indicate a port (DST PORT), but utilized to carry the weight indicator.
  • the weight indicator may be a service indicator.
  • a device includes a controller that when loaded with instructions and executing those instructions is caused to execute the above methods is provided.
  • FIG. 6 is an illustration of an exemplary computing arrangement (e.g. a Controller) 600 in which the various architectures and functionalities of the various previous implementations may be implemented.
  • the computing arrangement 600 includes at least one processor 604 that is connected to a bus 602, wherein the computing arrangement 600 may be implemented using any suitable protocol, such as PCI (Peripheral Component Interconnect), PCI-Express, AGP (Accelerated Graphics Port), HyperTransport, or any other bus or point-to-point communication protocol (s).
  • the computing arrangement 600 also includes a memory 606.
  • Control logic (software) and data are stored in the memory 606 which may take the form of random-access memory (RAM).
  • RAM random-access memory
  • a single semiconductor platform may refer to a sole unitary semiconductor-based integrated circuit or chip. It should be noted that the term single semiconductor platform may also refer to multi-chip modules with increased connectivity which simulate on-chip modules with increased connectivity which simulate on-chip operation, and make substantial improvements over utilizing a conventional central processing unit (CPU) and bus implementation. Of course, the various modules may also be situated separately or in various combinations of semiconductor platforms per the desires of the user.
  • the computing arrangement 600 may also include a secondary storage 610.
  • the secondary storage 610 includes, for example, a hard disk drive and a removable storage drive, representing a floppy disk drive, a magnetic tape drive, a compact disk drive, digital versatile disk (DVD) drive, recording device, universal serial bus (USB) flash memory.
  • the removable storage drive at least one of reads from and writes to a removable storage unit in a well-known manner.
  • Computer programs, or computer control logic algorithms may be stored in at least one of the memory 606 and the secondary storage 610. Such computer programs, when executed, enable the computing arrangement 600 to perform various functions as described in the foregoing.
  • the memory 606, the secondary storage 610, and any other storage are possible examples of computer-readable media.
  • the architectures and functionalities depicted in the various previous figures may be implemented in the context of the processor 604, a graphics processor coupled to a communication interface 612, an integrated circuit (not shown) that is capable of at least a portion of the capabilities of both the processor 604 and a graphics processor, a chipset (i.e., a group of integrated circuits designed to work and sold as a unit for performing related functions, etc.).
  • a graphics processor coupled to a communication interface 612
  • an integrated circuit (not shown) that is capable of at least a portion of the capabilities of both the processor 604 and a graphics processor
  • a chipset i.e., a group of integrated circuits designed to work and sold as a unit for performing related functions, etc.
  • the architectures and functionalities depicted in the various previous figures may be implemented in the context of a general computer system, a circuit board system, a game console system dedicated for entertainment purposes, an application-specific system.
  • the computing arrangement 600 may take the form of a desktop computer, a laptop computer, a server, a workstation, a game console, an embedded system.
  • the computing arrangement 600 may take the form of various other devices including, but not limited to a personal digital assistant (PDA) device, a mobile phone device, a smart phone, a television, etc. Additionally, although not shown, the computing arrangement 600 may be coupled to a network (e.g., a telecommunications network, a local area network (LAN), a wireless network, a wide area network (WAN) such as the Internet, a peer-to-peer network, a cable network, or the like) for communication purposes through an I/O interface 608.
  • a network e.g., a telecommunications network, a local area network (LAN), a wireless network, a wide area network (WAN) such as the Internet, a peer-to-peer network, a cable network, or the like
  • I/O interface 608 e.g., a telecommunications network, a local area network (LAN), a wireless network, a wide area network (WAN) such as the Internet, a peer-to-peer network,

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention concerne un dispositif de commande (202, 304, 404) configuré pour effectuer un équilibrage de charge dans une couche de non-application utilisant un protocole de non-application. L'équilibrage de charge consiste à déterminer à quel serveur dorsal, parmi un groupe de serveurs (206A-N, 306A-B, 406), un paquet de données doit être envoyé. Le dispositif de commande (202, 304, 404) est configuré pour recevoir un paquet de données. Le paquet de données comprend un ou plusieurs champs et une charge utile de données. La charge utile de données est chiffrée et au moins un champ du ou des champs est non chiffré. Le dispositif de commande (202, 304, 404) est configuré pour déterminer l'opération et/ou le poids correspondant au paquet de données sur la base du champ non chiffré. Le dispositif de commande (202, 304, 404) est configuré pour déterminer un serveur auquel envoyer le paquet de données, sur la base de l'opération et/ou du poids correspondant au paquet de données.
PCT/EP2021/082330 2021-11-19 2021-11-19 Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application WO2023088564A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2021/082330 WO2023088564A1 (fr) 2021-11-19 2021-11-19 Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2021/082330 WO2023088564A1 (fr) 2021-11-19 2021-11-19 Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application

Publications (1)

Publication Number Publication Date
WO2023088564A1 true WO2023088564A1 (fr) 2023-05-25

Family

ID=78819993

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2021/082330 WO2023088564A1 (fr) 2021-11-19 2021-11-19 Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application

Country Status (1)

Country Link
WO (1) WO2023088564A1 (fr)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170187787A1 (en) * 2015-12-29 2017-06-29 General Motors Llc Aggregating vehicle-related big data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170187787A1 (en) * 2015-12-29 2017-06-29 General Motors Llc Aggregating vehicle-related big data

Similar Documents

Publication Publication Date Title
US7647393B2 (en) Server load balancing apparatus and method using MPLS session
US8867341B2 (en) Traffic management of client traffic at ingress location of a data center
US6996615B1 (en) Highly scalable least connections load balancing
US6987763B2 (en) Load balancing
US7702809B1 (en) Method and system for scaling network traffic managers
EP2416542B1 (fr) Virtualisation de service sur des réseaux centrés sur le contenu
US7254639B1 (en) Methods and apparatus for directing packets among a group of processors
US20130332584A1 (en) Load balancing methods and devices
US20100036903A1 (en) Distributed load balancer
JP2003281109A (ja) 負荷分散方法
CN101142554A (zh) 通信系统、信息处理系统、连接服务器、处理服务器、信息处理装置、信息处理方法与程序
CN113228571B (zh) 用于从驻地网络访问云服务的网络优化的方法和设备
WO2008147578A1 (fr) Système et/ou procédé permettant une répartition de charge de serveur commandée par un client
CN113196725A (zh) 对使用全局网络地址的分布式端点的负载平衡式访问
WO2014023003A1 (fr) Procédé, appareil et système pour commander une transmission de données
US8887280B1 (en) Distributed denial-of-service defense mechanism
CN113326228A (zh) 基于远程直接数据存储的报文转发方法、装置及设备
US10178033B2 (en) System and method for efficient traffic shaping and quota enforcement in a cluster environment
WO2021008591A1 (fr) Procédé, dispositif et système de transmission de données
CN116633934A (zh) 负载均衡方法、装置、节点及存储介质
Hosseini et al. Session-persistent load balancing for clustered web servers without acting as a reverse-proxy
US9806984B1 (en) Separating network traffic among virtual servers
CN107888643A (zh) 一种udp负载均衡方法、装置和系统
WO2023088564A1 (fr) Dispositif de commande configuré pour effectuer un équilibrage de charge dans une couche de non-application à l'aide d'un protocole de non-application
US11706290B2 (en) Direct server reply for infrastructure services

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

Country of ref document: EP

Kind code of ref document: A1