IP Library Granted Patent US 7,266,121
Granted Patent B2
US 7,266,121 · App. 10/329,750 · Granted Sep 4, 2007

Flow labels

Assignee: Nokia Corporation
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 7,266,121
App. No.
10/329,750
Granted
Sep 4, 2007
Kind
B2
Abstract

There is disclosed a system for monitoring a packet data flow, comprising: a data flow source element including: determining means adapted to determine a quality of service identifier for the data flow; first generating means adapted to generate an encoded value in dependence on the quality of service identifier; allocating means adapted to allocate the quality of service identifier and the encoded value to the flow label for each data packet of the data flow; and transmitting means for forwarding data packets including flow labels to a routing domain; and a routing domain interface element including: receiving means for receiving data packets from the data flow source; second generating means adapted to generate a further encoded value in dependence on the quality of service identifier in a flow label of a data packet; comparing means adapted to compare the further encoded value to the encoded value in the flow label; and routing means adapted to selectively route the data packets in dependence on the comparing step.

Claims (70)

1. A method of allocating a flow label for a packet data flow, comprising:

determining a quality of service identifier for the data flow;

generating an encoded value in dependence on the quality of service identifier; and

allocating the quality of service identifier and the encoded value to the flow label for each data packet of the data flow.

2. The method according to claim 1 , further comprising:

transmitting each data packet of the data flow to a routing domain;

generating a further encoded value in dependence on the quality of service identifier;

comparing the further encoded value to the encoded value in the flow label; and

selectively routing the data packets in dependence on the comparing.

3. The method according to claim 2 , wherein, if the further encoded value matches the encoded value, the data packet is forwarded to the routing domain.

4. The method according to claim 2 , wherein, if the further encoded value does not match the encoded value, the data packet is dropped.

5. The method according to claim 2 , further comprising: if the further encoded value does not match the encoded value, determining a further quality of service identifier for the data flow and allocating the determined further quality of service identifier to the flow label, wherein the data packet is selectively routed in dependence on the further quality of service identifier.

6. The method according to claim 5 , wherein the further quality of service identifier identifies a lower quality of service level than the one corresponding to the quality of service identifier marked within the flow label.

7. The method according to claim 2 , wherein comparing is performed for a first data packet of the data flow.

8. The method according to claim 7 , wherein all subsequent packets of the data flow are selectively routed in dependence on the comparing for the first data packet.

9. The method according to claim 2 , wherein the routing domain is an IP routing domain.

10. The method according to claim 1 , wherein the encoded value is further generated in dependence on a source identifier identifying the source of the data flow.

11. The method according to claim 10 , further comprising:

transmitting each data packet of the data flow to a routing domain,

generating a further encoded value in dependence on the quality of service identifier and the source identifier in the flow label,

comparing the further encoded value to the encoded value in the flow label, and

selectively routing the data packets in dependence on the comparing.

12. The method according to claim 1 , further comprising allocating a flow identifier to the flow label, said flow identifier uniquely identifying the data flow, wherein the encoded value is further generated in dependence on the flow identifier.

13. The method according to claim 12 , further comprising:

transmitting each data packet of the data flow to a routing domain,

generating a further encoded value in dependence on the quality of service identifier and the flow identifier in the flow label,

comparing the further encoded value to the encoded value in the flow label, and

selectively routing the data packets in dependence on the comparing.

14. The method according to claim 1 , wherein determining the quality of service identifier comprises: requesting a quality of service level for the data flow; and receiving the quality of service identifier for the data flow.

15. The method according to claim 1 , wherein the encoded value is a hash value, and the generating comprises using a hash function.

16. The method according to claim 1 , wherein the quality of service identifier is a differentiated services code point.

17. The method according to claim 1 , wherein the method is configured to operate in a packet switched network.

18. The method according to claim 1 , wherein the data packet comprises a data packet header, and said data packet header comprises the flow label.

19. A device for allocating a flow label for a packet data flow, comprising:

determining means configured to determine a quality of service identifier for the data flow;

generating means configured to generate an encoded value in dependence on the quality of service identifier; and

allocating means configured to allocate the quality of service identifier and the encoded value to the flow label for each data packet of the data flow.

20. The device according to claim 19 , wherein said generating means is configured to further generate the encoded value in dependence on a source identifier, said source identifier identifying the source of the data flow.

21. The device according to claim 19 , wherein said generating means is configured to further generate the encoded value in dependence on a flow identifier, said flow identifier uniquely identifying the data flow.

22. The device according to claim 19 , further comprising: transmitting means configured to transmit each data packet of the data flow, including the flow label, to a routing domain.

