The Internet: Packets, Routing & Reliability

ArticlesBlog

Written by:


[song counts down: 7, 6, 5, 4, 3, 2, 1] [hip hop beats] Hi, my name is Lynn Root. I’m a software engineer here at Spotify. And I’ll be the first to admit that I often take for granted the reliability of the internet. [music] The sheer amount of information zooming around the internet is astonishing. But how is it possible for every piece of data to be delivered to you reliably? [swish] Say you want to play a song from Spotify. It seems like your computer connects directly to Spotify
servers and Spotify sends you a song on a direct, dedicated line. But actually, that’s
not how the internet works. If the internet were made of direct, dedicated connections, it would be impossible to keep things working as millions of users join. Especially since there is no guarantee that every wire and computer is working all the time. Instead, data travels on the internet
in a much less direct fashion. Many many years ago, in the early 1970s my partner Bob Kahn and I began working on the design of what we now call the Internet. Bob and I had the responsibility and the opportunity to design the internet’s protocols and its architecture. So we persisted in participating in the internet’s growth and evolution for all of this time up to and including the present. The way information gets transferred from one computer to another is pretty interesting. It need not follow
a fixed path, in fact, your path may change in the midst of a computer to computer conversation.
Information on the internet goes from one computer to another in what we call a packet of information and a packet travels from one place to another on the Internet a lot like how you might get from one place to another in a car. Depending on traffic congestion
or road conditions, you might choose or be forced to take a different route to get to
the same place each time you travel. [music] And just as you can transport all sorts of stuff inside a car, many kinds of digital information can be sent with IP packets but there are some limits. What if, for example, you need to move a space shuttle from where it was built to where it will be launched? The shuttle won’t fit in one truck so it needs to be broken down into pieces, transported using a fleet of trucks. They could all take different routes
and might get to the destination at different times. But once all the pieces are there,
you can reassemble the pieces into the complete shuttle and it will be ready for launch. On the internet, the details work similarly. If you have a very large image that you want
to send to a friend or upload to a website, that image might be made up of 10s of millions of bits of 1s and 0s, too many to send along in one packet. Since it’s data on a computer,
the computer sending the image can quickly break it into hundreds or even thousands of
smaller parts called packets. [music] Unlike cars or trucks, these packets don’t have drivers
and they don’t choose their route. Each packet has the internet address of where it came from and where it’s going. Special computers on the internet called routers act like traffic managers to keep the packets moving through the networks smoothly. If one route is congested, individual packets may travel different routes through the internet and they may arrive at the destination at slightly different times or even out of order. [swish] So let’s talk about how this works. As part of the internet protocol, every router keeps track of multiple paths
for sending packets, and it chooses the cheapest available path for each piece of data based
on destination IP address for the packet. Cheapest in this case doesn’t mean cost, but time and non-technical factors such as politics and relationships between companies. Often the best route for data to travel
isn’t necessarily the most direct. Having options for paths makes the network fault tolerant. Which means the network can keep sending packets even if something goes horribly, horribly wrong. This is the basis for a key principle of the
internet: reliability. [music] Now, what if you want to request some data and not everything is delivered? Say you want to listen to a song. How can you be 100% sure all the data will
be delivered so the song plays perfectly? Introducing your new best friend, TCP –
Transmission Control Protocol. TCP manages the sending and receiving of all your data as packets. Think of it like a guaranteed mail service. When you request a song on your device, Spotify sends a song broken up into many packets. When your packets arrive, TCP does a full
inventory and sends back acknowledgements of each packet received. If all packets are there, TCP signs for your delivery and you’re done. [retro soul music] [abrupt stop] If TCP finds some packets are missing, it won’t sign, otherwise your song won’t sound as good or portions of the song could be missing. For each missing or incomplete packet, Spotify will resend them. Once TCP verifies the delivery of many packets for that one song request, your song will
start to play. [retro soul music re-starts] What’s great about the TCP and router systems is they’re scalable. They can work with 8 or 8 billion devices. In fact, because of these principles of fault tolerance
and redundancy, the more routers we add, the more reliable the internet becomes. What’s also great is we can grow and scale the internet without interrupting service for anybody using it. The internet is made of hundreds of
thousands of networks and billions of computers and devices connected physically. These different systems that make up the internet connect to each other, communicate with each other, and work together because of agreed upon standards
for how data is sent around on the internet. Computing devices, or routers along the internet,
help all the packets make their way to the destination where they’re reassembled, if
necessary, in order. This happens billions of times a day, whether you and others are sending an email, visiting a web page, doing a video chat, using a mobile app, or when sensors or devices on the internet talk to each other. [music fades out]

