The Network Layer: IP, subnets, NAT and Routing

Similar documents
IP addressing and forwarding Network layer

Network layer: Overview. Network layer functions IP Routing and forwarding

Based on Computer Networking, 4 th Edition by Kurose and Ross

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

Chapter 4 Network Layer

IP addressing. Interface: Connection between host, router and physical link. IP address: 32-bit identifier for host, router interface

CS 43: Computer Networks IP. Kevin Webb Swarthmore College November 5, 2013

Classful IP Addressing. Classless Addressing: CIDR. Routing & Forwarding: Logical View of a Router. IP Addressing: Basics

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Компјутерски Мрежи NAT & ICMP

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

8.2 The Internet Protocol

Chapter 4 Network Layer

Scaling the Network: Subnetting and Other Protocols. Networking CS 3470, Section 1

Route Discovery Protocols

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

CS335 Sample Questions for Exam #2

Introduction to TCP/IP

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ

Internet Packets. Forwarding Datagrams

Internet Control Protocols Reading: Chapter 3

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Transport and Network Layer

04 Internet Protocol (IP)

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Router and Routing Basics

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

Subnetting,Supernetting, VLSM & CIDR

RARP: Reverse Address Resolution Protocol

Technical Support Information Belkin internal use only

Chapter 3: Review of Important Networking Concepts. Magda El Zarki Dept. of CS UC Irvine

Answers to Sample Questions on Network Layer

Gary Hecht Computer Networking (IP Addressing, Subnet Masks, and Packets)

Internet Protocols Fall Lectures 7-8 Andreas Terzis

IP - The Internet Protocol

Computer Networks. Main Functions

Internet Control Message Protocol (ICMP)

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Internet Protocols. Addressing & Services. Updated:

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

IP Address Classes (Some are Obsolete) Computer Networking. Important Concepts. Subnetting Lecture 8 IP Addressing & Packets

Internet Protocol (IP) IP - Network Layer. IP Routing. Advantages of Connectionless. CSCE 515: Computer Network Programming IP routing

The Internet. Internet Technologies and Applications

DHCP, ICMP, IPv6. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley DHCP. DHCP UDP IP Eth Phy

- IPv4 Addressing and Subnetting -

Routing Protocols (RIP, OSPF, BGP)

Introduction to LAN/WAN. Network Layer (part II)

Routing with OSPF. Introduction

GregSowell.com. Mikrotik Routing

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

Classful IP Addressing (cont.)

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

Network Layer: Network Layer and IP Protocol

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

NETWORK LAYER/INTERNET PROTOCOLS

Internet Protocol Version 6 (IPv6)

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Overview Computer Networking. IP Address Classes (Some are Obsolete) Outline. Lecture 9 IP Packets. CIDR IP addressing. Forwarding examples

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh

IP Subnetting and Addressing

CS Computer Networks 1: Routing Algorithms

Inter-domain Routing. Outline. Border Gateway Protocol

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

Lecture Computer Networks

Internet and IP addressing

IP address format: Dotted decimal notation:

Future Internet Technologies

Cisco Configuring Commonly Used IP ACLs

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics

Network Layer IPv4. Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS. School of Computing, UNF

Lecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)

Internetworking and Internet-1. Global Addresses

Chapter 4. Distance Vector Routing Protocols

Internetworking. Problem: There is more than one network (heterogeneity & scale)

Administrative Distance

Network layer. Assignment 3

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

Internet Infrastructure Measurement: Challenges and Tools

Unix System Administration

Introduction to IP v6

BASIC ANALYSIS OF TCP/IP NETWORKS

: Interconnecting Cisco Networking Devices Part 1 v2.0 (ICND1)

College 5, Routing, Internet. Host A. Host B. The Network Layer: functions

ProCurve Networking IPv6 The Next Generation of Networking

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Troubleshooting Tools

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Auxiliary Protocols

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

Border Gateway Protocol (BGP)

Network Layer 4- density - A Top Down Approach

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

Layer 3 Routing User s Manual

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

20. Switched Local Area Networks

Savera Tanwir. Internet Protocol

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

101 Application Delivery Fundamentals

Transcription:

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 Ross Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams application transport on rcving side, delivers segments to transport layer layer protocols in every host, router Router examines header fields in all IP datagrams passing through it application transport 2 1

