Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Datakom høsten 20021 Datakommunikasjon høsten 2002 Forelesning nr 3, mandag 2. september Chapter 3, Transport Layer.

Liknende presentasjoner


Presentasjon om: "Datakom høsten 20021 Datakommunikasjon høsten 2002 Forelesning nr 3, mandag 2. september Chapter 3, Transport Layer."— Utskrift av presentasjonen:

1 Datakom høsten 20021 Datakommunikasjon høsten 2002 Forelesning nr 3, mandag 2. september Chapter 3, Transport Layer

2 Datakom høsten 20022 Øvingsoppgaver

3 Datakom høsten 20023 Aktiv og passiv FTP AKTIV: SERVERKLIENT 20 Data 21 Kom. 1026 Kom. 1027 Data 1 2 3 4

4 Datakom høsten 20024 Aktiv og passiv FTP PASSIV: SERVER KLIENT 20 Data 21 Kom. 1026 Kom. 1027 Data 1 2 3 4 Port 2024

5 Datakom høsten 20025 IP-adresser 0 NettLokal Klasse A (0-127): 01 NettLokal Klasse B (128-191): 011 NettLokal Klasse C (192-223): RFC791

6 Datakom høsten 20026 IP-adresser zHvordan angis en IP-adresse? yfire desimale nummer, et pr. byte i adressen, separert med punktum yKalles for “dotted decimal notation” yEksempel 193.69.136.36

7 Datakom høsten 20027 IP-adresser zSpesielle adresser yBroadcast - en til alle Lokaladresse har alle bit satt til 1 yLoopback (tilgang til tjenester på egen maskin) 127.0.0.1 yAlle bit 0; ukjent IP-adresse (eller default rute) zMåter å adressere yUnicast - en til en yBroadcast - en til alle yMulticast - en til mange

8 Datakom høsten 20028 Subnett zKlasseinndelingen er lite fleksibel, og gir mange ubrukte adresser zBedre utnyttelse av adresseområdet oppnås ved bruk av subnettmasker. zEn subnettmaske angir hvor stor del av adressen som er nettprefikset (nett+subnett) og dermed også hvor stor del lokaladressen er RFC950

9 Datakom høsten 20029 Subnett, eksempel RFC791 01 NettLokal Opprinnelig klasse B (1 nett med 65.536 lokaladresser) Nå: 64 subnett, hvert med 1022 lokaladresser 01 NettSubnettLokal Subnettmaske: 255.255.252.0 eller /22

10 Datakom høsten 200210 Tracert kommando zTraceroute, lister opp hvilke rutere som passeres på vei til mottaker zBenytter TTL (Time To Live) feltet i ICMP Echo Request zFår svar i form av ICMP Time Exceeded melding zTTL settes til 1 for så å økes med 1 hver gang

11 Datakom høsten 200211 Tracert

12 Datakom høsten 200212 Some Protocols in TCP/IP Suite

13 Datakom høsten 200213

14 Datakom høsten 200214 Ipconfig kommando N:\>ipconfig /all Windows 2000 IP Configuration Host Name............ : bak3 Primary DNS Suffix....... : Node Type............ : Broadcast IP Routing Enabled........ : No WINS Proxy Enabled........ : No DNS Suffix Search List...... : halden.scandpower.no Ethernet adapter Local Area Connection: Connection-specific DNS Suffix. : halden.scandpower.no Description...........: 3Com EtherLink XL 10/100 PCI For Complete PC Management NIC (3C905C-TX) Physical Address......... : 00-50-DA-DD-2E-5E DHCP Enabled........... : No IP Address............ : 193.69.136.78 Subnet Mask........... : 255.255.255.0 Default Gateway......... : 193.69.136.54 DNS Servers........... : 193.69.136.53 193.69.136.34

