Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bursty stream fragmentation and reassembly blocks #31

Open
guruofquality opened this issue Jun 29, 2015 · 0 comments
Open

bursty stream fragmentation and reassembly blocks #31

guruofquality opened this issue Jun 29, 2015 · 0 comments

Comments

@guruofquality
Copy link
Contributor

Consider a bursty stream that uses start of frame labels (optional) and end of frame labels to designate the boundaries of a burst.

  • The burst fragmenter block is responsible for slicing the stream into MTU sized packets and appending a header that specifies the packet index (within the burst), start of burst an end of burst markers. The first element in a start of burst packet is the element with the start of frame label. The last element in an end of burst packet is the element with the end of frame label. This block is data type agnostic.
  • The burst reassembler block is responsible for converting between these formatted packets back into a labelled stream of bursts. This block takes the desired output data type as an input parameter.

Immediate use case: The burst fragmenter will accept bursts from a level detector that is fed by an audio source. This will enable the transmission of useful audio data over a link. The burst reassembler will feed the bursts to an audio sink which will use the end of frame label to stop the audio device and avoid underflow: pothosware/PothosAudio#2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant