IP Library Granted Patent US 8,493,985
Granted Patent B2
US 8,493,985 · App. 12/355,609 · Granted Jul 23, 2013

Network message transformation device and methods thereof

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 8,493,985
App. No.
12/355,609
Granted
Jul 23, 2013
Kind
B2
Abstract

A method of transforming messages for communication via a network includes receiving a message from an application being executed at a processor. The message is received at a connection object, which transforms the received message based on characteristics of the connection object. The characteristics can be determined via a negotiation between the source and target of the message. The connection object provides the transformed message to a protocol layer, which forms packets based on the message. The connection object thus transforms each message independent of the transmission protocol used to communicate the message to the target, thereby improving communication bandwidth and efficiency.

Claims (72)

1. A method, comprising:

determining, at a first network node, an establishment of a first communication session with a second network node;

creating a first connection object at the first network node in response to determining the establishment of the first communication session;

determining, at the first network node, a first communication parameter based on the first communication session;

modifying, at the first network node, the first connection object based on the first communication parameter;

receiving a message at the first connection object of the first network node during the first communication session, the message created by and received from a first application being executed at the first network node;

transforming, at the first network node, the message based on a first characteristic of the first connection object, the first characteristic based on the first communication parameter;

after transforming the message, creating a plurality of packets at the first network node based on the message according to a communication protocol; and

providing a first packet of the plurality of packets from the first network node to the second network node, the first packet comprising a data payload including a portion of the message, a message size field including a transformed message size and an original message size field including a pre-transformed message size, wherein the first packet does not include an indicator of the first communication parameter.

2. The method of claim 1 , wherein the first communication parameter is a compression parameter associated with the first communication session.

3. The method of claim 1 , wherein the first communication parameter is an encryption parameter associated with the first communication session.

4. The method of claim 1 , wherein the first connection object of the first network node is independent of a protocol layer of the first network node.

5. The method of claim 1 , further comprising:

determining a second communication parameter based on the first communication session;

modifying the first connection object based on the second communication parameter;

transforming the message based on a second characteristic of the first connection object, the second characteristic based on the second communication parameter; and

wherein the first packet does not include an indicator of the second communication parameter.

6. The method of claim 1 , wherein the first application is executed at a first processor of the first network node and, wherein the first connection object of the first network node is executed at a network interface device of the first network node different from the first processor, the network interface device provides a physical layer interface between the first processor and a network.

7. The method of claim 1 , further comprising:

determining at the first network node a second communication session;

determining a second communication parameter based on the second communication session;

modifying a second connection object based on the second communication parameter;

receiving a second message at the second connection object during the second communication session;

transforming the second message based on a second characteristic of the second connection object, the second characteristic based on the second communication parameter;

communicating a second packet comprising a data payload including a portion of the second message, wherein the second packet does not include an indicator of the second communication parameter.

8. The method of claim 7 , wherein the first communication parameter and the second communication parameter are different.

9. The method of claim 7 , wherein the first packet is associated with a first communication protocol and the second packet is associated with a second communication protocol different from the first.

10. The method of claim 7 , wherein the first communication parameter comprises encryption of a first type and the second communication parameter comprises encryption of a second type.

11. The method of claim 7 , wherein the first communication parameter comprises compression of a first type and the second communication parameter comprises compression of a second type.

12. The method of claim 1 , wherein the transformed message size indicates a size of the message associated with the first packet after transforming the message and the pre-transformed message size indicates a size of the message associated with the first packet before transforming the message.

13. A network device, comprising:

a first processor operable to execute a first application; and

a network interface device comprising a second processor, the network interface device operable to:

determine an establishment of a first communication session between the first processor of the network device and a remote network node;

create a first connection object in response to determining the establishment of the first communication session;

determine a first communication parameter based on the first communication session;

modify the first connection object based on the first communication parameter;

receive a message at the first connection object from the first application during the first communication session, the first application being executed by the first processor;

