CS 5565 Network Architecture and Protocols

Slides:



Advertisements
Similar presentations
CS 4284 Systems Capstone Godmar Back Networking. IPV4 CS 4284 Spring 2013.
Advertisements

Network Layer4-1 Hierarchical Routing scale: with 200 million destinations: r can’t store all dest’s in routing tables! r routing table exchange would.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 22 Omar Meqdadi Department of Computer Science and Software Engineering University.
Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Internet Protocol –Datagram format.
Week 5: Internet Protocol Continue to discuss Ethernet and ARP –MTU –Ethernet and ARP packet format IP: Internet Protocol –Datagram format –IPv4 addressing.
4a-1 CSE401: Computer Networks Hierarchical Routing & Routing in Internet S. M. Hasibul Haque Lecturer Dept. of CSE, BUET.
Network Layer4-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
Announcement r Project 3 out, due 3/10 r Homework 3 out last week m Due next Mon. 3/1.
1 Announcement r Project #2 due midnight r Homework #3 due Friday midnight r Project #3 is out.
14 – Inter/Intra-AS Routing
Routing Algorithms & Routing Protocols  Shortest Path Routing  Flooding  Distance Vector Routing  Link State Routing  Hierarchical Routing  Broadcast.
1 ECE453 – Introduction to Computer Networks Lecture 10 – Network Layer (Routing II)
The Network Layer: IP, subnets, NAT and Routing Based on slides from the Computer Networking: A Top Down Approach Featuring the Internet by Kurose and.
Network Layer4-1 NAT: Network Address Translation local network (e.g., home network) /24 rest of.
Lecture 10 Overview. Border Gateway Protocol(BGP) De facto standard for Internet inter-AS routing allows subnet to advertise its existence to rest of.
Transport Layer 3-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012  CPSC.
14 – Inter/Intra-AS Routing Network Layer Hierarchical Routing scale: with > 200 million destinations: can’t store all dest’s in routing tables!
CSC 450/550 Part 4: Network Layer Part B: The Internet Routing Protocols.
Lecture 14 ICMP: Internet Control Message Protocol r used by hosts, routers, gateways to communication network-level information m error reporting: unreachable.
I-4 routing scalability Taekyoung Kwon Some slides are from Geoff Huston, Michalis Faloutsos, Paul Barford, Jim Kurose, Paul Francis, and Jennifer Rexford.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
Introduction 1 Lecture 21 Network Layer (Routing Activity) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science &
RSC Part II: Network Layer 6. Routing in the Internet (2 nd Part) Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are,
Introduction 1 Lecture 19 Network Layer (Routing Protocols) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science &
CS 3830 Day 29 Introduction 1-1. Announcements r Quiz 4 this Friday r Signup to demo prog4 (all group members must be present) r Written homework on chapter.
10-1 Last time □ Transitioning to IPv6 ♦ Tunneling ♦ Gateways □ Routing ♦ Graph abstraction ♦ Link-state routing Dijkstra's Algorithm ♦ Distance-vector.
Homework 4 r Out: Fri 2/27/2015 r In: Fri 3/13/2015.
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Routing in the Internet The Global Internet consists of Autonomous Systems (AS) interconnected with eachother: Stub AS: small corporation Multihomed AS:
Network Layer r Introduction r Datagram networks r IP: Internet Protocol m Datagram format m IPv4 addressing m ICMP r What’s inside a router r Routing.
4: Network Layer4a-1 Routing in the Internet r The Global Internet consists of Autonomous Systems (AS) interconnected with each other: m Stub AS: small.
Network Layer4-1 Intra-AS Routing r Also known as Interior Gateway Protocols (IGP) r Most common Intra-AS routing protocols: m RIP: Routing Information.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_a Routing Protocols: RIP, OSPF, BGP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
ICT 6621 : Advanced NetworkingKhaled Mahbub, IICT, BUET, 2008 Lecture 5 TCP/IP Network Layer (3)
4: Network Layer4b-1 OSPF (Open Shortest Path First) r “open”: publicly available r Uses Link State algorithm m LS packet dissemination m Topology map.
Transport Layer3-1 Network Layer Every man dies. Not every man really lives.
Network Layer4-1 Routing Algorithm Classification Global or decentralized information? Global: r all routers have complete topology, link cost info r “link.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
CSE 421 Computer Networks. Network Layer 4-2 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside.
4: Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Application Layer 2-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Routing in the Internet
14 – Inter/Intra-AS Routing
Homework 4 Out: Fri 2/24/2017 In: Fri 3/10/2017.
Chapter 4: Network Layer
Homework 4 Out: Fri 2/26/2016 In: Fri 3/11/2016.
ICMP ICMP – Internet Control Message Protocol
Chapter 4: Network Layer
CS4470 Computer Networking Protocols
Hierarchical Routing Our routing study thus far – an idealization
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Part 4: Network Layer Part B: The Internet Routing Protocols
Chapter 4: Network Layer
Overview The Internet (IP) Protocol Datagram format IP fragmentation
Chapter 4: Network Layer
Chapter 4: Network Layer
CMPE 252A : Computer Networks
Chapter 4: Network Layer
Chapter 4: Network Layer
Computer Networks Protocols
Network Layer: Internet Inter-Domain Routing
Presentation transcript:

