Sessions, Streams, Protocol Port, and Demultiplexing

Sessions, Streams, Protocol Port, and Demultiplexing

Session

All traffic that is sent to a given IP address, port

Stream

a sequence of RTP packets that are from a single synchronization source

Demultiplexing:

session demultiplexing

occurs at the transport layer based on the port number

stream demultiplexing

occurs once the packet is passed to the RTP software, based on the synchronization source identifier - then the sequence number and timestamp are used to order the packet at a suitable time for playback


Transcript

[slide107] So, we have a session and that's all the traffic that's sent to a given IP address and port. We can also now have separate streams. So now I can have multiple RTP streams. Why would I want to have different streams? Well, a stream is all the RTP packets from a single synchronization source. But if I have them from multiple synchronization sources, what do I do? I need to synchronize them and then I need to play them out. That's not a problem. We also have the ability to demultiplex the session and demultiplex the streams. Why would I want to demultiplex streams? Well, I might have one stream that was the real-time English that you're hearing, and simultaneously, we might have, delayed by a small amount, a simultaneous translation in Swedish. And it's necessarily going to be delayed because it took a while for the person who was the translator to hear it and to speak it. So we need a different synchronization source for that. But now I as the receiver can choose which one of those I want. If I choose the second one, what do I want to do with the video that I'm playing out? I want to delay the video, so that I can have lip synchronization. So that the speaking roughly matches the time that I hear the audio. What happens if they aren't mismatched? If I only play the original English timing of the video, but I play the audio for the Swedish? We get what used to be in the US be comically known as spaghetti westerns, where they were made in Italy and then translated by someone dubbing in the voice, and now they play out and they don't match at all.