15 Datakom høsten 200215 netstat kommando N:\>netstat -rn Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.00.0.0.0 193.69.136.54 193.69.136.78 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 193.69.136.0 255.255.255.0 193.69.136.78 193.69.136.78 1 193.69.136.78 255.255.255.255 127.0.0.1 127.0.0.1 1 193.69.136.255 255.255.255.255 193.69.136.78 193.69.136.78 1 224.0.0.0 224.0.0.0 193.69.136.78 193.69.136.78 1 255.255.255.255 255.255.255.255 193.69.136.78 193.69.136.78 1 Default Gateway: 193.69.136.54 Persistent Routes: None

16 Datakom høsten 200216 TCP/IP zEr egentlig en gruppe av protokoller som har fått navn etter to av disse. zLagdelt, 4 lag er definert i TCP/IP modellen yModellen er laget etter at protokollene ble tatt i bruk (i motsetning til ISO’s OSI-modell) yIkke alltid veldefinert i hvilket lag en protokoll befinner seg zIPv4 er den versjonen av IP som er i bruk idag

17 Datakom høsten 200217 Kommunikasjonslagene (referert til OSI) ApplicationPresentationSession Ethernet IP ARP ICMP TCPUDP NetworkTransportData LinkPhysicalApplicationTransportNetworkData Link PPP FTPHTTP DNS OSI Internet-TCP/IP SMTP

18 Datakom høsten 200218 Innkapsling IP Header Data TCP Header Data

19 Datakom høsten 200219 Innkapsling IP Header Data TCP Header Data

20 Datakom høsten 200220 Innkapsling IP Header Data TCP Header Data Ethernet Header Ethernet Checksum Data

21 Datakom høsten 200221 Ethernet Header Ethernet Checksum Data Innkapsling IP Header Data TCP Header Data ‘Protocoll type’ identifiserer neste protokoll som IP (=0800) ‘Protocol’ definerer neste protokoll som TCP (=6) ‘Destination port’ definerer applikasjon, f.eks. HTTP (=80)

22 Datakom høsten 200222 TCP & UDP zTransmission Control Protocol yForbindelsesorientert yRFC 793 zUser Datagram Protocol (UDP) yForbindelsesløs (datagram tjeneste) yRFC 768

23 Datakom høsten 200223 Eks. på brukere av TCP zTelnet yport 23 zFTP (File Transfer Program) yport 20 og 21 zSMTP (Simple Mail Transfer Program) yport 25 zDNS (Domain Name System) yport 53 zHTTP (WEB-trafikk) yport 80

24 Datakom høsten 200224 Eks. på brukere av UDP zTFTP (Trivial File Transfer Protocol) yport 69 zDHCP (Dynamic Host Configuration Protocol) yport 67 og 68 zNTP (Network Time Protocol) yport 123 zDNS (Domain Name Sytem) yport 53

25 Datakom høsten 200225 Sockets begrepet zSending socket yAvsender IP-adresse + port nummer zReceiving socket yMottaker IP-adresse + port nummer zBenyttes ifm API-er yAPI-Application Program Interface

26 Datakom høsten 200226 TCP zTCP overfører data mellom en klient og en tjener (client/server) zData overføres i segmenter zBrukerene av TCP leverer data som en strøm av data (stream oriented) zTCP sørger for feilretting og at data leveres videre til brukeren av TCP i korrekt rekkefølge zForbindelsesorientert yOppkoblingsfase yDataoverføringsfase yNedkoblingsfase

27 Datakom høsten 200227 TCP streams og segmenter TCP A B Segmenter Stream

28 Datakom høsten 200228 TCP pakke

29 Datakom høsten 200229 Oppgaver til TCP zAdressering zMultipleksing, en TCP prosess må kunne håndtere flere applikasjoner zFlytkontroll zFeilkontroll zOpp og nedkobling

30 Datakom høsten 200230 Adressering zApplikasjon adresseres med: xhost, port •Kalles en socket i TCP xPort representerer en bruker av TCP, dvs en applikasjon yTransport entity identifikasjon •TCP og UDP yHost og nettverksadresse, dvs IP-adresse

31 Datakom høsten 200231 Multipleksing zFlere applikasjoner kan benytte samme transport protokoll zApplikasjon identifiseres med port nummer eller service access point (SAP)

