1 / 36

Introduction to Inter-Domain Routing

Introduction to Inter-Domain Routing. Refs: (a) Courtesy of Teng Fei/Prof. Lixin Gao, ECE Umass (b) http://www.research.att.com/~griffin/sigcomm2001_bgp_tutorial/abstract.html. The Internet Looks Like?. Subnetting. 16. 2. 14. CLASS “B” e.g. Company. Host-ID. 10. Net ID. 16. 16.

albany
Télécharger la présentation

Introduction to Inter-Domain Routing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Inter-Domain Routing Refs: (a) Courtesy of Teng Fei/Prof. Lixin Gao, ECE Umass (b)http://www.research.att.com/~griffin/sigcomm2001_bgp_tutorial/abstract.html

  2. The Internet Looks Like?

  3. Subnetting 16 2 14 CLASS “B” e.g. Company Host-ID 10 Net ID 16 16 2 14 2 14 e.g. Site 0000 1111 Host-ID Host-ID 10 Net ID 10 Net ID Subnet ID (20) Subnet Host ID (12) Subnet ID (20) Subnet Host ID (12) 16 16 2 14 2 14 e.g. Dept Host-ID 10 Net ID 1111011011 Host-ID 10 Net ID 000000 Subnet ID (26) Subnet Host ID (6) Subnet ID (22) Subnet Host ID (10)

  4. 142.12/19 Classless Interdomain Routing (CIDR) Addressing • The IP address space is broken into line segments. • Each line segment is described by a prefix. • A prefix is of the form x/y where x indicates the prefix of all addresses in the line segment, and y indicates the length of the segment. • e.g. The prefix 128.9/16 represents the line segment containing addresses in the range: 128.9.0.0 … 128.9.255.255. 128.9.0.0 65/8 128.9/16 0 232-1 216 128.9.16.14

  5. Hierarchical Routing • Why? • Scalability • Administrative Autonomy • Solution • Autonomous Systems (ASs) • identified by unique AS numbers

  6. BGP-Border Gateway Protocol • Inter-domain routing (EGP) • Distance Vector (Path Vector) • Build on the top of TCP (port 179) • Policy based Defined in RFC 1771

  7. How Does BGP Work? • Between Two BGP Routers • BGP peers/neighbors • form one TCP connection • BGP session • BGP Routing information are exchanged • prefix/AS path/etc.

  8. eBGP and iBGP • eBGP • BGP running between two different ASs • iBGP • BGP running within the same AS • An AS has multiple BGP speakers and provides transit service • Distribute routing info among BGP routers • minor but important difference with eBGP

  9. Complete BGP illustration eBGP AS100 AS300 RtA RtD iBGP RtB RtC AS200

  10. Example of iBGP session AS300 AS100 RtD RtA IGP Loopback IF 150.212.1.1 RtB RtC 134.18.50.22 AS200

  11. BGP Messages • Open • Update • Notification • Keepalive TCP connection always established throughout the BGP session

  12. Open Messages • The first message sent after TCP established • Each peer identify itself to each other • Negotiate protocol version/parameters • Security (optional)

  13. Open Message Format Version (1 octet) My Autonomous System (2 octet) Hold Time (2 octet) BGP identifier (4 octet) Optional Parameter Length (1 octet) Optional parameters (variable length)

  14. Update Message • Primary message used in a BGP • advertises(announce) a prefix to BGP neighbors/withdraw a previously advertised message • Encourage multiple prefixes in a single Update

  15. Notification Message • Used when error(s) happen(s) • TCP will be closed immediately after notification is sent • Indicates the remote system why BGP was terminated

  16. Keepalive Message • Confirm the connection is still active • rate depend on the hold timer negotiated by open message and update message frequency • A common header with no other data

  17. BGP Routing Tables Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, S Stale Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path * 3.0.0.0 12.123.1.234 0 7018 80 i * 12.123.45.252 0 7018 80 i * 12.123.199.239 0 7018 80 i * 12.123.145.124 0 7018 80 i *> 12.123.1.236 0 7018 80 i * 12.123.133.124 0 7018 80 i * 4.0.0.0 12.123.45.252 0 7018 1 i * 12.123.199.239 0 7018 1 i * 12.123.9.241 0 7018 1 i * 12.123.13.241 0 7018 1 i *> 12.123.5.240 0 7018 1 i * 12.123.142.124 0 7018 1 i

  18. BGP attributes • AS-path attribute • Origin attribute • BGP Nexthop attribute • Weight Attribute • Local preference attribute • Metric attribute • Community attribute

  19. AS-Path Attribute • A list of AS numbers that a route has traversed in order to reach a destination • Whenever a route update pass through a new AS, the AS number is prepended • AS numbers are listed in order • If the AS number is already in the update, the route is dropped.

  20. AS-PATH Attribute Example 170.10.0.0 AS200 AS100 RtD RtA RtC RtA advertise 170.10.0.0 to RtC, AS-PATH: 100 RtB advertise 170.10.0.0 to RtC, AS-PATH: 300, 100 RtC advertise 170.10.0.0 to RtD, AS-PATH: 300, 100 RtB AS300

  21. Origin Attribute • Mandatory attribute • Defines the origin of the path information • three typical values • “i”: IGP, interior to the originating AS • “e”: EGP, learnt via exterior gateway protocol • “?”: incomplete, unknown or via others

  22. Origin Attribute Example ip route 190.10.0.0 255.255.0.0 null 0 RtA RtB 190.10.50.1 150.10.30.1 175.10.40.2 170.10.20.1 AS100 iBGP 170.10.20.2 RtE RtA -> 170.10.0.0: 300 i RtA -> 190.10.50.0: i RtE -> 150.10.0.0: 100 i RtE -> 190.10.0.0: 100 ? AS300 170.10.0.0

  23. Nexthop Attribute • The next hop IP address that is to use to reach destination • For eBGP, always the directly connected neighbor’s interface • For iBGP, the nexthop advertised by eBGP should be carried through into iBGP

  24. Nexthop Attribute Example 150.10. 0.0 RtA RtB 190.10.50.1 150.10.30.1 175.10.40.2 170.10.20.1 iBGP AS100 170.10.20.2 RtC RtC advertise 170.10.0.0 to RtA, Nexthop 170.10.20.2 RtA advertise 170.10.0.0 to RtB, Nexthop 170.10.20.2 AS300 170.10.0.0

  25. How does BGP select a route? • Little information available about other domains • Based on policies rather than optimality • Decisions (local) based on local preference

  26. Weight Attribute • Cisco implementation • Assigned locally to indicate a router to choose best exit path • Does not propagate through router updates • Higher weight is preferred • Default is 0

  27. Weight Attribute Example 175.10.0.0 AS4 190.10.0.0 170.10.0.0 RtA RtB AS100 AS200 175.10.0.0 175.10.0.0 W=200 W=100 RtC RtA will be chosen AS300

  28. Local Preference Attribute • Indicate the AS about which exit is preferred • Exchanged among routers in the same AS through updates • Higher value is preferred • Default value is 100

  29. Local Preference Example 175.10.0.0 AS4 190.10.0.0 170.10.0.0 RtA RtB AS100 AS200 175.10.0.0 Set locPref=200 Set locPref=150 All traffic in AS 300 will be directed to RtD RtC RtD AS300

  30. Metric Attribute • Also called Multi_exit_discriminator • Exchanged between AS, but not carried through • Low value of a metric is more preferred • Default value is 0 • Unless specified, router only compare metrics for paths from the same neighbor AS

  31. Metric Attribute Example Set Metric = 0 AS400 AS100 RtA RtB Set Metric = 200 RtA will pick RtC as the best route Set Metric = 120 RtC RtD AS300

  32. Community Attribute • Optional attribute • Transitive between ASs • A label/string that attach to the prefixes • Aggregate prefixes into groups • So as to apply routing decisions

  33. BGP policies Decide exactly ONE best path BGP router Decision Process Export policy Import policy Receive routes for prefixes from multiple neighbors Filter out unwanted routes, and manipulate the attributes of remaining routes Manipulate attributes of the best route, influence neighbor's choice, or decide whether to advertise the route to neighbors

  34. Decision Process • Highest local preference • Shortest AS path • eBGP over iBGP • Lowest IGP metric • Lowest router id

  35. Problems Of BGP • Convergence issue • Scalability issue

  36. Summary • Inter-domain routing • Route selection is done based on policies rather than optimality • Policies are encoded into local preferences

More Related