E6998-02 Homework 4

Out: 01 December 2003


Due: 15 December 2003 at 3am EDT. You have two weeks. Start tonight, ask questions if you have problems.


The purpose of this homework is to test your understanding of Interdomain routing. You answers should be short and concise; don't write a dissertation!

Part I: Review of BGP
Answer these questions very briefly (0-2 lines). Their main purpose is to help you review the material.
  1. What is an Autonomous System (in the context of Interdomain Routing)?
  2. List three reasons why EGP was abandoned in favor of BGP.
  3. We say that BGP is a Path-Vector protocol. What does that mean? How does it differ from a Distance-Vector protocol? How does it differ from a Link-State protocol?
  4. List all BGP message types (names and RFC or I-D in which they are specified).
  5. List all BGP Path Attributes (names and RFC or I-D in which they are specified).
  6. What does the BGP KEEPALIVE message do? Although it is used in all situations, is it always necessary?
  7. If the Internet were at steady-state (i.e., no links were going up or down, what, if any, traffic would be flowing over E-BGP sessions? Over I-BGP sessions?
  8. v
  9. Why is the ORIGIN attribute needed? What would break (or work less well) if ORIGIN could be omitted?
  10. Why is the AS_PATH attribute needed? What would break (or work less well) if AS_PATH could be omitted?
  11. Why is the NEXT_HOP attribute needed? Under what circumstances could it be omitted without anything breaking?
  12. What are the differences between I-BGP and E-BGP?
  13. What are the similarities between I-BGP and E-BGP?
  14. In an AS that is running I-BGP, is OSPF still needed?
  15. What is a multihomed network?
  16. Can an AS be at the same time a transit network and a non-transit network? Explain.

Part II: Understanding BGP Route Selection
Consider the following network:

  • AS4 and AS5 are peering with each other over the link S-U. AS5 and AS6 are peering with each other over the link Y-Z.
  • AS2 is a customer of both AS4 and AS5; AS3 is a customer of AS5; AS1 is a customer of AS2, AS3, and AS5.
  • For AS1 through AS5, all routers and all links between routers are shown. All networks are running OSPF as their IGP, and all link costs are equal.
  • All providers are running I-BGP. None of them attempt to aggregate routes.
  • The prefix for AS1 is 12.24.0.0/16; the prefix for AS2 is 12.0.0.0/8; the prefix for AS3 is 67.16.0.0/14; the prefix for AS4 is 128.100.0.0/16; the prefix for AS5 is 205.16.0.0/12.
  • AS6 advertises the following prefixes over its peering link with AS5: 4.0.0.0/8, 8.0.0.0/5, 64.0.0.0/12, 192.4.13.0/24, 212.0.0.0/8.
  • LOCAL_PREF of 80, 90, and 100 is assigned to routes received from a provider, peer, and customer, respectively. All ASes have a policy rule that if they receive a COMMUNITY string of ASn:75, ASn:85, ASn:95, or ASn:105, they will set the LOCAL_PREF for that prefix to 75, 85, 95, and 105 respectively.
  • The link A-T is a backup link for AS1, and should not be used for traffic if its other links are operating.

Answer the following questions. If you have to make any additional assuptions, state them clearly and concisely.

  1. Show the complete BGP packet (including IP and TCP headers) of the BGP UPDATE that AS1 sends to AS2. Don't bother computing the actual IP and TCP checksums, however.
  2. For the following questions, show the contents of BGP UPDATE packets in the following form. This could be, for example, one of the UPDATEs sent from AS6 to AS5.

    NLRI: 64.0.0.0/12
    ORIGIN: IGP
    AS_PATH: 6 14 7018 701 6534 6534 6534
    NEXT_HOP: 192.4.13.134
    COMMUNITY: 5:2500 5:105 5:1100
    
  3. Show the BGP UPDATE packet(s) that AS1 sends to AS3.
  4. Show the BGP UPDATE packet(s) that AS1 sends to AS5. Bear in mind that it should make sure that the link never gets used unless both its primary links (to AS2 and AS3) are down.
  5. Show the I-BGP UPDATE packets that router K sends to router J.
  6. Show the I-BGP UPDATE packets that router M sends to router J. What do you observe?
  7. What is the path (routers that a data packet will go through) from host a to host b? From b to a?
  8. The link B-K goes down. What is now the path from a to b? From b to a? What do you observe?
  9. While the link B-K is down, D-I also goes down. What is now the path from a to b? From b to a? What do you observe?
  10. Both links come back up; what is now the path from a to b? From b to a? What do you observe?

Submit the homework via email to ji+hw4@cs.columbia.edu. Do not send anything other than plain ascii text or a .pdf file. Do not send to any other address, or your submission will be ignored. Any submissions received after the deadline will be ignored. After means even a second after 3am. If in doubt, submit early; if there are duplicate submissions, the latest one (that's still before the deadline) will be the only one that I shall read.


$Id: $