Introduc)on to Computer Networks and Internet. Architecture et Réseaux h:p:// Dino Lopez Yves Roudier Bénoit Miramond

Similar documents
EITF25 Internet- - Techniques and Applica8ons Stefan Höst. L6 Networking and IP

CSE/ISE 311: Systems Administra5on Basic Network Organiza5on

Network Administra0on

Basic elements of IP and its interac2on with Ethernet

INTERNET ARCHITECTURE & PROTOCOLS

Introduc)on to IPv6. Administra)on de Réseaux Dino Lopez h<p://

Chapter 1. Computer Networks and the Internet

Internet Protocol Addressing and Routing. Redes TCP/IP

Announcements. TAs office hours: Mohamed Grissa: Mohamed Alkalbani:

Network core and metrics

Module 2 Overview of Computer Networks

Module 2 Overview of. Computer Networks

Vorlesung Kommunikationsnetze

CS 3516: Computer Networks

Computer Networks and the Internet. CMPS 4750/6750: Computer Networks

Review. Error Detection: CRC Multiple access protocols. LAN addresses and ARP Ethernet. Slotted ALOHA CSMA/CD

Missing pieces + Putting the pieces together

Lecture 2: Internet Structure

Basic Internetworking (IP)

Lecture 11: Networks & Networking

Advanced Linux System Administra3on

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

Since enrollment is very small this semester, we have flexibilty. Traditional lecture Assigned reading, and then student(s) present during class time

CSC 401 Data and Computer Communications Networks

IP Basics Unix/IP Preparation Course June 29, 2010 Pago Pago, American Samoa

Network Protocols - Revision

CSE3213 Computer Network I

Announcements. CS 5565 Network Architecture and Protocols. Outline for today. The Internet: nuts and bolts view. The Internet: nuts and bolts view

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

Chapter Motivation For Internetworking

Network Layer PREPARED BY AHMED ABDEL-RAOUF

Donato Ba*aglino Lorenzo Bracciale

Internet Architecture & Performance. What s the Internet: nuts and bolts view

Lecture 16: Network Layer Overview, Internet Protocol

TCP/IP Network Essentials

Outline. Addressing on the network layer ICMP IPv6 Addressing on the link layer Virtual circuits

EE-311 Data Communication & Networks

LAN Interconnection and Other Link Layer Protocols

IP Addressing and Subnetting

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.

1-1. Switching Networks (Fall 2010) EE 586 Communication and. October 25, Lecture 24

JAMES F. KUROSE AND KEITH W. ROSS

Networking for Data Acquisition Systems. Fabrice Le Goff - 14/02/ ISOTDAQ

Lecture 2 Communication services The Trasport Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

internet technologies and standards

Computer Networking. Introduction. Quintin jean-noël Grenoble university

Network Access Transla0on - NAT

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

ECPE / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

cs144 Midterm Review Fall 2010

Introduction to computer networking

Lecture 14: DHCP and NAT

FINAL EXAM REVIEW PLEASE NOTE THE MATERIAL FROM LECTURE #16 at the end. Exam 1 Review Material

ECE 650 Systems Programming & Engineering. Spring 2018

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 28 IP Version 4

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

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

CSCE 463/612 Networks and Distributed Processing Spring 2018

TCP/IP and the OSI Model

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11

Introduction to Information Science and Technology 2017 Networking I. Sören Schwertfeger 师泽仁

OSI and TCP/IP Models

end systems, access networks, links 1.3 network core

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

06/02/ Local & Metropolitan Area Networks 0. INTRODUCTION. 1. History and Future of TCP/IP ACOE322

Chapter 7. Local Area Network Communications Protocols

The Internet Protocol (IP)

Chapter 4. Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, sl April 2009.

Computer Networks & Security 2016/2017

Chapter 18. Introduction to Network Layer

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Copyleft 2005, Binnur Kurt. Objectives

internet technologies and standards

Lecture 1: Introduction

Web Protocols and Practice

CSC 401 Data and Computer Communications Networks

ROYAL INSTITUTE OF INFORMATION & MANAGEMENT

CS 204: Advanced Computer Networks

Network Layer/IP Protocols

Internet Protocol (IP)

IPv4 addressing, NAT. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

