When you browse the web you're not really browsing the web. You're fetching bits of it in looking at it Locally right, so you're sending out to a server server sending you some data You're viewing it on your screen in your browser You [click] on something it sends another request to some server either the same or a different one Pull some more data down you look at that on your screen And so you've got to have a process for how you send that request and then how you get the responses sent back to you So let's say you were [to] say this is your web browser And then that's sitting above kind of a bunch of libraries And so what's going to happen is you've got some data that starts out in your browser So that's the request and then that's going to get sent down through these libraries eventually into the operating system And what's going to happen there? Is that this chunk which is your original data? Maybe is going to get encoded as a TCP segment one of the basic protocols That's used for supporting the world wide web so on the front of that is going to stick some TCP Information and then a short while later normally what will happen is all of that It's just now thought of as data and then you'll get some Ip information on the front of it, and then a short while later All of that will be thought of as data and then get some ethernet Information from and a little bit on the end as well and again for different [particulate] versions of IP so ipsec you can end up with some information getting stuck on the end so you click on something? That's got to turn into a piece of data the user wants to get to this particular url Yeah, then that has to go down through a bunch of libraries, so I sort of missed out step here But that thing there which might just be the url Might have to get turned into something here which is going to be a get right url? This is the HTTP protocol, okay? So it's turned that into this sort of more valid piece of http and then that is going to get Treated just as a chunk of data doesn't matter what's in there, Via, url Could be an image could be [clean] anything you want Is where the notion of a networking stack or a protocol stack comes from these [all] [these] things stacked up? each of these different layers provides a different set of Abstractions it sort of builds [on] the abstractions provided by whatever's below it and it provides some abstraction of the thing above it for example If you look at an [Ethernet] header now I'm not gonna try and draw all this out by memory because I will get wrong Essentially you've got a sequence of stuff on there, so you start out with the destination address [then] you have a source address depending on precisely the version of ethernet you're running you have some information about the protocol of what's coming next [and] Then you might have some other header information where you might just get the data this destination [addresses] source address will be Six bytes each I think it's two bytes. [they're] normal and then if you look inside, what's happening at this layer? So it's that that stuff. There is the data that was put in the [ethernet] frame so Let's say this protocol here indicates that is actually IP [packets] going next and [in] the IP header you'll have things like there's a version There's a length of source address the destination address And then some other information that Ip needs to operate weight Ip does this is then the IP? header and then eventually you get to the data [I] [be] transmitting the data transmitting in this case would start with a TCP header not even trying to get this in the right order now But you've got you know source port you'll have a destination port and some other things that TCP needs to do the things TCP does Each of these layers is providing Different features to layer above so in the case of ethernet for example it provides this functionality for going from one machine to another machine So the addresses it uses of the Mac addresses [hardware] addresses [on] your ethernet card, so these are the machine addresses It's a little bit more fuzzy now with wireless cards because a lot of time you can [actually] set the Mac address from Software in Some of those and that can make things more complex and opens up all kinds of security holes and other possibilities for example But basically yes, they should be uniquely identifying that particular network card, so there's a six bytes They should be uniquely generated by the manufacturer [of] the card So normally speaking you split them into the first three bytes which is which indicates which manufacture it was so whether it's me or apple or dell or Ibm or someone and then the other three bytes which in which is just a counter that that manufacturer will assign in some way all That ethernet really is concerned with you getting that data from the [guy's] transmitting it to somebody else connected to the same network But immediately so again getting it to an immediate neighbor So ethernet is not concerned with the internet as a whole it's not concerned with getting something to want to Google service or something it's just concerned with getting it to the next computer [the] sort of next [door] computer [of] some kind I pee on top of that then says okay Well the abstraction that's [going] to provide is the idea that we've got an indicator Before we've got a bunch of computers that are all interconnected they can all see [each] other And we can now get data to move between networks So if the person the computing you want to talk to is not immediately adjacent to you IP kind of handles that and There's a set of protocols that let ip do that by for example figuring out that actually if you want to get to this guy We don't know where he is right now, but what we can do is we can send it to a router That might be bit close to the destination, and so you have this idea that when you started out up here And you were trying to get to google.com As a bunch of other translations happen and ultimately that comes down to the Ethernet layer which effectively ends up saying Oh, I don't have to get to Google com by now Let's get to your home router. Your home router might know how to get to google.com. So I'll send it there first that receives its Ethernet frame Then your home rooter has to take off the ethernet bits. Look at the IP bits and go okay Where's this trying to get to what should I do with it and typically your home router is going to say well I don't know how to get to google.com either in fact at that point It's not google.com is just address I don't know how to get to, you know, some string numbers But I do know that this route upstream from me and your ISP's network your internet provider's network That might have a better idea so I'll send it there and then that router is going to pick it up and it gets sent they're using [something] So it might get centers for ethernet more likely it'll get sent there. No over the DSL line that You've got cable modem or something that's different set of standards again to Ethernet So it doesn't have to be ethernet now There can be something else and that's going to get to the root when your internet Providers Network It's going to take off those bits that aren't interesting anymore. It's [going] look at the IP bits and go, okay. Well Again, I don't know how to get to google become exactly I don't know where that is exactly but this other router in your internet Providers network is closer to it so I'll send it there and it's this sort of continual putting inside an envelope Passing it on guy takes next route to takes out the envelope looks how it goes That direction, and it's that sequence of things which is what causes ip to be older, Hop-By-Hop network or a store and forward network? So this each rooter is kind of storing the pack of a little bit looking at it thinking about it Send it on with the next place We'd like to thank audible.com for supporting this video And if you like your books as zeros and ones and what computerphile doesn't why not download a free audiobook at audible.com slash? Computer file I'd recommend Outliers by Malcolm, Gladwell, but my taste isn't always the best So I asked Sean who also works on computer file, and he recommended the books by neal Stephenson [bit] of an epic series he thinks [very] highly of it. So why not check them out? audible.com Slash computerphile You can download a free audio book and this is an offer for [people] in the us and Canada at the moment Thanks to them for supporting our videos and thank you for watching [we'll] be back soon