Internetworking - We are heterogeneity to our network (variable network technologies, bandwidth, MTU, latency, etc. etc.)

Similar documents
Address Translation. Map IP addresses into physical addresses destination host next hop router

Recap. Recap. Internetworking. First mile problem. Internet. End Users. Last mile problem. Direct link networks Packet switching.

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Overview 4.2: Routing

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

C13b: Routing Problem and Algorithms

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

Internet Protocol (IP)

CS 457 Networking and the Internet. Problems. Mechanisms 9/21/16. Fall 2016 Indrajit Ray

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

Routing. Outline. Algorithms Scalability

ECE 4450:427/527 - Computer Networks Spring 2017

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Instructor: Nicholas DeMarinis

Review of Internet Architecture and Protocols

Copyright 2010, Elsevier Inc. All rights Reserved

Internetworking Part 2

L10: Simple Internetworking. Hui Chen, Ph.D. Department of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Inter-networking. Problem. 3&4-Internetworking.key - September 20, LAN s are great but. We want to connect them together. ...

Lecture 8. Basic Internetworking (IP) Outline. Basic Internetworking (IP) Basic Internetworking (IP) Service Model

C14a: Internetworks and The Internet

Lecture 8. Reminder: Homework 3, Programming Project 2 due on Thursday. Questions? Tuesday, September 20 CS 475 Networks - Lecture 8 1

CS475 Networks Lecture 8 Chapter 3 Internetworking. Ethernet or Wi-Fi).

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

Topics for This Week

Chapter 5 Network Layer

Internet Control Message Protocol (ICMP)

Internetworking Part 2

Internet Protocol. Outline Introduction to Internet Protocol Header and address formats ICMP Tools CS 640 1

Routing. Routing. Overview. Overview. Routing vs. Forwarding. Why Routing

Dongsoo S. Kim Electrical and Computer Engineering Indiana U. Purdue U. Indianapolis

CS 457 Lecture 11 More IP Networking. Fall 2011

CPSC 826 Internetworking. The Network Layer: Routing & Addressing Outline. The Network Layer

Network Layer: Internet Protocol

CS 356: Computer Network Architectures. Lecture 10: IP Fragmentation, ARP, and ICMP. Xiaowei Yang

Routing in Internet. Problem. Given set of nodes, how do routers acquire info about neighbors to construct the routing tables?

The Internetworking Problem. Internetworking. A Translation-based Solution

Routing, Routers, Switching Fabrics

LS Example 5 3 C 5 A 1 D

Administrivia CSC458 Lecture 4 Bridging LANs and IP. Last Time. This Time -- Switching (a.k.a. Bridging)

Introduction to Internetworking

Vorlesung Kommunikationsnetze

ICS 351: Networking Protocols

COMPUTER NETWORKS CS CS 55201

CSE/EE 461 The Network Layer. Application Presentation Session Transport Network Data Link Physical

Lecture 9: Internetworking

CompSci 356: Computer Network Architectures. Lecture 12: Dynamic routing protocols: Link State Chapter Xiaowei Yang

IPv6 Protocols and Networks Hadassah College Spring 2018 Wireless Dr. Martin Land

EEC-684/584 Computer Networks

ARP, IP. Chong-Kwon Kim. Each station (or network interface) should be uniquely identified Use 6 byte long address

Auxiliary protocols. tasks that IP does not handle: Routing table management (RIP, OSPF, etc.). Congestion and error reporting (ICMP).

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing

CIS 551 / TCOM 401 Computer and Network Security. Spring 2006 Lecture 16

Basic Idea. Routing. Example. Routing by the Network

THE HONG KONG POLYTECHNIC UNIVERSITY. Department of Computing. This is an open-book examination.

CSEP 561 Internetworking. David Wetherall

CIS 551 / TCOM 401 Computer and Network Security

Routing by the Network

Lecture 8. Network Layer (cont d) Network Layer 1-1

Chapter 09 Network Protocols

Network Layer (4): ICMP

LECTURE 8. Mobile IP

Computer Networks ICS 651. IP Routing RIP OSPF BGP MPLS Internet Control Message Protocol IP Path MTU Discovery

Data Communication Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 34 TCP/ IP I

IPv6. IPv4 & IPv6 Header Comparison. Types of IPv6 Addresses. IPv6 Address Scope. IPv6 Header. IPv4 Header. Link-Local

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class

