Fall 2004FSU CIS 5930 Internet Protocols1 IP Routing Reading: Chapter 16.

Slides:



Advertisements
Similar presentations
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
Advertisements

IP Forwarding Relates to Lab 3.
Delivery and Forwarding of
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 The Routing Table: A Closer Look Routing Protocols and Concepts – Chapter.
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
IP Address 0 network host 10 network host 110 networkhost 1110 multicast address A B C D class to to
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
© Jörg Liebeherr ECE 1545 Forwarding in IP Networks.
TCP/IP Protocol Suite 1 Chapter 6 Upon completion you will be able to: Delivery, Forwarding, and Routing of IP Packets Understand the different types of.
Routing Table : closer look w.lilakiatsakun. Sample Routing Table Static Route Dynamic Routing Protocol (RIP) Directly Connected Network Administrative.
Lecture Week 8 The Routing Table: A Closer Look
TCP/IP Protocol Suite 1 Chapter 6 Upon completion you will be able to: Delivery, Forwarding, and Routing of IP Packets Understand the different types of.
Fall 2006Computer Networks19-1 Chapter 19. Host-to-Host Delivery: Internetworking, Addressing, and Routing 19.1 Internetworks 19.2 Addressing 19.3 Routing.
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
1 IP Forwarding Relates to Lab 3. Covers the principles of end-to-end datagram delivery in IP networks.
IP Forwarding.
ECE 526 – Network Processing Systems Design Networking: protocols and packet format Chapter 3: D. E. Comer Fall 2008.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 The Routing Table: A Closer Look Routing Protocols and Concepts – Chapter.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Introduction to Routing and Packet Forwarding Routing Protocols and.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 The Routing Table: A Closer Look Routing Protocols and Concepts – Chapter 8.
Routing Table : closer look w.lilakiatsakun. Sample Routing Table Static Route Dynamic Routing Protocol (RIP) Directly Connected Network Administrative.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 27/03/2007.
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 7 Internet Protocol (IP) Routing.
CS4550 Computer Networks II IP : internet protocol, part 2 : packet formats, routing, routing tables, ICMP read feit chapter 6.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
Basic Routing Principles V1.2. Objectives Understand the function of router Know the basic conception in routing Know the working principle of router.
Describe basic routing concepts. Routers Interconnect Networks Router is responsible for forwarding packets from network to network, from the original.
Ch 22. Routing Direct and Indirect Delivery.
Review of IPv4 Routing Veena S, MCA Dept, PESIT Mar 09-10, 2013.
1 Lecture, November 20, 2002 Message Delivery to Processes Internet Addressing Address resolution protocol (ARP) Dynamic host reconfiguration protocol.
1 Lecture 11 Routing in Virtual Circuit Networks Internet Addressing.
CHAPTER 6: STATIC ROUTING Static Routing 2 nd semester
Delivery and Forwarding Chapter 18 COMP 3270 Computer Networks Computing Science Thompson Rivers University.
Network Address Translation (NAT)
Advanced Computer Networks
Chapter 3: Packet Switching (overview)
ROUTING.
Behrouz A. Forouzan TCP/IP Protocol Suite, 3rd Ed.
Chapter 6 Delivery & Forwarding of IP Packets
Chapter 8 The Routing Table: A Closer Look
Forwarding and Routing IP Packets
IP.
COMP 3270 Computer Networks
IP Forwarding Covers the principles of end-to-end datagram delivery in IP networks.
5 Network Layer Part II Computer Networks Tutun Juhana
(Read Forouzan Chapters 6 and 7)) IP Forwarding Procedure
IP Forwarding Relates to Lab 3.
IP Forwarding Relates to Lab 3.
Chapter 6 Delivery & Forwarding of IP Packets
Delivery, Forwarding, and Routing
Delivery and Routing of IP Packets
IP Forwarding Relates to Lab 3.
IP Forwarding Relates to Lab 3.
Network Layer I have learned from life no matter how far you go
Net 323 D: Networks Protocols
Lecture 8: The Network Layer.
Network Layer: Control/data plane, addressing, routers
Delivery, Forwarding, and Routing of IP Packets
IP Forwarding Relates to Lab 3.
CS 31006: Computer Networks – Moving From End-to-End To Per Hop
The Routing Table: A Closer Look
Networking and Network Protocols (Part2)
IP Forwarding Relates to Lab 3.
Example 9 (Continued) 1. The first mask (/26) is applied to the destination address. The result is , which does not match the corresponding network.
Figure 6.11 Configuration for Example 4
Figure 6.6 Default routing
Chapter 1 Introduction Networking Architecture Overview.
OSPF Protocol.
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Fall 2004FSU CIS 5930 Internet Protocols1 IP Routing Reading: Chapter 16

Fall 2004FSU CIS 5930 Internet Protocols2 IP routing IP PPP IEEE TCP IP PPP End system TCP IP IEEE End systemIntermediate system (Router) Network Transport Data link and physical

Fall 2004FSU CIS 5930 Internet Protocols3 Networks and routers Network 1: Token Ring (IEEE 802.5) Network 2: PPP Network 4: Fast Ethernet Network 3: Ethernet (IEEE 802.3) Network 5: Wireless LAN (IEEE ) Connection to the other networks of the Internet Router A Router B Router C

