Real-Time Transport Protocol (RTP) in VoIP

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
we're going to talk about RTP when we dealt with RTP yesterday we talked about it purely from a theoretical point of view now this is more theory but we're going to build on it a little bit because the idea is is that we need to understand what RTP is first of all can anyone in the in the in the audience tell me why we need RTP I mean if you know the answer you can chime in I'll give you guys a little bit of time to respond but there's a specific reason why we looked for RTP okay we've got some response exactly dan dan dan hit it on the head it's the fact that we're communicating using UDP now what's the difference between UDP and TCP TCP stands for transmission control protocol UDP stands for Universal Datagram protocol now the primary difference between the two is the fact that we are going to be operating in a connection method here where we're using reliable transport for TCP which at first thought you would immediately think that if we're going to do this for voice and we're going to send these really really important voice packets back and forth across our network we would want to use something that's reliable well TCP is reliable but it's also very very slow the handshake that takes place between TCP session initiators and our client and server type approach that process would take so long and the other thing is is that TCP is built to be able to retransmit lost packets we're not really interested in receiving or having packets retransmitted because by the time we notify the other end you retransmitted and it sends it back to us that's part of a conversation that's several milliseconds old so the idea here is is we don't need that so we're going to turn to RTP to add reliability to our UDP process and we do that through the through the application of this RTP header the RTP header is going to contain a port number it's going to obtain us or contain a sequence number and it's going to have a tie stamp now the fact that we have these pieces of information take stuff from TCP and applies it to this UDP packet that we're working with so now what we have is we have a UDP packet which is fast small maneuverable it has the capability of getting through our infrastructure and we can apply priority to it in the form of QoS which we're going to talk about shortly now we have garnered capabilities from TCP that we need without adding the slowness to UDP so what happens now is is the system can take these sequence numbers and it can take this port information and it can gather it on the other end and it can resync once the packets if they arrive out of sequence it can play them back in their order in fact we'll talk later on about something called addi jitter buffer which is this exact method where we're going to absorb the packets we're going to begun begin reassembly and then we're going to play them back for the listener it's kind of like skip protection on a CD player it's going to read ahead and then it's going to play back so the idea here is is that as soon as we start incorporating these components into UDP we get reliability and reliability is what we need we don't necessarily need the n way handshake stuff that's involved in TCP now let's go back over here to the drawing because there's other elements that we need to understand for instance this RTP header is going to be 12 bytes in size the UDP header is going to be 8 bytes in size the IP header and my body is in the way here but the IP header is going to be 20 bytes so the thing that we need to realize is that we have 40 bytes of header now we have an additional header here this marked as our layer 2 header if we're using Ethernet and if I get this wrong they may take my CCI away from me but I think it's 14 bytes in length so the idea here is is that we have this big header I mean 4 - it's 40 bytes for the IP UDP and RTP headers and it's also whatever our layer 2 technology header is is if it's Ethernet like I said I think it's 14 PPP I think's 4 there's there's any type of solutions we can use to include like frame relay but the idea here is is that in a typical voice conversation is using a protocol like G 729 B G 729 B takes 20 millisecond sampling and it assigns a 20 bite size to it so it's 2-0 20 bytes so if you take into account that our header is at the very very beginning twice as big as our payload and then by the time we layer outer layer 2 capability to it and that header information it's going to get even bigger so what we're describing is something that's very very top-heavy if we were to look at it we would have this big massive ball of information that's used to do nothing except send information back and forth and then we have this teeny tiny payload on the backend now the problem is is we're describing a packet that's very very small so what we want to do later on is we'll talk about how we're going to get around working and making it to where these little teeny tiny packets don't get crushed by big data packets now our primary focus here is is what is going to be placed inside of this RTP header the RTP header I already told you has a sequence number it has a port number and it has a time stamp but let's take a very very close look at the port number because the port number is very very significant a audio stream or any packets that have the same RTP information so that would be me for instance talking to Chris here in the studio via telephones what's going to happen is the system is going to pick a random port a random UDP port but there's going to be some specifications assigned to that for instance the random port for voice RTP is going to always be and even port found in the range of it's a excuse me 16 384 232 767 now inside that range every even port or one even port is going to be picked for my audio stream and like I told you yesterday audio streams are unidirectional so if Chris is going to talk to me he's up he's also going to pick another random port it's going to be even and that's going to be the port used that he's going to source his information to me so that we can have a two-way communication keep in mind it's two unidirectional streams or flows now we've also got this other concept here on the drawing of our TCP our TCP stands for real-time transport control protocol now real-time transport control protocol is basic nothing but the statistics of the call so if the conversation that Chris and I are having via the telephones have packet drops then it's going to be T's rtcp that's going to report that information to us we can see the information pertinent to the RTP see the rtcp stream by going to a Cisco telephone and there's a question mark in in the center of the selection window buttons if we press that question mark and what will happen is is on the console itself it's going to be all of the information is being communicated by our TCP and again that's the information and statistics about our our audio call now the primary idea here is is the fact that we have the capability of doing all this communication in this range so as forward-thinking students I would definitely make certain that you have this range of ports for UDP memorized the other thing is is we need to realize that we're going to pick an even port for RTP but we know that we're going to have an Associated RT CP stream for each audio stream so the idea here is is my stream or my communication say it picks 16 384 the RTP C stream will always be one more than what is picked by the RTP so it'll be 16 385 so it's going to be an even odd contiguous numbering a relationship that's going to allow things to be married up so if I see traffic coming from an even port and I see traffic coming from an odd port that's just one increment more than I know that's the Associated are TCP stream now the idea here is is that we have these flows going back and forth and just like yesterday I told you I'd run into a full-bird Colonel in one class I was talking to and he was describing the fact that he thought that everything was secure and I proved to him that it wasn't but we do have security capability we have the ability to engage something called secure RTP it's secure RTP that allows us to encrypt our voice streams so now this is a lot of information but there's a lot of key facts on this particular slide or in this particular aspect of the presentation are definitely test worthy so I would make certain to commit this to my notes and or set up some flashcards so you can go through these because this is information that you need to be able to rattle off like this not only just to execute the exam but to definitely demonstrate or to realize in a working environment when you start putting packet sniffers on stuff and you're looking at these data flows it's going to give you all the information and you're going to need to know what's on this particular slide in order to be able to successfully interpret that information
Info
Channel: StormWind Studios
Views: 107,130
Rating: 4.8059301 out of 5
Keywords: voip, cisco, training, Cisco Systems (Organization), tech, Technology, video
Id: 9dRY2_NmAuc
Channel Id: undefined
Length: 9min 42sec (582 seconds)
Published: Tue Apr 23 2013
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.