Network Superhighway CSCD 330. Network Programming Winter Lecture 13 Network Layer. Reading: Chapter 4

Overview on the Internet the current and future telecommunication network

Defining Networks with the OSI Model. Module 2

Network layer overview

The Network Layer Forwarding Tables and Switching Fabric

ECE 158A: Lecture 7. Fall 2015

Network Layer: Router Architecture, IP Addressing

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

University of Southern California EE450: Introduction to Computer Networks

CSCD 330 Network Programming

ETSF10 Internet Protocols Network Layer Protocols

COMP211 Chapter 4 Network Layer: The Data Plane

TCP/IP. Model and Layers Bits and Number Bases IPv4 Addressing Subnetting Classless Interdomain Routing IPv6

Network Security. Introduction to networks. Radboud University, The Netherlands. Autumn 2015

Chapter I: Introduction

CCM 4300 Lecture 5 Computer Networks, Wireless and Mobile Communications. Dr Shahedur Rahman. Room: T115

Exercise 1 INTERNET. x.x.x.254. net /24. net /24. x.x.x.33. x.x.x.254. x.x.x.52. x.x.x.254. x.x.x.254. x.x.x.

Transcription:

Introduc)on to Computer Networks and Internet Architecture et Réseaux h:p://www.i3s.unice.fr/~lopezpac/ Dino Lopez Yves Roudier Bénoit Miramond

Foreword The material presented in this course is a compila)on of several Internet howto s and websites, command manual pages, API documenta)ons, IETF RFCs, and books. Specially, the following slides are directly inspired from the official slides and book Computer Networking: A Top Down Approach. Chapter 1. 6 th edi)on. Jim Kurose, Keith Ross. Pearson. Ø Exercises are also inspired from this book In this course should allow you to understand the general architecture and components of a network, as well as to put in prac)ce during the labs sessions your knowledges 2

Organisa)on générale du cours Ce cours est divisé 2 par)es Ø 1 ère par)e - Dino Lopez & Pr. Yves Roudier Introduc)on à l Architecture Réseau et Programma)on Sockets Ø 2 ème par)e Benoît Miramond Architectures de programmes Pour la première par)e Ø 2 encadrants des TDs pour 4 groupes Ø Un encadrant passe 1h30 par groupe Ø Les groupes sans encadrants doivent rester dans leur salle de TD et commencer ou con)nuer le TD de manière autonome. 3

Interac)on Applica)on Distribué Infrastructure réseau Architecture des App. Dist. : Protocoles et Standards Le Protocole HTTP : Pierre angulaire des Services Web Infrastructure et Protocoles Réseau Interconnexion de Disposi)fs 4

Evalua)on Chaque par)e est évalué d une manière qui corresponde le mieux au contenu à présenter En ce qui concerne la première par)e Ø Examens courts écrit (0,5h) Ø QCMs surprises Ø Comportement générale en cours et TPs -> Les TPs peuvent être notés 5

Java vs Python 6

About the programming language This lecture is not about a programming course. Ø However, you will have to develop small scripts to experiment with the network protocol and architecture Ø What we expect from you: Review your programming skills, mainly by yourself Programming will be mainly done in Python Ø API to deploy emulated networks leveraging Linux tools are wri:en in Python Ø Much more be:er than execu)ng a bunch of commands by hand Ø Programming basic Python scripts is fairly easy. S)ll, we expect from you to review by yourself some Python tutorials if needed 7

Some Python Java equivalences - Blocs Java Python Blocs are created with { } if (var1 == 4 && var2.equals( xyz )) { System.out.println( Hello ); } else { } System.out.println( Not Hello ); Blocs are created with indenta)ons Ø 4 spaces (bar space)!= 1 tab 4 spaces-length if (var1 == 4 and var2 == xyz ):! print hello! else:! print not hello! 8

!! Python Java equivalences declara)on Java String var = text ;!! Object[] myarray = new Object[10];! myarray[0] = 2;!! Public static String getstr ( String test) {! return test+ test ;! }! Python //there are no private variables! var = text! myarray = array( i, [0 for i in range(10)]);! myarray[0] = 2! myarray.append(10)! def getstr (test):! return test + test! 9

