Router Architecture Overview. Input Port Functions. Switching Via Memory. Three types of switching fabrics. Switching Via a Bus

Similar documents
IP addressing and forwarding Network layer

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

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

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Chapter 4 Network Layer

Chapter 4 Network Layer

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 78 Computer Networks. Internet Protocol (IP) our focus. The Network Layer. Interplay between routing and forwarding

Network Layer: Network Layer and IP Protocol

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

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

Internet Protocols Fall Lectures 7-8 Andreas Terzis

Data Communications & Networks. Session 7 Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer

Internet Protocol: IP packet headers. vendredi 18 octobre 13

8.2 The Internet Protocol

IP - The Internet Protocol

Data Center Networks and Basic Switching Technologies

NETWORK LAYER/INTERNET PROTOCOLS

Internet Control Protocols Reading: Chapter 3

Future Internet Technologies

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

Master Course Computer Networks IN2097

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

Technical Support Information Belkin internal use only

Lecture Computer Networks

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

- IPv4 Addressing and Subnetting -

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

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

Subnetting,Supernetting, VLSM & CIDR

RARP: Reverse Address Resolution Protocol

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

Procedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address

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

Transport and Network Layer

Troubleshooting Tools

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

Internet Infrastructure Measurement: Challenges and Tools

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

2. IP Networks, IP Hosts and IP Ports

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

Computer Networks. Main Functions

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

Classful IP Addressing (cont.)

04 Internet Protocol (IP)

Network layer. Assignment 3

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

IP address format: Dotted decimal notation:

Internet Packets. Forwarding Datagrams

EITF25 Internet Techniques and Applications L5: Wide Area Networks (WAN) Stefan Höst

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

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

Internet Protocols Fall Outline

Introduction to TCP/IP

Computer Networks. Lecture 3: IP Protocol. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

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

IP Subnetting and Addressing

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

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

Middleboxes. Firewalls. Internet Ideal: Simple Network Model. Internet Reality. Middleboxes. Firewalls. Globally unique idenpfiers

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

Internet and IP addressing

Unix System Administration

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

Internet Ideal: Simple Network Model

What is a DoS attack?

Internet Protocols. Addressing & Services. Updated:

20. Switched Local Area Networks

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

ESSENTIALS. Understanding Ethernet Switches and Routers. April 2011 VOLUME 3 ISSUE 1 A TECHNICAL SUPPLEMENT TO CONTROL NETWORK

Exam 1 Review Questions

The Internet. Internet Technologies and Applications

ProCurve Networking IPv6 The Next Generation of Networking

Network Layer 4- density - A Top Down Approach

Answers to Sample Questions on Network Layer

Networking Test 4 Study Guide

Lecture 8. IP Fundamentals

IPv6 Advantages. Yanick Pouffary.

Internetworking and IP Address

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

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

Transport Layer Protocols

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

CHAPTER 3 STATIC ROUTING

Router and Routing Basics

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

Ethernet. Ethernet. Network Devices

Chapter 6. The Network Layer

Final for ECE374 05/06/13 Solution!!

Datacommunication. Internet Infrastructure IPv4 & IPv6

Network Layer: Address Mapping, Error Reporting, and Multicasting

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Asynchronous Transfer Mode: ATM. ATM architecture. ATM: network or link layer? ATM Adaptation Layer (AAL)

Overview of TCP/IP. TCP/IP and Internet

- Hubs vs. Switches vs. Routers -

IP Addressing Introductory material.

IP Addressing. IP Addresses. Introductory material.

LAN Switching Computer Networking. Switched Network Advantages. Hubs (more) Hubs. Bridges/Switches, , PPP. Interconnecting LANs

Transcription:

