IP Library Granted Patent US 6,976,054
Granted Patent B1
US 6,976,054 · App. 09/753,359 · Granted Dec 13, 2005

Method and system for accessing low-level resources in a network device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,976,054
App. No.
09/753,359
Granted
Dec 13, 2005
Kind
B1
Abstract

A method and system provides access to information about a resource associated with a network device. The method and system selects a layer for communicating with the requested resource associated with the network device in a network protocol stack having multiple layers, establishes an inner layer socket for communicating at the selected layer using an inner layer application programming interface (IL API) and a socket identifier associated with the requested resource, wherein the inner layer socket communicates using the selected layer and bypasses other layers in the network protocol stack, transmits the request for information about the resource through the inner layer socket and the socket identifier, receives the information about the resource in response to the transmission made through the inner layer socket, and passes the information about the resource through the inner layer socket to the application making the request.

Claims (51)

1. A method for communicating over a network protocol stack in a network, the method comprising:

creating a packet through an application, the packet being a self-contained, independent entity of data including header information for routing the packet to from a source to a destination, the header information being associated with a layer in a multiple layer network protocol stack;

selecting a layer in the multiple layer network protocol stack for communicating with the application;

establishing an inner layer socket for communication between the application and the selected layer using an inner layer application programming interface (IL API), wherein the communication between the application and the selected layer bypasses other layers in the multiple layer network protocol stack; and

transmitting the packet including the header information from the application to the selected layer through the inner layer socket;

wherein the application communicates with the IL API using object-oriented instructions and the IL API interfaces with the multiple layer network protocol stack through instructions executable on a virtual-machine compatible with the multiple layer network protocol stack.

2. The method of claim 1 , wherein the header information includes header information associated with a transport layer and the inner layer socket is a transport socket.

3. The method of claim 2 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the transport socket is compatible with a TCP or UDP transport layer protocol.

4. The method of claim 1 , wherein the header information includes header information associated with a network layer and the inner layer socket is a network socket.

5. The method of claim 4 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the network socket is compatible with an IP network layer protocol.

6. The method of claim 1 , wherein the header information includes header information associated with a link layer and the inner layer socket is a link socket.

7. The method of claim 6 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the link socket is compatible with a link layer protocol.

8. The method of claim 1 , wherein selecting a layer in the multiple layer network protocol stack further includes selecting the layer in the multiple layer network protocol stack based on a type of the packet created by the application.

9. The method of claim 1 , wherein the IL API further provides a transport socket to access transport layer information in the multiple layer network protocol stack, a network socket to access network layer information in the multiple layer network protocol stack, a link socket to access link layer information in the multiple layer network protocol stack, and a physical socket to access physical port information in the multiple layer network protocol stack.

10. The method of claim 1 , wherein the IL API further provides a different socket communication interface for each layer of communication available in the multiple layer network protocol stack.

11. The method of claim 1 , wherein the object-oriented instructions are compatible with a Java programming language.

12. The method of claim 11 , wherein the application contains source code that generates and utilizes Java link layer sockets.

13. The method of claim 1 , further comprising transmitting the packet from the source to the destination over the network based on the header information in the packet.

14. The method of claim 13 , wherein the header information includes header information for routing the packet from a source computer to a destination computer.

15. An apparatus for communicating over a network protocol stack in a network, the apparatus comprising:

a processor;

a memory for storing instructions when executed on the processor that causes the processor to,

create a packet through an application, the packet being a self-contained, independent entity of data including header information for routing the packet from a source to a destination, the header information being associated with a layer in a multiple layer network protocol stack;

select a layer in the multiple layer network protocol stack for communicating with the application;

establish an inner layer socket for communication between the application and the selected layer using an inner layer application programming interface (IL API), wherein the IL API is distinct from the application, and wherein the communication between the application and the selected layer bypasses other layers in the multiple layer network protocol stack; and

transmit the packet including the header information from the application to the selected layer through the inner layer socket.

16. The apparatus of claim 15 , wherein the header information includes header information associated with a transport layer and the inner layer socket is a transport socket.

17. The apparatus of claim 16 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the transport socket is compatible with a TCP or UDP transport layer protocol.

18. The apparatus of claim 15 , wherein the header information includes header information associated with a network layer and the inner layer socket is a network socket.

19. The apparatus of claim 18 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the network socket is compatible with an IP network layer protocol.

20. The apparatus of claim 15 , wherein the header information includes header information associated with a link layer and the inner layer socket is a link socket.

21. The apparatus of claim 20 , wherein the multiple layer network protocol stack is compatible with TCP/IP and the link socket is compatible with a link layer protocol.

22. The apparatus of claim 15 , wherein the instructions to cause a processor to select a layer in a network protocol stack further includes instructions to cause the processor to select the layer in the network protocol stack based on a type of the packet created by the application.

23. The apparatus of claim 15 , wherein the IL API further provides a transport socket to access transport layer information in the multiple layer network protocol stack, a network socket to access network layer information in the multiple layer network protocol stack, a link socket to access link layer information in the multiple layer network protocol stack, and a physical socket to access physical port information in the multiple layer network protocol stack.

24. The apparatus of claim 15 , wherein the IL API further provides a different socket communication interface for each layer of communication available in the multiple layer network protocol stack.

25. The apparatus of claim 15 , wherein the application communicates with the IL API using object-oriented instructions and the IL API interfaces with the multiple layer network protocol stack through instructions executable on a virtual-machine compatible with the multiple layer network protocol stack.

26. The apparatus of claim 25 , wherein the object-oriented instructions are compatible with a Java programming language.

27. The apparatus of claim 15 , wherein the instructions further includes instructions to cause the processor to transmit the packet from the source to the destination over the network based on the header information in the packet.

28. The apparatus of claim 27 , wherein the header information includes header information for routing the packet from a source computer to a destination computer.

29. An apparatus for accessing information about a resource associated with a network device, comprising:

means for creating a packet through an application, the packet being a self-contained, independent entity of data including header information for routing the packet from a source to a destination, the header information being associated with a layer in a multiple layer network protocol stack;

means for selecting a layer in the multiple layer network protocol stack for communication with the application;

means for establishing an inner layer socket for communication between the application and the selected layer using an inner layer application programming interface (IL API), wherein the IL API is distinct from the application, and wherein the communication between the application and the selected layer bypasses other layers in the multiple layer network protocol stack; and

means for transmitting the packet including the header information from the application to the selected layer through the inner layer socket.

30. The apparatus of claim 29 , further comprising means for transmitting the packet from the source to the destination over a network based on the header information in the packet.

31. A computer program, tangibly stored on a computer-readable medium, comprising instructions for communicating over a network protocol stack in a network, the computer program comprising instructions to:

create a packet through an application, the packet being a self-contained, independent entity of data including header information for routing the packet from a source to a destination, the header information being associated with a layer in a multiple layer network protocol stack;

select a layer in the multiple layer network protocol stack for communicating with the application;

establish an inner layer socket for communication between the application and the selected layer using an inner layer application programming interface ( 1 L API), wherein the IL API is distinct from the application, and wherein the communication between the application and the selected layer bypasses other layers in the multiple layer network protocol stack; and

transmit the packet including the header information from the application to the selected layer through the inner layer socket.

32. The computer program of claim 31 , further comprising instructions to transmit the packet from the source to the destination over the network based on the header information in the packet.

Assignments (5)
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032436/0804 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →