Inline Service Switches for Datacenter Traffic Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current datacenter configurations for distributing data messages between application and service layers are static and configuration-intensive, with load balancers often acting as chokepoints, necessitating a more dynamic and flexible approach for seamless data message distribution without reconfiguring servers.
Innovation Solution
Deployment of inline switches that receive data messages from source compute nodes, identify service nodes based on service policies, and use tunnels to send messages to appropriate service nodes or clusters, enabling elastic load balancing and seamless reconfiguration of datacenter deployments through controller-driven policies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional load balancers are used to distribute traffic, then traffic distribution is achieved, but load balancers become chokepoints and reduce system scalability
Solution Approach 1:
The patent segments the load balancing function by deploying multiple inline service switches distributed across different network segments and compute nodes. Each inline switch handles load balancing for its local segment, eliminating the need for a centralized load balancer and distributing the traffic distribution capability across the network infrastructure.
Solution Approach 2:
The patent introduces inline service switches as intermediary devices between compute nodes and service nodes. These inline switches act as mediators that perform load balancing and service chaining functions locally, replacing the traditional centralized load balancer and eliminating it as a chokepoint.
2Reliability
If static configuration methods are used for message distribution, then forwarding rules can be established, but the system lacks flexibility and requires server reconfiguration for changes
Solution Approach 1:
The patent implements dynamic service chain configuration where the controller can programmatically define and modify service chains at runtime. The inline service switches receive dynamic configuration from the controller and can adapt service node selections based on current conditions, enabling flexible reconfiguration without changing server configurations.
Solution Approach 2:
The inline service switches automatically adapt to configuration changes received from the controller without requiring manual reconfiguration of servers. The system enables self-service deployment where the network infrastructure automatically adjusts service chains and forwarding behavior based on controller directives.
3Ease of operation
If centralized load balancers are used, then traffic distribution is manageable, but the system lacks scalability and becomes a single point of failure
Solution Approach 1:
The patent segments the centralized load balancing function into distributed inline service switches deployed across multiple network locations. Each inline switch independently handles load balancing for its local traffic, eliminating the single point of failure and enabling system scalability while maintaining operational control through centralized controller management.
Solution Approach 2:
The patent implements local load balancing capabilities at each inline service switch, allowing traffic management decisions to be made locally based on local conditions. This distributed approach maintains ease of operation through centralized control while improving reliability through local autonomy and fault isolation.
Data Source
AI summary
Some embodiments provide novel inline switches that distribute data messages from source compute nodes (SCNs) to different groups of destination service compute nodes (DSCNs). In some embodiments, the inline switches are deployed in the source compute nodes datapaths (e.g., egress datapath). The inline switches in some embodiments are service switches that (1) receive data messages from the SCNs, (2) identify service nodes in a service-node cluster for processing the data messages based on service policies that the switches implement, and (3) use tunnels to send the received data messages to their identified service nodes. Alternatively, or conjunctively, the inline service switches of some embodiments (1) identify service-nodes cluster for processing the data messages based on service policies that the switches implement, and (2) use tunnels to send the received data messages to the identified service-node clusters. The service-node clusters can perform the same service or can perform different services in some embodiments. This tunnel-based approach for distributing data messages to service nodes/clusters is advantageous for seamlessly implementing in a datacenter a cloud-based XaaS model (where XaaS stands for X as a service, and X stands for anything), in which any number of services are provided by service providers in the cloud.