Router Architecture Overview Two key router functions: run routing algorithms/protocol (RIP, OSPF, BGP) forwarding grams from incoming to outgoing link Input Port Functions Physical layer: bit-level reception Data link layer: e.g., Ethernet see chapter 5 Decentralized switching: given gram dest., lookup output port using forwarding table in input port memory goal: complete input port processing at line speed queuing: if grams arrive faster than forwarding rate into switch fabric Network Layer 4-1 Network Layer 4-2 Three types of switching fabrics Switching Via Memory First generation routers: traditional computers with switching under direct control of CPU packet copied to system s memory speed limited by memory bandwidth (2 bus crossings per gram) Input Port Memory Output Port System Bus Network Layer 4-3 Network Layer 4-4 Switching Via a Bus Switching Via An Interconnection Network gram from input port memory to output port memory via a shared bus bus contention: switching speed limited by bus bandwidth 1 Gbps bus, Cisco 1900: sufficient speed for access and enterprise routers (not regional or backbone) overcome bus bandwidth limitations Banyan networks, other interconnection nets initially developed to connect processors in multiprocessor Advanced design: fragmenting gram into fixed cells, switch cells through the fabric. Cisco 12000: switches Gbps through the interconnection network Network Layer 4-5 Network Layer 4-6 1

Output Ports Output port queueing Buffering required when grams arrive from fabric faster than the transmission rate Scheduling discipline chooses among queued grams for transmission Network Layer 4-7 buffering when arrival rate via switch exceeds output line speed queueing (delay) and loss due to output port buffer overflow! Network Layer 4-8 Input Port Queuing Fabric slower than input ports combined -> queueing may occur at input queues Head-of-the-Line (HOL) blocking: queued gram at front of queue prevents others in queue from moving forward queueing delay and loss due to input buffer overflow! The Network layer Host, router network layer functions: Network layer Routing protocols path selection RIP, OSPF, BGP Transport layer: TCP, UDP forwarding table IP protocol addressing conventions gram format packet handling conventions ICMP protocol error reporting router signaling Link layer physical layer Network Layer 4-9 Network Layer 4-10 IP gram format IP protocol version number header (bytes) type of 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 ver time to live 32 bits head. type of len service fragment 16-bit identifier flgs upper layer checksum 32 bit source IP address 32 bit destination IP address Options (if any) (variable, typically a TCP or UDP segment) total gram (bytes) for fragmentation/ reassembly E.g. timestamp, record route taken, specify list of routers to visit. Network Layer 4-11 IP Fragmentation & Reassembly network links have MTU (max.transfer size) - largest possible link-level frame. different link types, different MTUs large IP gram divided ( fragmented ) within net one gram becomes several grams reassembled only at final destination IP header bits used to identify, order related fragments reassembly fragmentation: in: one large gram out: 3 smaller grams Network Layer 4-12 2

IP Fragmentation and Reassembly IP Addressing: introduction Example 4000 byte gram MTU = 1500 bytes 1480 bytes in field = 1480/8 =4000 =1500 =1500 =1040 One large gram becomes several smaller grams =1 =1 =185 =370 IP address: 32-bit identifier for host, router interface interface: connection between host/router and physical link router s typically have multiple interfaces host typically has one interface 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 Network Layer 4-13 Network Layer 4-14 Subnets Subnets 223.1.1.0/24 223.1.2.0/24 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 physically 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.1.3 223.1.3.1 223.1.2.2 223.1.3.27 subnet 223.1.3.2 network consisting of 3 subnets Recipe To determine the subnets, detach each interface from its host or router, creating islands of isolated networks. Each isolated network is called a subnet. 223.1.3.0/24 Subnet mask: /24 Network Layer 4-15 Network Layer 4-16 Subnets How many? 223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.9.2 223.1.7.0 IP addressing: CR CR: Classless InterDomain Routing subnet portion of address of arbitrary address format: a.b.c.d/x, where x is # bits in subnet portion of address 223.1.9.1 223.1.8.1 223.1.2.6 223.1.2.1 223.1.2.2 223.1.7.1 223.1.8.0 223.1.3.27 223.1.3.1 223.1.3.2 Network Layer 4-17 subnet host part part 11001000 00010111 00010000 00000000 200.23.16.0/23 Network Layer 4-18 3

