Definition of the Internet • A loosely organised international collaboration of autonomous, interconnected networks that supports host-to-host communication through voluntary adherence to open protocols and procedures defined by Internet standards, a collection of which is commonly knows as: “The TCP/IP protocol suite”.
History • U.S. military experiment called Arpanet over 20 years ago • Academic researchers were increasingly using computers and used this Arpanet • and crossed over to Europe: Internet • Development of browser created immense growth
No single network or owner • Globe-spanning network of networks • No single group, group or organization runs the Internet • But there are groups for guidelines and developments (e.g. IETF, RIPE, ISOC etc.) • Everytime you log on into the Internet, it becomes part of the Internet
Parties present on the Internet • ISPs • end users: consumer/business • Content or information providers • software, entertainment, e-commerce etc. • Corporates • access for employees • Universities • access for students etc.
The Internet Networks Demon UK tier III Dial In EUnet FR tier III KPNQwest tier I MCI Worldcom tier I tier IV IX Leased line Microsoft Shell Lan
The layered structure of Internet - 2 • Tier 1: AT&T, BBN, MCI Wordcom, UUNet, Sprint, KPNQwest+Qwest... • Tier 2: Ebone, AUCS, IBM, KPNQwest... • Tier 3: KPN - BBT/IP, GlobalOne, NLnet, BT, SURFnet...
Internet Exchanges (IX) and peering • Various points in the world where Internet traffic is exchanged • To exchange traffic ISPs make peering agreements • Private vs. Public peering • The more peering agreements, the better the performance
Autonomous System (AS) • An Autonomous System is a collection of routers under the same administration and sharing a single routing policy. • The contiguous system - one (logical) entity • Each AS has an unique identifying number, assigned by an Internet Registry. • Routing Information between ASs is exchanged via an exterior protocol such as BGP
Distance Vector Protocols (RIP, IGRP, EGRP) • Hop Count mechanism limited by a maximal number of hops - speed of the links doesn’t play a role • Entire routing table periodically exchanged using broadcast - high bandwidth consumption • Classfull, network mask not included in the routing updates • Convergence problems due to the periodical updates and hold-down timers • No hierarchy - aggregation not possible • EGRP - fast, support VLSM and CIDR, scalable, only changes announced, low bandwidth consumption…BUT Cisco proprietary.
Link State Protocols (OSPF, ISIS) • Link States exchanged not routing tables • Each Router runs a shortest path algorithm • Routing table building based on the link costs (bandwidth, delay) instead of hop-count • Fast Convergence time due to the link state updates • VLSM and CIDR supported • Hierarchical approach (areas, zones…) • More complex then Distance-Vector
Single-homed AS - No BGP • Connected only to one upstream ISP • Provider uses static routing and announce customers routes as a part of his own AS to the rest of the Internet. • Customer has a default route to the provider. • Often PA addresses used. • The same routing policy - No unique AS number • Alternatives for static routing: IGP, BGP using a private AS nr. (65412-65535)
Multihomed AS - BGP required • AS connected to two or more providers or AS connected to one provider but also having peering connections • If the traffic does not transit the AS, BGP can be avoided but it makes life more easy. • Multihomed AS gets an unique AS number and PI address space.
Border Gateway Protocol Version 4 • Internet standard for exterior routing • BGP1 in 1989 • BGP4 in 1993, supporting CIDR • Path-Vector Protocol (carries AS paths) • Running above TCP (reliability impl. in TCP) • BGP sessions between the neighbours • Initially, all routes exchanged, after that only the updates
BGP Messages - OPEN • Establishing BGP session between the neighbours • Requires IP connectivity - Ping & Trace test (nr. of hops) • Fields: • Version - the highest possible, static setting recommended. • My Autonomous System - AS nr. Of the router • Hold Time - considering session up or down • BGP Identifier - router ID (highest loopback adr.) • Optional Parameters • Optional Parameter Length
BGP Messages - UPDATE • Network Layer Reachability Information - NLRI • IP Prefix + Mask • Path Attributes • AS path; NEXT_HOP; LOCAL_PREF; COMMUNITY… • Transitive or Nontransitive Attributes • Unreachable routes - Withdraws • IP Prefix + Mask
BGP Messages - NOTIFICATION • Always sent after a BGP session is shut down due to an error: • Unsupported Version Number • Bad Peer AS • Bad BGP Identifier • Missing, Well-Known Attribute • AS Rooting Loop...
BGP Messages - KEEPALIVE • Exchanged periodically between the neighbours • If no KEEPALIVE or UPDATE within the time frame set in the HOLD TIME - the BGP session is declared DOWN
Ingredients: • IGP: • Take care of the routing within the AS, next-hop resolution and keeps the IBGP sessions up. • IBGP: • Internal BGP protocol - BGP connections inside an AS • Caring BGP information within an AS • Routes received from an IBGP neighbour not advertised to other IBGP neighbours • Fully meshed, Route Reflectors, Confederations. • No physical connection required • EBGP: • External BGP protocol - BGP connections with other ASs. • Physical connection required or EBGP multihop
Steps: • Define the routing policy • Be sure IGP works and is synchronised • Assign IP address to set the sessions (tip: use loopback for IBGP) • Set up the IBGP sessions • Set up the EBGP sessions • Inject the internal routes into BGP
How BGP Selects Paths -1 1. If the next hop is inaccessible, do not consider it. 2. If the path is internal, synchronisation is enabled and the route is not in the IGP, do not consider the route. 3. Prefer the path with the largest weight 4. If the routes have the same weight, prefer the route with the largest local preference. 5. If the route have the same local preference, prefer the route that was originated by the local router.
How BGP Selects Paths - 2 6. If the local preference is the same and the route is not originated by the local router, prefer the route with the shortest AS path. 7. If the AS path length is the same, prefer the route with the lowest origin code, where IGP<EGP<INCOMPLETE 8. If the origin codes are the same, prefer the route with the lowest Multi Exit Discriminator (MED) attribute 9. If the routes have the same MED, prefer the external (EBGP) path over internal (IBGP) path.
How BGP Selects Paths - 3 10. Prefer the route that can be reached through the closest IGP neighbour (the lowest IGP metric). 11. If all of the above conditions are the same, the routes are from the same AS and multipath is enabled, install both routes in the routing table. 12. If multipath is not enabled, prefer the route with the lowest IP address value for the BGP router ID.
IBGP Set-up • Core routers fully mashed • Core routers acting as Route Reflectors for the access routers
Customer Settable Communities • Customers can control how their traffic is routed through our backbone. • Peering issues Community Purpose 286:11 Prepend one additional 286 to all European peers 286:12 Prepend two additional 286’s to all European peers 286:13 Prepend three additional 286’s to all European peers 286:14 Prepend four additional 286’s to all European peers 286:18 Don’t announce to “in-country” peers 286:19 Don’t announce route to any European peers … 286:100 Prepend one additional 286 to Ebone 286:101 Prepend two additional 286’s to Ebone 286:102 Prepend three additional 286’s to Ebone 286:103 Prepend four additional 286’s to Ebone 286:104 Don’t announce to Ebone