IP Library Granted Patent US 11,848,863
Granted Patent B2
US 11,848,863 · App. 16/999,660 · Granted Dec 19, 2023

Universal network protocol encapsulation and methods for transmitting data

Inventors: Bilgehan Erman (Weehawken, NJ); Andrea Francini (Rumson, NJ); Edward Grinshpun (Freehold, NJ); Raymond Miller (Murray Hill, NJ)
Assignee: NOKIA SOLUTIONS AND NETWORKS OY
H04L45/74H04L47/34H04L2212/00
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 11,848,863
App. No.
16/999,660
Granted
Dec 19, 2023
Kind
B2
Abstract

A network node configured to transmit packets to a destination node in a packet network, includes at least one processor and at least one memory including computer program code. The at least one memory and the computer program code are configured to, with the at least one processor, cause the network node to: assemble at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group; and transmit the first packet to the destination node.

Claims (91)

1. A method for packet transmission between a source node and a destination node in a packet network, the method comprising:

assembling at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group, the network function group including at least two data units of the plurality of data units, the network function group including commands associated with packet transmission procedures and operation of the packet network and information associated with packet transmission procedures and operation of the packet network, and the connection group including at least one of identifiers, routes or tags associated with a flow of the first packet; and

transmitting the first packet to the destination node, wherein

the plurality of data units included in the first packet include at least a network identifier data unit, a destination endpoint identifier data unit, a source endpoint identifier data unit, a flow tag data unit, and at least one of a network state data unit, a channel data unit or a routing vector data unit,

the plurality of data units are arranged as a sequence of data units, and

the at least one of the network state data unit, the channel data unit or the routing vector data unit are arranged after the network identifier data unit, the destination endpoint identifier data unit, the source endpoint identifier data unit and the flow tag data unit in the sequence of data units.

2. The method of claim 1 , wherein each data unit, among the plurality of data units, comprises:

a type field indicating whether the data unit is grouped into the connection group, the network function group or the application group;

a length field indicating a bit length of a value field; and

the value field including a payload of the data unit.

3. The method of claim 2 , wherein the type field identifies a type instance of the data unit.

4. The method of claim 1 , wherein

the first packet is an initial packet transmitted from the source node to the destination node.

5. The method of claim 4 , further comprising:

assembling a second packet for transmission to the destination node, wherein

the second packet includes the flow tag data unit, and

the second packet does not include the network identifier data unit, the destination endpoint identifier data unit or the source endpoint identifier data unit; and

transmitting the second packet to the destination node.

6. The method of claim 5 , wherein

the flow tag data unit included in the second packet includes a flow tag identifying a packet flow including the first packet and the second packet; and

the method further includes receiving an unknown tag response from the destination node, the unknown tag response indicating that a record corresponding to the flow tag included in the second packet does not exist at the destination node.

7. The method of claim 1 , wherein

the connection group includes at least one data unit of the plurality of data units, and

the application group includes at least one data unit of the plurality of data units.

8. A method for packet transmission between a source node and a destination node in a packet network, the method comprising:

assembling at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group, the network function group including at least two data units of the plurality of data units, the network function group including commands associated with packet transmission procedures and operation of the packet network and information associated with packet transmission procedures and operation of the packet network, and the connection group including at least one of identifiers, routes or tag associated with a flow of the first packet; and

transmitting the first packet to the destination node,

wherein the first packet is an initial packet transmitted from the source node to the destination node,

wherein the plurality of data units included in the first packet include at least a network identifier data unit, a destination endpoint identifier data unit, a source endpoint identifier data unit and a flow tag data unit,

wherein the method further comprises

assembling a second packet for transmission to the destination node, wherein the second packet includes the flow tag data unit, and the second packet does not include the network identifier data unit, the destination endpoint identifier data unit or the source endpoint identifier data unit, and

transmitting the second packet to the destination node,

wherein the flow tag data unit included in the second packet includes a flow tag identifying a packet flow including the first packet and the second packet, and

wherein the method further includes receiving an unknown tag response from the destination node, the unknown tag response indicating that a record corresponding to the flow tag included in the second packet does not exist at the destination node.

9. A network node configured to transmit packets to a destination node in a packet network, the network node comprising:

at least one processor; and

at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the network node to

assemble at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group, the network function group including at least two data units of the plurality of data units, the network function group including commands associated with packet transmission procedures and operation of the packet network and information associated with packet transmission procedures and operation of the packet network, and the connection group including at least one of identifiers, routes or tags associated with a flow of the first packet; and

transmit the first packet to the destination node, wherein

the plurality of data units included in the first packet include at least a network identifier data unit, a destination endpoint identifier data unit, a source endpoint identifier data unit, a flow tag data unit, and at least one of a network state data unit, a channel data unit or a routing vector data unit,

the plurality of data units is arranged as a sequence of data units, and

the at least one of the network state data unit, the channel data unit or the routing vector data unit are arranged after the network identifier data unit, the destination endpoint identifier data unit, the source endpoint identifier data unit and the flow tag data unit in the sequence of data units.