Python Java equivalences Class Java Python public class MyClass extends MyFirstClass {! public MyClass (int arg1) {! }!! private void metmeth () {! }! }! class MyClass (MyFirstClass):! def init (self, arg1):! // This is the constructor!! def _metmeth ():! // method! 10

Python Java equivalences Main Java public class MyClass extends MyFirstClass { public MyClass (int arg1) { } public sta)c void main (String[] args) { // useful tasks } } Python if name == main :! //useful tasks! 11

! Python Java equivalences loops Java Python int[] values = new int[100];! for (int i=0; i<values.length; i++) {! System.out.println( values [i] );! }! values = array( i, [0 for i in range(10)]);!! For item in values:! print ( item ) 12

Python Java equivalences Class While loops Logical operators Some mathema)cal built-in func)ons 13

Introduc)on to Mininet 14

General Networking Context 15

Internet elements Internet is a network which interconnects compu)ng devices Ø Internet Service Providers Ø Network of networks Compu)ng devices: hosts or end systems Ø Laptops, PC, servers Ø Today: Mobile devices, smart objects Communica)on links Ø Twisted pair, coaxial cable, radio frequency Ø? Packet switches Ø Routers, link-layer switches Ø Several other devices Protocols Ø Standard and proprietary protocols 16

Device interconnec)on: the network topologies Ring Bus Star Mesh Full mesh Tree 17

Global View 18

Sending packets in packet-switched networks Store-and-forward devices A device receives the bits of a packet and store the informa)on in a buffer Once the en)re packet has been received, the packet is forwarded A packet composed of L bits, which is transmi:ed through a port with output rate R bits/sec, will need L/R seconds to be transmi:ed = transmission delay Ø The total transmission delay of a packets going through N links (i.e. N-1 forwarding devices) will need NL/R seconds 19

Circuit switching In circuit switched networks, the resources are reserved for the en)re dura)on of the communica)on Ø In Packet switched networks, the resources are not reserved Ø Silent periods lead to wasted resources The end-to-end reserved path is known like a circuit A circuit can be implemented using Ø Frequency Division Mul)plexing (FDM) Ø Time Division Mul)plexing (TDM) 20

FDM vs TDM FDM 4KHz Link Frequency 4KHz TDM 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Key: Slot Frame Time 2 All slots labeled 2 are dedicated to a specific sender-receiver pair. From Computer Networking: A Top-Down Approach. 21 PEARSON, 6 th edi)on. James F. Kurose and Keith W. Ross

Delay in packet-switched networks When a packet is sent, it will travel through a series of N links and N-1 forwarding devices The packets suffer from several delay in a single router. The total delay seen by a packet is a node (the nodal delay) is composed of Ø Processing delay: where to direct a packet Ø Queuing delay: how long a packet waits in the queue before reach the link Ø Transmission delay:?? Ø Propaga)on delay: the speed at which bits propagates in a link The network might not be symmetric Ø The path followed by a packet from Host A to Host B can be different from the path between Host B and Host A Ø In a single forwarding device, two different ports might have different instantaneous queue size Ø Forward delay can be different to the backward delay 22

Delay in packet-switched networks A B Propagation Nodal processing Queueing Transmission (waiting for transmission) Figure 1.16 The nodal delay at router A From Computer Networking: A Top-Down Approach. PEARSON, 6 th edi)on. James F. Kurose and Keith W. Ross 23

Queuing delay The traffic intensity is defined as the ra)o al/r, where a is the average arrival rate of packets (pkts/s) The number of packets stored in a buffer will grow when the incoming arrival rate exceeds the output link capacity Ø al/r > 1 What about al/r <= 1? Queuing delay depends on the nature of the packets arrival Ø If the minimum inter-arrival packet period is L/R packets, then, there is no queue Ø Packet burst (all packets arrive at the same )me) will lead to queuing delay When a buffer becomes full, new incoming packets cannot be stored and they are dropped (leading to the so-called packet losses) 24

End-to-End throughput E2E average throughput = min(r1,r2,,rn) E2E average throughput =?? 10 Servers R1 R2 Bottleneck link of capacity R RN 25 10 Clients

Protocols Devices in Internet need (standardized) protocols to communicate Hi TCP connection request Hi TCP connection reply Got the time? GET http://www.awl.com/kurose-ross 2:00 <file> Time Time Time Time 26