CS 5565 Network Architecture and Protocols Lecture 20 Godmar Back

Announcements Project 2B due in 2 parts: Extra Credit Opportunities: Apr 29 and May 6 Extra Credit Opportunities: Expand simulator (and your implementation) to introduce multiple link failures and link resurrection Additional, requiring reading posted Andersen et al [SIGCOMM’08]: Accountable Internet Protocol (AIP) Casado et al [HotNets’08]: Rethinking Packet Forwarding Hardware CS 5565 Spring 2009 9/19/2018

Project 2B Simulator Overview

Project 2B High-level View Suppose node 2 calls inbound Simulated link in topology RPC Outbound/ Inbound over TCP High-level View Suppose node 2 calls inbound Simulator calls outbound to n3 write_msg(/*port=*/2, data) Sim read_msg(/*from*/2, /*port*/1, data) CS 5565 Spring 2009 9/19/2018

Project 2B: Under the hood Uses discrete event simulation Events are: packet received, timer expired, cost change, link failure Virtual time cost change on link connecting n2 and n3 n3 receives msg from n2 on port 1 timer on n2 expires, n2 calls write_msg(2,..) CS 5565 Spring 2009 9/19/2018

Routing Algorithms

Roadmap Done Next Discussed forwarding vs routing Discussed theory behind two major routing algorithms: Link-state routing Distance Vector routing Discuss theory behind hierarchical routing Discuss application in Internet IPv4 addressing Next Routing in the Internet CS 5565 Spring 2009 9/19/2018

Addressing in IP IP address interfaces, not hosts 223.1.1.2 IP address interfaces, not hosts Sets of interfaces form subnets Subnets share common prefix Route to CIDR-ized subnet addresses a.b.c.d/x Within subnet, reach destination directly 223.1.1.1 223.1.1.4 223.1.1.3 223.1.9.2 223.1.7.1 223.1.9.1 223.1.7.2 223.1.8.1 223.1.8.2 223.1.2.6 223.1.3.27 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 CS 5565 Spring 2009 9/19/2018

Internet Ethernet LAN 1 60 Machines R1 PPP Link 2 Subnet address: 191.23.25.193 R1 PPP Link 2 Subnet address: 191.23.25.128/26 Default gateway: 191.23.25.129 191.23.25.192/30 R2 191.23.25.197 191.23.25.194 PPP Link 1 191.23.25.129 191.23.25.196/30 Ethernet LAN 2 120 Machines R3 191.23.25.198 191.23.25.1 Subnet address: 191.23.25.0/25 Default gateway: 191.23.25.1 CS 5565 Spring 2009 9/19/2018

Routing Tables in End Systems Typical: local subnets + default gateway (“first-hop router”) Example: “route print” on Windows XP 128.173.55.90 FastEthernet 192.82.175.230 802.11g wireless Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 128.173.48.1 128.173.55.90 20 0.0.0.0 0.0.0.0 198.82.174.1 198.82.175.230 25 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 128.173.48.0 255.255.248.0 128.173.55.90 128.173.55.90 20 198.82.174.0 255.255.254.0 198.82.175.230 198.82.175.230 25 … Default Gateway: 128.173.48.1 CS 5565 Spring 2009 9/19/2018

ICMP: Internet Control Message Protocol used by hosts & routers to communicate network-level information error reporting: unreachable host, network, port, protocol echo request/reply (used by ping) network-layer “above” IP: ICMP msgs carried in IP datagrams ICMP message: type, code plus first 8 bytes of IP datagram causing error Type Code description 0 0 echo reply (ping) 3 0 dest. network unreachable 3 1 dest host unreachable 3 2 dest protocol unreachable 3 3 dest port unreachable 3 6 dest network unknown 3 7 dest host unknown 4 0 source quench (congestion control - not used) 8 0 echo request (ping) 9 0 route advertisement 10 0 router discovery 11 0 TTL expired 12 0 bad IP header CS 5565 Spring 2009 9/19/2018

Traceroute and ICMP Source sends series of UDP segments to dest First has TTL =1 Second has TTL=2, etc. Unlikely port number When nth datagram arrives to nth router: Router discards datagram And sends to source an ICMP message (type 11, code 0) Message includes name of router& IP address When ICMP message arrives, source calculates RTT Traceroute does this 3 times Stopping criterion UDP segment eventually arrives at destination host Destination returns ICMP “port unreachable” packet (type 3, code 3) When source gets this ICMP, stops. See also [Heideman 2008] CS 5565 Spring 2009 9/19/2018