Key Network-Layer Functions forwarding: move packets from router s input to appropriate router output routing: determine route taken by packets from source to dest. Routing algorithms analogy: routing: process of planning trip from source to dest forwarding: process of getting through single interchange 3 Interplay between routing and forwarding routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 2 1 value in arriving packet s header 0111 3 2 1 4 2

Datagram s no call setup at layer routers: no state about end-to-end connections no -level concept of connection packets forwarded using destination host address packets between same source-dest pair may take different paths application transport 1. Send data 2. Receive data application transport 5 Forwarding table 4 billion possible entries Destination Address Range Link Interface 11001000 00010111 0001000000000000 through 0 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 through 1 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 through 2 11001000 00010111 00011111 11111111 6 otherwise 3 3

IP datagram format IP protocol version number header length (bytes) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to how much overhead with TCP? 20 bytes of TCP 20 bytes of IP = 40 bytes + app layer overhead 7 32 bits ver head. type of len service 16-bit identifier time to upper live layer flgs length 32 bit source IP address data (variable length, typically a TCP or UDP segment) fragment offset Internet checksum 32 bit destination IP address Options (if any) total datagram length (bytes) for fragmentation/ reassembly E.g. timestamp, record route taken, specify list of routers to visit. IP Fragmentation & Reassembly links have MTU (max.transfer size) - largest possible link-level frame. different link types, different MTUs large IP datagram divided ( fragmented ) within net one datagram becomes several datagrams reassembled only at final destination IP header bits used to identify, order related fragments reassembly fragmentation: in: one large datagram out: 3 smaller datagrams 8 4

IP Fragmentation and Reassembly Example 4000 byte datagram MTU = 1500 bytes length =4000 ID =x fragflag =0 One large datagram becomes several smaller datagrams offset =0 1480 bytes in data field offset = 1480/8 length =1500 length =1500 length =1040 ID =x ID =x ID =x fragflag =1 fragflag =1 fragflag =0 offset =0 offset =185 offset =370 9 IP Addressing: introduction IP address: 32-bit identifier for host, router interface interface: connection between host/router and link router s typically have multiple interfaces host may have multiple interfaces IP addresses associated with each interface 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 10 5

Subnets IP address: subnet part (high order bits) host part (low order bits) What s a subnet? device interfaces with same subnet part of IP address can ly reach each other without intervening router 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.2.2 223.1.1.3 223.1.3.27 LAN 223.1.3.1 223.1.3.2 consisting of 3 subnets 11 Subnets Recipe To determine the subnets, detach each interface from its host or router, creating islands of isolated s. Each isolated is called a subnet. 223.1.1.0/24 223.1.2.0/24 223.1.3.0/24 Subnet mask: /24 12 6

Subnets 223.1.1.2 How many? 223.1.1.1 223.1.1.4 223.1.1.3 223.1.9.2 223.1.7.0 223.1.9.1 223.1.8.1 223.1.8.0 223.1.7.1 223.1.2.6 223.1.3.27 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 13 IP addressing: CIDR CIDR: Classless InterDomain Routing subnet portion of address of arbitrary length address format: a.b.c.d/x, where x is # bits in subnet portion of address 14 subnet part host part 11001000 00010111 00010000 00000000 200.23.16.0/23 7

IP addresses: how to get one? Q: How does host get IP address? hard-coded by system admin in a file Wintel: control-panel->->configuration->tcp/ip- >properties UNIX: /etc/rc.config DHCP: Dynamic Host Configuration Protocol: dynamically get address from as server plug-and-play (more in next chapter) 15 IP addresses: how to get one? Q: How does get subnet part of IP addr? A: gets allocated portion of its provider ISP s address space 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 16 8

IP addressing: the last word... Q: How does an ISP get block of addresses? A: ICANN: Internet Corporation for Assigned Names and Numbers allocates addresses manages DNS assigns domain names, resolves disputes 17 NAT: Network Address Translation rest of Internet local (e.g., home ) 10.0.0/24 10.0.0.1 138.76.29.7 10.0.0.4 10.0.0.2 10.0.0.3 All datagrams leaving local have same single source NAT IP address: 138.76.29.7, different source port numbers Datagrams with source or destination in this have 10.0.0/24 address for source, destination (as usual) 18 9

