Method and apparatus supporting network communications
First Claim
1. A method of receiving data from a network using a network device, the network device including a processor coupled to a memory and physical media connection, a first process including a device driver that provides an interface to a first network protocol layer, a device driver module that provides an interface between the device driver and a module management process, a second process that provides an interface to a second network protocol layer, a second module that provides an interface between the second process and the module management process, the method including the steps of:
- receiving the data from the network at the physical media connection;
determining the data is a control information type that includes control information;
the device driver communicating to the device driver module a first event corresponding to the control information;
the device driver module communicating to the module management process a second event corresponding to the control information;
the module management process determining that the second module should be notified of the control information;
the module management process enabling a communication to the second module of a third event corresponding to the control information; and
the second module communicating to the second process a fourth event corresponding to the control information.
7 Assignments
0 Petitions
Accused Products
Abstract
One embodiment of the invention includes a method of managing network communications in a network device. The network device includes software components and modules. Some of the components control the interaction between modules, while other components perform specific functions for associated modules. A module manager component controls the creation and destruction of modules as well as their interactions. A communications manager component manages network communications in the network device. The network communications is supported by creating a number of modules that are associated with components that implement different parts of a network protocol. As a result of the use of the modules, a component need not know which other component(s) it depends upon, nor need it know which other component(s) depend upon it. This allows components to be used together very easily in many different configurations. The modules also allow the same component to be used by multiple modules.
-
Citations
18 Claims
-
1. A method of receiving data from a network using a network device, the network device including a processor coupled to a memory and physical media connection, a first process including a device driver that provides an interface to a first network protocol layer, a device driver module that provides an interface between the device driver and a module management process, a second process that provides an interface to a second network protocol layer, a second module that provides an interface between the second process and the module management process, the method including the steps of:
-
receiving the data from the network at the physical media connection;
determining the data is a control information type that includes control information;
the device driver communicating to the device driver module a first event corresponding to the control information;
the device driver module communicating to the module management process a second event corresponding to the control information;
the module management process determining that the second module should be notified of the control information;
the module management process enabling a communication to the second module of a third event corresponding to the control information; and
the second module communicating to the second process a fourth event corresponding to the control information. - View Dependent Claims (2, 3, 4, 5, 6)
said first process processing said data to generated a first processed data; - and
said first process directly requesting said second process to process said first processed data to generate a second processed data.
-
-
5. The method of claim 4 wherein said network device includes a first module, said first module providing an interface for said first process, said second process includes a first function for processing said first processed data, and wherein said first process directly requesting said second process to process said first processed data includes said first process accessing said first module to identify said first function and said first process calling said first function.
-
6. The method of claim 1 further comprising a computer readable medium having stored therein instructions for causing a processor to execute all the steps of the method.
-
7. A method of communicating data between a plurality of components in a network communications device, each component of said plurality of components providing a set of functions for different portions of a network protocol, said plurality of components including a first component, a second component and a third component, said second component including a set of functions for controlling said network protocol, said third component including a set of functions for transferring data according to a portion of said network protocol, said method comprising:
-
generating a module for each component of said plurality of components, including generating a first module correspond to said first component, a second module correspond to said second component and a third module corresponding to said third component;
receiving said data at said first component;
if said data corresponds to a data transfer, then said first component processing said data and said first module providing to said first component a reference to directly request processing of said data by said third component; and
if said data corresponds to control information, then said first module causes a notification of said second component, said notification corresponding to said control information. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method of bundling a plurality of device driver processes to support data communications in a network device, said network device including a plurality of physical media connections, a plurality of processes and a plurality of modules, said plurality of processes including programs for implementing communications and including said plurality of device driver processes, each process of said plurality of processes implementing a set of functions to transmit data, receive data, and control said each process, said plurality of processes including a data link layer process, a first device driver process, and a second device driver process, said plurality of modules providing an interface to said plurality of processes, said plurality of modules including a data link layer module, a first module, a second module and a third module, said method comprising the steps of:
-
storing a first set of references corresponding to said set of functions for said first device driver process in said first module;
storing a second set of references corresponding to said set of functions for said second device driver process in said second module;
storing a third set of references indicating a dependence of said first module and said second module on said third module; and
said data link layer process accessing said third module to communicate said data directly to one of said first device driver process and said second device driver process by using respectively said first set of references and said second set of references. - View Dependent Claims (15, 16, 17, 18)
-
Specification