The Layering approach The OSI model The Internet protocol stack Applica)on Presenta)on Session Transport Network Link Physical Applica)on HTTP Transport TCP,UDP Network IP Link ARP Physical Ethernet 27

Encapsula)on Source Message M Application Segment H t M Transport Datagram H n H t M Network Frame H l H n H t M Link Physical H l H n H t M Link H l H n H t M Physical Link-layer switch Destination Router M Application H l H n H n H t H t H t M M M Transport Network Link H n H t M Network H n H t H l H n H t M Link H l H n H t Physical M M Physical Figure 1.24 Hosts, routers, and link-layer switches; each contains a 28

Mul)plexing Firefox: 50001 TCP IP MAC Ethernet Firefox: 50002 HTTP 80 www.example.com TCP IP MAC Ethernet HTTP 80 www.unice.fr TCP IP MAC Ethernet 29

Mul)plexing Firefox: 50001 TCP IP MAC Radio: 50002 Ethernet UDP HTTP 8080 example.com TCP IP MAC Ethernet RTP - 8080 UDP 30

Encapsula)on in real life 31

Introduc)on to Addressing 32

Targe)ng a network device To iden)fy a router or an end host, to send it a packet for instance, such a device will need an address IP addresses iden)fy the subnet and indicates the host ID of a device in Internet Ø Answer to the ques)ons: Is the device located in my LAN or somewhere else? What is the ID of that device inside that/this LAN? Ø IP addresses allow inter and intra LAN communica)on Ø More about IPv4 and IPv6 later How to associate an IP address to a given hardware? This is the role of the MAC address Ø Intra LAN communica)ons use MAC addresses + IP addresses 33

10.0.1.10 10.0.1.20 10.0.1.1 R1 10.0.2.1 10.0.2.2 R2 10.0.3.2 10.0.3.10 10.0.3.20 Inter LAN Communica)on IP addresses iden)fy a device in the network. An IP address is composed of 4 bytes and represented in decimal format with a. between two bytes. In an IP address, some bits iden)fy the network address (network ID). Se ng all the bits of the network ID to 1 gives the network mask (netmask) address 34

Classful addresses Classful networks uses an addressing scheme where the address space is divided in 5 classes Ø Class A: 8 bits for the network ID - Netmask: 255.0.0.0 * Start address: 0.0.0.0 00000000.00000000.00000000.00000000 * End address: 127.255.255.255 01111111.1111111.1111111.1111111 Ø Class B: 16 bits for the network ID Netmask: 255.255.0.0 * Start address: 128.0.0.0 10000000.00000000.00000000.00000000 * End address: 191.255.255.255 10111111.1111111.1111111.1111111 Ø Class C: 24 bits for the network ID Netmask:?? * Start address: 192.0.0.0 11000000.00000000.00000000.00000000 * End address: 223.255.255.255 11011111.1111111.1111111.1111111 Ø Class D: mul)cast * Start address: 224.0.0.0 11100000.00000000.00000000.00000000 * End address: 239.255.255.255 11101111.1111111.1111111.1111111 Ø Class E: reserved * Start address: 240.0.0.0 11110000. 00000000.00000000.00000000 * End address: 255.255.255.255 11111111.1111111.1111111.1111111 35

Classful addresses (cont) The classful address scheme led to Ø Address exhaus)on Ø Big rou)ng tables Note that the first and the last addresses are not used to iden)fy a host Ø The first address (aka the zero address) iden)fies the network address * The network address of a host with @IP 134.51.12.36 is 134.51.0.0 * The network address of a host with @IP 212.54.12.36 is?? Ø The last address (the all one address) is the network broadcast address (e.g. to send a message to an en)re LAN) * The broadcast network address for 134.51.0.0 is 134.51.255.255 * The broadcast network address for 212.54.12.36 is?? Ø How many host can be addressed in a network? * 2 n -2 where n is the number of bits used for the host id s. 36

Classless Inter-Domain Rou)ng CIDR is the current addressing scheme in Internet The number of bits used in a network address does not depend anymore on the first bits of the IP address Ø What is the network address for 134.59.17.36? CIDR uses a rou)ng prefix to iden)fy the number of bits composing a network address Ø Ex. 134.59.17.36/20 Ø For 134.59.17.36/20, what is the network address? * Write in binary format: 10000110.00111011.00010001.00100100 * Take the first 20 bits and the remaining ones set it to zero: 10000110.00111011.00010000.00000000 * Network address: 10000110.00111011.00010000.00000000 = 134.59.16.0 37

