1 / 40

Routing

Routing. Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts Subnetting Classless Inter-Domain Routing (Supernet) Border Gateway Protocol Routing in Ad-hoc Networks IPv6. Overview. Forwarding vs Routing

reece-bruce
Download Presentation

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. Routing • Distance Vector Routing • Link State Routing • Hierarchical Routing • Routing for Mobile Hosts • Subnetting • Classless Inter-Domain Routing (Supernet) • Border Gateway Protocol • Routing in Ad-hoc Networks • IPv6

  2. Overview • Forwarding vs Routing • forwarding: to select an output port based on destination address and routing table • routing: process by which routing table is built • Network as a Graph • Problem: Find lowest cost path between two nodes • Factors • static: topology • dynamic: load

  3. Desired Properties of Routing Algorithm • Correctness • Simplicity • Robustness • Stability • Fairness • Optimality • Minimizing mean packet delay • Maximizing total network throughput

  4. Distance Vector • Each node maintains a set of triples • (Destination, Cost, NextHop) • Exchange updates directly connected neighbors • periodically (on the order of several seconds) • whenever table changes (called triggered update) • Each update is a list of pairs: • (Destination, Cost) • Update local table if receive a “better” route • smaller cost • came from next-hop • Refresh existing routes; delete if they time out

  5. Example Destination Cost NextHop B 1 B C 1 C D ¥ - E 1 E F 1 F G ¥ -

  6. Routing Loops • Example 1 • F detects that link to G has failed • F sets distance to G to infinity and sends update t o A • A sets distance to G to infinity since it uses F to reach G • A receives periodic update from C with 2-hop path to G • A sets distance to G to 3 and sends update to F • F decides it can reach G in 4 hops via A • Example 2 • link from A to E fails • A advertises distance of infinity to E • B and C advertise a distance of 2 to E • B decides it can reach E in 3 hops; advertises this to A • A decides it can read E in 4 hops; advertises this to C • C decides that it can reach E in 5 hops…

  7. Loop-Breaking Heuristics • Set infinity to 16 • Split horizon • Split horizon with poison reverse • The Core of the Problem: • When X tells Y that it has a path somethere, Y has no way of knowing whether it itself is on the path.

  8. Link State Routing • Strategy • send to all nodes (not just neighbors) information about directly connected links (not entire routing table) • Five Parts • Discover its neighbors and learn their network addresses • Measure the delay or cost to each of its neighbors • Construct a packet telling all it has just learned • Send this packet to all other routers • Compute the shortest path to every other router

  9. Link State Routing … • Measuing Line Cost • ECHO packet • Round Trip Time (RTT) divide by two • Load ?? • Link State Packet (LSP) • id of the node that created the LSP • cost of link to each directly connected neighbor • sequence number (SEQNO) • time-to-live (TTL) for this packet

  10. Reliable Flooding • Reliable flooding • store most recent LSP from each node • forward LSP to all nodes but one that sent it • generate new LSP periodically • increment SEQNO, no wrap • start SEQNO at 0 when reboot • decrement TTL of each stored LSP • discard when TTL=0

  11. Route Calculation • Dijkstra’s shortest path algorithm • Let • N denotes set of nodes in the graph • l (i, j) denotes non-negative cost (weight) for edge (i, j) • s denotes this node • M denotes the set of nodes incorporated so far • C(n) denotes cost of the path from s to node n M = {s} for each n in N - {s} C(n) = l(s, n) while (N != M) M = M union {w} such that C(w) is the minimum for all w in (N - M) for each n in (N - M) C(n) = MIN(C(n), C (w) + l(w, n ))

  12. Shortest Path Algorithm

  13. Metrics • Original ARPANET metric • measures number of packets enqueued on each link • took neither latency or bandwidth into consideration • New ARPANET metric • stamp each incoming packet with its arrival time (AT) • record departure time (DT) • when link-level ACK arrives, compute Delay = (DT - AT) + Transmit + Latency • if timeout, reset DT to departure time for retransmission • link cost = average delay over some time period • Fine Tuning • compressed dynamic range • replaced Delay with link utilization

  14. Hierarchical Routing

  15. Mobility The ability to change locations, while connected to the network, accessing information services. • Maintain connection during movement • All messages sent to the mobile node are redirected to its real location • More than portability • Operate at any point of attachment • Connections have to be shutdown when nodes is moved.

  16. Routing for Mobile Hosts

  17. Route Optimization in Mobile IP

  18. How to Make Routing Scale • Flat versus Hierarchical Addresses • Inefficient use of Hierarchical Address Space • class C with 2 hosts (2/255 = 0.78% efficient) • class B with 256 hosts (256/65535 = 0.39% efficient) • Still Too Many Networks • routing tables do not scale • route propagation protocols do not scale

  19. NSFNET backbone Stanford ISU BARRNET MidNet … regional regional Westnet regional Berkeley P ARC UNL KU UNM NCAR UA Internet Structure Recent Past

  20. Large corporation “ ” Consumer ISP Peering point Backbone service provider Peering point Consumer ” ISP “ “ Consumer ISP ” Large corporation Small corporation Internet Structure Today

  21. Network number Host number Class B address 111111111111111111111111 00000000 Subnet mask (255.255.255.0) Network number Subnet ID Host ID Subnetted address Subnetting • Add another level to address/routing hierarchy: subnet • Subnet masks define variable partition of host part • Subnets visible only within site

  22. Subnet mask: 255.255.255.128 Subnet number: 128.96.34.0 128.96.34.15 128.96.34.1 H1 R1 Subnet mask: 255.255.255.128 128.96.34.130 Subnet number: 128.96.34.128 128.96.34.139 128.96.34.129 H2 R2 H3 128.96.33.1 128.96.33.14 Subnet mask: 255.255.255.0 Subnet number: 128.96.33.0 Subnet Example Forwarding table at router R1 Subnet Number Subnet Mask Next Hop 128.96.34.0 255.255.255.128 interface 0 128.96.34.128 255.255.255.128 interface 1 128.96.33.0 255.255.255.0 R2

  23. Forwarding Algorithm D = destination IP address for each entry (SubnetNum, SubnetMask, NextHop) D1 = SubnetMask & D if D1 = SubnetNum if NextHop is an interface deliver datagram directly to D else deliver datagram to NextHop • Use a default router if nothing matches • Not necessary for all 1s in subnet mask to be contiguous • Can put multiple subnets on one physical network • Subnets not visible from the rest of the Internet

  24. Supernetting • Assign block of contiguous network numbers to nearby networks • Called CIDR: Classless Inter-Domain Routing • Represent blocks with a single pair (first_network_address, count) • Restrict block sizes to powers of 2 • Use a bit mask (CIDR mask) to identify block size • All routers must understand CIDR addressing

  25. Route Propagation • Know a smarter router • hosts know local router • local routers know site routers • site routers know core router • core routers know everything • Autonomous System (AS) • corresponds to an administrative domain • examples: University, company, backbone network • assign each AS a 16-bit number • Two-level route propagation hierarchy • interior gateway protocol (each AS selects its own) • exterior gateway protocol (Internet-wide standard)

  26. Popular Interior Gateway Protocols • RIP: Route Information Protocol • developed for XNS • distributed with Unix • distance-vector algorithm • based on hop-count • OSPF: Open Shortest Path First • recent Internet standard • uses link-state algorithm • supports load balancing • supports authentication

  27. EGP: Exterior Gateway Protocol • Overview • designed for tree-structured Internet • concerned with reachability, not optimal routes • Protocol messages • neighbor acquisition: one router requests that another be its peer; peers exchange reachability information • neighbor reachability: one router periodically tests if the another is still reachable; exchange HELLO/ACK messages; uses a k-out-of-n rule • routing updates: peers periodically exchange their routing tables (distance-vector)

  28. BGP-4: Border Gateway Protocol • AS Types • stub AS: has a single connection to one other AS • carries local traffic only • multihomed AS: has connections to more than one AS • refuses to carry transit traffic • transit AS: has connections to more than one AS • carries both transit and local traffic • Each AS has: • one or more border routers • one BGP speaker that advertises: • local networks • other reachable networks (transit AS only) • gives path information

  29. 128.96 Customer P 192.4.153 (AS 4) Regional provider A (AS 2) Customer Q 192.4.32 (AS 5) 192.4.3 Backbone network (AS 1) Customer R 192.12.69 (AS 6) Regional provider B (AS 3) Customer S 192.4.54 (AS 7) 192.4.23 BGP Example • Speaker for AS2 advertises reachability to P and Q • network 128.96, 192.4.153, 192.4.32, and 192.4.3, can be reached directly from AS2 • Speaker for backbone advertises • networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be reached along the path (AS1, AS2). • Speaker can cancel previously advertised paths

  30. Features of IPv6 • Larger Address – 128 bits • Extended Address Hierarchy • Increased addressing flexibility – concept of anycast address, and improved scalability of multicast routing • Flexible Header Format, Improved Options • Provision For Protocol Extension • Support For Resource Allocation – real time services, differentiated services • Support For Autoconfiguration and Renumbering • Support for authentication, data integrity and confidentiality at the IP level

  31. IPv6 Address Notation • 128-bit addresses unwieldy in dotted decimal; requires 16 numbers105.220.136.100.255.255.255.255.0.0.18.128.140.10.255.255 • Groups of 16-bit numbers in hex separated by colons – colon hexadecimal69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF FF05:0:0:0:0:0:0:B3 can be written FF05::B3

  32. IPv6 Address Space Allocation

  33. Aggregatable Global Unicast Addresses 3 m n o p 64 RFC3587, August 2003

  34. The IPv6 Header Bit 31 Bit 0 hlen Total length TOS(8) version(4) 20 bytes IPV4 flags Frag offset identification TTL protocol header checksum Source address Destination address Options and padding Bit 31 Bit 0 Traffic class(8) version(4) Flow Label (20) 40 bytes IPV6 Payload Length (16) Next header(8) Hop Limit (8) Source IP address (128) Destination IP address (128)

  35. Routing in Ad Hoc Networks Possibilities when the routers are mobile: • Military vehicles on battlefield. • No infrastructure. • A fleet of ships at sea. • All moving all the time • Emergency works at earthquake . • The infrastructure destroyed. • A gathering of people with notebook computers. • In an area lacking 802.11.

  36. Route Discovery

  37. Route Discovery (2) Format of a ROUTE REQUEST packet. Format of a ROUTE REPLY packet.

  38. Route Maintenance (a) D's routing table before G goes down. (b) The graph after G has gone down.

  39. Repeaters, Hubs, Bridges, Switches, Routers and Gateways

  40. Repeaters, Hubs, Bridges, Switches, Routers and Gateways (2) (a) A hub. (b) A bridge. (c) a switch.

More Related