Fall 2004FSU CIS 5930 Internet Protocols4 Forwarding vs. routing Forwarding –Given a packet, determining the next hop toward destination by consulting some routing table –Per packet behavior –In kernel Routing –Collecting/exchanging topology and state information, computing shortest path to destinations, constructing routing table –Periodically or event driven –In user space (some routing daemon)

Fall 2004FSU CIS 5930 Internet Protocols5 IP addresses Class-based ones –A, B, C, D, E –Inferring network part from addresses Classless one (CIDR) –Explicitly network mask – /21 – /

Fall 2004FSU CIS 5930 Internet Protocols6 An example Connection to the other networks of the Internet Router A Router B Router C

Fall 2004FSU CIS 5930 Internet Protocols7 Routing table for Routing B DestinationNetwork maskRouterInterface eth eth eth ppp ppp0

Fall 2004FSU CIS 5930 Internet Protocols8 Some concepts Longest prefix matching –More specific entries are preferred Routing cache –Most recently used routing entries –To speed up forwarding Rule-based routing –A unified way to organize different routing tables –local (local router), main (general table), default (default routing entry) –Each with a priority

Fall 2004FSU CIS 5930 Internet Protocols9 Implementation Data structures –Routing rules –Routing tables –Routing cache Functions –Forwarding lookup functions –Management functions

Fall 2004FSU CIS 5930 Internet Protocols10 Routing rules fib_rules r_next r_clntref: 2 r_preference: 0 r_table: RT_TABLE_LOCAL r_action: RTN_UNICAST r_dst_len: 0 r_src_len: 0 r_src: 0x0 r_srcmask: 0x0 fib_rule r_dst: 0x0 r_dstmask: 0x0 r_srcmap: 0x0 r_flags: 0 r_tos: 0 r_ifindex: 0 r_ifname[...]: ““ r_dead: 0 r_next: 0x0 r_clntref: 2 r_preference: r_table: RT_TABLE_DEFAULT r_action: RTN_UNICAST fib_rule r_next r_clntref: 2 r_preference: r_table: RT_TABLE_MAIN r_action: RTN_UNICAST fib_rule...

Fall 2004FSU CIS 5930 Internet Protocols11 Functions fib_lookup(rt_key, …) –Searching for matching rules –If found Get the routing table (fib_get_table()) Looking up an entry in the table (tb_lookup()) rt_key structure –dst, src, iif, oif, tos, scope,etc

Fall 2004FSU CIS 5930 Internet Protocols12 Routing tables tb_id: 254 tb_stamp tb_lookup() tb_insert() tb_delete() tb_dump() tb_flush() tb_get_info() tb_select_default() fib_table tb_id: 1... fib_table tb_id: fib_table fib_tables[255] fz_next: 0x0 fn_zone fz_hash fz_divisor: 1 fz_hashmask: 0x0 fz_order: 0 fz_mask: 0 fz_next fn_zone fz_hash fz_divisor: 16 fz_hashmask: 0xf fz_order: 16 fz_mask: 0xffff fz_next fn_zone fz_hash fz_divisor: 16 fz_hashmask: 0xf fz_order: 24 fz_mask: 0xffffff fib_node*[1] fib_node*[16] fn_zones[33] fn_hash fn_zone_list fib_table

Fall 2004FSU CIS 5930 Internet Protocols13 Zone, node, and info fn_next fn_info fn_key fn_tos fn_type fn_scope fn_state fib_nodefib_node*[16] 0 15 fib_node next prev fib_treeref fib_clntref fib_dead fib_flags fib_prefsrc fib_info fib_priority fib_metrics[...] fib_nhs nh_dev fib_nh nh_flags nh_scope nh_oif nh_gw fib_node fn_next fn_info fib_node... next prev: 0x0 ??? fib_info... fib_info_cnt fib_info_list fib_node fib_info net_dev

Fall 2004FSU CIS 5930 Internet Protocols14 Routing cache... next dst_entry rtable net_dev chain rt_hash_bucket lock... dev... neighbour hh input() output() ops hh_cache neighbour dst_ops rt_flags gc() check() reroute() destroy() negative_advice() rt_hash_table[] rt_hash_bucket 0 16 rtable link_failure() negative_advice() entries... inet_peer rtable rt_type rt_dst rt_src rt_iif rt_gateway rt_key rt_spec_dst inet_peer

Fall 2004FSU CIS 5930 Internet Protocols15 Forwarding functions ip_route_input() –For handling incoming packet –Searching cache first, done if found –Depending on destination address Multicast: ip_route_input_mc() Otherwise: ip_route_input_slow()

Fall 2004FSU CIS 5930 Internet Protocols16 Forwarding functions ip_route_input_slow() –Sanity checking –FIB query by fib_lookup() –Depending on if local address If local: dst.input <- ip_local_delivery() Otherwise: –Making the outgoing interface is up –dst.Input <- ip_forward() –dst.Output <- ip_output()

Fall 2004FSU CIS 5930 Internet Protocols17 Forwarding functions ip_route_output() –For locally generated packets –Creating rt_key structure –Passing on to ip_route_output_key() ip_route_output_key() –Searching routing cache –If not found ip_route_output_slow()

Fall 2004FSU CIS 5930 Internet Protocols18 Forwarding functions ip_route_output_slow() –Searching routing table –Local vs. nonlocal Local: ip_local_delivery() Nonlocal: –Dst.output <- ip_ouput() –Entering the result into routing cache