4.1 Introduction to the Network Layer — Transcript
Full transcript
- 0:00[Music]
- 0:09well having covered the application
- 0:11layer and the transport layer which
- 0:12really happened at the edge of the
- 0:14network we're ready now to dive into the
- 0:16network core and to take a look at the
- 0:18network layer itself now this is always
- 0:21one of the most fun and interesting
- 0:23topics to both teach and learn about in
- 0:25networking because the network layer is
- 0:28implemented in each and every internet
- 0:31connected device that's billions and
- 0:33billions of hosts and routers and this
- 0:35makes it among the most interesting and
- 0:37the most challenging to teach really if
- 0:39there's any such thing as the glue that
- 0:42holds the Internet together it's really
- 0:44the network layer so I think you're
- 0:45going to enjoy learning about things in
- 0:48this chapter now as it turns out we're
- 0:50going to break our study of the network
- 0:51layer into two parts we're going to
- 0:54start with what's called the data plane
- 0:56this corresponds to chapter four in our
- 0:59book the data plane is about the local /
- 1:02router actions primarily forwarding
- 1:04moving a Datagram from an input link to
- 1:07an output link at a router the second
- 1:10part of the network layer that we're
- 1:11going to study is known as the control
- 1:13plane and the control plane is really
- 1:15about the network wide view the
- 1:17end-to-end view of getting packets from
- 1:20the edge of the network one edge of the
- 1:21network to the other edge of the network
- 1:23the coordination and the management of
- 1:25all of the devices that are in the
- 1:27Internet well here's what we're going to
- 1:29study in our coverage of the data plane
- 1:31we're going to start off by the big
- 1:33picture view of the network layer itself
- 1:35and then we're going to dive down into a
- 1:38router and look at what actually takes
- 1:39place inside an Internet router well
- 1:42look at the guts of an Internet router
- 1:45well then cover the celebrated Internet
- 1:47Protocol IP well look at the IP Datagram
- 1:49header we'll take a look at IP
- 1:51addressing and quite a bit of detail
- 1:53we'll take a look at network address
- 1:56translation and also a next generation
- 1:58of IP known as IP v6 will then look at
- 2:03the topic of generalized forwarding
- 2:05that's sort of on beyond Datagram
- 2:07forwarding that'll be a bit of a prelude
- 2:10to what we'll cover in the control plane
- 2:12coming up next after this and then
- 2:15finally we'll wrap up with a discussion
- 2:17of what are known as
- 2:18boxes throughout our discussions here
- 2:21will cover both principles and practices
- 2:23as always so let's get started all right
- 2:28well let's begin our study of the
- 2:30network layer as we have with other
- 2:32layers by taking a services point of
- 2:34view why does the network layer exist
- 2:37what does it do what services does it
- 2:39provide to the transport layer above it
- 2:41and since we're jumping into the network
- 2:43layer having finished the transport
- 2:45layer let's start there
- 2:46at the edge of the network at the
- 2:49sending host the network layer we'll
- 2:50take a transport layer segment from UDP
- 2:53or TCP and encapsulate the segment into
- 2:56an IP Datagram will study the format of
- 2:58the IP Datagram shortly it'll include
- 3:01some network wide addressing information
- 3:03will cover IP addresses in great detail
- 3:06and then passes the data gram on to the
- 3:08link layer which will be responsible for
- 3:11transmitting the data gram to the next
- 3:13hop at the receiving host the network
- 3:16layer receives data gram checksum
- 3:18information like a checksum extracts the
- 3:20payload and the multiplex is a segment
- 3:23up to the appropriate upper level
- 3:25transport protocol UDP or TCP well
- 3:28that's what happens at the edge of the
- 3:30network but that's not what's really
- 3:32interesting about the network layer the
- 3:34real action is in the network core and
- 3:36there's a network layer component in
- 3:38each and every device in the network
- 3:40core well indeed in each and every
- 3:43device that's even part of the Internet
- 3:45well as we know routers are the
- 3:48principal network layer devices within
- 3:50the network core and the routers job is
- 3:53pretty simple it receives data grams
- 3:55from our neighboring host or router on
- 3:57an input link and it forwards that data
- 4:00gram to the appropriate outgoing link
- 4:02well that's a pretty simple statement
- 4:05but think about all the questions it
- 4:07raises there's a local issue how does
- 4:09the router know which is the quote
- 4:11unquote appropriate outgoing link for an
- 4:14arriving data gram and then there's the
- 4:16global issue which is even more
- 4:18interesting how do the collective
- 4:20forwarding actions of routers how are
- 4:22they coordinated to make sure that a
- 4:24Datagram follows a good end end path
- 4:27from source host to destination host
- 4:29through
- 4:30some set of the hundreds of millions of
- 4:32routers that are in the internet well
- 4:34when we're done with a network layer
- 4:36you'll know the principles and the
- 4:38practices behind the answers to these
- 4:40questions and more so let's get going
- 4:42this distinction between local versus
- 4:45global considerations is a good one for
- 4:48us to keep in mind local means a
- 4:50decision or an action that's made at an
- 4:52individual router where as global means
- 4:54sort of end end or network wide and we
- 4:58see this distinction very clearly in the
- 5:00network layers to key functions the
- 5:03first important function is forwarding
- 5:06forwarding is the router local action of
- 5:09moving packets from over outers input
- 5:11port to one of its output ports this
- 5:14typically happens at a nanosecond time
- 5:16scale and is implemented in hardware the
- 5:19second key function is that of routing
- 5:21and that's a network-wide activity of
- 5:23determining the route that's taken by
- 5:25packets from sources to destination host
- 5:28routing takes place on a much longer
- 5:30time scale typically seconds and we'll
- 5:33see that it's often implemented in
- 5:34software and a good analogy for this
- 5:37difference between forwarding and
- 5:39routing is the example of taking a trip
- 5:41say by a car you could think of
- 5:43forwarding as the process of getting
- 5:45through a single interchange say going
- 5:48through a roundabout or an intersection
- 5:50and routing is the process of planning
- 5:53and taking a trip all the way from the
- 5:55source city to the destination city
- 5:57passing through many intersections so as
- 6:02you may have noticed the network layer
- 6:03is really so big and complex that it
- 6:05doesn't really fit into just a single
- 6:08chapter in our textbook as it turns out
- 6:11earlier versions had just a single
- 6:12chapter on the network layer but it was
- 6:14always the largest chapter and with the
- 6:17introduction of Software Defined
- 6:18Networking which we'll take a look at
- 6:20here and then cover in detail later the
- 6:23network layer really just got too big to
- 6:25fit into one chapter so now our study of
- 6:27the network layer is going to be split
- 6:29across two chapters and two broad topics
- 6:32the first topic is what we'll call the
- 6:34data plane this is going to be a focus
- 6:37on per router per IP device local phone
- 6:42and in the case of the router this is
- 6:44really going to be the issue of how is a
- 6:46packet moved from an input port to the
- 6:48appropriate output port the second piece
- 6:52of the network layer is going to be the
- 6:53control plane and this is the network
- 6:56wide logic that determines the data
- 6:58grams path from source to destination
- 7:00it's also our network management and
- 7:02device configuration management come
- 7:04into play we'll study two different
- 7:07approaches towards implementing the
- 7:09control plane the first is what we might
- 7:11call the traditional approach and this
- 7:14uses distributed routing algorithms to
- 7:16determine paths the second approach for
- 7:18implementing the control plane the newer
- 7:20approach is what's called
- 7:22software-defined networking we'll learn
- 7:24about these approaches in its tail a bit
- 7:27later but here are a few illustrations
- 7:29to help you get a general feel for the
- 7:31two different frameworks here's how the
- 7:34traditional per router control plane
- 7:36approach works inside every router is a
- 7:39local forwarding table as shown here a
- 7:41router operates by matching bits in a
- 7:44Datagram header with a table entry in
- 7:46the forwarding table that specifies the
- 7:49appropriate output link to which this
- 7:51data gram should be forwarded so the
- 7:54real question we should be asking
- 7:55ourselves is how do these local
- 7:58forwarding tables get computed well
- 8:01there are a number of ways to do this
- 8:02for example they could be entered by
- 8:04hand by a network manager into the table
- 8:08at a network router and actually that's
- 8:10how forwarding tables were initially
- 8:12configured way back in the day but with
- 8:15hundreds of millions of routers spread
- 8:16all around the globe now that's not
- 8:18possible and so nowadays of course
- 8:20forwarding tables are computed rather
- 8:23than hand configured and how they're
- 8:26computed is the difference between the
- 8:28traditional routing algorithm approach
- 8:30and the Software Defined Networking
- 8:32approach to the control plane in the
- 8:36traditional routing approach Illustrated
- 8:38here a distributed routing algorithm
- 8:40runs in all of the network routers a
- 8:42piece in every network router the
- 8:45routing algorithm function in one router
- 8:47communicates with the routing algorithm
- 8:49functions in other routers to compute
- 8:52the values in these forwarding tables
- 8:54the second approach to the network
- 8:56control plane is known as Software
- 8:58Defined Networking or Sdn here a
- 9:01physically separate remote controller
- 9:03software process computes and
- 9:05distributes the forwarding tables to
- 9:08used by each and every router under its
- 9:10control the remote controllers typically
- 9:13implemented in a remote data center or
- 9:15set of servers that have high
- 9:17reliability and redundancy now the
- 9:20router still performs its local data
- 9:22plane service forwarding as before and
- 9:25says that is received its local
- 9:27forwarding table from the Sdn controller
- 9:30rather than having computed it itself
- 9:33let's wrap up our introduction to the
- 9:36network layer by discussing the service
- 9:38model for data Graham delivery by the
- 9:40network layer from sending host to
- 9:42receiving host what are the properties
- 9:44of this service and you see a bunch of
- 9:47different possible properties listed
- 9:49here for an for instance guaranteed
- 9:51delivery the network layer might
- 9:53guarantee that a packet sent by a source
- 9:55host will eventually arrive at the
- 9:57destination host that is the network
- 10:00layer is responsible for reliable data
- 10:02Graham delivery rather than say at the
- 10:04transport layer as we've seen there
- 10:06might be guaranteed delivery with
- 10:08bounded delay so that the service not
- 10:10only guarantees delivery of the data
- 10:12Graham but says hey I'm going to deliver
- 10:14this data Graham with a specified host
- 10:17host delay bound for instance less than
- 10:1940 milliseconds there are ordering
- 10:21considerations while packets be
- 10:23delivered to the transport layer in the
- 10:25order in which they're sent and when we
- 10:27think about flows of packets we might
- 10:29ask whether or not a flow might be
- 10:31guaranteed a minimum amount of bandwidth
- 10:33from source to destination well with all
- 10:38of these options you might wonder what
- 10:40is the Internet's service model well the
- 10:43Internet's network layer service model
- 10:46is known as best effort service and as
- 10:48you can see from the first line in this
- 10:50table under best effort service
- 10:52transmitted packets are not even
- 10:55guaranteed to be delivered much less to
- 10:57be delivered with bounded and and delay
- 10:59or was some kind of minimum bandwidth
- 11:02guarantee and you might even think of
- 11:05best effort service as a euphemism for
- 11:07no service at all a network that
- 11:09delivered no packets to the destination
- 11:11would satisfy the definition of best
- 11:13effort service delivery that we see here
- 11:15but this best effort service model is
- 11:18the Internet's network layer service
- 11:20model and it's hard to argue with the
- 11:24success that's been achieved with this
- 11:26minimalist service model and as you can
- 11:30see here in the rest of this table many
- 11:32different network architectures have
- 11:34been proposed and implemented and even
- 11:37deployed a lot of this research happened
- 11:39in the 1990s that provide very
- 11:41sophisticated quality of service classes
- 11:44imagine being able to watch a video and
- 11:46never seeing a spinning wheel say when a
- 11:49video play out is stalled that was the
- 11:51idea for example behind asynchronous
- 11:53transfer modes ATM constant bit rate
- 11:57service that the end-to-end path would
- 11:59behave essentially like a wire and there
- 12:02were proposed extensions to the
- 12:04Internet's best effort service that
- 12:05would have allowed quality of service
- 12:07guarantees to be made in the context of
- 12:09the Internet these were standardized and
- 12:11RFC's and are actually built and
- 12:13deployed in routers today but in truth
- 12:16they're not really used and you might
- 12:18ask yourself why is that
- 12:22well let's wrap up our introduction to
- 12:25the network layer with a few closing
- 12:26thoughts about the Internet's the
- 12:29network layer service model best effort
- 12:32service and probably the most important
- 12:34observation to make is that the
- 12:36simplicity of this service model played
- 12:39an incredibly important role in the
- 12:41widespread deployment and adoption of
- 12:43the Internet it's incredibly easy to add
- 12:46a new host to add a new network and
- 12:49relatively simple to maintain and manage
- 12:52an IP network as well this was certainly
- 12:55not true of integrated services digital
- 12:57networks and ATM networks which were
- 13:00competitive competitor network
- 13:02technologies at the time secondly the
- 13:08provisioning of adequate amounts of
- 13:10bandwidth that is that the network has
- 13:12enough capacity has allowed the
- 13:14performance of today's real-time
- 13:16services for instance voice and video to
- 13:19work well enough works good enough most
- 13:22of the time this didn't used to be the
- 13:25case when you couldn't even purchase for
- 13:27instance transmission capacities for the
- 13:29internet that could carry high quality
- 13:31voice and video now you can and now
- 13:34there's enough capacity in the network
- 13:37so that these applications generally
- 13:39under a best-effort service model run
- 13:41good enough most of the time
- 13:49third and I think this is a bit
- 13:51underappreciated is the fact that
- 13:53there's a tremendous amount of deployed
- 13:56application level distributed
- 13:58infrastructure in place to provide a
- 14:01service to a customer and that service
- 14:04might be provided from lots of different
- 14:05locations in the internet just think of
- 14:08the example of Netflix that we countered
- 14:11in Chapter two in the amount of
- 14:13application level infrastructure that's
- 14:15provided there to deliver the Netflix
- 14:17services to customers this tremendous
- 14:21rise in the amount of distributed
- 14:23application level infrastructure I think
- 14:25has really been critical to the success
- 14:28of best-effort service and actually one
- 14:31might say that the need for this kind of
- 14:33infrastructure arose because of the
- 14:36given best effort service model that was
- 14:39in place
- 14:41and then finally for some types of
- 14:43service like email and the web we've
- 14:45seen that TCP congestion control can
- 14:48back off in the face of congestion and
- 14:50that too has played an important role
- 14:52you know to summarize I think that we as
- 14:55engineers sometimes focus a bit too much
- 14:57on the detailed mechanism that we lose
- 15:00sight of the big picture questions such
- 15:03as the service model and yet the more I
- 15:05think about it the more I realized that
- 15:07getting the right service model was one
- 15:09of the most important decisions made in
- 15:11the original design of the Internet
- 15:15well a big picture of you doesn't get
- 15:18much bigger than that and so next we're
- 15:20going to jump from this high-level
- 15:22big-picture view down into the details
- 15:25of how an individual router works that's
- 15:27coming up next
- 15:33[Music]
About this transcript
This page contains the full transcript of 4.1 Introduction to the Network Layer by JimKurose, generated from the public captions YouTube serves with the video. The transcript has 2,548 words across 390 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.