32 Datakom høsten 200232 Flytkontroll zVariabel transmissjonsforsinkelse yVanskeligjør bruk av timere zMå ha flytkontroll pga at: yMottaker ikke kan motta data så raskt som avsender sender zResulterer i buffere som fylles

33 Datakom høsten 200233 Håndtering av krav til flytkontroll (1) zGjør ingenting ySegmenter kastes yAvsender vil ikke motta ACK og vil retransmittere xResulterer i mer inndata zAvise segmenter når buffer er fullt yTrigger flytkontroll på lavere lag. yHvis flere transportforbindelser er multiplekset over en enkelt nettverksforbindelse foregår flytkontrollen “summen” av alle transportforbindelsene

34 Datakom høsten 200234 Håndtering av krav til flytkontroll (2) zBruke av fast sliding window protokoll yFungerer bra i pålitelige nett xManglende mottak av ACK håndteres som flytkontroll yFungerer dårlig i upålitelige nett xKan ikke skille mellom tapte pakker og flytkontroll zBruk av “credit scheme”

35 Datakom høsten 200235 Credit Scheme zVindusstørrelse og ACK er ikke lenger koblet sammen yKan gi ACK uten å gi kreditt og vice versa zHver oktett har et sekvensnummer zHvert transport segment har sekvens nummer, ack nummer og vindusstørrelse i header

36 Datakom høsten 200236 TCP oppkobling Maskin A Maskin B TID SYN (SYNchronize sequence numbers) SYN, ACK ACK Kalles for: Three-way handshake

37 Datakom høsten 200237 TCP sekvens nummer Maskin A Maskin B TID SYN=1, Sequence=X SYN=1, ACK=1, Sequence=Y, Ack no=X+1 ACK=1, Ack no=Y+1

38 Datakom høsten 200238 Netstat –s (gir protokollstatistikk) TCP Statistics Active Opens = 696 Passive Opens = 39 Failed Connection Attempts = 46 Reset Connections = 363 Current Connections = 3 Segments Received = 265696 Segments Sent = 275847 Segments Retransmitted = 285

39 Datakom høsten 200239 TCP - Transmission Control Protocol Source Port TCP Header Destination Port Sequence Number Acknowledge Number Header Length Reserved URGURG ACKACK PSHPSH RSTRST SYNSYN FINFIN Window Size TCP ChecksumUrgent Pointer Options RFC793

40 Datakom høsten 200240 URG (Urgent mode) flagg zUrgent mode yGir mulighet for den ene part å fortelle at ”urgent data” er sent innimellom den normale datastrømmen zUrgent mode aktiveres ved å yURG bit settes = 1 y16 bir urgent pointer settes til et positivt offset yUrgent data befinner er da i de oktettene som angis av sequence number + urgent pointer offset zBenyttes av telnet, rlogin og FTP.

41 Datakom høsten 200241 ACK – Acknowledge number zBenyttes til å si at dette er kvittering for mottatte data

42 Datakom høsten 200242 PSH (PUSH) flagg zAvsender side: yBrukeren av TCP setter PUSH flagget for at TCP skal sende data som er mottatt med en gang, dvs ikke vente til at bufferet f.eks. er fullt. zMottaker side: yTCP skal sende de mottatte data umiddelbart til brukeren av TCP zEksempel på bruk er telnet

43 Datakom høsten 200243 RST (RESET) flagg zRESET flagg benyttes til å yresette en forbindelse yavbryte en forbindelse zOppsett til en ikke eksisterende port yTCP sender RESET yUDP sender ICMP port unreachable zEksempel telnet til en ikke eksisterende port

44 Datakom høsten 200244 SYN (SYNCHRONIZE) flagg zSynkronisering av sekvens nummer ifm initiering av en forbindelse zAvsender sender et SYN segment som inneholder ”initial sequence number” zMottaker returnerer et syn segment som også inneholder ”initial sequence number”

