Telecommunication Protocols Laboratory Course. Lecture 3

Similar documents
Chapter 5 (Week 9) The Network Layer ANDREW S. TANENBAUM COMPUTER NETWORKS FOURTH EDITION PP BLM431 Computer Networks Dr.

EEC-684/584 Computer Networks

5.2 Routing Algorithms

II. Principles of Computer Communications Network and Transport Layer

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1

ECE 435 Network Engineering Lecture 11

Integrated Services. Integrated Services. RSVP Resource reservation Protocol. Expedited Forwarding. Assured Forwarding.

Computer Networks. Routing

EEC-484/584 Computer Networks

UNIT 2 ROUTING ALGORITHMS

Routing. 4. Mar INF-3190: Switching and Routing

ECE 435 Network Engineering Lecture 11

The Internet Protocol

EEC-682/782 Computer Networks I

THE INTERNET PROTOCOL INTERFACES

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL

Network Layer. For this purpose the network layer should:

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

IP: Addressing, ARP, Routing

Internet Protocols (chapter 18)

Module 7 Internet And Internet Protocol Suite

Routing Algorithms McGraw-Hill The McGraw-Hill Companies, Inc., 2001

The Interconnection Structure of. The Internet. EECC694 - Shaaban

Question 7: What are Asynchronous links?

Layer 3: Network Layer. 9. Mar INF-3190: Switching and Routing

Last time. Wireless link-layer. Introduction. Characteristics of wireless links wireless LANs networking. Cellular Internet access

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

ICS 451: Today's plan

CS 356: Computer Network Architectures. Lecture 14: Switching hardware, IP auxiliary functions, and midterm review. [PD] chapter 3.4.1, 3.2.

CEN445 Network Protocols and Algorithms. Chapter 2. Routing Algorithms. Dr. Ridha Ouni

THE INTERNET PROTOCOL/1

Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

Jaringan Komputer. Network Layer. Network Layer. Network Layer. Network Layer Design Issues. Store-and-Forward Packet Switching

Routing in packet-switching networks

UNIT III. 3.1 Circuit switching vs. packet switching / Packet switched networks. Figure 3.1.1: Switching Techniques

Introduction to Internetworking

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

Data Communication & Networks G Session 7 - Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer

Chapter 6. The Network Layer

ECE 333: Introduction to Communication Networks Fall 2001

We will discuss about three different static routing algorithms 1. Shortest Path Routing 2. Flooding 3. Flow Based Routing

Chapter 5. The Network Layer. Network Layer Design Isues. Store-and-Forward Packet Switching 10/7/2010. Implementation of Connectionless Service

Chapter 5. The Network Layer

Lecture (03) Internet Protocol tcp/ip> OSI>

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

Chapter 5. The Network Layer. CEN Chapter 5 1

This Lecture. BUS Computer Facilities Network Management. Switching Network. Simple Switching Network

Distributed Queue Dual Bus

Communication Networks ( ) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner

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

Internetworking Part 1

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

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

IP Protocols. ALTTC/Oct

Network Layer. The Network Layer. Contents Connection-Oriented and Connectionless Service. Recall:

Network Layer. Recall: The network layer is responsible for the routing of packets The network layer is responsible for congestion control

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

6 Chapter 6. Figure 1 Required Unique Addresses

Router Architecture Overview

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

ICMP, ARP, RARP, IGMP

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

Chapter 5 (Week 10) The Network Layer (CONTINUATION) ANDREW S. TANENBAUM COMPUTER NETWORKS FOURTH EDITION PP

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

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

To make a difference between logical address (IP address), which is used at the network layer, and physical address (MAC address),which is used at

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

Department of Computer and IT Engineering University of Kurdistan. Network Layer. By: Dr. Alireza Abdollahpouri

Internetworking/Internetteknik, Examination 2G1305 Date: August 18 th 2004 at 9:00 13:00 SOLUTIONS

4. Basic IP Support Protocols

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

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies

On Distributed Communications, Rand Report RM-3420-PR, Paul Baran, August 1964

The Network Layer. Network Layer Design Objectives

Chapter 4 Network Layer: The Data Plane

Computer Science 425 Distributed Systems CS 425 / ECE 428. Fall 2013

