Network Layer: IntroductionWelcome back to the course on Computer Network and Internet Protocols. So, till now inthe course we have looked into 2 different layers of the TCP/IP protocol stack; theapplication layer and the transport layer. So, from now onwards we will look into thethird layer of the protocol stack from top to bottom direction; that is the network layer orsometime people call it as the internet layer of the protocol stack.(Refer Slide Time: 00:44)So, as I looked earlier that this network layer or the internet layer of the protocol stack, itinterconnects multiple devices in the network or we call that they are kind of the layer 3devices; which actually take care of to forwarding the data packets from one end host toanother end host. So, the broad objective of this network layer or the internet layer of theTCP/IP protocol stack is to ensure that wherever you want to forward the packet, thepacket is successfully delivered to that particular destination. Or the network will try itsbest to deliver the packet to the destination.Obviously this network layer or the internet layer it doesn’t able to guarantee thesuccessful delivery all the time in a packet switching network, because in a packetswitching network, there is always a possibility of having a packet drop. And that is whywe have looked that in the transport layer of the protocol stack we take care of thereliability and other end to end aspect. But in the network layer we will primarily lookinto that given a particular destination for a data packet, how will you ensure that theparticular packet is delivered to that destination which is mentioned by the applicationdeveloper.(Refer Slide Time: 02:13)So, we’ll now at the middle of the protocol stack and we will look into the details of thisnetwork layer and the internet layer. So, coming to the network at the internet layer, so,let us look into the different services which are being provided by this particular layer ofthe protocol stack. So, we call it as the layer 3, because from bottom up it is at the thirdlayer it is in the middle of all the layers of the protocol stack.So, this network layer as we discussed earlier that from data link layer it gets certainservices, or the data link layer it ensures that well how will you transfer a data packet ora frame in the terms of data link layer; from one node to the next node which is directlyconnected via wire or there in the communication range or wireless communicationrange of each other.So, the data link layer takes care of forwarding the packet directly to the next hop. Now,whenever in your internet your destination is connected via multiple such hops and theentire network looks like a graph. In that particular graph, the challenge comes that howwill you find out a good path to forward your data packet from the source node to thedestination node. So, that is taken care of by the network layer of the protocol stack thatwe are going to discuss.So, this network layer of the protocol stack ideally it supports this datagram delivery. So,in network layer we call the unit of data as the datagram. So, this is a kind of unreliabledatagram delivery in the context of TCP/IP protocol stack and for the context of packetswitching network, because as we have learned earlier that in case of packet switching,there is no guarantee that you have sufficient space, that will be there in the intermediatebuffer or the network buffer.So, there is always a possibility that those particular packets, those will get dropped fromthe network buffer and a loss of data packets. So, that is why we say that the networklayer, it tries it is best to deliver the packet to other end host. So, that is why we use theterm unreliable to introduce the delivery model which is being used at the network layer.So, the network layer ensures unreliable datagram delivery which is a kind of what wenormally say as the best effort service to tries its best to transfer the data packet from thesource to the destination, via multiple such hops. And then on top of that in the transportlayer you have multiple services that we have already looked into, that in case of thetransport layer, if you are going to use a TCP kind of protocol. So, the TCP kind ofprotocol will ensure the reliability by utilizing the retransmission of the data packets. So,that we have already looked into.So now in case of a network when the network is represented in the form of a graph, thatwe have looked into the initial lectures, that in that network graph there can be multiplehops or multiple paths between a source and the destination.(Refer Slide Time: 05:27)So, ideally a network if you look into it is graph structure, it will look something likethis. So you have multiple nodes there which are interconnected with each other.So the nodes are interconnected with each other, these links can be wired links or this canbe wireless links as well. And then you have one source in the network and onedestination in the network. So, this is my source and this is my destination.Now, the data link layer of the protocol stack that is the layer 2 of the protocol stack. So,if you remember the different layers of the protocol stack at the bottom we have thephysical layer; which takes care of physical signal transmission, on top of the physicallayer we have the data link layer. So, this data link layer of the protocol stack, it ensuresthat how will you deliver the data from one hop to the next hop, which are directlyconnected with each other. So, that is the task of the data link layer or that is the services,which is provided by the data link layer to the next layer that is the internet layer or thenetwork layer of the protocol stack.So, then the data link layer provides a service to the network layer, to forward the packetin one hop distance. So, where the 2 nodes are directly connected to each other. Nowwhenever you are going to the network layer and you need to forward a packet from thesource to the destination and your entire network can be represented as a network graph,where each of these circles or each of these nodes represent a network router orsometime we call them as L3 switches or the layer 3 switch.So, whenever they are connected via this layer 3 switch or the router, and these routersthey have up to layer 3 implementation; that means, up to network layer implementation.And in that case you can see that if you want to forward the packet from this source tothis destination, there are multiple paths which are possible. So, one path is like you canfollow this particular path to forward the packet from the source to destination. Or youcan follow another path say this path to forward the packet from the source to thedestination.Now, ideally this blue path is a smaller path. So, if your metric or if you decide toforward the packet in the lowest hop path or the minimum hop path then you will preferthis blue path. But minimum hop path may not be always give you the optimalperformance. Because it may happen that your minimum path has the a very lowcapacity, low end to end capacity. If your minimum path has a very low end to endcapacity and if you push all the packets in that particular path, then there can be adegradation in end to end packet forwarding performance. So, that is why in a typicalnetwork we do not always prefer to use the minimum hop path. There are other variousmetrics which are available, based on which we decide that how to forward a packetfrom one node to another node.Now, in this entire thing the good thing is that if you have this entire topology availableand the link characteristics available; so if you have this whole topology available alongwith this link characteristics available, then possibly you can apply certain graphalgorithm like the shortest path algorithm that you have learnt in your algorithm course,like that Dijkstra’s algorithm or Bellman-Ford algorithm to find out the shortest path.And where this metric that you want to use to decide the best path, that will work as theweight of a particular link. And that way if you can represent this entire network in theform of a central graph structure then you can execute the Bellman-Ford algorithm orDijkstra’s algorithm to find out the shortest path and then forward the packet through thatshortest path.But unfortunately in our network we do not have this facility available. Because all theseindividual routers at the layer 3 devices, they work in a complete decentralized way. So,every individual router or every individual layer 3 device, need to take care of or need todecide that how to forward a particular path packet to the next hop, given destinationaddresses available.And you do not have any central coordinator or centralized system which will monitorthis entire network topology and give you a central graph in the in the form of yournetwork topology structure.Because our network works in this kind of decentralized way, the network layer has ahuge job to find out that how will you decide that what is your next hop, which will giveyou the optimal end to end path based on the path metric that you have chosen. So, thisparticular methodology is termed as network routing.So, the routing procedure decides that at every individual hop, every individualintermediate router whenever you are receiving a packet with this particular destination,what should be your next hop and that is done in a completely decentralized way.So, this particular router R need to decide. So, once it receives a packet, say I am givingor I am assuming that the address of this particular destination is D; later on we will seethat how we represent this particular addresses in network layer. So, if you receive apacket at R with a destination address as with destination address as D, then you have todecide that what should be the suitable next hop to forward that packet; whether youwant to forward that packet to this router or whether you want to forward this packet tothis router.So, that is the task of the prime task of the network layer. So, the network layer need todesign a particular protocol which we call as the routing protocol to make this decision inthe internet. So, that is the broad objective of the network layer.Now, in network layer this unreliable datagram delivery service, which is being providedthat has 2 primary basis. One is first you have to uniquely identify every individual hostin the network. And for that you need to have one addressing mechanism. So, first wewill look into that at a typical internet how we individually identify a particular node.So, you can you can here you can think of this entire packet delivery in the network inthe form of our normal mail delivery or the postal mail delivery. In case of our postalmail delivery you require a particular addressing format. In you in that address you haveyour name followed by your, house number followed by your locality name of yourlocality, then the name of your village or the city a particular pin code, then the name ofyour state finally, if you are making a international postal mail transfer the name of yourcountry.So, all these things this entire address actually hierarchically determine that where toforward that particular postal email. Similarly, in the network whenever we talk about theaddressing scheme, we have to design this addressing scheme in a hierarchical way. So,we will go to all these details sometime later, but the basic message that I want to give toyou is that, this entire packet delivery in the network it follows the similar principle ofwhat we apply in case of our postal email delivery.So, we have a addressing concept, a particular addressing format that need to be used toforward the data packet or that need to be used to uniquely identify every individual nodein the network. And then you need to have one routing mechanism, to decide that given adestination address, how will you forward the packet over the network, over multiplehops so that you can be able to successfully deliver the packet to the final destination.(Refer Slide Time: 14:15)So, if you try to compare it with the normal postal mail delivery system, so, in case ofyour postal mail delivery system, say if my postal mail id is that say Sandip Chakraborty,that means, my name followed by say my office number, then department of CSE IIT,Kharagpur, West Bengal, India.Now, this is my postal mail address and in this postal mail address there is a kind ofhierarchical notion. So, whenever someone is wanting to forward a postal mail to myaddress, they have to fast forward it to the say head post office of India. Then from thereit will be forwarded to West Bengal, from there it will be forwarded to say Kharagpur.From Kharagpur it will be forwarded to IIT, Kharagpur and then finally, it will beforwarded to my office which is in my name.So, that way in a hierarchical way this entire postal mail is being forwarded. Andwhenever we apply this routing mechanism over the internet we also apply this kind ofhierarchical concept. So, in this entire discussion of network layer protocols, we willlook into that first of all how will you individually identify every host with certainaddress which has this kind of hierarchical nature and number two, given a address inthis hierarchical format how will you decide where to forward a particular packet.So, that are the broad services which are being provided by the network layer or theinternet layer.
Network Layer: Introduction- Part 2
Now let us briefly look into this entire internet architecture because that has the notion orthat has the concept which you will require to identify or to understand that how a packetis being forwarded between 2 machines. Say, whenever you are accessing dub dub dubdot google dot com your google machine is possibly residing somewhere in USA andyou are trying to connect it. Say if I am trying to connect to google machine right now, Iwill be connecting that google machine which is residing at USA from a machine whichis there in Kharagpur.Now, from Kharagpur to USA how will you forward the data packet that is our concern.So, for that let us look into that how this entire internet is organized in a hierarchicalway, that will give you, give us an intuition about how will you actually address aparticular machine in the internet. So, I am I am just starting from a very small networkthen gradually I will increase the network in size. So, let us start with a 2 differentlaboratories in our computer science department at IIT, Kharagpur. So, we have 2different software labs software lab 1 and software lab 2.So, in software lab 1 we have certain set of desktop on software lab 2 we have anotherset of desktops. Now, this software lab 1 they form a local area network, because they areconnected by layer 2 devices or the layer 2 switches, they are directly connected in onehop distance. So, they form a, they form a local area network. Then the software lab 2they form another local area network by connecting the machines through one layer toswitch.Now, these two software lab 2 software lab 1 and software lab 2, they are connected witheach other via layer 3 device or a router. So, this router here is a layer 3 switch or a layer3 device, right. Now, here by connecting to different local area network or lan 1 and lan 2I have constructed one network which is the computer science and engineering networkat IIT, Kharagpur.Now, from here if we further expand the network; so, we have multiple departments inthe institute in IIT, Kharagpur.(Refer Slide Time: 18:23)So, every individual department have their networks. So, that way we have constructedthe CSE network the computer science department network; which has the software lab 1software lab 2 and they may have another network like the faculty network, the studentnetwork, the research lab networks, all these form under this CSE network they areconnected by individual layer 3 routers. And then I have this network at the electricaldepartment EEE network, there you we have 2 different labs, EE lab 1 and EE lab 2 inthe similar fashion that the CSE network is connected.Now, these 2 network, the CSE network and the EE network, they are again connectedvia another router or another layer 3 devices. So, this is my layer 3 switch or the routerwhich is connecting the CSE network with the EEE network and this entire network -that means, the individual departmental network. So, this is just a snapshot of theexample so that way I have multiple other networks like say, mechanical network, themechanical department network, then different home network or the administrativenetwork.So, all this different network which are there inside IIT, Kharagpur, they are gettinginterconnected with each other with this layer 3 switches or routers and they form theentire IIT, Kharagpur network.(Refer Slide Time: 19:51)Now in India we have multiple such institutes. So, in IIT, Kharagpur we have this wayone network, then in IIT, Bhubaneshwar there is another network. Every network has thisway the hierarchical way in a top down approach.Now, these 2 network the IIT, Kharagpur network IIT, Bhubaneshwar network as well assay IIT, Mumbai network IIT, Kanpur network all those networks are connected witheach other through multiple such again layer 3 devices or the routers and they formed aERNET network. So, education and research network of India. So, this ERNET it isbasically government initiative to interconnect different such networks or differenteducational institute altogether. So, we call it as educational and research network ofIndia so that way the name ERNET came from.So, these ERNET network they interconnects all these different network together.(Refer Slide Time: 20:52)(Refer Slide Time: 20:55)Now if we again go up to the hierarchy I have this ERNET network which interconnectsmultiple such institutes and several other networks; say, the BSNL network. So, thisBSNL network has their public network and the corporate network you have the Airtelnetwork you have say Vodafone network; all these networks they are inside internet theyare again connected with each other. And they get the service from in India from BhartiAirtel.So, all of them are connected under this Bharti Airtel network. So, that way this entireinternet architecture they follows a hierarchical fashion or a hierarchical architecture. So,that is the thing that is the entire architecture of the internet and inside this internet theindividual network that we are talking about; where the network is solely managed byone administrator or one or multiple administrators we call them as autonomous system.So, formally an autonomous system is a set of local area network for an administrativedomain, identified by a unique autonomous system number and the routing policies areinside that autonomous system are controlled by a single administrator. Now in internetone interesting idea is this routing policy, that so, as I have mentioned earlier thatwhenever you are deciding about how to forward your packet from one machine toanother machine. And if you represent this entire internet in a graph structure, then theinteresting factor comes that how will you assign the link weight, that what will be yourmetric for deciding the best routing.Now, this metric for deciding the best routing that can be independently chosen by thecorresponding network administrators. So, that’s why in case of the definition ofautonomous system, we say that this routing policies they are controlled by a singleadministrator. So, in general inside an autonomous system we follow a single routingpolicy, but well there can be autonomous system where multiple routing policies arefollowed altogether. And this entire ISP structure they form a nice hierarchicalarchitecture.(Refer Slide Time: 23:12)And if you look into this autonomous system graph for India it looks something like this.So, this edge this dark edges they are actually individual number. So, you can go to thissite labs dot apnic dot net.So, this apnic they actually maintain autonomous system inside India. So, these nodesare the edge nodes edge nodes in the autonomous system and this is the nodes which arethere in the middle, this nodes they actually provide service to all other nodes. So, theyare the kind of central nodes, from where all the different other autonomous systems theyare getting their service.So, for example, all the educational institutes like all the IITs the central universities,they get the service from this ERNET India. So, that way this entire hierarchy is beingformed for the autonomous systems.(Refer Slide Time: 24:12)And this Tier architecture looks something like this. So, here we have the internet serviceproviders. The internet service providers are the autonomous system that providesinternet connectivity to another group of autonomous systems of the end users.So, here we have the end users the end users in the internet. Now, this end users of theinternet they are connected to certain ISPs; Internet Service Providers, they are kind oftier 3 network or tier 3 autonomous system. From there, so, here we have these 2 tier 3autonomous systems in this diagram in this particular diagram. So, they are providingservices to these internet users.Now, this tier 3 networks they are getting services from some 2 ISPs, now the tier 2 ISPsthey are getting services from the tier one ISPs. So, this tier 2 ISPs say if I just give youan example so, the students inside IIT, Kharagpur they are getting the services from IIT,Kharagpur autonomous system. Now this IIT, Kharagpur autonomous system they aregetting services from ERNET India the autonomous system.Now, ERNET India autonomous system, they are getting services from say Bharti Airtelautonomous system. Then this these are the kind of country level autonomous systemsand multiple country autonomous systems are interconnected with each other. And in atier 2 network we have certain small networks which we call as the point of presence orpop this point of presence are kind of the edge network, which actually takes the service,but do not provide the service to others.So, these are kind of reserved network or some kind of special purpose network; say forexample, the military network. The military network is just used for their internal use andthey doesn’t provide services to any other. So, that is a kind of point of presence which isdirectly connected to the central network of India. OK.(Refer Slide Time: 26:18)So, this ISPs so, if we just hierarchically try to arrange this individual ISPs. So, at thebottom level we have this local ISPs like this Airtel, Vodafone, ERNET all these are thekind of local ISPs. Then this local ISPs they get the services from the regional ISPs. So,this regional ISPs they can have connectivity between themselves. So, sometime youhave seen that well Airtel announces that well if you use Vodafone and if you try totransfer data from Vodafone to Airtel you will have a lower charge compared to if you tryto use some other network.So, those kind of charge issues they come from this private peering relationship. So, if 2service providers they are having private peering; that means, they can directly share thedata among themselves which actually reduces the charging policy which is being therein different ISPs. So, those kind of peering we call it or we term it as a private peering.Now this regional ISP, they are connected with the network service provider or the NSP.So, this network service providers are the country level service providers. They areconnected to with internet exchange points.Now, whenever you are forwarding the packet; so, the packet goes in this way so fromyour machine the packet goes to the local ISP. Now from this local ISP it goes to theregional ISP, from regional ISP it goes to the national ISP or the NSP, from there it goesto the transit ISP. Now, via this transit ISP it reaches to the final destination transit ISP,from there to the national ISP again to the regional ISP to the local ISP and finally, toyour destination machine.So, that way in a hierarchical fashion the packet is being forwarded, the way we forwardthe normal postal mail. Say, whenever you are forwarding a postal mail from India toUSA. So, you forward it to your local post office; the local post office forward it to theregional post office, the regional post office forward it to the country level central postoffice; the central post office then forward it to that say the USA post. The USA post,again, in the state level then the regional level then your local level and then finally, thethings are getting delivered.The second requirement the interesting fact is that the address that you are going toprovide every individual host, that particular address should identify a network, as wellas a unique host inside the network. So, whenever you are forwarding a packet so,whenever you are forwarding a packet say from IIT, Kharagpur to IIT, Bombay thepostmaster first need to understand IIT, Bombay.So, once the mail is being delivered at IIT, Bombay local post office; from IIT,Kharagpur post office then the Bombay post office will try to uniquely identify thatperson inside IIT, Bombay and deliver the mail to that particular person. So, similarconcept is applied here.So, first the network will try to find out that well this particular host is inside as 12. So, Ineed to forward the packet to as 12. So, once the packet is being forwarded to as 12, thenyou have to uniquely identify that which host inside as 12 need that packet or is the finaldestination of that packet.So, that is why, the network address that you are going to design, that should identify thenetwork as well as the host inside the network. So, you can have multiple host insideautonomous system 12. So, you have to identify autonomous system and at the sametime this individual hosts inside the autonomous system.So, in the next class, we will look into that how we can use a hierarchical addressingmechanism in network layer based on that widely used network protocol that we call asthe IP protocol or IP to design such kind of address. So, see you again in the next class.Thank you.
Log in to save your progress and obtain a certificate in Alison’s free Advanced Diploma in Computer Networks and Internet Protocol online course
Sign up to save your progress and obtain a certificate in Alison’s free Advanced Diploma in Computer Networks and Internet Protocol online course
Please enter you email address and we will mail you a link to reset your password.