Dual-Driver Network Interface With Segmented Channels
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network interface devices face challenges in supporting both standard kernel-based network services and application-level network services simultaneously, leading to inefficiencies and the need for both drivers to be loaded, with existing architectures not effectively managing independent communication channels and resource allocation.
Innovation Solution
A network interface device that supports multiple data channels for application-level data and a control channel for commands, allowing independent addressability and resource allocation, with the ability to filter data and manage communication links, and operate without a control channel, while being compatible with NDIS and WDM interfaces.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a network interface device layers NDIS driver functionality above the Kernel AGENT or as part of the kernel AGENT, then it is relatively easy to pass messages between the drivers, but this approach is inefficient and requires both drivers to be loaded
Solution Approach 1:
The patent segments the network interface functionality into separate data channels and control channels that can operate independently. The control channel handles driver communication while data channels handle application-level data, allowing selective loading of driver components and improving efficiency without sacrificing ease of message passing.
Solution Approach 2:
The control channel is designed to be universally compatible with both NDIS and WDM driver models, allowing a single control channel implementation to serve multiple driver types without requiring separate implementations for each driver model.
2Adaptability or versatility
If the network interface device supports both standard kernel based network services and application-level network services, then it provides comprehensive network functionality, but it requires layering of functionality and loading of both drivers
Solution Approach 1:
The patent divides network services into two distinct communication channels: a control channel for kernel-based network services and data channels for application-level network services. This segmentation allows each channel to be optimized for its specific purpose and reduces the complexity of managing both service types simultaneously.
Solution Approach 2:
The control channel acts as an intermediary between the network interface device and the host system, handling all control and configuration messages. This intermediary approach simplifies the architecture by providing a single point of control while maintaining support for multiple network service types.
3Ease of operation
If the network interface device uses a layered architecture with NDIS above WDM, then message passing between drivers is easier, but both drivers must be loaded and the architecture is inefficient
Solution Approach 1:
The patent extracts the control functionality into a separate control channel that operates independently from data channels. This extraction allows the control channel to be optimized for driver interactions while data channels focus on efficient data transmission, reducing overall system resource consumption.
Solution Approach 2:
The patent implements dynamic channel allocation where data channels can be established and torn down as needed based on application requirements. This dynamic approach allows the system to load only the necessary driver components for each communication session, reducing resource consumption while maintaining ease of driver interaction through the control channel.
Data Source
AI summary
A network interface device capable of communication with a data processing system supporting an operating system and at least one application, the network interface device supporting communication with the operating system by means of: two or more data channels, each data channel being individually addressable by the network interface device and being capable of carrying application-level data between the network interface device and the data processing device; and a control channel individually addressable by the network interface device and capable of carrying control data between the network interface device, the control data defining commands and the network interface being responsive to at least one command sent over the control channel to establish at least one additional data channel.