Classless Inter-Domain Rou)ng (cont) For 134.59.17.36/20 Ø What is the netmask? * Write the address in binary format: 10000110.00111011.00010001.00100100 * Take the first 20 bits and set it to 1. Put the remaining ones to zero: 11111111.11111111.11110000.00000000 * Write in decimal: 255.255.240.0 Ø what is the network broadcast address? * Write in binary format: 10000110.00111011.00010001.00100100 * Take the first 20 bits and set the remaining bits to one: 10000110.00111011.00011111.11111111 * Write the value in decimal: 134.59.31.255 Ø What is the first available IP address for a host? * Take the network address and put the last bit to one: 134.59.16.1 Ø What is the last available IP address for a host? * Take the network broadcast address and set the last bit to zero: 134.59.31.254 38

Public vs Private IP addresses IP addresses can be public or private Ø Public addresses can be routed through the Internet Ø Private addresses must never be routed through the Internet Devices with an IP private address uses Network Address Translators (NATs) to reach the Internet IP addresses are in the following range Ø 10.0.0.0/8 Ø 172.16.0.0/12 Ø 192.168.0.0/16 39

Example with private addresses 10.0.0.10 unice.fr 37.160.16.2 unice.fr Internet NAT 40

Configuring Ethernet network interface cards in Linux through command line To display the configura)on of network interfaces, which are in UP mode, use ifconfig To display the network interfaces, whatever they are in mode UP or DOWN, use ifconfig -a To enable (disable) a network interface, use ifconfig ethdev up (down), where ethdev is the name of the network interface as displayed by ifconfig -a To assign an IP address and netmask to a given interface. E.g. ifconfig h1-eth0 10.0.0.1 netmask 255.255.255.0 41

Basics on rou)ng Each network has one or more gateways (routers) Each link of a router belongs to a different network address To reach an external network (external hosts), hosts and routers must keep a rou)ng table 42

Rou)ng table of an end host 10.0.1.10/24 - eth0 10.0.1.20/24 - eth0 Rou)ng table of host 10.0.1.10 Note the use of a default route Targeted Network IP Gateway Device 10.0.1.0/24 * Eth0 10.0.2.0/24 10.0.1.1 Eth0 * 10.0.1.1 Eth0 10.0.1.1/24 eth0 R1 10.0.2.1/24 eth1 10.0.2.2/24 eth0 R2 10.0.3.2/24 eth1 10.0.3.10/24 eth0 10.0.3.20/24 eth0 43

Rou)ng table of a router 10.0.1.10/24 - eth0 10.0.1.20/24 - eth0 Rou)ng table of router R2 Note the use of a default route Targeted Network IP Gateway Device 10.0.3.0/24 * Eth1 10.0.2.0/24 * Eth0 * 10.0.2.1 Eth0 10.0.1.1/24 eth0 R1 10.0.2.1/24 eth1 10.0.2.2/24 eth0 R2 10.0.3.2/24 eth1 10.0.3.10/24 eth0 10.0.3.20/24 eth0 44

Sta)cs route in a Linux box R2 is a Linux box. We want to build its rou)ng table Rou)ng table at R2 To display the rou)ng table, use route -n Add the first route to a directly a:ached net route add -net 10.0.3.0 netmask 255.255.255.0 dev eth1 Add route to 10.0.2.0/24 :?? Add the default route: route add default gw 10.0.2.1 dev eth0 Add a route to 1.2.3.0 route add -net 1.2.3.0 netmask 255.255.255.0 dev eth0 Ø It was a mistake, remove such a route entry route del -net 1.2.3.0 netmask 255.255.255.0 dev eth0 Targeted Network IP Gateway Device 10.0.3.0/24 * eth1 10.0.2.0/24 * eth0 * 10.0.2.1 eth0 45

