Method, system, and computer program product for creating a raw data channel form an integrating component to a series of kernel mode filters
    1.
    发明授权
    Method, system, and computer program product for creating a raw data channel form an integrating component to a series of kernel mode filters 失效
    用于创建原始数据通道的方法,系统和计算机程序产品构成了一系列内核模式过滤器的集成组件

    公开(公告)号:US06243753B1

    公开(公告)日:2001-06-05

    申请号:US09097292

    申请日:1998-06-12

    IPC分类号: G06F1300

    CPC分类号: H04L67/14 H04L69/329

    摘要: The present invention allows data to be accessible by kernel mode filters and other processing components while simultaneously allowing connection-oriented device drivers to be written in a simplified fashion in an integrating component environment. Furthermore, this is done without requiring proprietary mechanisms in the device driver itself in order to place the data stream into the kernel mode filter environment. This is done by providing a special raw data client transport that is written to the transport interface of an integrating component. Driver development is simplified by programming to the driver interface of the integrating component in a standardized fashion.

    摘要翻译: 本发明允许由内核模式过滤器和其他处理组件访问数据,同时允许以集成组件环境中的简化方式写入面向连接的设备驱动程序。 此外,这是在设备驱动程序本身不需要专有机制的情况下完成的,以便将数据流放入内核模式过滤环境。 这是通过提供写入集成组件的传输接口的特殊原始数据客户端传输来完成的。 通过以标准化方式编程到集成组件的驱动程序界面,可简化驱动程序开发。

    System for ascertaining task off-load capabilities of a device and enabling selected capabilities and when needed selectively and dynamically requesting the device to perform the task

    公开(公告)号:US06370599B1

    公开(公告)日:2002-04-09

    申请号:US09657510

    申请日:2000-09-07

    IPC分类号: G06F1314

    摘要: The present invention is directed to a method and computer program product for offloading specific processing tasks that would otherwise be performed in a computer system's processor and memory, to a peripheral device, or devices, that are connected to the computer. The computing task is then performed by the peripheral, thereby saving computer system resources for other computing tasks and increasing the overall computing efficiency of the computer system. In one preferred embodiment, the disclosed method is utilized in a layered network model, wherein computing tasks that are typically performed in network applications are instead offloaded to the network interface card (NIC) peripheral. An application executing on the computer system first queries the processing, or task offload capabilities of the NIC, and then selectively enables those capabilities that may be subsequently needed by the application. The specific processing capabilities of a NIC are made available by creating a task offload buffer data structure, which contains data indicative of the processing capabilities of the corresponding NIC. Once an application has discerned the capabilities of a particular NIC, it will selectively utilize any of the enabled task offload capabilities of the NIC by appending packet extension data to the network data packet that is forwarded to the NIC. The device driver of the NIC will review the data contained in the packet extension, and then cause the NIC to perform the specified operating task(s). This offloading of computing tasks on a per-packet basis allows an application to selectively offload tasks on a dynamic, as-needed basis. As such, applications executing on the computer system processor are able to offload tasks in instances where it is busy processing other computing tasks and processor overhead is high. Multiple tasks can also be offloaded in batches to a particular peripheral.

    Method, system, and computer program product for representing and connection-oriented device in a known format
    4.
    发明申请
    Method, system, and computer program product for representing and connection-oriented device in a known format 失效
    用于以已知格式表示和面向连接的设备的方法,系统和计算机程序产品

    公开(公告)号:US20050223393A1

    公开(公告)日:2005-10-06

    申请号:US11099262

    申请日:2005-04-04

    IPC分类号: H04L29/06 G06F9/46

    摘要: In an I/O subsystem comprising device drivers for controlling connection-oriented hardware adapters, connection-oriented data transports, and an integrating component allowing data transport drivers and hardware device drivers to be “bound” together to form data communication channels. The integrating component exposes a connection interface for creating and maintaining connections. Furthermore, a proxy client component is disclosed that interacts with a known application-level interface, such as TAPI, and converts such known application-level interface commands into appropriate commands for the connection interface of the integrating component. Additionally, the proxy client component will interact with the integrating component in order to represent the underlying connection-oriented devices and attendant device characteristics to the known application-level interface. All this allows the application programmer to take advantage of a connection-oriented I/O subsystem and underlying connection-oriented devices without requiring the programmer to learn yet another interface. Added benefits include the ability to dynamically redirect a data stream received over a created connection from one data transport to another under application control. This is useful in multimedia applications where different types of data may come over the same connection.

    摘要翻译: 在包括用于控制面向连接的硬件适配器,面向连接的数据传输的设备驱动器和允许数据传输驱动器和硬件设备驱动程序“绑定”在一起以形成数据通信信道的集成部件的I / O子系统中。 集成组件公开了创建和维护连接的连接界面。 此外,公开了与诸如TAPI的已知应用级接口进行交互的代理客户端组件,并将这些已知的应用级接口命令转换成用于集成组件的连接接口的适当命令。 此外,代理客户端组件将与集成组件进行交互,以便向已知的应用程序级接口表示底层面向连接的设备和服务器设备特性。 所有这一切都允许应用程序员利用面向连接的I / O子系统和基于面向连接的设备,而不需要程序员学习另一个接口。 增加的好处包括在应用程序控制下将通过创建的连接接收的数据流从一个数据传输转移到另一个的能力。 这在多种不同类型的数据可能来自相同连接的多媒体应用中非常有用。

    Methods and systems for canceling requests for the transmission of data
    5.
    发明授权
    Methods and systems for canceling requests for the transmission of data 失效
    用于取消数据传输请求的方法和系统

    公开(公告)号:US06931645B2

    公开(公告)日:2005-08-16

    申请号:US09738494

    申请日:2000-12-15

    IPC分类号: H04L29/06 H04L29/08 G06F3/00

    CPC分类号: H04L29/06 H04L69/32

    摘要: Methods are provided that allow high-level protocol drivers to cancel transmission requests that have been sent to low-level protocol drivers. Transmission requests are assigned cancel identifiers. Because one original request may be divided into several packets for transmission, the same cancel identifier is given to every packet that derives from the original request. High-level protocol drivers can request cancellation of all pending requests whose cancel identifiers match the one indicated. Cancel identifiers generated by different high-level protocol drivers are mutually distinct so one protocol driver cannot inadvertently cancel requests made by another. The protocol driver may divide its requests into logical flows and assign the same cancel identifier to all requests within one flow. Then, the protocol driver may cancel all pending requests within one flow while allowing requests in other flows to proceed to transmission. An application can use these methods to cancel requests sent to high-level protocol drivers.

    摘要翻译: 提供了允许高级协议驱动程序取消已发送到低级协议驱动程序的传输请求的方法。 传输请求被分配取消标识符。 由于一个原始请求可能被划分成若干分组用于传输,所以对于从原始请求导出的每个分组,给出相同的取消标识符。 高级协议驱动程序可以请求取消其取消标识符与指定的请求相符的所有待处理请求。 取消由不同的高级协议驱动程序生成的标识符是相互不同的,因此一个协议驱动程序不能无意中取消由另一个执行的请求。 协议驱动程序可将其请求划分为逻辑流,并将相同的取消标识符分配给一个流中的所有请求。 然后,协议驱动程序可以取消一个流中的所有未决请求,同时允许其他流中的请求进行传输。 应用程序可以使用这些方法来取消发送到高级协议驱动程序的请求。

    Method and system for abstracting network device drivers
    6.
    发明授权
    Method and system for abstracting network device drivers 有权
    抽象网络设备驱动程序的方法和系统

    公开(公告)号:US06633929B1

    公开(公告)日:2003-10-14

    申请号:US09302735

    申请日:1999-04-30

    IPC分类号: G06F1338

    CPC分类号: G06F13/102

    摘要: Methods, systems, and computer program products for abstracting device driver development by layering certain functionality. A driver layer encapsulates device commands and data within a format that is independent of the type of connection between the device and a host computer. Once encapsulated, the device commands and data pass through an intermediate layer responsible for transferring the encapsulated device commands and data to a connection-specific layer. The connection-specific layer then places the encapsulated device commands and data on the particular connection that couples the device and host computer. A single driver layer, potentially provided by an operating system, can thus operate a plurality of devices. Accordingly, hardware developers can be freed from the burden of writing the numerous host-based device drivers that are otherwise required to support an increasing number of connections between devices and host computers, specifically exemplified by improved bus and networking technologies.

    摘要翻译: 用于通过分层某些功能来抽象设备驱动程序开发的方法,系统和计算机程序产品。 驱动器层将设备命令和数据封装在与设备和主机之间的连接类型无关的格式中。 封装后,设备命令和数据通过中间层,负责将封装的设备命令和数据传输到连接专用层。 连接特定层然后将封装的设备命令和数据放置在耦合设备和主计算机的特定连接上。 可能由操作系统提供的单个驱动器层因此可以操作多个设备。 因此,硬件开发人员可以摆脱编写许多基于主机的设备驱动程序的负担,否则这些设备驱动程序需要支持设备和主机之间越来越多的连接,具体是通过改进的总线和网络技术来示例。

    System and method for batching data between transport and link layers in a protocol stack
    7.
    发明授权
    System and method for batching data between transport and link layers in a protocol stack 失效
    在协议栈中的传输层和链路层之间批量化数据的系统和方法

    公开(公告)号:US06253255B1

    公开(公告)日:2001-06-26

    申请号:US08853847

    申请日:1997-05-08

    IPC分类号: G06F900

    CPC分类号: H04L69/32

    摘要: A system and method for transferring a plurality of data packets between a transport layer and a link layer is presented. The system and method provide a standardized development interface for development of transport and link layer drivers across multiple platforms. The abstract interface provides a standardized functional module through which multiple packet transfer commands are received and passed. The abstract interface discerns the level of sophistication of interfacing drivers and when drivers lack the capability for transferring multiple packets in a single command, the abstract interface emulates multiple transfer capabilities for such drivers.

    摘要翻译: 提出了一种用于在传输层和链路层之间传送多个数据分组的系统和方法。 该系统和方法为跨多个平台的传输和链路层驱动程序的开发提供了标准的开发接口。 抽象接口提供了一个标准化的功能模块,通过该功能模块可以接收和传递多个数据包传输命令。 抽象接口识别接口驱动程序的复杂程度,并且当驱动程序在单个命令中缺少传输多个数据包的能力时,抽象接口模拟了这种驱动程序的多个传输功能。

    System and method for layering drivers
    8.
    发明授权
    System and method for layering drivers 失效
    用于分层驱动程序的系统和方法

    公开(公告)号:US06233624B1

    公开(公告)日:2001-05-15

    申请号:US08852946

    申请日:1997-05-08

    IPC分类号: G06F940

    CPC分类号: G06F9/4411

    摘要: 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.

    摘要翻译: 提出了一种将中间链路层驱动程序合并到网络协议栈中的系统和方法。 该系统和方法利用抽象接口来连接中间驱动器的输入和输出,并为链路层设备驱动程序提供接口。 抽象接口通过中间驱动程序和设备驱动程序提供数据包的路由,以便于所需的数据流。 抽象接口便于跨越不同计算机平台的中间驱动程序的重用和可移植性。 中间驱动程序的分层也适应数据流修改,对现有驱动程序的影响最小。

    Creation and use of control information associated with packetized