The Internet. 9.1 Introduction. The Internet is a global network that supports a variety of interpersonal and interactive multimedia applications.

EPL606. Internetworking. Part 2a. 1Network Layer

ET4254 Communications and Networking 1

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Topics for This Week

internet technologies and standards

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

Lecture on Computer Networks

Course 6. Internetworking Routing 1/33

OSI Network Layer. Network Fundamentals Chapter 5. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

Internetworking Terms. Internet Structure. Internet Structure. Chapter 15&16 Internetworking. Internetwork Structure & Terms

The Internet. The Internet is an interconnected collection of netw orks.

Chapter 6. The Network Layer

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview

CS 457 Lecture 11 More IP Networking. Fall 2011

Principles behind data link layer services

ECE 158A: Lecture 7. Fall 2015

EEC-484/584 Computer Networks

Chapter 4: Network Layer

Cisco Cisco Certified Network Associate (CCNA)

IP Addressing and Subnetting

William Stallings Data and Computer Communications. Chapter 10 Packet Switching

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

TSIN02 - Internetworking

Transcription:

Telecommunication Protocols Laboratory Course Lecture 3

Course map Last time: we discussed protocols of the Medium Access Control (MAC) sub-layer Deal with broadcast channels and their (multi-party) protocols Key issue: how to determine who gets to use the channel when there is competition for it MAC is a sub-layer of DLL Today: we go one layer up, to NETWORK LAYER (NL) We study routing algorithms and NL protocols Focus on NL in Internet April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 2

Network layer Role: to get packets from source all the way to the destination This may require many hops at intermediate routers on the way Lowest layer dealing with end-to-end transmission DLL was moving frames from one end of the wire to the other To implement its role, NL has to Know the topology of the communication subnet (all routers) Choose appropriate paths through it, perhaps to avoid congestion Dealing with possibly different networks for source and destination April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 3

Network Layer Design Issues Services provided to the transport layer Internal design of the subnet April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 4

Context in which NL protocols operate Carrier s equipment routers connected by transmission lines Customer s equipment hosts and possibly also routers Leased lines from host/customer router to carrier s equipment

Store-and-Forward Packet Switching Mechanism Equipment used as follows A host with a packet sends it to its nearest router Packet stored until it has fully arrived, so checksum can be verified Then forwarded to the next router along the path until destination host is reached There it is delivered Forwarding done based on some local information kept in routing tables Routing algorithms: manage the tables and make routing decisions April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 6

Services provided to TL NL services designed with following goals Services should be independent of the router technology TL should be shielded from the number, type, topology of present routers The network address made available to TL should use a uniform numbering plan Lots of freedom in writing detailed specifications of the services to be offered to TL battle between connectionless and connection-oriented services April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 7

Connectionless services Advocated by Internet community Experience: 30 years with a real, working computer network Routers job is only to move packets around Subnet inherently unreliable Hosts should accept this and do error control and flow control Network service should be connectionless, having primitives SEND PACKET and RECEIVE PACKET No packet ordering or flow control since hosts do that Each packet must carry the full destination address April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 8

Connectionless service implementation Packets injected into subnet individually and routed independently of the others No advance setup needed Packets datagrams (analogy with telegrams) Subnet datagram subnet April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 9

Implementation of Connectionless Service Routing within a diagram subnet. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 10

Connection-oriented services Advocated by telephone companies Experience: 100 years success with world-wide telephone systems Subnet should provide a reliable, connection-oriented service Quality of service is the dominant factor Hard to achieve w/o connections in subnet, especially for real-time traffic such as voice and video April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 11

Connection-oriented service implementation Path from source S to destination D has to be established before data packets are sent Path virtual circuit (VC) (analogy with physical circuits set up in telephone systems) Subnet virtual circuit subnet Idea: avoid choosing a new route for each packet When connection established Route from S to D chosen as part of the communication setup Route stored in router tables and used for all traffic flowing in connection Each packet carries an identifier telling which VC it belongs to When connection released, VC terminated

Implementation of Connection-Oriented Service Routing within a virtual-circuit subnet.

Virtual-Circuit and Datagram Subnets 5-4

