Dynamic Packet Classification for Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current load-balancing solutions for mission-critical Internet applications face limitations in programming hardware devices for new switching criteria and lack control over bandwidth allocation, while software approaches are vulnerable to denial of service attacks and require significant overhead.
Innovation Solution
A computer system that classifies data packets based on dynamically configured rules across multiple OSI layers, using both hardware and software to determine destinations, allowing for flexible and efficient routing and load balancing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If pure-hardware approaches are used for load balancing, then data packet forwarding speed is improved, but adaptability to new switching criteria deteriorates
Solution Approach 1:
The patent implements dynamic classification rules that can be modified and updated without hardware reconfiguration. The system allows runtime changes to classification criteria, enabling adaptability to new switching requirements while maintaining hardware-based fast forwarding performance.
Solution Approach 2:
The system changes the parameters of classification by using multiple OSI layer attributes (Layer 2 MAC addresses, Layer 3 IP addresses, Layer 4 port numbers, Layer 7 application data) rather than fixed single-criteria classification. This allows flexible adaptation to different switching needs by adjusting which parameters are used for classification.
2Productivity
If pure-hardware approaches are used for load balancing, then forwarding performance is improved, but control over bandwidth allocation deteriorates
Solution Approach 1:
The patent implements feedback mechanisms that monitor traffic patterns, server load, and bandwidth usage in real-time. This feedback is used to dynamically adjust classification rules and load distribution, enabling automated bandwidth allocation control while maintaining high forwarding performance through hardware implementation.
3Adaptability or versatility
If pure-software approaches are used for load balancing, then flexibility in handling new criteria is improved, but system overhead and vulnerability to attacks worsens
Solution Approach 1:
The patent segments the load balancing function into hardware-based classification (for fast packet forwarding) and software-based rule management (for flexibility). This segmentation allows the system to benefit from both hardware speed and software adaptability while reducing overall system overhead by keeping critical path operations in hardware.
Solution Approach 2:
The system introduces an intermediary layer of classification rules that sits between hardware forwarding and software application logic. This intermediary enables flexible criterion handling through programmable rules while the hardware enforcement layer maintains low overhead and high performance.
4Adaptability or versatility
If pure-software approaches are used for load balancing, then flexibility is improved, but vulnerability to denial of service attacks worsens
Solution Approach 1:
The patent replaces software-based packet processing (which is vulnerable to DoS attacks) with hardware-based classification and forwarding. This substitution moves critical path operations to dedicated hardware circuits that are resistant to software-based denial of service attacks, while maintaining flexibility through programmable classification rules.
Data Source
AI summary
A computer system that forwards data packets is described. During operation, the system receives a data packet on a first interface and classifies the data packet to determine a corresponding destination. This classification is based on dynamically configured classification rules that include multiple attributes corresponding to multiple layers in an Open System Interconnect (OSI) Reference model. Then, the system provides the data packet on a second interface corresponding to the destination.


