Only one paper assigned for today, but it is Birrell and Nelson's classic paper on remote procedure call (RPC), Reading #12. Study the paper carefully. It will be discussed in detail in recitation. The goal of RPC is to make a call to a remote server look like a regular procedure call. As a personal exercise while reading, you might attempt to figure out ways in which RPC and procedure calls differ.
In preparation for lecture read the second part of Halstead's "6.033 notes on networking on communication" (reading #11). In addition, read Tanenbaum chapter 9. Chapter 9 is easy background reading.
Read papers #13 (Metcalfe and Boggs, "Ethernet: distributed packet switching for local computer networks") and paper #14 ("Thomas E. Anderson, Susan S. Owicki, James B. Saxe, and Charlse P. Thacker. High-speed switch scheduling for local-area networks"). For the last paper you may choose to read only Sections 1 through 3. Your one-page reading report should address the following question regarding routing in Ethernet versus routing using high-speed switches:
Ethernet's scheme for packet routing on a non-switched Ethernet is very different from the packet routing scheme presented in the "High Speed Switch Scheduling for Local Area Networks" paper. Contrast the two approaches to routing, identify at least one aspect in which they differ, and the advantages each offers over the other one.
We do not expect you to know what a banyan switch (see page 100 of Reading #14) is, so to help you answer this question here is a short description of a banyan switch. A switch is a device with several inputs and several outputs, that can be set up to allow any input to be connected to any output. Most switches allow multiple connections: different inputs can be connected to different outputs at the same time. A "blocking" switch is one in which setting up a connection from input A to output B may prevent you from simultaneously setting up a connection from input C to output D, even though A, B, C, and D are all distinct. A non-blocking switch is one that never has this problem.
A banyan switch is a piece of combinatorial logic that takes an input (in our case the header of a packet that contains the destination address) and based on the bits in the address it automatically routes the packet to an appropriate output. For example a simple packet with two-bit header 10 is routed to the output labeled "2". (10 in binary notation is 2 in decimal notation). An unpleasant feature of the banyan switch is that the switch is blocking. To avoid that problem one can put a Batcher sorting network in front of the input ports of the banyan switch, which is another piece of combinatorial logic that sorts the inputs so that blocking in the banyan switch won't occur.
A couple of interesting side notes. Ethernet is the dominant local-area networking technology used today. The paper describing Ethernet is "old": 1976. Reading #14 reports on a brand-new switch for ATM networks; ATM is possiblly to be the next standard for local-area networking technology.
In preparation, read pages 1 through 14 of RFC 791. The Internet protocols are defined by a series of numbered Request for Comments (RFCs). RFC791 defines IP. Other RFCs specify other protocols (such as TCP and UDP) and implementation strategies. Most of the RFC are on the web (see RFCs). You can find RFC 791 there too.
Read David B. Johnson's "Scalable support for transparent mobile host Internetworking," Reading #15. This paper surveys routing the problems and solutions when the endpoints are mobile computers that are traveling around; it has created a small research area in mobile routing, including standard committees. A very hot topic. As a personal exercise you may want to brainstorm about how cellular networks are addressing similar issues with mobile phones. Are the issues really the same?
This morning the assignment for project I will also be available on the Web; check out the 6.033 home page. Project I is due on Thursday March 20.
Quiz I will be in Walker during normal class hours, 2-3pm, on March 7. The quiz will be OPEN BOOK. Topics: everything up through the lecture of March 3 is fair game.
We will make example quiz questions available this week. The thing you should conclude from this sample is that the focus tends to be on concepts rather than details, that essay and multiple guess questions are common (actually multiple guess is more common than you would conclude from this sample), and that, as in the weekly assignments, you need to be able to express your thoughts in English.
The answers that were considered appropriate when the quizzes were originally given will be made available on Thursday, March 6.
System aphorism of the week
It must be remembered that there is nothing more difficult to plan, more doubtful of success, nor more dangerous to manage than the creation of a new system. For the initiator has the enmity of all who would profit by the preservation of the old institutions and merely lukewarm defenders in those who would gain by the new ones. Niccolo Machiavelli (1469-1527), The Prince, Chapter six (1513, published 1532), (Thomas G. Bergin translation, Appleton-Century-Crofts, 1947)
6.033 Handout 8, issued 2/25/96