I just sniffed some traffic using wireshark and noticed, that the YouTube traffic relies on TCP. I thought, they were using UDP? But it seems like as if they would use HTTP octet streams. Is YouTube really using TCP for streams or am i missing something?
outbound port 443/TCP (HTTPS) : used for authentication with the built-in providers such as YouTube Live, Facebook Live, Ustream, Livestream, and Twitch. outbound port 53/UDP (DNS) used for DNS lookups converting hostnames to IP addresses.
YouTube primarily uses the VP9 and H. 264/MPEG-4 AVC video formats, and the Dynamic Adaptive Streaming over HTTP protocol. By January 2019, YouTube had begun rolling out videos in AV1 format. For mobile - Sometimes Youtube servers are sending data using RTSP which is an Application Layer Protocol.
Netflix, Hulu, Youtube, etc. video streaming all use TCP and simply buffer a few seconds of content, instead of using UDP since the delay is not crucial and TCP transfers can be easily accomplished over HTTP and web browsers without the need for additional plugins and software.
Youtube uses TCP to control messages rather than UDP because of many reason If we use UDP we might get better performance than TCP but UDP will loose many chunks of packet while streaming due to the lossy nature of Internet communications .
Because they need everything TCP provides (slow start, transmit pacing, exponential backoff, receive windows, reordering, duplicate rejection, and so on) they would either have to use TCP or try to do all those things themselves. There's no way they could do that better than each operating system's optimized TCP implementation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With