Routing algorithm Chooses the routes and data structures to use for routing packets from S to D Differently expressed: that part of NL software responsible for deciding which output line an incoming packet should be transmitted on Routing and forwarding processes inside router FWD handles each packet as it arrives, looking up the outgoing line to use for it in routing tables ROUT responsible for filling in and updating the routing tables April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 15

Desired properties of the routing algorithms Correctness Simplicity Stability Robustness Fairness Optimality April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 16

Conflict between fairness and optimality April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 17

Types of algorithms Non-adaptive (static) Do not consider measurements/estimates of current traffic or topology in their routing decisions The route from I to J ( I, J) computed in advance, off-line and downloaded when network booted Adaptive (dynamic) Routing decisions change to reflect changes in topology and traffic These algorithms differ in Where they get their information (locally, from adjacent/all routers) When they change routes (every t sec, when load/topology changes) What metric is used for optimization (distance, hops nr, transit time) April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 18

Optimality principle General statement about optimal routes without regard to network topology or traffic If router J is on the optimal path from I to K (routers both), then the optimal path from J to K falls along same route The set of optimal routes from all sources to a given destination form a tree routed at destination: SINK Tree Goal of all routing algorithms: find and use sink tree The principle and the sink tree benchmark against which other routing algorithms can be measured April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 19

The Optimality Principle (a) A subnet. (b) A sink tree for router B. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 20

Routing Algorithms Shortest Path Routing Flooding Distance Vector Routing Link State Routing Hierarchical Routing Broadcast Routing April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 21

Shortest Path Routing Non-adaptive algorithm Idea: build a graph of the subnet, so that: router node, communication line arc Algorithm finds shortest path between S and D in the graph, with respect to Nr of hops Geographic distance Mean queuing and transmission delay Labels could also be computed as function of the above April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 22

Shortest Path Routing example The first 5 steps used in computing the shortest path from A to D. The arrows indicate the working node.

Flooding algorithm Non-adaptive algorithm Every incoming packet is sent out on every outgoing line except the one it arrived on Vast nr of duplicate packets Some damping measures needed April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 24

Damping measures in flooding Hop counter in packet header, decremented at every hop, packet discarded when counter=0 Counter initially has the length of path from S to D, or diameter of subnet Sequence number in packet header given by router S Each router needs a list per router to know which numbers from that source already passed If packet has the number on the list, then it is not flooded further Simplification: only a counter k kept and all numbers < k are not flooded Selective flooding: only packets going right are flooded April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 25

Flooding usage Military applications Large nr of routers may be blown to bits at any moment Distributed database applications All tables need to get updates concurrently Wireless networks Broadcast properties of radio range is flooding As a metric against which other routing algorithms can be measured Shortest path as every possible path is chosen in parallel => no shorter delay possible April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 26

Distance Vector Routing Adaptive algorithm Original ARPANET routing algorithm, used also in Internet as RIP Each router maintains a table (vector) giving The best known distance to each destination Which line to use to get there Table updated by exchanging information with neighbours April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 27

Example for calculating the table Assume the metric is delay Assume delay to neighbors known Can be found out with special ECHO packets Once every T msec each router Sends to all neighbors a list of its estimated delays to each destination Receives similar list from neighbors Assume neighbor X has x i delay to get to router i If our router has m delay to get to X => m+x i to get to i It compares all calculations and registers the best one in its new routing table Note: new table is not based on old table April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 28

Distance Vector Routing example (a) A subnet. (b) Input from A, I, H, K, and the new routing table for J.

Efficiency of distance vector routing It converges to the correct answer but slowly, especially for bad news Known as count-to-infinity problem Attempts to solve it do not work well in general Core of the problem When X tells Y it has a path somewhere, Y has no idea if it itself (Y) is on that path April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 30

The count-to-infinity problem April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 31

Link State Routing In 79 it replaced distance vector routing in ARPANET Variants used widely today Each router must do the following Discover its neighbors, learn their network address. 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. All delays and the complete topology are experimentally measured and distributed to every router April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 32

Learning about the Neighbors When a router is booted It sends a special HELLO packet on each p2p line Router on the other end replies with its address Addresses must be unique April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 33

Measuring Line Cost Special ECHO packet sent; the other side requested to reply immediately The round trip is measured and split to 2 => reliable estimate If test conducted several times, average is used This method implies delays are symmetric April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 34