NAT: Network Address Translation Motivation: local uses just one IP address as far as outside word is concerned: no need to be allocated range of addresses from ISP: - just one IP address is used for all devices can change addresses of devices in local without notifying outside world can change ISP without changing addresses of devices in local devices inside local net not explicitly addressable, visible by outside world (a security plus). 19 NAT: Network Address Translation Implementation: NAT router must: outgoing datagrams: replace (source IP address, port #) of every outgoing datagram to (NAT IP address, new port #)... remote clients/servers will respond using (NAT IP address, new port #) as destination addr. remember (in NAT translation table) every (source IP address, port #) to (NAT IP address, new port #) translation pair incoming datagrams: replace (NAT IP address, new port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NAT table 20 10

NAT: Network Address Translation 2: NAT router changes datagram source addr from 10.0.0.1, 3345 to 138.76.29.7, 5001, updates table 2 NAT translation table WAN side addr LAN side addr 138.76.29.7, 5001 10.0.0.1, 3345 S: 138.76.29.7, 5001 D: 128.119.40.186, 80 10.0.0.4 S: 10.0.0.1, 3345 D: 128.119.40.186, 80 1 1: host 10.0.0.1 sends datagram to 128.119.40, 80 10.0.0.1 10.0.0.2 138.76.29.7 S: 128.119.40.186, 80 D: 138.76.29.7, 5001 3 3: Reply arrives dest. address: 138.76.29.7, 5001 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4 4: NAT router changes datagram dest addr from 138.76.29.7, 5001 to 10.0.0.1, 3345 10.0.0.3 21 ICMP: Internet Control Message Protocol used by hosts & routers to communicate -level information error reporting: unreachable host,, port, protocol echo request/reply (used by ping) -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. unreachable 3 1 dest host unreachable 3 2 dest protocol unreachable 3 3 dest port unreachable 3 6 dest 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 22 11

Interplay between routing and forwarding routing algorithm local forwarding table header value output link 0100 0101 0111 1001 3 2 2 1 value in arriving packet s header 0111 1 3 2 23 Intra-AS Routing Also known as Interior Gateway Protocols (IGP) Most common Intra-AS routing protocols: RIP: Routing Information Protocol OSPF: Open Shortest Path First IGRP: Interior Gateway Routing Protocol (Cisco proprietary) 24 12

RIP ( Routing Information Protocol) Distance vector algorithm Included in BSD-UNIX Distribution in 1982 Distance metric: # of hops (max = 15 hops) z u A C B D v y w x destination hops u 1 v 2 w 2 x 3 y 3 z 2 25 RIP: Example w x y A D B z C Destination Network Next Router Num. of hops to dest. w A 2 y B 2 z B 7 x -- 1..... 26 Routing table in D 13

RIP: Example Dest Next hops w - - x - - z C 4.... Advertisement from A to D w x y A D B z C Destination Network Next Router Num. of hops to dest. w A 2 y B 2 z B A 7 5 x -- 1..... 27 Routing table in D RIP advertisements 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 Loops Why loops? 28 14

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) link failure info quickly propagates to entire net poison reverse used to prevent ping-pong loops (infinite distance = 16 hops) 29 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) (IP) link forwarding table forwarding table (IP) link 30 15

OSPF (Open Shortest Path First) open : publicly available 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 disseminated to entire AS (via flooding) Carried in OSPF messages directly over IP (rather than TCP or UDP 31 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. 32 16

Hierarchical OSPF 33 Hierarchical OSPF Two-level hierarchy: local area, backbone. Link-state advertisements only in 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. 34 17

Hierarchical Routing Our routing study thus far - idealization all routers identical flat not true in practice scale: with 200 million destinations: can t store all dest s in routing tables! routing table exchange would swamp links! administrative autonomy internet = of s each admin may want to control routing in its own 35 Interconnected ASes 3c 3a 3b AS3 1a 1c 1d 1b Intra-AS Routing algorithm AS1 Forwarding table Inter-AS Routing algorithm 2a 2c AS2 2b Forwarding table is configured by both intraand inter-as routing algorithm Intra-AS sets entries for internal dests Inter-AS & Intra-As sets entries for external dests 36 18

Inter-AS tasks Suppose router in AS1 receives datagram for which dest is outside of AS1 Router should forward packet towards on of the gateway routers, but which one? AS1 needs: 1. to learn which dests are reachable through AS2 and which through AS3 2. to propagate this reachability info to all routers in AS1 Job of inter-as routing! 37 3c 3a 3b AS3 1a 1c 1d 1b AS1 2a 2c 2b AS2 Why different Intra- and Inter-AS routing? 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 38 19