FiberstoreOS IP Service Configuration Guide

Network Layer: Routing

Lecture 3. The Network Layer (cont d) Network Layer 1-1

Internetworking. different kinds of network technologies that can be interconnected by routers and other networking devices to create an internetwork

CIS Test 1- Practice - Fall 2011

Introduction to IPv6. IPv6 addresses

History Page. Barracuda NextGen Firewall F

FINAL EXAM - SLOT 2 TCP/IP NETWORKING Duration: 90 min. With Solutions

CompSci 356: Computer Network Architectures. Lecture 8: Spanning Tree Algorithm and Basic Internetworking Ch & 3.2. Xiaowei Yang

Telecom Systems Chae Y. Lee. Contents. Overview. Issues. Addressing ARP. Adapting Datagram Size Notes

Module 7 Internet And Internet Protocol Suite

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing

Network layer: Overview. Network Layer Functions

CS 348: Computer Networks. - Routing (OSPF); 18 th Sept Instructor: Sridhar Iyer IIT Bombay

IP Protocols. ALTTC/Oct

Operation Manual IPv4 Routing H3C S3610&S5510 Series Ethernet Switches. Table of Contents

IP/MAC Address Translation

Network Layer Protocols

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on

Lecture 11: Fragmentation & Addressing. CSE 123: Computer Networks Stefan Savage

internet technologies and standards

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

CompSci 356: Computer Network Architectures. Lecture 13: Dynamic routing protocols: Link State Chapter 3.3.3, Xiaowei Yang

Networking: Network layer

ICS 451: Today's plan

CSE 4215/5431: Mobile Communications Winter Suprakash Datta

ECE 428 Internet Protocols (Network Layer: Layer 3)

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

TSIN02 - Internetworking

Chapter 12 Network Protocols

Outline. SC/CSE 3213 Winter Sebastian Magierowski York University. ICMP ARP DHCP NAT (not a control protocol) L9: Control Protocols

Chapter 7 Routing Protocols

Telecommunication Protocols Laboratory Course. Lecture 3

Transcription:

Internetworking - We are heterogeneity to our network (variable network technologies, bandwidth, MTU, latency, etc. etc.) Goal is to use this opportunity (and not to find the lowest common denominator performance) page 1

Issue 2: Fragmentation and Reassembly Cannot expect all networks to deal with the same packet size, can choose the absolute smallest - but that would mean poor performance for all networks Each network has some MTU (maximum transmission unit) Design decisions fragment when necessary (MTU < Datagram) re-fragmentation is possible fragments are self-contained datagrams delay reassembly until destination host do not recover from lost fragments Suppose we send a 64k packet over ether (1500 byte MTU), 1 packet = 44 fragments. Losing 1 of 44 fragments = lose the entire packet try to avoid fragmentation at source host page 2

Example Ident = x Start of header 0 Rest of header Of f set = 0 (a) 1400 data by tes H1 R1 R2 R3 H8 R1 R2 R3 Ident = x Start of header 1 Rest of header Of f set = 0 ETH IP (1400) FDDI IP (1400) PPP IP (512) ETH IP (512) (b) 512 data by tes PPP IP (512) PPP IP (376) ETH IP (512) ETH IP (376) Ident = x Start of header 1 Of f set = 64 Rest of header 512 data by tes Start of header Ident = x 0 Rest of header Of f set = 128 376 data by tes page 3

Gateway13 example Ifconfig eth0 in gateway13.cse.nd.edu Link encap:ethernet HWaddr 00:07:E9:3C:8F:80 inet addr:129.74.154.198 Bcast:129.74.155.255 Mask:255.255.252.0 inet6 addr: fe80::207:e9ff:fe3c:8f80/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1 page 4

Issue 3: Datagram Forwarding Strategy every datagram contains destination s address if connected to destination network, then forward to host if not directly connected, then forward to some router forwarding table maps network number into next hop each host has a default router each router maintains a forwarding table Example (R2) Network number 1 2 3 4 Next R3 R1 Interface 1 Interface 0 page 5

Address Translation Map IP addresses into physical addresses destination host next hop router Techniques encode physical address in host part of IP address table-based Mechanism to map IP to physical address: ARP table of IP to physical address bindings broadcast request if IP address not in table target machine responds with its physical address table entries are discarded if not refreshed page 6