IP addresses: how to get one? Host gets IP address either hardcoded or via DHCP (Dynamic Host Configuration Protocol) Network gets subnet part of IP address allocated from ISP’s address space ISP gets address space assigned by ICANN (Internet Corporation for Assigned Names and Numbers) ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23 ... ….. …. …. Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23 CS 5565 Spring 2009 9/19/2018

Hierarchical Addressing: Route Aggregation Hierarchical addressing allows efficient advertisement of routing information: Organization 0 200.23.16.0/23 Organization 1 200.23.18.0/23 “Send me anything with addresses beginning 200.23.16.0/20” Organization 2 200.23.20.0/23 . Fly-By-Night-ISP . Internet Organization 7 200.23.30.0/23 “Send me anything with addresses beginning 199.31.0.0/16” ISPs-R-Us CS 5565 Spring 2009 9/19/2018

Hierarchical Addressing: More Specific Routes ISPs-R-Us has a more specific route to Organization 1 Organization 0 200.23.16.0/23 “Send me anything with addresses beginning 200.23.16.0/20” Organization 2 200.23.20.0/23 . Fly-By-Night-ISP . Internet Organization 7 200.23.30.0/23 “Send me anything with addresses beginning 199.31.0.0/16 or 200.23.18.0/23” ISPs-R-Us Organization 1 200.23.18.0/23 CS 5565 Spring 2009 9/19/2018

Intra-AS vs Inter-AS Routing In Internet: Intra-AS known as Interior Gateway Protocols (IGP) Most common Intra-AS routing protocols: RIP: Routing Information Protocol (original protocol, now rarely used) OSPF: Open Shortest Path First IGRP/EIGRP: (Enhanced) Interior Gateway Routing Protocol Inter-AS known as Border Gateway Protocols: BGP4: Only protocol used CS 5565 Spring 2009 9/19/2018

RIP (Routing Information Protocol) Distance vector algorithm Included in BSD-UNIX Distribution in 1982 Distance metric: # of hops (max = 15 hops) Distance vectors: exchanged among neighbors every 30 sec via Response Message (also called advertisement) Each advertisement: list of up to 25 destination nets within AS D C B A u v w x y z destination hops u 1 v 2 w 2 x 3 y 3 z 2 A’s routing table CS 5565 Spring 2009 9/19/2018

RIP: Example z w x y A D B C Routing table in D y B 2 z B 7 x -- 1 Destination Network Next Router Num. of hops to dest. w A 2 y B 2 z B 7 x -- 1 …. …. .... CS 5565 Spring 2009 9/19/2018

RIP: Example w x y z A C D B Routing table in D Advertisement Dest Next hops w - - x - - z C 4 …. … ... Advertisement from A to D w x y z A C D B Routing table in D Destination Network Next Router Num. of hops to dest. w A 2 y B 2 z B A 7 5 x -- 1 …. …. .... CS 5565 Spring 2009 9/19/2018

RIP: Link Failure and Recovery If no advertisement heard after 180 sec → neighbor/link declared dead routes via neighbor invalidated new advertisements sent to neighbors neighbors in turn send out new advertisements (if tables changed) poison reverse used to prevent ping-pong loops (infinite distance = 16 hops) CS 5565 Spring 2009 9/19/2018

RIP Table processing RIP routing tables managed by application-level process called route-d (daemon) advertisements sent in UDP packets, periodically repeated routed routed Transprt (UDP) Transprt (UDP) network forwarding (IP) table network (IP) forwarding table link link physical physical CS 5565 Spring 2009 9/19/2018

EIGRP Cisco proprietary Distance Vector Protocol with enhancements See [Cisco Whitepaper], [Malhotra 2002] Distance Vector Protocol with enhancements Explicit Signaling (HELLO packets) DUAL “diffusing update algorithm” “feasible successor” concept guarantees loop freedom Intuition: rather than count to infinity, trigger route recomputation unless another loop-free path is known Optimize this by keeping track of all advertised routes, not just best one CS 5565 Spring 2009 9/19/2018

OSPF (Open Shortest Path First) “open”: publicly available protocol (not proprietary) Uses Link State algorithm LS packet dissemination Topology map at each node Route computation using Dijkstra’s algorithm OSPF advertisement carries one entry per neighbor router Advertisements have age field to allow for expiration Advertisements disseminated to entire AS (via flooding) Carried in OSPF messages directly over IP (rather than TCP or UDP) CS 5565 Spring 2009 9/19/2018

