Top-of-Rack Switches Offload Service Function Chaining State
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network architectures face challenges in efficiently managing and provisioning service function chains (SFCs) due to the need for servers to maintain forwarding state information, which increases complexity and reduces scalability and performance.
Innovation Solution
Implementing network-based service function chaining (SFC) that offloads SFC processing to network devices, specifically top-of-rack switches, which maintain reachability tables and state information, allowing servers to focus on packet processing without maintaining SFC forwarding state, and using scalable SFC processors to forward packets through a sequence of service functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If servers maintain forwarding state information for service function chains, then service function chaining can be implemented, but device complexity and management overhead increase
Solution Approach 1:
The patent introduces network devices (routers/switches) as intermediaries between servers and service functions. These network devices maintain the forwarding state information and service chain context, allowing servers to simply forward packets without maintaining complex state. The network device acts as a mediator that handles the complexity of service function chaining while keeping servers simple.
Solution Approach 2:
The patent extracts the forwarding state management responsibility from servers and relocates it to network devices. By taking out the state maintenance function from servers, the system eliminates the complexity burden on servers while preserving service function chaining capability. Network devices assume the role of maintaining service chain context and forwarding state.
2Adaptability or versatility
If servers maintain SFC forwarding state, then service function chains can be provisioned, but scalability is reduced
Solution Approach 1:
Network devices serve as intermediaries that centralize state management for service function chains. This allows the system to scale horizontally by adding more servers without increasing the complexity burden on individual servers. Each server remains simple while network devices collectively manage the scalability of service chain provisioning across the entire system.
Solution Approach 2:
By extracting state maintenance from servers and placing it in network devices, the system achieves better scalability. Servers no longer need to maintain SFC forwarding state, allowing them to be added or removed without affecting system-wide scalability. The network devices absorb the scalability requirements through their centralized state management capability.
3Adaptability or versatility
If servers maintain SFC state information, then service function chaining is enabled, but performance is reduced
Solution Approach 1:
Network devices act as intermediaries that handle state management and service chain routing decisions. This allows servers to focus purely on high-speed packet processing without the overhead of maintaining SFC state. The performance bottleneck is shifted to network devices, which are optimized for stateful processing, while servers maintain high packet processing throughput.
Solution Approach 2:
Extracting state maintenance from servers eliminates the performance penalty associated with servers maintaining SFC state. Servers can process packets at full speed without the computational overhead of state management. The performance impact is isolated to network devices, which are designed to handle stateful operations efficiently.
Data Source
AI summary
Service aware network devices coordinate function chains of virtual functions. The network devices are aware of which virtual functions exist and how to interconnect them in the most efficient manner and define and process service graphs that can be maintained, monitored and redirected. The network devices themselves implement and manage the service graphs, as opposed to the virtual servers that host the virtual functions.