45 Datakom høsten 200245 FIN flagg zIndikerer at forbindelsen skal kobles ned, dvs det skal ikke overføres flere data zTCP avslutter forbindelsen zTCP foretar en såkalt ”half close” når en forbindelse kobles ned zDette betyr at selv om den ene siden har sendt FIN kan fortsatt den andre siden sende data

46 Datakom høsten 200246 TCP Mekanismer (1) zOppsett yThree way handshake yMellom to porter (source og destination port) zData transfer yLogisk strøm av oktetter yOktettene er nummerert modulo 2 23 yFlyt kontroll basert på kreditt av nummer av oktetter yData buffres hos avsender og mottaker

47 Datakom høsten 200247 TCP Mekanismer (2) zNedkobling yGraceful close yTCP bruker sender CLOSE primitive yTransport entity setter FIN flagg på siste segment som sendes yABORT primitive xAll sending og mottak av data opphører xRST sendes

48 Datakom høsten 200248 TCP - Sekvens opp- /nedkobling RFC793 SYN SYN, ACK ACK FIN ACK SYN, detaljer FIN ACK detaljer Sekvens detaljer - Data - FIN

49 Datakom høsten 200249 TCP half close - nedkobling FIN ACK FIN DATA Applikasjon avslutter Applikasjon sender data Applikasjon leser data A B

50 Datakom høsten 200250 Implementeringsopsjoner zSend zDeliver zAccept zRetransmit zAcknowledge

51 Datakom høsten 200251 Sending av data zHvis ikke PUSH flagget er satt kan TCP sende data når den synes det “passer” zData buffres i et sende buffer zKan vente med å sende til den har fått en viss mengde data

52 Datakom høsten 200252 Levering av data zHvis ikke PUSH flagg, levere når det passer zKAn levere data etter hvert som den mottar segmenter zKan lagre data i et buffer før det sendes videre

53 Datakom høsten 200253 Aksept av mottatte data zSegments kan ankomme ute av sekvens zSegmenter yAkseptere kun segmenter i riktig rekkefølge yForkaste segmenter som ikke kommer i riktig rekkefølge zInnenfor vindusstørrelsen yAkseptere alle segmenter innenfor mottakervindu

54 Datakom høsten 200254 Retransmisjon zTCP vedlikeholder en kø av de segmenter som er sendt og som ikke det er mottatt ack på zTCP vil retransmittere hvis det ikke er mottatt ACK innen en viss tid

55 Datakom høsten 200255 Acknowledgement zØyeblikkelig zKumulative, dvs mottar flere segmenter før ACK sendes

56 Datakom høsten 200256 TCP Slow Start zAlgoritme som skal sørge for at TCP tilpasser seg overføringskapasiteten i nettet zKalles ”Congestion window” eller cwnd zEr initielt satt til et segment hvor størrelsen av segmentet er den segmentstørrelsen som er annonsert av mottakeren zHver gang en ACK mottas økes cwnd med 1

57 Datakom høsten 200257 UDP zUser datagram protocol zRFC 768 zForbindelsesløs tjeneste yDet settes ikke opp noen forbindelse mellom avsender og mottaker som med TCP yUpålitelig yGaranterer ikke at data kommer frem zLite overhead

58 Datakom høsten 200258 UDP og fragmentering zEt UDP datagram resulterer hos avsender i et IP datagram zEt IP datagram kan imidlertid bli fragmentert dersom MTU (Maximum Transfer Unit) er mindre enn størrelsen på IP datagrammet zDette settes i sammen hos mottakeren, men hvis det er feil forkastes alle fragmenter zIP ber ikke om retransmisjon, og heller ikke UDP zTjenesten som benytter UDP må derfor ta ansvar for all retransmisjon

59 Datakom høsten 200259 UDP - User Datagram Protocol UDP Header Source PortDestination Port RFC768 Eksempel UDP length UDP length = lengden av hele datagrammet UDP checksum UDP checksum = sjekksum av hele datagrammet


Laste ned ppt "Datakom høsten 20021 Datakommunikasjon høsten 2002 Forelesning nr 3, mandag 2. september Chapter 3, Transport Layer."

Liknende presentasjoner


Annonser fra Google