23. A routing domain interface device for receiving a data flow including data packets for transmission on the routing domain, said data packets including a flow label including a quality of service identifier and an encoded value, said encoded value being generated based on the quality of service identifier, the interface device comprising:

generating means configured to generate a further encoded value in dependence on the quality of service identifier in the flow label;

comparing means configured to compare the further encoded value to the encoded value in the flow label; and

routing means configured to selectively route the data packets in dependence on the comparing.

24. The interface device according to claim 23 , wherein the flow label further includes a source identifier identifying the source of the data flow, said encoded value being generated further based on said source identifier, wherein the generating means is further configured to generate the further encoded value in further dependence on the source identifier.

25. The interface device according to claim 23 , wherein the flow label further includes a flow identifier uniquely identifying the data flow, said encoded value being generated further based on said flow identifier, wherein the generating means is further configured to generate the further encoded value in further dependence on the flow identifier.

26. The interface device according to claim 23 , wherein the routing means is configured to forward all data packets of the data flow to the routing domain if the further encoded value matches the encoded value for a first data packet.

27. The interface device according to claim 23 , wherein the routing means is configured to drop all data packets, if the further encoded value does not match the encoded value for the first data packet.

28. The interface device according to claim 23 , further including means, responsive to the further encoded value not matching the encoded value, configured to determine a further quality of service identifier and allocate said further quality of service identifier to the flow label, and the routing means being further configured to selectively route the data packet in dependence on the further quality of service identifier.

29. An interface device according to claim 28 , wherein the further quality of service identifier identifies a quality of service level lower than that associated with the quality of service identifier.

30. A system for monitoring a packet data flow, comprising:

a data flow source element including:

determining means configured to determine a quality of service identifier for the data flow;

first generating means configured to generate an encoded value in dependence on the quality of service identifier;

allocating means configured to allocate the quality of service identifier and the encoded value to a flow label for each data packet of the data flow; and

transmitting means for forwarding data packets including flow labels to a routing domain; and

a routing domain interface element including:

receiving means for receiving data packets from the data flow source;

second generating means configured to generate a further encoded value in dependence on the quality of service identifier in the flow label of a data packet;

comparing means configured to compare the further encoded value to the encoded value in the flow label; and

routing means configured to selectively route the data packets in dependence on the comparing.

31. The system according to claim 30 , wherein the allocating means is configured to allocate a flow identifier uniquely identifying the data flow to the flow label, said encoded value being generated further based on said flow identifier, and wherein the second generating means is further configured to generate the further encoded value in further dependence on the flow identifier.

32. The system according to claim 30 , wherein the allocating means is configured to allocate a source identifier identifying the source of the data flow to the flow label, said encoded value being generated further based on said source identifier, and wherein the second generating means is further configured to generate the further encoded value in further dependence on the source identifier.

33. The system according to claims 30 , wherein the determining means is configured to determine the quality of service identifier by: requesting a quality of service level for the data flow; and receiving the quality of service identifier for the data flow.

34. The system according to claim 30 , wherein the encoded value is a hash value, and the first generating means utilises a hash function.

35. The system according to claim 30 , wherein the quality of service identifier is a differentiated services code point.

36. The system according to claim 30 , wherein the routing domain is an IP routing domain.

37. The system according to claim 30 , wherein the system is configured operate in a packet switched network.

38. The system according to claim 30 , wherein the data packet comprises a data packet header, and said data packet header comprises the flow label.

39. The system according to claim 30 , wherein the system is configured to operate in a mobile communication system.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2023
From: MIND FUSION, LLC
To: CRYSTAL MOUNTAIN COMMUNICATIONS, LLC
Reel/Frame 064803/0469 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2023
From: INTELLECTUAL VENTURES ASSETS 191 LLC
To: MIND FUSION, LLC
Reel/Frame 064270/0685 →
SECURITY INTEREST Recorded Mar 23, 2023
From: MIND FUSION, LLC
To: INTELLECTUAL VENTURES ASSETS 191 LLC
Reel/Frame 063155/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2023
From: INTELLECTUAL VENTURES I LLC
To: INTELLECTUAL VENTURES ASSETS 191 LLC
Reel/Frame 062705/0781 →
MERGER Recorded Jul 22, 2011
From: SPYDER NAVIGATIONS L.L.C.
To: INTELLECTUAL VENTURES I LLC
Reel/Frame 026637/0611 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2007
From: NOKIA CORPORATION
To: SPYDER NAVIGATIONS L.L.C.
Reel/Frame 019660/0496 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2003
From: RAISANEN, VILHO I.
To: NOKIA CORPORATION
Reel/Frame 013960/0125 →
Continuity (1)
Related Publication 20040125797A1 · Jul 1, 2004