Network Protocol Selection for Data Center Ethernet Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Upper Layer Protocols (ULPs) in Ethernet networks lack reliability and efficient congestion management, leading to increased processing overhead and potential data packet loss, particularly in datacenter environments where traditional protocols like TCP are costly and inefficient.
Innovation Solution
A network communication system that detects the availability of a datacenter Ethernet (DCE) network and selectively uses lower processor overhead protocols like UDP instead of TCP, switching back to TCP if packet loss is detected, to ensure reliable and efficient data transmission.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TCP protocol is used to ensure reliable data transmission and congestion management, then transmission reliability is improved, but processing overhead and CPU usage increase
Solution Approach 1:
The system dynamically selects between TCP and UDP protocols based on real-time detection of DCE network capabilities and endpoint locality. When a DCE network is detected and endpoints are local, the system switches to UDP to reduce overhead; when DCE is not detected or endpoints are remote, it uses TCP for reliability. This dynamic adaptation resolves the contradiction by adjusting protocol behavior according to network conditions.
Solution Approach 2:
The invention changes the protocol parameter (TCP vs UDP) based on detected network conditions. By detecting DCE capability and endpoint locality, the system changes from using TCP (high reliability, high overhead) to UDP (lower reliability, low overhead) when appropriate, thereby optimizing the balance between reliability and processing overhead for different operational contexts.
2Reliability
If TCP protocol is used for congestion management and reliability, then data packet loss is reduced, but CPU processing cycles increase
Solution Approach 1:
The system dynamically adjusts protocol selection based on network detection. When DCE network is detected and endpoints are local, it switches to UDP to maximize CPU efficiency. When DCE is not detected or endpoints are remote, it uses TCP to ensure packet loss prevention. This dynamic switching resolves the contradiction by optimizing CPU efficiency while maintaining reliability only when necessary.
Solution Approach 2:
The invention extracts the congestion management and reliability functions from the application layer (where TCP would provide them) and places them at the data link layer through DCE mechanisms. This allows the application to use simple UDP protocol while still achieving reliable transmission through underlying DCE capabilities, thereby reducing CPU overhead while maintaining packet loss prevention.
3Adaptability or versatility
If traditional Ethernet protocols are used without DCE detection, then protocol compatibility is maintained, but network performance and efficiency decrease
Solution Approach 1:
The system dynamically detects DCE network capabilities and adjusts protocol selection accordingly. When DCE is detected, it enables optimized UDP-based communication for local endpoints to improve performance. When DCE is not detected, it falls back to traditional TCP-based communication to maintain compatibility. This dynamic approach resolves the contradiction between compatibility and performance.
Solution Approach 2:
The invention performs preliminary detection of DCE network capabilities before establishing data transmission. By detecting DCE capability and endpoint locality in advance, the system can pre-select the optimal protocol (UDP for DCE local, TCP for non-DCE or remote), thereby improving network performance without sacrificing compatibility when DCE is not available.
Data Source
AI summary
A network communication selection system includes one or more subsystems to allow network communications with an endpoint device. The system determines whether a data center Ethernet (DCE) capable network is available to communicate with the endpoint device, determines whether the endpoint device is local or remote and selects a network communication protocol from a plurality of network communication protocols to communicate with the endpoint device.