Building Link State Packets Each packet has Identity of sender Sequential nr Age List of neighbors, with address and delay Building packets is easy When to build them? Periodically When some significant event occurs (line/neighbor goes down/ comes back or changes properties significantly) April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 35

Example of Link State Packets (a) A subnet. (b) The link state packets for this subnet. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 36

Distributing the Link State Packets Trickiest part of algorithm distributing packets reliably Flooding used to distribute each link state packet Sequence numbers used, increased for each new packet sent Routers keep lists of all (source-router, seq-nr) seen: when a packet comes in, it is checked against the lists If new: flooded If old: discarded (already seen or not seen but obsolete) Some problems: when seq. nr. wrap around, when router crashes, when seq. nr. corrupted April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 37

Distributing the Link State Packets Age number used (more) Decrement it once per sec; when age=0, packet discarded Decremented also by routers during initial flooding process Refinements: holding area (h-area) When packet P arrives at router to be flooded it is stored shortly in h-area If another packet P comes from same source before P is transmitted, compare seq-nr: if equal then duplicate discarded, if distinct then older one thrown out All packets acknowledged When line is idle, h-area scanned to select packet to send April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 38

Computing the new routes Router has now a full set of link state packets so it can construct the subnet graph Each link represented twice, once for each direction These two values can be averaged or used separately Dijkstra s algorithm used (run locally) to construct shortest path to all possible destinations Results of algorithm installed in routing tables and normal operation resumed April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 39

Hierarchical Routing Networks grow in size Router routing tables grow proportionally Memory consumed by increasing tables More CPU time needed to scan them More bandwidth needed for sending status reports about them It may not be feasible for every router to have an entry for each other router in large networks Routing should be done hierarchically, like in telephone networks April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 40

Hierarchical Routing (more) Routers divided into regions Each router knows all details about routing packets to destinations within its own region Many levels of hierarchy might be needed Saving in table space might mean some longer paths How many levels? N routers, lnn levels, with elnn entries/router ( 79) This result also means increase in path length are ok April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 41

Hierarchical Routing example April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 42

Broadcast Routing Some applications have hosts needing to send to many/all other hosts Service distributing weather reports/stock market updates Live radio programs Broadcasting to all machines is used Those interested read the data Many methods April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 43

Methods of broadcast routing Point-to-point (p2p): source sends a distinct packet to all destinations No special features required from subnet Bandwidth wasteful Source has to keep complete list of all destinations Least desirable Flooding Ill-suited for p2p communications Might be considered if other methods do not work Too many packets, too much bandwidth April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 44

Methods of broadcast routing (more) Multi-destination routing Each packet has list of destinations/bitmap indicating desired destinations At a router, destinations checked to see which out-lines needed Router generates new copy of packet for each out-line, including in packet only those destinations that use that out-line => destinations partitioned among out-lines After a sufficient nr of hops, each packet contains only one destination, so can be treated as a normal packet Spanning tree (ST) subset of subnet with all routers and no loop Ifeach router knows which of its lines belong to ST, then it can copy an incoming packet to all ST lines except the one it arrived on Excellent use of bandwidth, optimal approach Each router has to know of some spanning tree April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 45

Methods of broadcast routing 3 Reverse path forwarding Attempt to approximate behaviour of previous one, with routers knowing nothing of ST When packet arrives at router, router checks to see if it s on the line normally used to send packets to that source If so, excellent chance that packet followed that route and hence is the first copy to arrive => router forwards copies to all out-lines except the one it arrived on If not, packet discarded as a likely duplicate Reasonably efficient and easy to implement April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 46

The Network Layer in the Internet The IP Protocol IP Addresses Internet Control Protocols April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 47

Internet: Collection of Subnetworks

Communication in Internet TL takes data streams and breaks them up into datagrams Datagrams transmitted through Internet, possibly fragmented When all pieces get to destination, they are reassembled by NL into original datagram Datagram handled to TL which inserts it into the input stream of receiving process April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 49

IP (Internet Protocol) Glue that holds Internet together Designed from the beginning with internetworking in mind Provides a best-efforts way to transport datagrams from S to D, without regard whether these machines are on the same network or there are other networks in between April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 50