transform the message based on a first characteristic of the first connection object, the first characteristic based on the first communication parameter;

after transforming the message, create a plurality of packets based on the message according to a communication protocol; and

provide a first packet of the plurality of packets from the network interface device of the network device to the remote network node, the first packet comprising a data payload including a portion of the message, a message size field including a transformed message size and an original message size field including a pre-transformed message size, wherein the first packet does not include an indicator of the first communication parameter.

14. The network device of claim 13 , wherein the first communication parameter is a compression parameter associated with the first communication session.

15. The network device of claim 13 , wherein the first communication parameter is an encryption parameter associated with the first communication session.

16. The network device of claim 13 , wherein the first connection object is independent of a protocol layer of the remote network node.

17. The network device of claim 13 , wherein the network interface device is further operable to:

determine a second communication parameter based on the first communication session;

modify the first connection object based on the first communication parameter;

transform the message based on a second characteristic of the first connection object, the second characteristic based on the second communication parameter; and

wherein the first packet does not include an indicator of the second communication parameter.

18. The network device of claim 13 , wherein the network interface device is further operable to:

determine a second communication session between the first processor and a second remote network node;

determine a second communication parameter based on the second communication session;

modify a second connection object based on the second communication parameter;

receive a second message at the second connection object during the second communication session;

transform the second message based on a second characteristic of the second connection object, the second characteristic based on the second communication parameter;

communicate a second packet comprising a data payload including a portion of the second message, wherein the second packet does not include an indicator of the second communication parameter.

19. The network device of claim 18 , wherein the first communication parameter and the second communication parameter are different.

20. The network device of claim 18 , wherein the first packet is associated with a first communication protocol and the second packet is associated with a second communication protocol different from the first.

21. The network device of claim 18 , wherein the first communication parameter comprises encryption of a first type and the second communication parameter comprises encryption of a second type.

22. The network device of claim 13 , wherein the transformed message size indicates a size of the message associated with the first packet after transforming the message and the pre-transformed message size indicates a size of the message associated with the first packet before transforming the message.

23. A method, comprising:

creating a first connection object at a first network node in response to determining an establishment of a first communication session with a second network node;

determining, at the first network node, a first communication parameter based on the first communication session;

modifying, at the first network node, the first connection object based on the first communication parameter, wherein the first connection object is executed at a network interface device of the first network node, and the first connection object of the first network node is independent of a protocol layer of the first network node;

receiving a message at the first connection object of the first network node during the first communication session, the message created by and received from a first application being executed at a first processor of the first network node, wherein the first processor of the first network node is different than the network interface device of the first network node;

transforming, at the first network node, the message based on a first characteristic of the first connection object, the first characteristic based on the first communication parameter;

after transforming the message, creating a plurality of packets at the first network node based on the message according to a communication protocol, each packet comprising a message size field including a transformed message size and an original message size field including a pre-transformed message size, and;

providing at least a first packet of the plurality of packets from the first network node to the second network node.

24. The method of claim 23 , wherein the first packet of the plurality of packets comprises a data payload including a portion of the message, and wherein the first packet does not include an indicator of the first communication parameter.

25. The method of claim 23 , wherein the network interface device of the first network node provides a physical layer interface between the first processor of the first network node and an external network.

26. The method of claim 23 , wherein the first communication parameter is a compression parameter or an encryption parameter associated with the first communication session.

27. The method of claim 23 , wherein the transformed message size indicates a size of the message associated with the first packet after transforming the message and the pre-transformed message size indicates a size of the message associated with the first packet before transforming the message.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2012
From: QUALCOMM ATHEROS, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 029503/0936 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2011
From: BIGFOOT NETWORKS, INC.
To: QUALCOMM ATHEROS, INC.
Reel/Frame 026990/0280 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2009
From: BEVERLY, HARLAN T.; MUSTA, CHARLES A.
To: BIGFOOT NETWORKS, INC.
Reel/Frame 022124/0860 →