Lookup opera)ons in hardware routers TABLE I EXAMPLE ROUTING TABLE 00 01 10 11 Image from: K. Pagiamtzis and A. Sheikholeslami, "Content Addressable Memory (CAM) Circuits and Architectures: A Tutorial and Survey," IEEE J. Solid-State 46 Circuits, vol. 41, no. 3, pp. 712-727, Mar. 2006.

01:02:03:04:05:0A 10.0.0.4 01:02:03:04:05:0C 10.0.0.1 Intra LAN Communica)on 01:02:03:04:05:0B 10.0.0.2 01:02:03:04:05:0D 10.0.0.3 Intra LAN communica)on needs a MAC address to know which device is configured with a given IP address A MAC address is composed of 6 bytes and represented in hexadecimal with : or - between two bytes Who is 10.0.0.1? Who is 10.0.0.4? 47

Example 1: 10.0.0.3 10.0.0.4 01:02:03:04:05:0A 10.0.0.4/24 01:02:03:04:05:0C 10.0.0.1 Internet 01:02:03:04:05:0B 10.0.0.2/24 01:02:03:04:05:0D 10.0.0.3/24 www.unice.fr 48

Overview of Layer 2 devices Switches ports do not have IP addresses How does a switch do to forward packets? Ø Switches have a forwarding database (FDB) Ø The forwarding database associates the port number with the MAC address of the host plugged in that port Ø Switches learn the MAC addresses when the host connected to it sends a packet Ø If the MAC address des)na)on is already in the FDB, the switch forward the packet in the right port. Otherwise, the packet is sent through all the ports, except the one where the packet comes from. Ø Packets with the broadcast MAC address are sent through all the ports except the one where the packet comes from. 49

Example 2: 10.0.0.2 www.unice.fr 01:02:03:04:05:0A 10.0.0.4/24 01:02:03:04:05:0C 10.0.0.1 www.unice.fr??? Internet 01:02:03:04:05:0B 10.0.0.2/24 01:02:03:04:05:0D 10.0.0.3/24 www.unice.fr AB:CD:EF:01:02:03 50

Forwarding table in a switch Expected forwarding database of the switch @MAC #Port 01:02:03:04:05:0A 1 01:02:03:04:05:0B 2 01:02:03:04:05:0C 3 01:02:03:04:05:0D 4 01:02:03:04:05:0A 10.0.0.4/24 01:02:03:04:05:0B 10.0.0.2/24 1 2 4 3 01:02:03:04:05:0C 10.0.0.1 01:02:03:04:05:0D 10.0.0.3/24 51

The Address Resolu)on Protocol (ARP) Suppose that you know the IP address of the targeted device inside your LAN, so how do you get its MAC address? Ø This is done by the ARP Ø You never get the MAC address of a device from another LAN (i.e. on the other side of the gateway) When a host needs to know the MAC address of a host inside the LAN, it broadcasts an ARP request Ø In the request, you will find the IP address of the targeted host. Every device will take the ARP request. The one that will see its IP address inside must send an ARP reply Ø The ARP reply contains the IP address of the sender and its MAC address Ø Applica)ons can now communicate ARP is a Link-Layer protocol 52

ARP table Expected ARP table at host 10.0.0.4 Ø Communica)on with the router and host 10.0.0.3 Ø Add route to 10.0.0.2 arp -s 10.0.0.2 01:02:03:04:05:0B Ø Delete route to 10.0.0.5 arp d 10.0.0.5 Ø And show the ARP table arp n 01:02:03:04:05:0A 10.0.0.4/24 1 2 4 3 01:02:03:04:05:0C 10.0.0.1 @IP @MAC dev 10.0.0.3 01:02:03:04:05:0D eth0 10.0.0.1 01:02:03:04:05:0C eth0 10.0.0.2 01:02:03:04:05:0B eth0 01:02:03:04:05:0B 10.0.0.2/24 01:02:03:04:05:0D 10.0.0.3/24 53

Some special addresses To send a single message to the en)re LAN, you must send a broadcast messages Ø The IP broadcast address is 255.255.255.255 Ø The MAC broadcast address is FF:FF:FF:FF:FF:FF The IP loopback address, which allows to communicate two processes in a single machine by mean of the network protocol stack. Ø Packets with this des)na)on never leaves the host Ø By default, 127.0.0.1 Ø But defined to be 127.0.0.0/8 by RFC6890 54