The IP Protocol IP datagram: text part and header part. Above, the IPv4 header. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 51

IPv4 header options Intended as escape for subsequent versions of protocol Have variable length, each begins with a 1-byte code identifying the option Some options are followed by another byte telling the length April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 52

IP Addresses 32-bit addresses, each host/router has one Encode network nr and host nr Used in source and destination fields of IP packets IP address does not refer to a host but to a network interface If a host is on 2 networks, should have 2 IPs April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 53

Classes for IP Addresses April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 54

Special IP Addresses Special IP addresses. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 55

Subnets Problem A single class A/B/C address refers to one network, not a collection of LANs; LANs cannot physically extend too much Solution Network split into several parts (subnets) for internal use so that they still act as one happy network to the outside world How to know where (which subnet) to send an incoming packet? (Table with 65536 entries in main router mapping router to host) Addressing convention April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 56

Subnets illustration A campus network consisting of LANs for various departments. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 57

Example subnet Class B addresses: 14 bits network nr, 16 bits host nr For a subnet: 14 bits network nr 6 bits subnet nr 10 bits host nr 64 subnets, each with max 1022 hosts This split can be later changed if not ok Main router needs subnet mask to indicate the split: o 255.255.252.0/22 (22 nr of bits of network + subnet part) April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 58

The subnet mask example A class B network sub-netted into 64 subnets. April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 59

Internet Control Protocols IP used for data transfer Several control protocols exist ICMP, ARP, RARP, BOOTP, DHCP ICMP (Internet Control Message Protocol) Operation of Internet monitored closely by routers When something unexpected occurs, event is reported by ICMP Also used to test the Internet Types of ICMP messages are defined April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 60

The principal ICMP message types 5-61 April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 61

ARP Address resolution protocol Problem: IP addresses cannot be used to send packets as DLL hardware does not recognize them Solution: some kind of mapping is needed In ARP Broadcast packet asking who owns IP x? All machines get the packet, check their IP and one host replies => Sender builds Ethernet frame addressed to that host and puts IP packet in payload; receiver does the opposite April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 62

Optimization of ARP Cache Machines that had run ARP, cache the result in case it s needed again Sender can avoid another broadcast from receiver if it sends IP-to-Ethernet mapping in ARP packet All machines receiving the broadcast can cache it Boot Every machine broadcasts mapping when booting and everyone caches it Time out Entries in ARP cache should time out in few minutes, to allow for changes Proxy ARP One router can be configured to respond to ARP requests for local networks OR: sending hosts recognize they are sending to a remote host and send all such traffic to default Ethernet address handling all remote traffic April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 63

RARP Reverse ARP ARP: IP Ethernet; RARP: Ethernet IP Problem occurs when a diskless workstation WS is booted WS gets the binary image of its OS from remote file server Host asks what s my IP? (with a broadcast message: 11 1) RARP replies upon looking up the Ethernet address in its configuration files Better than embedding IP in binary image, as one image is thus used for all stations Disadvantage host broadcasts locally, so its message cannot be forwarded by routers => RARP server needed on each network April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 64

BOOTP Bootstrap protocol Gets around RARP disadvantage by using UDP messages, forwarded to routers Provides WS with additional information IP address of file server holding the memory image IP address of default router Subnet mask Problem Requires manual configuration of tables mapping IP Ethernet April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 65

DHCP Dynamic host configuration protocol Eliminates BOOTP s problem by allowing both manual and automatic IP addresses assignment Extension of BOOTP; largely replaces BOOTP and RARP DHCP server assigns IP addresses to hosts asking for one DHCP server may be on remote network and is not reachable by broadcasting DHCP relay agent needed on each LAN Newly booted machines broadcast DHCP DISCOVER packet DHCP relay agent sends packet as unicast to DHCP server Leasing: IP addresses allocated for a finite time April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 66

Operation of DHCP April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 67

NL simulation You may choose either to simulate a routing algorithm or a NL protocol. Choose from: Routing algorithms Shortest Path Routing Flooding Distance Vector Routing Link State Routing Hierarchical Routing Broadcast Routing NL protocols IP ICMP ARP RARP BOOTP DHCP April 5, 2006 http://www.abo.fi/~lpetre/teleprot06/ 68