OSPF “advanced” features (not in RIP) Security: all OSPF messages authenticated (to prevent malicious intrusion) Multiple same-cost paths allowed (only one path in RIP) For each link, multiple cost metrics for different TOS (e.g., satellite link cost set “low” for best effort; high for real time) Integrated uni- and multicast support: Multicast OSPF (MOSPF) uses same topology data base as OSPF Hierarchical OSPF in large domains. CS 5565 Spring 2009 9/19/2018

Hierarchical OSPF CS 5565 Spring 2009 9/19/2018

Hierarchical OSPF Two-level hierarchy: local area, backbone. link-state advertisements only in same area each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. Area border routers: “summarize” distances to nets in own area, advertise to other Area Border routers. Backbone routers: run OSPF routing limited to backbone. Boundary routers: connect to other AS’s. CS 5565 Spring 2009 9/19/2018

Internet Inter-AS routing: BGP BGP (Border Gateway Protocol): the de facto standard BGP provides each AS a means to: Obtain subnet reachability information from neighboring ASs. Propagate the reachability information to all routers internal to the AS. Determine “good” routes to subnets based on reachability information and policy. Allows a subnet to advertise its existence to rest of the Internet: “I am here” CS 5565 Spring 2009 9/19/2018

BGP Basics Pairs of routers (BGP peers) exchange routing info over semi-permanent TCP conctns: BGP sessions Note that BGP sessions do not always correspond to physical links. When AS2 advertises a prefix to AS1, AS2 is promising it will forward any datagrams destined to that prefix towards the prefix. AS2 can aggregate prefixes in its advertisement 3b 1d 3a 1c 2a AS3 AS1 AS2 1a 2c 2b 1b 3c eBGP session iBGP session CS 5565 Spring 2009 9/19/2018

Distributing Reachability Info With eBGP session between 3a and 1c, AS3 sends prefix reachability info to AS1. 1c can then use iBGP do distribute this new prefix reach info to all routers in AS1 1b can then re-advertise the new reach info to AS2 over the 1b-to-2a eBGP session When router learns about a new prefix, it creates an entry for the prefix in its forwarding table. 3b 1d 3a 1c 2a AS3 AS1 AS2 1a 2c 2b 1b 3c eBGP session iBGP session CS 5565 Spring 2009 9/19/2018

Path Attributes & BGP Routes When advertising a prefix, advert includes BGP attributes. prefix + attributes = “route” Two important attributes: AS-PATH: contains the ASs through which the advert for the prefix passed: AS 67 AS 17 NEXT-HOP: Indicates the specific internal-AS router to next-hop AS. (There may be multiple links from current AS to next-hop-AS.) When gateway router receives route advert, uses import policy to accept/decline. CS 5565 Spring 2009 9/19/2018

BGP Route Selection Router may learn about more than 1 route to some prefix. Router must select route. Elimination rules: Local preference value attribute: policy decision Shortest AS-PATH (like DV routing, except with more information!) Closest NEXT-HOP router: hot potato routing Additional criteria CS 5565 Spring 2009 9/19/2018

Path Vector Routing in BGP Accomplished via AS-PATH attributes Each node is entire AS! CS 5565 Spring 2009 9/19/2018

BGP routing policy A,B,C are provider networks X,W,Y are customer (of provider networks) X is dual-homed: attached to two networks X does not want to route from B via X to C .. so X will not advertise to B a route to C CS 5565 Spring 2009 9/19/2018

BGP routing policy (2) A advertises to B the path AW B advertises to X the path BAW Should B advertise to C the path BAW? No way! B gets no “revenue” for routing CBAW since neither W nor C are B’s customers B wants to force C to route to w via A B wants to route only to/from its customers! CS 5565 Spring 2009 9/19/2018

Relationship between OSPF&BGP OSPF hierarchy is intra-AS BGP connects ASs CS 5565 Spring 2009 9/19/2018

Motivation for different Intra/Inter Protocols Policy: Inter-AS: admin wants control over how its traffic routed, who routes through its net. Intra-AS: single admin, so no policy decisions needed Scale: hierarchical routing saves table size, reduced update traffic Performance: Intra-AS: can focus on performance Inter-AS: policy may dominate over performance CS 5565 Spring 2009 9/19/2018

Usage of Routing Protocols EBGP Sessions IGP OSPF EIGRP RIP Total Intra- 1,490 9,624 12,741 156 22,521 Inter- 13,830 1,161 1,342 161 2,664 Sample obtained by reverse-engineering router config files Source David Maltz et al: Routing Design in Operational Networks – A Look from the inside, [SIGCOMM 2004] CS 5565 Spring 2009 9/19/2018

Summary IP ICMP RIP OSPF BGP Addressing, subnets CS 5565 Spring 2009 9/19/2018