Dat ak om m unik asjon høst en 2002 Forelesning nr 4, m andag 9. sept em ber Chapt er 4, Net w ork Layer and Rout ing Datakom høsten 2002 1
Øvingsoppgaver ] Chapter 2, Review questions \ 1, 2, 3, 6, 7, 8, og 13 ] Gjennomgås torsdag 12. september kl 12 Datakom høsten 2002 2
K om m unik asjonslagene (referert t il OSI) RFC871,QWHUQHW7&3,3 26, FTP HTTP SMTP $SSOLFDWLRQ $SSOLFDWLRQ DNS 3UHVHQWDWLRQ 6HVVLRQ TCP UDP 7UDQVSRUW 7UDQVSRUW,&03,3 $53 1HWZRUN 1HWZRUN PPP 'DWD/LQN 'DWD/LQN Ethernet 3K\VLFDO Datakom høsten 2002 3
Innk apsling,3+hdghu 7&3+HDGHU 'DWD 'DWD Datakom høsten 2002 4
Innk apsling,3+hdghu 7&3+HDGHU 'DWD 'DWD Datakom høsten 2002 5
Innk apsling (WKHUQHW+HDGHU,3+HDGHU 7&3+HDGHU 'DWD 'DWD 'DWD (WKHUQHW&KHFNVXP Datakom høsten 2002 6
Innk apsling µ3urwrfroo W\SH LGHQWLILVHUHU QHVWH SURWRNROO VRP,3 µ3urwrfro GHILQHUHU QHVWH SURWRNROO VRP 7&3 µ'hvwlqdwlrqsruw GHILQHUHU DSSOLNDVMRQ IHNV+773 (WKHUQHW+HDGHU,3+HDGHU 7&3+HDGHU 'DWD 'DWD 'DWD Datakom høsten 2002 7 (WKHUQHW&KHFNVXP
IP - Int ernet Prot oc ol RFC791 ] Ruting \ IP adresser \ Veivalg ] Fragmentering ] Overføring ( best effort ) \ Upålitelig \ Forbindelsesløs Pakker kan: [ mistes [ dupliseres [ komme i feil rekkefølge IP rydder ikke opp i dette Datakom høsten 2002 8
IP Header RFC791 9HUVLRQ,+/ 7\SHRI6HUYLFH 7RWDOOHQJWK,GHQWLILFDWLRQ ' ) 0 ) )UDJPHQW2IIVHW 7LPHWR/LYH 3URWRFRO +HDGHU&KHFNVXP 6RXUFH$GGUHVV 'HVWLQDWLRQ$GGUHVV 2SWLRQV,GHQWLILFDWLRQ '),+/ 9HUVLRQ 7RWDO/HQJWK 7\SHRI6HUYLFH 0) )UDJPHQW2IIVHW 7LPH7R/LYH 3URWRFRO 1XOO 'RQ W)UDJPHQW 0RUHIODJ,QWHUQHWZRUN $OOWLG +YLONHQ $QJLU VDWW %HQ\WWHV KYLV 0D[YHUGL GHW 3UHFHGHQFHELW'HOD\ORZQRUPDO7KURXJKSXWQRUPDOKLJK 2IIVHWLDQWDOO YHUVRQ WLORYHUOLJJHQGH 7RWDOW VHWWHV +HDGHU/HQJWK IOHUH IRUnLGHQWLILVHUH IRUV NHWV DY IUDJPHQWHUKYLV,3VRP ELWVRUGSODVVHULQJ GHW RNWHWWHU ODJVSURWRNROOIHNV7&3 OHYHWLG$QJLV EHQ\WWHVKHUYLO LNNH KHDGHUHQV QVNHV,3KHDGHUGDWD VDPPHQK UHQGH VLVWH DWSDNNHU OHQJGH LVHNXQGHUPHQEOLU IUDJPHQWHOOHU GHW DY VWn LELWVRUG GHWWH VNDO VLGHQ IUDJPHQWHW IUDJPHQWHUHV KYLV GHWWH HU QnU LNNH LSUDNVLV IRU HU HQ,3Y KHDGHUXWHQ DQWDOO IUDJPHQWHUW 5HOLDELOLW\QRUPDOKLJK&RVWQRUPDOPD[LPL]H RSSULQQHOLJ RSVMRQHU UXWHUKRSSWHOOHV,3SDNNH YDU IRUI UVWH QHG IRUVWRU LKYHUIRUOLQNODJHW UXWHU IUDJPHQWHOOHU GHW SDVVHUHU KYLVLQQWLO LNNHGHW QnU GDIUDJPHQWHUW VHQGHV GHW LNNH YLGHUH Eksempel Datakom høsten 2002 9
IP-adresser RFC791 Klasse A (0-127): 0 Nett Lokal Klasse B (128-191): 1 0 Nett Lokal Klasse C (192-223): 1 1 0 Nett Lokal Datakom høsten 2002 10
IP-adresser ] Hvordan angis en IP-adresse? \ fire desimale nummer, et pr. byte i adressen, separert med punktum \ Kalles for dotted decimal notation \ Eksempel 193.69.136.36 Datakom høsten 2002 11
IP-adresser ] Spesielle adresser \ Broadcast - en til alle Lokaladresse har alle bit satt til 1 \ Loopback (tilgang til tjenester på egen maskin) 127.0.0.1 \ Alle bit 0; ukjent IP-adresse (eller default rute) ] Måter å adressere \ Unicast - en til en \ Broadcast - en til alle \ Multicast - en til mange Datakom høsten 2002 12
Subnet t RFC950 ] Klasseinndelingen er lite fleksibel, og gir mange ubrukte adresser ] Bedre utnyttelse av adresseområdet oppnås ved bruk av subnettmasker. ] En subnettmaske angir hvor stor del av adressen som er nettprefikset (nett+ subnett) og dermed også hvor stor del lokaladressen er Datakom høsten 2002 13
Subnet t, ek sem pel RFC791 2SSULQQHOLJ NODVVH %QHWW PHGORNDODGUHVVHU 1HWW /RNDO 1nVXEQHWWKYHUW PHGORNDODGUHVVHU 1HWW 6XEQHWW /RNDO 6XEQHWWPDVNHHOOHU Datakom høsten 2002 14
Subnet t RFC950 ] Variabel Length Subnet Mask \ Man kan ha subnett av forskjellig størrelse \ Mer effektiv utnyttelse av organisasjonens adresseområde. ] Måter å angi subnettmasker: \ 193.69.136.36, subnettmaske 255.255.255.0 \ 193.69.136.36/ 24 \ /24 betyr at 24 bit benytttes til å angi nettadressen \ Totalt tilgjengelig 32 bit \ 32 24 = 8 bit til host adresser Datakom høsten 2002 15
RFC950 Subnet t - variable subnet t m ask er, ek sem pel Opprinnelig klasse C nett, 1 nett med 254 lokaladresser 1 1 0 Nett Lokal 1c 4 subnett, hvert med 30 lokaladresser Subnett 1 1 0 Nett Lokal 0 x x 3OXVV 4 subnett, hvert med 14 lokaladresser Subnett 1 1 0 Nett Lokal 1 0 x x 3OXVV 8 subnett, hvert med 6 lokaladresser Subnett 1 1 0 Nett Lokal 1 1 x x x Datakom høsten 2002 16
Adresseoverset t ing RFC2663 ] Bedre kjent som NAT (Network Address Translator) ] IP-adresser innenfor et nettverk \ ikke er gyldige for bruk utenfra \ skal skjules for utenverdenen ] En organisasjon har færre eksterne adresser enn størrelsen på det interne nettverket tilsier ] Noen adresseområder er reservert til privat bruk \ 10.0.0.0-10.255.255.255 \ 172.16.0.0-172.31.255.255 \ 192.168.0.0-92.168.255.255 \ Disse adressene kan fritt benyttes bak en brannmur uten å komme i konflikt med andre sine IP-adresser på Internett. Datakom høsten 2002 17
ICMP - Int ernet Cont rol Message Prot oc ol RFC792 ] Brukes for feilmeldinger, rutinginformasjon og test ] Benytter IP for å sende pakker (på samme måte som TCP og UDP), men er samtidig en nødvendig del av IP ] Eksempler: \ ICMP redirect \ ICMP echo \ ICMP time exceeded Datakom høsten 2002 18
ICMP m essage t ypes 7\SH)LHOG 0HVVDJH7\SH 0 Echo Reply 6YDUSn 3LQJ 3 Destination Unreachable 4 Source Quench )O\WNRQWUROO 5 Redirect 8 Echo Request 3LQJ 11 Time Exceeded for a Datagram 7UDFHRXWH 12 Parameter Problem on a Datagram 13 Timestamp Request 14 Timestamp Reply 15 Information Request 16 Information Reply 17 Address Mask Request 18 Address Mask Reply Datakom høsten 2002 19
ICMP ek sem pel,qwhuqhww :(%VHUYHU 5XWHU 3&,&03UHGLUHFW )HIDXOW*: 5XWHU,QWUDQHWW Datakom høsten 2002 20
Trac ert k om m ando ] Traceroute, lister opp hvilke rutere som passeres på vei til mottaker ] Benytter TTL (Time To Live) feltet i ICMP Echo Request ] Får svar i form av ICMP Time Exceeded melding ] TTL settes til 1 for så og økes med 1 hver gang Datakom høsten 2002 21
Trac ert Datakom høsten 2002 22
PING program ] Benyttes for å finne ut om en maskin er på lufta. ] Sender ICMP Echo Request ] Forventer å få ICMP Echo Reply som svar Datakom høsten 2002 23
PING ping www.vg.no Pinging www.vg.no [195.139.5.245] with 32 bytes of data: Reply from 195.139.5.245: bytes=32 time=140ms TTL=126 Reply from 195.139.5.245: bytes=32 time=10ms TTL=126 Reply from 195.139.5.245: bytes=32 time=10ms TTL=126 Reply from 195.139.5.245: bytes=32 time=10ms TTL=126 Ping statistics for 195.139.5.245: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 10ms, Maximum = 140ms, Average = 42ms Datakom høsten 2002 24
ARP - Address Resolut ion Prot oc ol ] Finne fysisk adresse fra IP-adresse ] Benyttes i lokale nett ] ARP request sendes som broadcast ] Svar på denne lagres (og kan benyttes senere) ] En host kan svare på vegne av en annen (proxy ARP) ] Eksempler \ ARP request, ARP reply RFC826 Datakom høsten 2002 25
The Int ernet Net w ork layer Host, router network layer functions: Tr anspor t layer : TCP, UDP Net wor k layer Rout ing pr ot ocols pat h select ion RI P, OSPF, BGP r out ing t able I P pr ot ocol addr essing convent ions dat agr am f or mat packet handling convent ions I CMP pr ot ocol er r or r epor t ing r out er signaling Link layer physical layer Datakom høsten 2002 26
IP Addressing: int roduc t ion ] IP address: 32-bit identifier for host, router interface ] interface: connection between host, router and physical link \ router s typically have multiple interfaces \ host may have multiple interfaces \ IP addresses associated with interface, not host, 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.3.27 223.1.2.2 223.1.3.2 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 Datakom høsten 2002 27
IP Addressing ] IP address: \ network part (high order bits) \ host part (low order bits) ] What s a network? (from IP address perspective) \ device interfaces with same network 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.3.27 LAN 223.1.2.2 223.1.3.2 net wor k consist ing of 3 I P net wor ks (f or I P addr esses st ar t ing wit h 223, f ir st 24 bit s ar e net wor k addr ess) Datakom høsten 2002 28
IP Addressing How to find the networks? ] Detach each interface from router, host ] create islands of isolated networks 223.1.1.1 223.1.1.2 223.1.1.3 223.1.9.2 223.1.7.0 223.1.1.4 223.1.9.1 223.1.8.1 223.1.8.0 223.1.7.1 223.1.2.6 223.1.3.27 I nt er connect ed syst em consist ing of six net wor ks 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 Datakom høsten 2002 29
IP Addresses given notion of network, let s re-examine IP addresses: class-f ull addr essing: class A B C 0 net wor k host 10 net wor k host 110 net wor k host 1.0.0.0 t o 127.255.255.255 128.0.0.0 t o 191.255.255.255 192.0.0.0 t o 223.255.255.255 D 1110 mult icast addr ess 32 bit s 224.0.0.0 t o 239.255.255.255 Datakom høsten 2002 30
IP addressing: CIDR ] classful addressing: \ inefficient use of address space, address space exhaustion \ e.g., class B net allocated enough addresses for 65K hosts, even if only 2K hosts in that network ] CIDR: Classless InterDomain Routing \ network portion of address of arbitrary length \ address format: a.b.c.d/x, where x is # bits in network portion of address net wor k par t 11001000 00010111 00010000 00000000 200.23.16.0/ 23 host par t Datakom høsten 2002 31
IP addresses: how t o get one? Hosts (host portion): ] hard-coded by system admin in a file ] DHCP: Dynamic Host Configuration Protocol: dynamically get address: plug-and-play \ host broadcasts DHCP discover msg \ DHCP server responds with DHCP offer msg \ host requests IP address: DHCP request msg \ DHCP server sends address: DHCP ack msg Datakom høsten 2002 32
IP addresses: how t o get one? Network (network portion): ] get allocated portion of 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 Datakom høsten 2002 33
Hierarc hic al addressing: rout e aggregat ion Hier ar chical addr essing allows ef f icient adver t isement of r out ing inf or mat ion: Or ganizat ion 0 200.23.16.0/ 23 Or ganizat ion 1 200.23.18.0/ 23 Or ganizat ion 2 200.23.20.0/ 23 Or ganizat ion 7 Fly-By-Night -I SP Send me anyt hing wit h addresses beginning 200.23.16.0/ 20 I nt er net 200.23.30.0/ 23 I SPs-R-Us Send me anyt hing wit h addresses beginning 199.31.0.0/ 16 Datakom høsten 2002 34
Hierarc hic al addressing: m ore spec ific rout es I SPs-R-Us has a mor e specif ic r out e t o Or ganizat ion 1 Or ganizat ion 0 200.23.16.0/ 23 Or ganizat ion 2 200.23.20.0/ 23 Or ganizat ion 7 Fly-By-Night -I SP Send me anyt hing wit h addresses beginning 200.23.16.0/ 20 I nt er net 200.23.30.0/ 23 Or ganizat ion 1 200.23.18.0/ 23 I SPs-R-Us Send me anyt hing wit h addresses beginning 199.31.0.0/ 16 or 200.23.18.0/ 23 Datakom høsten 2002 35
IP addressing: t he last w ord... 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 Datakom høsten 2002 36
Get t ing a dat agram from sourc e t o dest. IP datagram: misc f ields sour ce I P addr dest I P addr dat a ] datagram remains unchanged, as it travels source to destination routing table in A ] addr fields of interest here A B Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 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.27 223.1.2.2 E 223.1.3.1 223.1.3.2 Datakom høsten 2002 37
Get t ing a dat agram from sourc e t o dest. misc f ields 223.1.1.1 223.1.1.3 dat a Starting at A, given IP datagram addressed to B: ] look up net. address of B ] find B is on same net. as A ] link layer will send datagram directly to B inside link-layer frame \ B and A are directly connected A B Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 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 E Datakom høsten 2002 38
Get t ing a dat agram from sourc e t o dest. misc f ields 223.1.1.1 223.1.2.3 dat a Starting at A, dest. E: ] look up network address of E ] E on different network \ A, E not directly attached ] routing table: next hop router to E is 223.1.1.4 ] link layer sends datagram to router 223.1.1.4 inside linklayer frame ] datagram arrives at 223.1.1.4 ] continued.. A B Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 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 E Datakom høsten 2002 39
Get t ing a dat agram from sourc e t o dest. misc f ields 223.1.1.1 223.1.2.3 dat a network Arriving at 223.1.4, destined for 223.1.2.2 ] look up network address of E ] E on same network as router s interface 223.1.2.9 \ router, E directly attached ] link layer sends datagram to 223.1.2.2 inside link-layer frame via interface 223.1.2.9 ] datagram arrives at 223.1.2.2!!! (hooray!) A B Dest. next router Nhops interface 223.1.1-1 223.1.1.4 223.1.2-1 223.1.2.9 223.1.3-1 223.1.3.27 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 Datakom høsten 2002 40 E