cs 457 lecture 19 global internet bgp
play

CS 457 Lecture 19 Global Internet - BGP Fall 2011 Decision - PowerPoint PPT Presentation

CS 457 Lecture 19 Global Internet - BGP Fall 2011 Decision Process Calculate degree of preference for each route in Adj-RIB-In as follows (apply following steps until one route is left): select route with highest LOCAL-PREF


  1. CS 457 – Lecture 19 Global Internet - BGP Fall 2011

  2. Decision Process • Calculate degree of preference for each route in Adj-RIB-In as follows (apply following steps until one route is left): – select route with highest LOCAL-PREF – select route with shortest AS-PATH – apply MED (if routes learned from same neighbor) – select route with smallest NEXT-HOP cost

  3. ...Decision Process – select route learned from E-BGP peer with lowest BGP ID – select route from I-BGP neighbor with lowest BGP ID • Install selected route in Loc-RIB • Selectively disseminate routes to peers, update Adj-RIB-Out • Done

  4. Multi-homing • With multi-homing, a single network has more than one connections to the Internet • Improves reliability and performance: – can accommodate link failure – bandwidth is sum of links to Internet • Multiple connections provide load sharing but not load balancing – BGP cannot do load balancing

  5. Issues With Multi-homing • Symmetric routing – while conventional wisdom prefers symmetric paths, many (most?) are asymmetric • Packet re-ordering – may trigger TCP’s fast retransmit algorithm • Other concerns: – addressing, DNS, aggregation

  6. Static Routing May Not Work Static route from R1 to customer over L1 Static route from R2 to customer over L2 ISP2 ISP3 Inter- connect Customer L1 ISPn L2 R1 R2 ISP1 Static routing may send traffic from ISPs 2-n to customer over one link and traffic from ISP1 over the other link. Lacks flexibility.

  7. Multi-homing with Multiple Providers • Major issues: ISP3 – addressing – aggregation ISP1 ISP2 • Customer address space: – delegated by ISP1 – delegated by ISP2 – delegated by ISP1 and ISP2 Customer – obtained independently • Advantages and disadvantages?

  8. Case 1: Customer Uses Address Space From One ISP (1 or 2) • Customer uses address space from ISP1 ISP3 • ISP1 advertises /16 aggregate 138.39/16 • Customer advertises /24 route ISP1 ISP2 to ISP2 • ISP2 relays route to ISP1 and ISP3 Customer 138.39.1/24 • ISP2-3 use the /24 route • ISP1 routes directly • Problems with traffic load?

  9. Case 2: Customer Uses Address Space From Both ISPs • ISP1 and ISP2 continue to announce aggregates ISP3 • Load sharing depends on traffic to two prefixes ISP1 ISP2 • Lack of reliability: if ISP1 link goes down, part of customer 138.39.1/24 204.70.1/24 becomes inaccessible Customer • Customer may announce prefixes to both ISPs

  10. Case 3: Customer Uses Its Own Address Space • Offers the most control, but at the cost of aggregation ISP3 • Still need to control paths: ISP1 ISP2 – suppose ISP1 large, ISP2-3 small – want traffic directly from ISP1, but ISP3 should send via ISP2 Customer – customer advertises artificially long path to ISP1, but local-pref attribute at ISP overrides – ISP3 learns shorter path from ISP2

  11. How can BGP express the following policies: 2 will not act as transit to 3 2 will not accept packets sourced in 1 1 will use the green path for packets destined to 4 and the red for packets destined to 5 1 2 2.1 2.2 1.1 2.2.1 1.2 4.2 3 4.1 4 5 3.2 3.1 5.2 5.1

  12. IPv6 • Initial motivation: 32-bit address space soon to be completely allocated. • Additional motivation: – header format helps speed processing/ forwarding – header changes to facilitate QoS IPv6 datagram format: – fixed-length 40 byte header – no fragmentation allowed

  13. IP datagram format • IP protocol version • 32 bits • total datagram • number • length (bytes) • header length • type of • head. • ver • length • (bytes) • service • len • for • fragment • “type” of data • flgs • 16-bit identifier • fragmentation/ • offset • max number • upper • reassembly • time to • Internet • remaining hops • layer • live • checksum • (decremented at • 32 bit source IP address • each router) • 32 bit destination IP address • upper layer protocol • E.g. timestamp, • to deliver payload to • Options (if any) • record route • data • how much overhead • taken, specify • (variable length, with TCP? • list of routers • typically a TCP • 20 bytes of TCP • to visit. • or UDP segment) • 20 bytes of IP • = 40 bytes + app layer overhead

  14. IPv6 Header (Cont) • Priority: identify priority among datagrams in flow • Flow Label: identify datagrams in same “flow.” • (concept of“flow” not well defined). • Next header: identify upper layer protocol for data

  15. Other Changes from IPv4 • Checksum : removed entirely to reduce processing time at each hop • Options: allowed, but outside of header, indicated by “Next Header” field • ICMPv6: new version of ICMP – additional message types, e.g. “Packet Too Big” – multicast group management functions

  16. Transition From IPv4 To IPv6 • Not all routers can be upgraded simultaneous – no “flag days” – How will the network operate with mixed IPv4 and IPv6 routers? • Tunneling: IPv6 carried as payload in IPv4 datagram among IPv4 routers

  17. Tunneling • F • A • E • B • tunnel • Logical view: • IPv6 • IPv6 • IPv6 • IPv6 • F • D • E • A • B • C • Physical view: • IPv6 • IPv6 • IPv6 • IPv6 • IPv4 • IPv4 • Src:B • Src:B • Flow: X • Flow: X • Src: A • Src: A • Dest: E • Dest: E • Dest: F • Dest: F • Flow: X • Flow: X • Src: A • Src: A • Dest: F • Dest: F • data • data • data • data • A-to-B: • E-to-F: • B-to-C: • B-to-C: • IPv6 • IPv6 • IPv6 inside • IPv6 inside • IPv4 • IPv4

  18. NAT: Network Address Translation • Motivation: local network uses just one IP address as far as outside word is concerned: – no need to be allocated range of addresses from ISP: - just one IP address is used for all devices – can change addresses of devices in local network without notifying outside world – can change ISP without changing addresses of devices in local network – devices inside local net not explicitly addressable, visible by outside world (a security plus).

  19. NAT: Network Address Translation • 16-bit port-number field: – 60,000 simultaneous connections with a single LAN-side address! • NAT is controversial (books term): – NAT is evil (protocol designer and security term) – routers should only process up to layer 3 – violates end-to-end argument • NAT possibility must be taken into account by app designers, eg, P2P applications – address shortage should instead be solved by IPv6

  20. NAT: Network Address Translation rest of local network Internet (e.g., home network) 10.0.0.1 10.0.0/24 10.0.0.4 10.0.0.2 138.76.29.7 10.0.0.3 All datagrams leaving local Datagrams with source or network have same single source destination in this network NAT IP address: 138.76.29.7, have 10.0.0/24 address for different source port numbers source, destination (as usual)

  21. NAT: Network Address Translation Implementation: NAT router must: – outgoing datagrams: replace (source IP address, port #) of every outgoing datagram to (NAT IP address, new port #) . . . remote clients/servers will respond using (NAT IP address, new port #) as destination addr. – remember (in NAT translation table) every (source IP address, port #) to (NAT IP address, new port #) translation pair – incoming datagrams: replace (NAT IP address, new port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NAT table

  22. NAT: Network Address Translation NAT translation table 1: host 10.0.0.1 2: NAT router WAN side addr LAN side addr sends datagram to changes datagram 138.76.29.7, 5001 10.0.0.1, 3345 128.119.40, 80 source addr from …… …… 10.0.0.1, 3345 to 138.76.29.7, 5001, S: 10.0.0.1, 3345 updates table D: 128.119.40.186, 80 10.0.0.1 1 S: 138.76.29.7, 5001 2 10.0.0.4 D: 128.119.40.186, 80 10.0.0.2 138.76.29.7 S: 128.119.40.186, 80 4 D: 10.0.0.1, 3345 S: 128.119.40.186, 80 3 10.0.0.3 D: 138.76.29.7, 5001 4: NAT router 3: Reply arrives changes datagram dest. address: dest addr from 138.76.29.7, 5001 138.76.29.7, 5001 to 10.0.0.1, 3345

  23. What’s Next • Read Chapter 1, 2, 3, and 4.1-4.3 • Next Lecture Topics from Chapter 5.1 and 5.2 – UDP and TCP • Homework – Due Thursday in lecture • Project 3 – Will be posted this week

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend