Method and apparatus for hardware packets reassembly in constrained networks
First Claim
1. A hardware packets reassembly apparatus, comprising:
- an ingress unit receiving and parsing a data packet, recognizing fragments corresponding to the data packet, and outputting control information of the fragments;
an en-queue unit storing the control information of each fragment, linking each related fragment based on the control information, and enqueuing the data packet when all fragments are available corresponding to the data packet, wherein the data packet is enqueued only when all of the fragments corresponding to the data packet are available in a sequential order;
a dequeue unit dequeuing the data packet from a packet descriptor, and scheduling the data packet based on a corresponding class of service; and
an egress unit assembling all fragments corresponding to the data packet into a full packet and outputting the assembled data packet from an output port.
4 Assignments
0 Petitions
Accused Products
Abstract
A hardware packets reassembly apparatus and method includes an ingress unit receiving and parsing a data packet, recognizing fragments corresponding to the data packet, and outputting control information of the fragments. An en-queue unit stores the control information of each fragment, links each related fragment based on the control information, and enqueues the data packet when all fragments are available corresponding to the data packet, wherein the data packet is enqueued only when all of the fragments corresponding to the data packet are available in a sequential order. A dequeue unit dequeues the data packet from a packet descriptor, and scheduling the data packet based on a corresponding class of service. An egress unit assembles all fragments corresponding to the data packet into a full packet and outputting the assembled data packet from an output port.
-
Citations
21 Claims
-
1. A hardware packets reassembly apparatus, comprising:
-
an ingress unit receiving and parsing a data packet, recognizing fragments corresponding to the data packet, and outputting control information of the fragments;
an en-queue unit storing the control information of each fragment, linking each related fragment based on the control information, and enqueuing the data packet when all fragments are available corresponding to the data packet, wherein the data packet is enqueued only when all of the fragments corresponding to the data packet are available in a sequential order;
a dequeue unit dequeuing the data packet from a packet descriptor, and scheduling the data packet based on a corresponding class of service; and
an egress unit assembling all fragments corresponding to the data packet into a full packet and outputting the assembled data packet from an output port. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A hardware packets reassembly method, comprising:
-
receiving and parsing a data packet, recognizing fragments corresponding to the data packet, and outputting control information of the fragments;
storing the control information of each fragment;
linking each related fragment based on the control information;
enqueuing the data packet when all fragments are available corresponding to the data packet, wherein the data packet is enqueued only when all of the fragments corresponding to the data packet are available in a sequential order;
dequeuing the data packet from a packet descriptor, and scheduling the data packet based on a corresponding class of service; and
assembling all fragments corresponding to the data packet into a full packet and outputting the assembled data packet from an output port.
-
-
21. A hardware packets reassembly apparatus, comprising:
-
means for receiving and parsing a data packet, recognizing fragments corresponding to the data packet, and outputting control information of the fragments;
means for storing the control information of each fragment, linking each related fragment based on the control information, and enqueuing the data packet when all fragments are available corresponding to the data packet, wherein the data packet is enqueued only when all of the fragments corresponding to the data packet are available in a sequential order;
means for dequeuing the data packet from a packet descriptor, and scheduling the data packet based on a corresponding class of service; and
means for assembling all fragments corresponding to the data packet into a full packet and outputting the assembled data packet from an output port.
-
Specification