In-Kernel WAN Optimization Datapath for Router Storage Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing WAN optimization solutions are expensive and do not fully meet customer needs, while the kernel storage stack in storage devices becomes a major source of overhead, leading to increased latency and reduced IOPS.
Innovation Solution
A WAN optimization method that utilizes an in-kernel end-to-end datapath in a router to optimize traffic flows by retrieving and reconstructing files directly from kernel memory, using DMA operations to transfer segments from disk storage to kernel memory, and employing a cache to manage segment storage and retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If complete kernel bypass through libraries (e.g., SPDK) is used to allow applications to access underlying devices directly, then I/O latency is reduced and throughput is improved, but applications are forced to implement their own file systems and poll for I/O completion, leading to wasted CPU cycles and high energy consumption
Solution Approach 1:
The system separates storage operations into kernel-space and user-space components. The kernel-space storage stack handles file system management and I/O operations, while user-space applications interact through standardized system calls. This segmentation allows applications to benefit from fast direct device access without implementing their own file systems, as the kernel-space stack provides these capabilities independently.
Solution Approach 2:
The kernel-space storage stack acts as an intermediary between user-space applications and the underlying storage devices. It provides a standardized interface for applications while managing the complexity of file system operations and I/O completion handling in the kernel space, eliminating the need for applications to implement these functions themselves.
2Ease of operation
If the kernel storage stack is used to manage storage operations, then applications can use standard file system interfaces, but the kernel storage stack becomes a major source of overhead that impedes both application-observed latency and IOPS
Solution Approach 1:
The system dynamically adjusts the level of kernel-space involvement in storage operations. For simple, sequential workloads, the kernel storage stack operates at full functionality. For performance-critical operations, the system can bypass certain kernel-space processing steps while maintaining the same user-space interface, thereby reducing latency without sacrificing ease of operation.
Solution Approach 2:
The system changes operational parameters of the kernel storage stack based on workload characteristics. For example, it can adjust buffer cache sizes, I/O scheduling policies, and processing depths to optimize performance for different types of workloads, reducing overhead while maintaining standard file system interfaces.
3Productivity
If third-party WAN optimization solutions are deployed to optimize traffic flows, then network performance is improved, but the solutions are expensive and do not meet all customer needs
Solution Approach 1:
The system merges WAN optimization functionality directly into the kernel-space storage stack, combining network optimization and storage management in a single integrated component. This eliminates the need for separate third-party WAN optimization appliances, reducing cost and system complexity while maintaining performance benefits.
Solution Approach 2:
The kernel-space storage stack is designed to provide multiple functions including file system management, I/O optimization, and WAN optimization capabilities. This multi-functionality allows a single system component to address diverse customer needs that previously required multiple specialized solutions, reducing both cost and complexity.
Applied Scientific Principles
This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.
Function Achieved in This Case
This approach reduces latency and improves throughput by minimizing CPU cycles and energy consumption, while also eliminating the need for applications to implement their own file systems and I/O completion polling.
Implementation Method 1
the method performs an operation to DMA (direct memory access) the particular segment into the kernel memory from a disk storage of the first router
Data Source
AI summary
Some embodiments of the invention provide a WAN optimization method for optimizing traffic flows through a WAN that connects multiple sites each having at least one router. The method is performed at a first router at a first site. From a second router at a second site, the method receives a file, that includes a set of segment identifiers corresponding to a set of segments stored by the first router, in an optimized first data stream originating from a source device at the second site and destined to a destination device at the first site. For each segment identifier in the set, the method attempts to retrieve a corresponding segment from a kernel memory of the first router. When the corresponding segment is not stored in the kernel memory, the method performs an operation to DMA the segment into the kernel memory from a disk storage of the first router.


