System and method for layering drivers
AssigneeMicrosoft Corporation
InventorsJameel Hyder, Kyle Brandon
Life of this patent
Estimating the term…
Abstract
A system and method for incorporating intermediate link layer drivers into a network protocol stack is presented. The system and method utilize an abstract interface for interfacing both inputs and outputs of intermediate drivers and for providing an interface for link layer device drivers. The abstract interface provides routing of data packets through the intermediate drivers and device drivers to facilitate the desired data flow. The abstract interface facilitates reuse and portability of intermediate drivers across varying computer platforms. Layering of intermediate drivers also accommodates data flow modification with minimal impact to existing drivers.
Claims24
In a computer operating system capable of transferring a data packet along a data flow path from a transport layer driver to a network, a method for facilitating the transfer of the data packet from the transport layer driver to the network via a partitioned link layer device driver that includes at least one link layer intermediate driver and a lower link layer device driver, the partitioning of the link layer device driver allowing for the functionality of the link layer device driver to be adjusted by replacing a component of the link layer device driver rather than reconstructing the entire link layer device driver, said method comprising the following specific acts:
- providing an abstract interface to convey said data packet from said transport layer driver to said lower link layer device driver via said at least one link layer intermediate driver;
- and
- configuring said abstract interface to receive the data packet from the transport layer driver and provide the data packet to the at least one link layer intermediate driver for further processing, the abstract interface further configured to receive the processed data packet from the at least one link layer intermediate driver, the abstract interface then providing the processed data packet to the lower link layer device driver, wherein said at least one link layer intermediate driver is incorporated into said data flow path.
In a computer operating system capable of transferring data along a data flow path to a first physical device, a method for facilitating the transfer of the data to the first physical device via a partitioned link layer device driver that includes at least one link layer intermediate driver and a lower link layer device driver, the partitioning of the link layer device driver allowing for the functionality of the link layer device driver to be adjusted by replacing a component of the link layer device driver rather than reconstructing the entire link layer device driver, said method comprising the following specific acts:
- providing an abstract interface to said operating system to convey the data to said lower link layer device driver via said at least one link layer intermediate driver;
- configuring said abstract interface to route the data through the at least one link layer intermediate driver prior to being provided to the lower link layer device driver.
A computer-readable medium for use in a computer operating system capable of transferring a data packet along a data flow path from a transport layer driver to a network, the computer-readable medium containing computer-executable instructions for implementing a method for facilitating the transfer of the data packet from the transport layer driver to the network via a partitioned link layer device driver that includes at least one link layer intermediate driver and a lower link layer device driver, the partitioning of the link layer device driver allowing for the functionality of the link layer device driver to be adjusted by replacing a component of the link layer device driver rather than reconstructing the entire link layer device driver, said computer-readable medium having computer-executable instructions for performing the following specific acts:
- providing an abstract interface to convey said data packet from said transport layer driver to said lower link layer device driver via said at least one link layer intermediate driver;
- and
- configuring said abstract interface to receive the data packet from the transport layer driver and provide the data packet to the at least one link layer intermediate driver for further processing, the abstract interface further configured to receive the processed data packet from the at least one link layer intermediate driver, the abstract interface then providing the processed data packet to the lower link layer device driver, wherein said at least one link layer intermediate driver is incorporated into said data flow path.
Dependencies are inferred from the claim text.