IP addresses: how to get one? Q: How does host get IP address? hard-coded by system admin in a file Wintel: control-panel->network->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) IP addresses: how to get one? Q: How does network 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 Network Layer 4-19 Network Layer 4-20 Hierarchical addressing: route aggregation Hierarchical addressing allows efficient advertisement of routing information: Hierarchical addressing: more specific routes ISPs-R-Us has a more specific route to Organization 1 Organization 0 Organization 0 200.23.16.0/23 Organization 1 200.23.18.0/23 Organization 2 200.23.20.0/23 Organization 7. 200.23.30.0/23. Fly-By-Night-ISP ISPs-R-Us beginning 200.23.16.0/20 beginning 199.31.0.0/16 200.23.16.0/23 Organization 2 200.23.20.0/23 Organization 7. 200.23.30.0/23 Organization 1 200.23.18.0/23. Fly-By-Night-ISP ISPs-R-Us beginning 200.23.16.0/20 beginning 199.31.0.0/16 or 200.23.18.0/23 Network Layer 4-21 Network Layer 4-22 IP addressing: the last word... Q: How does an ISP get block of addresses? A: ICANN: Corporation for Assigned Names and Numbers allocates addresses manages DNS assigns domain names, resolves disputes rest of 138.76.29.7 All grams leaving local network have same single source NAT IP address: 138.76.29.7, different source port numbers 10.0.0.4 local network (e.g., home network) 10.0.0/24 Datagrams with source or destination in this network have 10.0.0/24 address for source, destination (as usual) 10.0.0.1 10.0.0.2 10.0.0.3 Network Layer 4-23 Network Layer 4-24 4

Motivation: local network uses just one IP address as far as outside world is concerned: range of addresses not needed from ISP: just one IP address for all devices can change addresses of devices in local network without notifying outside world can change ISP without changing addresses of devices in local network devices inside local net not explicitly addressable, visible by outside world (a security plus). Network Layer 4-25 Implementation: NAT router must: outgoing grams: replace (source IP address, port #) of every outgoing gram 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 grams: replace (NAT IP address, new port #) in dest fields of every incoming gram with corresponding (source IP address, port #) stored in NAT table Network Layer 4-26 2: NAT router changes gram 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 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 10.0.0.4 S: 10.0.0.1, 3345 D: 128.119.40.186, 80 1 S: 128.119.40.186, 80 D: 10.0.0.1, 3345 4 1: host 10.0.0.1 sends gram to 128.119.40.186, 80 10.0.0.1 10.0.0.2 4: NAT router 10.0.0.3 changes gram dest addr from 138.76.29.7, 5001 to 10.0.0.1, 3345 Network Layer 4-27 16-bit port-number field: 60,000 simultaneous connections with a single LAN-side address! NAT is controversial: routers should only process up to layer 3 violates end-to-end argument NAT possibility must be taken into account by app designers, eg, P2P applications address shortage should instead be solved by IPv6 Network Layer 4-28 ICMP: Control Message Protocol Traceroute and ICMP 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 grams ICMP message: type, code plus first 8 bytes of IP gram 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 Source sends series of UDP segments to dest First has TTL =1 Second has TTL=2, etc. Unlikely port number When nth gram arrives to nth router: Router discards gram 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 host unreachable packet (type 3, code 3) When source gets this ICMP, stops. Network Layer 4-29 Network Layer 4-30 5

IPv6 Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation: header format helps speed processing/forwarding header changes to facilitate QoS IPv6 gram format: fixed- 40 byte header no fragmentation allowed IPv6 Header (Cont) Priority: identify priority among grams in flow Flow Label: identify grams in same flow. (concept of flow not well defined). Next header: identify upper layer protocol for Network Layer 4-31 Network Layer 4-32 Other Changes from IPv4 Checksum: removed entirely to reduce processing time at each hop Options: allowed, but outside of header, indicated by Next Header field ICMPv6: new version of ICMP additional message types, e.g. Packet Too Big multicast group management functions Transition From IPv4 To IPv6 Not all routers can be upgraded simultaneously No flag days How will the network operate with mixed IPv4 and IPv6 routers? Tunneling: IPv6 carried as payload in IPv4 gram among IPv4 routers Network Layer 4-33 Network Layer 4-34 Tunneling Logical view: A B tunnel E F IPv6 IPv6 IPv6 IPv6 Tunneling Logical view: A B tunnel E F IPv6 IPv6 IPv6 IPv6 Physical view: A B E F Physical view: A B C D E F IPv6 IPv6 IPv4 IPv4 IPv6 IPv6 IPv6 IPv6 IPv4 IPv4 IPv6 IPv6 Src:B Dest: E Src:B Dest: E Network Layer 4-35 A-to-B: IPv6 B-to-C: IPv6 inside IPv4 B-to-C: IPv6 inside IPv4 E-to-F: IPv6 Network Layer 4-36 6