ARP Details Request Format HardwareType: type of physical network (e.g., Ethernet) ProtocolType: type of higher layer protocol (e.g., IP) HLEN & PLEN: length of physical and protocol addresses Operation: request or response Source/Target-Physical/Protocol addresses Notes table entries timeout in about 10 minutes update table with source when you are the target update table if already have an entry do not refresh table entries upon reference page 7

ARP Packet Format 0 8 16 31 Hardware type = 1 ProtocolType = 0x0800 HLen = 48 PLen = 32 Operation SourceHardwareAddr (bytes 0 3) SourceHardwareAddr (bytes 4 5) SourceProtocolAddr (bytes 2 3) SourceProtocolAddr (bytes 0 1) TargetHardwareAddr (bytes 0 1) TargetHardwareAddr (bytes 2 5) TargetProtocolAddr (bytes 0 3) page 8

Sample arp table in darwin.cc.nd.edu arp -a Net to Media Table: IPv4 Device IP Address Mask Flags Phys Addr - - - hme0 eafs-e06.gw.nd.edu 255.255.255.255 00:d0:c0:d3:aa:40 hme0 bind.nd.edu 255.255.255.255 08:00:20:8a:5f:cf hme0 honcho-jr.cc.nd.edu 255.255.255.255 00:b0:d0:82:83:7f hme0 mail-vip.cc.nd.edu 255.255.255.255 02:e0:52:0c:56:c4 hme0 john.helios.nd.edu 255.255.255.255 08:00:20:85:db:c4 hme0 casper.helios.nd.edu 255.255.255.255 08:00:20:b1:f8:e1 hme0 pinky.helios.nd.edu 255.255.255.255 08:00:20:a9:88:30 page 9

ARP problems ARP trusts any response - no authentication method Works great at home, how about Notre Dame Replies which do not correspond to requests are allowed to update cache in many instances New information must supercede old info page 10

Internet Control Message Protocol (ICMP) Mechanisms to notify of errors (not mandatory) Echo (ping) Redirect (from router to source host) Destination unreachable (protocol, port, or host) TTL exceeded (so datagrams don t cycle forever) Checksum failed Reassembly failed Cannot fragment page 11

Next problem: Routing Routing is similar to bridging in functionality. We want to use multiple paths instead of removing redundancy (spanning tree alrogithm) page 12

Overview 4.2: Routing 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 C 4 B 3 9 A 1 D 1 1 E 6 2 F Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load Distributed algorithm: what info. should be exchanged? page 13

Two kinds of routing algorithms Distance vector: Each router exchanges information with other routers and makes independent decisions Link state: All routers exchange information, learn the state of the world and find the most optimal route (which is uniform across all routers) page 14

Distance Vector (e.g. RIP v1) Each node maintains a set of triples (Destination, Cost, NextHop) Directly connected neighbors exchange updates 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 page 15

Example Destination Cost NextHop A 1 A B C 1 C A C D D 2 C E 2 A F 2 A G 3 A E F G page 16

Routing Loops Example 1 F detects that link to G has failed F sets distance to G to infinity and sends update to 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: count to infinity problem 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 page 17

Loop-Breaking Heuristics Set infinity to 16 Split horizon Split horizon with poison reverse page 18

Link State (e.g. OSPF) Strategy send to all nodes (not just neighbors) information about directly connected links (not entire routing table) 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 page 19

Link State (cont) 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 start SEQNO at 0 when reboot decrement TTL of each stored LSP discard when TTL=0 page 20

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 )) page 21

Route cost metrics Original ARPANET metric measures number of packets queued 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 page 22

Mobility What if nodes move You need a new IP address when you move Communications (sockets) have to be reestablished One solution is to use Dynamic DNS with DHCP Used at ND When a host moves, DHCP gives it a new address and Dynamic DNS updates the DNS entry with the new DHCP address For example, my laptop is called kural.cse.nd.edu, but may map into different IP addresses depending on where I am Works for new connections, old connections break Can only work within the same domain (because DNS servers are only administered for the domain) page 23

Mobile IP Mobile host registers with Foreign Agent. FA informs Home Agent. HA tunnels packets to FA. Communications through the Home address. Sending host Home agent (10.0.0.3) Internetwork Foreign agent (12.0.0.6) Home network (network 10) Mobile host (10.0.0.9) page 24