10. The network node of claim 9 , wherein each data unit, among the plurality of data units, comprise:

a type field indicating whether the data unit is grouped into the connection group, the network function group or the application group;

a length field indicating a bit length of a value field; and

the value field including a payload of the data unit.

11. The network node of claim 10 , wherein the type field identifies a type instance of the data unit.

12. The network node of claim 9 , wherein data units in the connection group include at least one of identifiers, routes or tags associated with a flow of packets between the network node and the destination node.

13. The network node of claim 9 , wherein

the first packet is an initial packet transmitted from the network node to the destination node.

14. The network node of claim 9 , wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause the network node to

assemble a second packet for transmission to the destination node, wherein

the second packet includes the flow tag data unit, and

the second packet does not include the network identifier data unit, the destination endpoint identifier data unit or the source endpoint identifier data unit, and

transmit the second packet to the destination node.

15. The network node of claim 14 , wherein

the flow tag data unit included in the second packet includes a flow tag identifying a packet flow including the first packet and the second packet; and

the at least one memory and the computer program code are configured to, with the at least one processor, cause the network node to receive an unknown tag response from the destination node, the unknown tag response indicating that a record corresponding to the flow tag included in the second packet does not exist at the destination node.

16. A network node configured to transmit packets to a destination node in a packet network, the network node comprising:

at least one processor; and

at least one memory including computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the network node to

assemble at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group, the network function group including at least two data units of the plurality of data units, the network function group including commands associated with packet transmission procedures and operation of the packet network and information associated with packet transmission procedures and operation of the packet network, and the connection group including at least one of identifiers, routes or tags associated with a flow of the first packet, and

transmit the first packet to the destination node

wherein each data unit, among the plurality of data units, comprise:

a type field indicating whether the data unit is grouped into the connection group, the network function group or the application group,

a length field indicating a bit length of a value field, and

the value field including a payload of the data unit,

wherein the first packet is an initial packet transmitted from the network node to the destination node, and

wherein the plurality of data units included in the first packet include at least a network identifier data unit, a destination endpoint identifier data unit, a source endpoint identifier data unit and a flow tag data unit,

wherein the at least one memory and the computer program code are further configured to, with the at least one processor, cause the network node

to assemble a second packet for transmission to the destination node, wherein the second packet includes the flow tag data unit, and the second packet does not include the network identifier data unit, the destination endpoint identifier data unit or the source endpoint identifier data unit,

transmit the second packet to the destination node,

wherein the flow tag data unit included in the second packet includes a flow tag identifying a packet flow including the first packet and the second packet, and

the at least one memory and the computer program code are further configured to, with the at least one processor, cause the network node to receive an unknown tag response from the destination node, the unknown tag response indicating that a record corresponding to the flow tag included in the second packet does not exist at the destination node.

17. A non-transitory computer-readable medium storing computer-executable instructions that, when executed by at least one processor at a network node, cause the network node to perform a method for packet transmission between the network node and a destination node in a packet network, the method comprising:

assembling at least a first packet including a plurality of data units, each of the plurality of data units being grouped into one of a connection group, a network function group or an application group, the network function group including at least two data units of the plurality of data units, the network function group including commands associated with packet transmission procedures and operation of the packet network and information associated with packet transmission procedures and operation of the packet network, and the connection group including at least one of identifiers, routes or tags associated with a flow of the first packet; and

transmitting the first packet to the destination node, wherein

the plurality of data units included in the first packet include at least a network identifier data unit, a destination endpoint identifier data unit, a source endpoint identifier data unit, a flow tag data unit, and at least one of a network state data unit, a channel data unit or a routing vector data unit,

the plurality of data units are arranged as a sequence of data units, and

the at least one of the network state data unit, the channel data unit or the routing vector data unit are arranged after the network identifier data unit, the destination endpoint identifier data unit, the source endpoint identifier data unit and the flow tam data unit in the sequence of data units.

18. The non-transitory computer-readable medium of claim 17 , wherein each data unit, among the plurality of data units, comprises:

a type field indicating whether the data unit is grouped into the connection group, the network function group or the application group;

a length field indicating a bit length of a value field; and

the value field including a payload of the data unit.

19. The non-transitory computer-readable medium of claim 17 , wherein

the first packet is an initial packet transmitted from the network node to the destination node.

20. The non-transitory computer-readable medium of claim 19 , wherein the method further comprise:

assembling a second packet for transmission to the destination node, wherein

the second packet includes the flow tag data unit, and

the second packet does not include the network identifier data unit, the destination endpoint identifier data unit or the source endpoint identifier data unit; and

transmitting the second packet to the destination node.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2020
From: ERMAN, BILGEHAN; FRANCINI, ANDREA; GRINSHPUN, EDWARD; MILLER, RAYMOND
To: NOKIA SOLUTIONS AND NETWORKS OY
Reel/Frame 053577/0244 →
Continuity (2)
Provisional Application 62930815 · Nov 5, 2019
Related Publication 20210135988A1 · May 6, 2021