Concept for segmenting an application buffer into data packets

US11271856B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11271856-B2
Application numberUS-201916414814-A
CountryUS
Kind codeB2
Filing dateMay 17, 2019
Priority dateMay 18, 2018
Publication dateMar 8, 2022
Grant dateMar 8, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An apparatus, a method and a computer program for generating data packets according to a transport protocol from an application buffer comprising a plurality of data streams is provided. The apparatus comprises an input circuit configured to receive metadata comprising at least one of information about data packet types supported by the transport protocol, information about an offset and a length of the supported data packet types, and information about possible stream header start positions, possible payload start positions and possible offsets in the data streams. Further, the apparatus comprises a parsing circuit configured to identify offsets in an application buffer as possible segmentation points based on the metadata, to segment the application buffer at the possible segmentation points into segments for data packets, and to generate data packets according to the transport protocol based on the segments. Furthermore, an apparatus, a method and a computer program for processing the application buffer is provided.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus for generating data packets according to a transport protocol from an application buffer comprising a plurality of data streams, the apparatus comprising: an input circuit configured to receive metadata comprising at least one of information about data packet types supported by the transport protocol, information about an offset and a length of the supported data packet types, and information about possible stream header start positions, possible payload start positions and possible offsets in the data streams; and a parsing circuit configured to: identify offsets in the application buffer as possible segmentation points based on the metadata; segment the application buffer at the possible segmentation points into segments for data packets; and generate data packets according to the transport protocol based on the segments. 2. The apparatus of claim 1 , wherein the application buffer comprises a plurality of stream headers for the plurality of data streams, wherein at least a subset of the plurality of stream headers are replicated and used in the generation of the data packets. 3. The apparatus of claim 2 , wherein the application buffer comprises the replicated stream headers, the replicated stream headers originating from a software application of a computer system comprising the apparatus. 4. The apparatus of claim 2 , wherein the parsing circuit is configured to generate the replicated stream headers based on the plurality of stream headers. 5. The apparatus of claim 4 , wherein, for each stream header, the metadata comprises an indication on whether the stream header is to be replicated by the apparatus, wherein the parsing circuit is configured to generate the replicated stream header for a stream header if the metadata indicates that the stream header is to be replicated by the apparatus. 6. The apparatus of claim 4 , wherein the parsing circuit is configured to update at least one of information about a length of the payload, information about an offset of the payload and information about a checksum of the payload in the stream header and the replicated stream header. 7. The apparatus of claim 2 , wherein the parsing circuit is configured to parse the application buffer to determine information on a start and an offset for each replicated stream header, wherein the parsing circuit is configured to generate the data packets based on the information on the start and the offset of the replicated stream headers. 8. The apparatus of claim 2 , wherein the parsing circuit is configured to include a stream header for each data packet comprising a segment of a data stream, wherein, if a data stream is spread over a first and a second data packet, a replicated stream header is included in the second data packet. 9. The apparatus of claim 8 , wherein the metadata comprises information on a start and an offset for each replicated stream header, wherein the parsing circuit is configured to include the replicated stream header in the second data packet based on the information on the start and the offset of the respective stream header. 10. The apparatus of claim 2 , wherein the metadata further comprises information about a maximum segment size, wherein the replicated stream headers are inserted based on the maximum segment size. 11. The apparatus of claim 1 , wherein data streams of the plurality of data streams comprise one or more stream segments, wherein the parsing circuit is configured to parse the application buffer to determine information on a payload start and offset for each stream segment, wherein the parsing circuit is configured to identify the offsets based on the information on the payload start and offset. 12. The apparatus of claim 1 , wherein the transport protocol is based on two or more levels of headers, the two or more levels comprising at least one level of stream headers and at least one level of transport protocol headers. 13. The apparatus of claim 1 , wherein data streams of the plurality of data streams comprise one or more stream segments, wherein the metadata comprises information on a payload start and offset for each stream segment, wherein the parsing circuit is configured to identify the offsets based on the information on the payload start and offset. 14. The apparatus of claim 1 , wherein the application buffer comprises a start packet number to be used for the data packets, wherein the parsing circuit is configured to generate the data packets with packet numbers starting from the start packet number. 15. The apparatus of claim 1 , wherein the application buffer further comprises a transport protocol header, and wherein the parsing circuit is configured to generate the data packets to comprise the transport protocol header. 16. The apparatus of claim 15 , wherein the transport protocol header comprises at least one of Media Access Control information, Internet Protocol information, User Datagram Protocol information, Transmission Control Protocol information and information about a packet number. 17. The apparatus of claim 1 , wherein the parsing circuit is further configured to generate the data packets to comprise information about a checksum for payload in the respective data packet. 18. The apparatus of claim 17 , wherein the parsing circuit is configured to generate the checksum. 19. The apparatus of claim 1 , wherein the metadata further comprises information about a maximum segment size, and wherein the parsing circuit is configured to only identify an offset in the application buffer as possible segmentation point if a size of a segment defined by the offset is at maximum the maximum segment size. 20. The apparatus of claim 1 , wherein the transport protocol is the Quick User Datagram Protocol Internet Connections, QUIC, protocol. 21. A method for a hardware circuit for generating data packets according to a transport protocol from an application buffer comprising a plurality of data streams, the method comprising: receiving metadata comprising at least one of information about data packet types supported by the transport protocol, information about an offset and a length of the supported data packet types, and information about possible stream header start positions, possible payload start positions and possible offsets in the data streams; identifying offsets in the application buffer as possible segmentation points based on the metadata; segmenting the application buffer at the possible segmentation points into segments for data packets; and generating data packets according to the transport protocol based on the segments. 22. A method for processing an application buffer comprising a plurality of data streams, the method comprising: obtaining metadata comprising at least one of information about data packet types supported by the transport protocol, information about an offset and a length of the supported data packet types, and information about possible stream header start positions, possible payload start positions and possible offsets in the data streams; identifying offsets in the application buffer as possible segmentation points based on the metadata; identifying the stream headers of the plurality of data streams; and inserting replicated stream headers into the application buffer after the possible segmentation points based on the identified stream headers and/or adding an indication on whether the stream headers are to be replicated by an apparatus for generating data packets to the me

Assignees

Inventors

Classifications

  • Buffering arrangements · CPC title

  • H04L45/74Primary

    Address processing for routing · CPC title

  • Separate storage for different parts of the packet, e.g. header and payload · CPC title

  • Dynamic adaptation of the packet size · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11271856B2 cover?
An apparatus, a method and a computer program for generating data packets according to a transport protocol from an application buffer comprising a plurality of data streams is provided. The apparatus comprises an input circuit configured to receive metadata comprising at least one of information about data packet types supported by the transport protocol, information about an offset and a leng…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification H04L45/74. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 08 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).