100 Replies to “The Internet: Packets, Routing & Reliability”

  1. Finn Dalebout says:

    kys
    i hate school

  2. Dakota Upshaw says:

    idupz

  3. Waseem Zahid says:

    name of the song pls so good

  4. 50PullUps says:

    What software is used to make animations like this? Does Adobe Premiere have this capability?

  5. Yousef Elsayed says:

    These are such great videos, thank you all very much.

  6. 及川 says:

    how many of you guys are here because of homework ://

  7. Hải Anh Bùi says:

    what is the intro song ?

  8. Chemlal Charaf Eddine says:

    Very interesting
    Thank you Code.org (y)

  9. Felix Lucas says:

    Amazing videos! Great and simple way of teaching.

    If someone knows, what kind of tools and skills are needed to make this kind of animated videos? Thanks in advance

  10. i mryxm says:

    THAAAAANKS ALOOOTTT. KEEP GOING!!!!!

  11. 18SamwaysA Unknown says:

    im really really reallly really really really really reallly really really really really reallly really really really really reallly really really for all the information you are provide for my educational benefit.

  12. Beep Boop says:

    At 2:35 did anyone else hear the "Wear are my Bae's at" (by: Miranda Sings) beat?

  13. tobi sait mieux says:

    They call me hammer and i rose from the gang.

  14. GrenadeHog says:

    sooooooooooooooooo goooooooooooooooooooooood!!!!!!!!!!!!!!!!!!

  15. Chandkumar Dudani says:

    How does server knows that some of the data packets are missing to client?

  16. Jaffer Ahamed says:

    There are millions of routers out there, isn't it. What I didn't understand is how do the routers know which path to take to go to the destination's ip address.

  17. Aidil Sufyan says:

    omg how is it possible that a 6min video is able to make me understand what my prof taught for the last 3 months?!?! damn the animation is super cool now I find this topic very intriguing. Thank you CODE.ORG!!

  18. 박marissa says:

    great graphic!

  19. 박marissa says:

    awesome video!

  20. Qahri Tucker says:

    what was the intro song

  21. Elijah Bertges says:

    cool

  22. QSmally says:

    But how do routers know it's path/how does it know it's corrupted?

    The TCP too, how does it know how mant packets it sent/whats missing. Where does he get that data from?

  23. Jaren Cascino says:

    Pandora is better though

  24. osha o.a says:

    very helpful, making studying CS easy

  25. Riley Edmonds says:

    hi

  26. wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww says:

    Imagine coming up with something like this.

  27. AdultsSwim1 says:

    So if I'm understanding this correctly, the TCP check is part of the buffering we get when loading music, videos, websites, etc. Once it has the necessary packets it loads on our computers one second, one frame, or portions of the website. Eventually the TCP receives enough that the computer can begin playing/displaying what we are seeking. This description was on a larger scale, considering how many bytes are involved in all this, but in general did I get that right?

  28. StacJam says:

    sub 2 me ! 😛

  29. morgan sherman says:

    ANYONE WHO WANTS THE INTRO SONG ITS CLOSED DOORS BY OTIS MCDONALD

  30. christine wong says:

    so are routers also called tcp?

  31. Trọng Nguyễn Tiến says:

    the intro song is https://www.youtube.com/watch?v=hNtNjr8Kkyg

  32. Love Google says:

    Networking is impossible. Tried and have nothing else

  33. Love Google says:

    Every video says the same fucking basic shit . All the "good knowledge" on the net has been hidden

  34. LucifersDeathSquad says:

    Tcp is like the old version of blockchain.

  35. Milosys Baptis says:

    whats the name of the song in the beginning?

  36. BecomingMike says:

    Can someone tell me how a computer knows whether a bit is a 1 or a 0?

  37. mattpsd says:

    These videos are super useful for me taking notes for my exam

  38. Care Air says:

    Repeated transmission with authentication by keys to databases resulting in transmitting across different databases. Linkage is then done through complete assembly.
    Future: every device is a database?

  39. Care Air says:

    Ethics are important.
    Must catch up.
    Hopefully, no world domination or unethical access.

  40. Mushi John shrooms says:

    Packet data is transferred from your wireless or cellular modulated device via my father Andrew Johnson 202 gsm base station transceivers (cell towers) the primary route these packets take from your device too router to base station to satellite to international base station to your server. The primary algorithms were configured by my late father the bsic algorithm for allocating a cell in a designated cell area and the gpsr algorithm that choses wether to uplink too satellite or to go directly through a row of base stations this along with base station handover protocols is how you packet switch. The reason they don’t teach you this in school is because the original inventor died in 2001 and all the governments of the world have stolen his legacy and assets being 10 global inventor patents

  41. Oloeru Diana says:

    I have a question: how come a song will stop midway even if it has been "received" and approved by TCP ?

  42. Madhav Trivedi says:

    that beat! oh my !

  43. pockeybear milk says:

    I like this part , Mr. TCP

  44. Guenslyjosephduvalier Legitimethelemaquescalomon says:

    Optimizations. Methods. Cheapest. Paths. Connect. Colaborate. Communicate. Relstionchips. Plays. Puzzles.

  45. Guenslyjosephduvalier Legitimethelemaquescalomon says:

    Kone. A. Beh. O. Bewen. Pour. Optimize. The. Internet. Pour o. Sara. Lea.

  46. Guenslyjosephduvalier Legitimethelemaquescalomon says:

    Giensly. Joseph. Invenrs. Packets adress. Confidential. Mails. Managers. Yelow. Evelopes. For. Data. Packets. In. 1990. A. La. Uasd.

  47. Guenslyjosephduvalier Legitimethelemaquescalomon says:

    For. Exemple. Data. Adresss. 14an. Data. Adress. 15an.

  48. Guenslyjosephduvalier Legitimethelemaquescalomon says:

    Daniel. Pimienra. Says. Mor. Optimizations. Nay. Be. Mails. Attachments.

  49. Priyanshu Vats says:

    If Internet is free, who builds the routers & why?

  50. bruh moment says:

    booooooooooooooring

  51. Programming Tips says:

    Code.org without internet connection offline version of code.org
    https://www.tricksterbox.com/2018/09/offline-installation-of-codeorg.html

  52. francis ganapin says:

    Wow

  53. Axel Schultz says:

    All these videos have good info but the kind of have to be politically correct and insert only females in the vids. Why do we let politics to be forcefully inserted in the sciences? If they could have put some random woman instead of Vint Cerf they probably would have done it. Well whatever, at least the info is not politically correct, yet.

  54. Mystic Gamer123 says:

    Wow! So many people are here who have got homework on this subject lol

  55. Robert Aige says:

    aburrido

  56. Mirror face says:

    fuckin racoons

  57. Santiago Mistchenko says:

    DjMinutos?54r4r555555

    ¿+

  58. KHUSHPREET SINGH says:

    ayo boss

  59. JORDAN YEE says:

    WOW, very cool!

  60. CHAMMY LIU says:

    Who here from BTHS

  61. Arlet Castillo says:

    i love vint's voice, i'm just gonna put this out here

  62. Charles says:

    did he just play the most annoying music in spotify?

  63. Jolie K says:

    are they using miranda sing's song in the background 2:41 excuse me

  64. Connor Donigian says:

    Yay… Grumpy Cat…

  65. Chloe May says:

    My teacher Set this for homework to make notes on, with a bunch of other videos, Like if your teacher set this for homework.

  66. Fradys says:

    Very informative and interesting, thanks!

  67. Khanh Minh Hoang says:

    What's meaning of "politics" in that case 3:41 ?

  68. If not me then who? says:

    Thanks, these type of videos make most things crystal clear.👌🙏

  69. Wil Bazza says:

    I love spotify you beast

  70. Sagar Parani says:

    You guies are doing an amazing work, I am an indian n would feel good if you could avail such lovely info in Hindi as well for people finding english difficult

  71. nayte higgers says:

    im looking for some cock

  72. Akankshya Sharma says:

    I needed information

  73. Chanel Feeney says:

    hello peeps

  74. Facebook says:

    Hey code.org can you tell me which song is used in your video. 😅😀

  75. Dimitar Sivrev says:

    the guy that created the internet needs to be more appreciated

  76. Usman Rajput says:

    amazing information, as never learned before, it is really awesome.

  77. Tali says:

    WOW I LOVE THIS VID I UNDERSTAND NOW

  78. Chraosulus says:

    Last minute study squad anyone?

  79. Chraosulus says:

    Thank you to this video and all the other Code.org videos for helping me take the AP test!!!!

  80. Matt Dvorak says:

    Soooooo helpful! Thank you for making this easy to understand.

  81. Mr Anonymous says:

    This chick is so sexy

  82. Ali Azlan says:

    under rated channel

  83. Ed E. says:

    The guys who created the internet should be trillionaires

  84. Ed E. says:

    How could anyone thumbs down this video. It’s literally the guy who created the internet giving you detail.

  85. Prfkt_BlAcK says:

    asmr

  86. rudy carreon says:

    So, why wont my email allow me to email a video to someone? It says the file is too large. But if the data is broken down to packets there shouldn't be a problem, right?

  87. Venkat raj kunapo says:

    Love you

  88. ElementsGaming says:

    4:24 *receiving

  89. Gatebridge Thegamer says:

    Opening song?

  90. Sarah Rose mandat says:

    I learned something new from this video!

  91. Eliott SIROT says:

    Good explication thank you

  92. Ashton Stewart says:

    OKAY BOOMER

  93. TYLER TIAN says:

    100th dislike

  94. SONAM DORJEE says:

    BTHS STUDENTS UNITE!!!!!!!!!!!!

  95. Joaquin Pinto says:

    thank you for showing me how internet works ceo of internet

  96. GUIJUN ZHANG says:

    Anyone from BTHS doing lab work?

  97. Elise Nguyen says:

    Semester final tomorrow…anyone else studying?

  98. Andrew Talushllari says:

    s

Leave a Reply

Your email address will not be published. Required fields are marked *