network data by protocol drivers and device drivers
    9.
    发明授权
    Creation and use of control information associated with packetized network data by protocol drivers and device drivers 失效
    通过协议驱动程序和设备驱动程序创建和使用与打包网络数据相关联的控制信息

    公开(公告)号:US5983274A

    公开(公告)日:1999-11-09

    申请号:US852937

    申请日:1997-05-08

    IPC分类号: H04L29/12 G06F13/00

    CPC分类号: H04L61/00 H04L29/12009

    摘要: A method, computer program product, and data structure that allows any software component processing network data to communicate control information to and cooperate with another software component by associating control information with a packet of network data. The present invention associates control information with the network data upon which the control information will operate by appending one or more control data structure to a packet descriptor that is common to all software components processing the network data. Furthermore, the control data structure is "tagged" with a class ID value that allows all concerned software components to recognize and utilize the control information. In this manner, any software component may cooperate with and communicate to another software component that processes the network data regardless of any intervening software components.

    摘要翻译: 一种方法,计算机程序产品和数据结构,其允许任何软件组件处理网络数据通过将控制信息与网络数据分组相关联来将控制信息传递到另一软件组件并与另一软件组件协作。 本发明通过将一个或多个控制数据结构附加到处理网络数据的所有软件组件所共有的分组描述符来将控制信息与控制信息将在其上操作的网络数据相关联。 此外,控制数据结构被“标记”具有允许所有相关软件组件识别和利用控制信息的类ID值。 以这种方式,任何软件组件可以与处理网络数据的另一软件组件协作并进行通信,而不管任何中间的软件组件如何。