Preparation for Recitation 11
Update: A new version of the Wide-Area Internet Routing
notes is available here. This is
an update to the notes in the course packet. It is similar in content
to the previous notes, so it's okay if you've already read the old
version. You may skip the appendices in these notes, and skip or skim
sections 3.3 through 3.5.
An Introduction to Wide-Area Internet Routing (reading #11
in course packet)
Make sure you've read Section 7.4 of the notes. For the paper,
you'll specifically want a very good understanding of Section
7.4.2 (the path vector protocol).
This paper was written specifically for 6.033, so ought to go down
easier than some of the research papers we've been giving you.
Nonetheless, some of the standard reading tactics apply.
Notice that the paper is full of acronyms and technical terms like
"route reflectors" and "confederations." Which if any do you
actually need to remember or understand in order to get the main
idea of the paper? Ignore the others. For starters, you might keep
an eye out for BGP, IP, AS, customer, provider, peering, transit.
Start by reading the abstract and conclusion (section 3.6). The
"take home points" may not make complete sense at first, but they
will tell you what to look out for as you read the paper.
Next go through the introduction. And take another look at 3.6:
its points should make more sense now.
Section two can be thought of as specifying the "requirements" for
wide area routing: it discusses the kind of things network providers
want to be able to do. This requirements discussion spills over to
the beginning of Section 3 (up to but not including 3.1) and is
Sections 3.1 and on get into the details of how the requirements are
met. Many of those details are less important; you might ignore
them until you've had a chance to mull over the higher level issues
for a while.
As you finish, consider the obvious general question:
Why was this paper assigned? What useful information does it convey
beyond that given in the text section 7.4.2?
And here are some specific ones:
What are peering and transit relationships, and how are they
Why do providers so dislike carrying other providers' packets? How
does it hurt the provider to do so?
What is a path-vector protocol? Why does the path-vector protocol
in 7.4.2 look at hops over links, while BGP looks at hops through
How much fault isolation do you get from BGP? What happens to the
routing in the rest of the network, short and long term, if some
router turns off? What is the worst that can happen if some router
starts misbehaving (sending incorrect information)?
Does routing have to be this complicated? Is it complex because of
complex requirements, or because of bad design choices?
Routers use the BGP protocol to set up routes by talking to each
other. But they talk to each other using TCP, which relies on the
presence of routes. Doesn't this create a chicken and egg problem?