De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

13-11-20011 Het TCP/IP referentiemodel 2 Heterogene Netwerken Hoorcollege 2.

Verwante presentaties


Presentatie over: "13-11-20011 Het TCP/IP referentiemodel 2 Heterogene Netwerken Hoorcollege 2."— Transcript van de presentatie:

1 Het TCP/IP referentiemodel 2 Heterogene Netwerken Hoorcollege 2

2 Multiplexen Het dataveld bij IP-pakketten kan bestaan uit: Het dataveld bij IP-pakketten kan bestaan uit: TCP segmenten TCP segmenten UDP datagrammen UDP datagrammen ICMP management info (later) ICMP management info (later) RIP berichten (later) RIP berichten (later) IP Data VeldIP Header

3 Multiplexen Stroom van IP-pakketten Stroom van IP-pakketten UDPIP-HTCPIP-HUDPIP-HICMPIP-H Pakket stroom

4 Multiplexen De processen op de IP-laag zijn er verantwoordelijk voor om de inhoud van de pakketten op de juiste plaats aft te leveren. De processen op de IP-laag zijn er verantwoordelijk voor om de inhoud van de pakketten op de juiste plaats aft te leveren. IP TCPUDP ICMP UDPIP-H IP Proces Aankomst van pakketten

5 Multiplexen Het IP-proces aan de ontvangstkant moet dus weten wat er in het dataveld zit. Het IP-proces aan de ontvangstkant moet dus weten wat er in het dataveld zit. IP Data VeldIP Header

6 Multiplexen De IP Header heeft een 8-bit Protocol veld. De IP Header heeft een 8-bit Protocol veld. Dit veld identificeert de inhoud van het dataveld.1=ICMP (later), 6=TCP, 17=UDP, etc.Zie RFC Dit veld identificeert de inhoud van het dataveld.1=ICMP (later), 6=TCP, 17=UDP, etc.Zie RFC Total Length in bytes (16) Time to Live (8) Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8) …

7 Multiplexen Bij TCP/UDP velden die analoog zijn. Bij TCP/UDP velden die analoog zijn. Identificatie van het type info in het dataveld. Identificatie van het type info in het dataveld. TCP enUDP TCP enUDP Zogenaamde Poort nummers (TCP-term voor TSAP) Zogenaamde Poort nummers (TCP-term voor TSAP) Voor identificatie van het applicatieproces (bijv. 80=HTTP); poortnummers in RFC 1700 Voor identificatie van het applicatieproces (bijv. 80=HTTP); poortnummers in RFC 1700 Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16)Reserved (6)

8 Terug naar TCP Sequence Number Field Initial Sequence Number Acknowledgement Number Field

9 TCP TCP is betrouwbaar TCP is betrouwbaar De volgorde van IP-pakketten is niet gegarandeerd. De volgorde van IP-pakketten is niet gegarandeerd. TCP is hiervoor verantwoordelijk. TCP is hiervoor verantwoordelijk

10 TCP TCP is betrouwbaar TCP is betrouwbaar Ieder correct TCP-segment wordt bevestigd. Ieder correct TCP-segment wordt bevestigd. Bron Transport Proces Bron Transport Proces Bestemming Transport Proces Bestemming Transport Proces TCP Segment ACK

11 TCP Segment Elk TCP-segment moet een volgnummer hebben. Elk TCP-segment moet een volgnummer hebben. Eenvoudigst: 1,2,3,4,5,6,7 Eenvoudigst: 1,2,3,4,5,6,7 Handig om verloren segmenten of problemen in de volgorde te ontdekken Handig om verloren segmenten of problemen in de volgorde te ontdekken TCP doet het echter complexer TCP doet het echter complexer ?

12 TCP sequence nummers 32 bits veld sequence number identificeert een specifiek segment. 32 bits veld sequence number identificeert een specifiek segment. Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if any)PAD Reserved (6) TCP Checksum (16)Urgent Pointer (16) Data Field

13 TCP Sequence Nummers Het eerste sequence-nummer is niet 1 maar een random-getal geselecteerd door het zendend TCP-proces (bijv. 79). Het eerste sequence-nummer is niet 1 maar een random-getal geselecteerd door het zendend TCP-proces (bijv. 79). 79 TCP Data veld TCP Header Sequence Nummer veld Met eerste Sequence Nummer (79)

14 TCP Sequence Nummers De telling van de sequence nummers gaat aan de hand van het aantal octetten in het dataveld. De telling van de sequence nummers gaat aan de hand van het aantal octetten in het dataveld. TCP Segment 179 TCP Segment 179 TCP Segment TCP Segment TCP Segment TCP Segment Octetten in Data Veld 2 Octetten in Data Veld

15 TCP Sequence nummers Supervisory segmenten zijn TCP- segmenten met een leeg dataveld (denk aan de SYN, FIN, enz.) Supervisory segmenten zijn TCP- segmenten met een leeg dataveld (denk aan de SYN, FIN, enz.) Voor de sequence nummering wordt er vanuit gegaan dat deze uit 1 octet bestaan. Voor de sequence nummering wordt er vanuit gegaan dat deze uit 1 octet bestaan.

16 TCP Acknowledgements ACK’s geven aan welk segmenten bevestigd zijn. ACK’s geven aan welk segmenten bevestigd zijn. Bron TCP Proces Bron TCP Proces Bestemming TCP Proces Bestemming TCP Proces TCP Segment ACK

17 TCP Acknowledgements TCP header bevat een 32-bit Acknowledgement Number veld TCP header bevat een 32-bit Acknowledgement Number veld Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if any)PAD Reserved (6) TCP Checksum (16)Urgent Pointer (16) Data Field

18 TCP Acknowledgement Nummers Acknowledgement Number field bevat het volgende octet dat verwacht wordt. Acknowledgement Number field bevat het volgende octet dat verwacht wordt. TCP 179 TCP 179 TCP TCP TCP TCP is AckNum waarde 85 is AckNum waarde 80 is AckNum waarde

19 TCP Acknowledgement Nummer Vraag: Een TCP segment bevat de volgende data-octetten. Vraag: Een TCP segment bevat de volgende data-octetten. 567, 568, 569, 570, 571, 572, 573, , 568, 569, 570, 571, 572, 573, 574 Welk getal komt in het sequence nummer veld van het zendend TCP-proces te staan? Welk getal komt in het sequence nummer veld van het zendend TCP-proces te staan? Welk getal komt in het acknowledgement nummer veld van het TCP-proces te staan dat de ontvangst bevestigd? Ga uit van correcte overdracht. Welk getal komt in het acknowledgement nummer veld van het TCP-proces te staan dat de ontvangst bevestigd? Ga uit van correcte overdracht.

20 TCP Flow Control Flow Control Flow Control Een TCP proces zend te snel Een TCP proces zend te snel De ontvanger moet de transmissiesnelheid regelen. De ontvanger moet de transmissiesnelheid regelen. Dit heet flow control Dit heet flow control TCP Proces Te veel Data Flow Control bericht

21 TCP Flow Control Een TCP segment heeft een Window Size veld. Een TCP segment heeft een Window Size veld. –Gebruikt in combinatie met acknowledgements Source Port # (16)Destination Port # (16) Sequence Number (32 bits) Acknowledgement Number (32 bits) Hdr Len (4) Flags (6)Window Size (16) Options (if any)PAD Reserved (6) TCP Checksum (16)Urgent Pointer (16) Data Field

22 TCP Flow Control Hoeveel octetten mag de zender sturen gerekend vanaf het laatste bevestigde segment. Hoeveel octetten mag de zender sturen gerekend vanaf het laatste bevestigde segment. TCP Proces Data Acknowledgement met Window Size veld

23 TCP Flow Control Voorbeeld Voorbeeld TCP segment bevat octetten TCP segment bevat octetten Ack-nummer wordt 90 Ack-nummer wordt 90 Als de waarde in het Window Size veld 50 is, dan: Als de waarde in het Window Size veld 50 is, dan: Mag de zender doorgaan tot octet 140 (90 plus 50) Mag de zender doorgaan tot octet 140 (90 plus 50) Moet de zender stoppen bij 50 tenzij de window-size opnieuw wordt vastgesteld. Moet de zender stoppen bij 50 tenzij de window-size opnieuw wordt vastgesteld.

24 TCP Flow Control Dit wordt het glijdend venster protocol genoemd (sliding window) Doorgaan tot Doorgaan tot 920

25 TCP Fragmentatie Het dataveld in een TCP-segment heeft een maximum omvang. Het dataveld in een TCP-segment heeft een maximum omvang. Elk segment moet in een IP-dataveld passen (65535 bytes max) en moet ook in de MTU passen. Elk segment moet in een IP-dataveld passen (65535 bytes max) en moet ook in de MTU passen. TCP HeaderTCP Data Veld Max Applicatie Laag bericht

26 TCP Fragmentatie Applicatielaag bericht moet gefragmenteerd worden. Applicatielaag bericht moet gefragmenteerd worden. Komt in afzonderlijke TCP segmenten Komt in afzonderlijke TCP segmenten TCP HeaderTCP Data Veld Max App Frag 1App Frag 2App Frag 3

27 TCP Fragmentatie De transportlaag verzorgt de feitelijke fragmentatie. De transportlaag verzorgt de feitelijke fragmentatie. Transparantie op het niveau van de applicatielaag. Transparantie op het niveau van de applicatielaag. Applicatie Transport Internet Applicatie Bericht TCP Segment

28 TCP Fragmentatie Wat is nu de maximum grootte van het TCP data veld? Wat is nu de maximum grootte van het TCP data veld? Complex Complex Maximum Segment Size (MSS) Maximum Segment Size (MSS) Maximum grootte van het dataveld in het TCP segment. Maximum grootte van het dataveld in het TCP segment. NIET de maximum grootte van het segment als geheel! NIET de maximum grootte van het segment als geheel!

29 TCP Fragmentatie MSS Default-waarde is 536 octetten MSS Default-waarde is 536 octetten Minimum IP pakketgrootte dat elk netwerk moet ondersteunen is 576 octetten. Minimum IP pakketgrootte dat elk netwerk moet ondersteunen is 576 octetten. Grotere IP pakketten KUNNEN gefragmenteerd worden. Afhankelijk van de MTU. Grotere IP pakketten KUNNEN gefragmenteerd worden. Afhankelijk van de MTU. IP en TCP header zijn elk 20 octetten (zonder opties) IP en TCP header zijn elk 20 octetten (zonder opties) Dit resulteert in de default MSS van 536 Dit resulteert in de default MSS van 536 Als er opties zijn ingeschakeld in de TCP of IP- header, wordt MSS dan groter of kleiner? Als er opties zijn ingeschakeld in de TCP of IP- header, wordt MSS dan groter of kleiner?

30 MTU Maximale Transfer Unit (MTU) Maximale Transfer Unit (MTU) Grootste IP pakket dat een netwerk accepteert. Grootste IP pakket dat een netwerk accepteert. IP Pakket MTU

31 IP Fragmentatie Als het IP pakket langer is dan de MTU, dan maakt de router er IP-fragmenten van. Als het IP pakket langer is dan de MTU, dan maakt de router er IP-fragmenten van. Een fragment is nog steeds een IP pakket Een fragment is nog steeds een IP pakket IP Pakket 21 IP Pakketten Fragmentatie MTU 3

32 IP Fragmentatie Wat wordt gefragmenteerd? Wat wordt gefragmenteerd? Alleen het oorspronkelijke IP data veld Alleen het oorspronkelijke IP data veld Nieuwe headers Nieuwe headers IP Pakket 21 IP Pakketten Fragmentatie MTU 3

33 IP Fragmentaties Kan meer dan 1 keer voorkomen. Kan meer dan 1 keer voorkomen. Bestemming Host Internet Proces Bron Host Internet Proces Fragmentatie

34 Defragmentatie Defragmentatie gebeurt maar 1 keer! Alleen bij de bestemmings host! Defragmentatie gebeurt maar 1 keer! Alleen bij de bestemmings host! Bestemming Host Internet Proces Defragmentatie Bron Host Internet Proces

35 Fragmentatie en IP velden More Fragments veld (1 bit) flags- veld More Fragments veld (1 bit) flags- veld 1 als er meerdere fragmenten zijn. 1 als er meerdere fragmenten zijn. 0 als dat niet zo is. 0 als dat niet zo is. IP-proces bij host zet MF-veld op 0. IP-proces bij host zet MF-veld op 0. Routers zetten MF veld op 1 behalve bij het laatste fragment. Daar wordt MF op 0 gezet. Routers zetten MF veld op 1 behalve bij het laatste fragment. Daar wordt MF op 0 gezet Originele IP PakketFragmenten

36 Identification Field IP pakket heeft een 16-bit Identification field IP pakket heeft een 16-bit Identification field Total Length in bytes (16) Time to Live (8) Options (if any) Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Source IP Address Destination IP Address Header Checksum (16)Protocol (8) PAD Data Field

37 Identification Field Het IP-proces op de source plaatst een random-getal in dit veld. Het IP-proces op de source plaatst een random-getal in dit veld. Is bij ieder IP-pakket weer anders. Is bij ieder IP-pakket weer anders. Total Length in bytes (16) Time to Live (8) Version (4) Hdr Len (4) TOS (8) Identification (16 bits)Flags (3)Fragment Offset (13) Header Checksum (16)Protocol (8)

38 Identification Field Als een router fragmenteert, dan wordt het originele IF-getal gekopieerd in alle fragmenten. Als een router fragmenteert, dan wordt het originele IF-getal gekopieerd in alle fragmenten. 47 Original IP PacketFragments

39 Identification Field Doel is simpel Doel is simpel Het IP-proces weet op zo’n manier welk fragment bij welk pakket hoort. Het IP-proces weet op zo’n manier welk fragment bij welk pakket hoort. Werkt natuurlijk ook goed als er vaker gefragmenteerd wordt (kopie van kopie) Werkt natuurlijk ook goed als er vaker gefragmenteerd wordt (kopie van kopie)

40 Fragmentatie: IP Fragmentatie IP Fragmentatie Data veld van een groot IP pakket wordt gefragmenteerd. Data veld van een groot IP pakket wordt gefragmenteerd. Fragmenten passen binnen de MTU Fragmenten passen binnen de MTU Fragmentatie wordt gedaan door routers Fragmentatie wordt gedaan door routers Fragmentatie mag meer dan 1 keer plaatsvinden Fragmentatie mag meer dan 1 keer plaatsvinden

41 Defragmentatie: IP Defragmentatie IP Defragmentatie Defragmentatie wordt maar 1 keer gedaan, namelijk bij de ontvangende host. Defragmentatie wordt maar 1 keer gedaan, namelijk bij de ontvangende host.

42 Defragmentatie: Alle gefragmenteerde pakketten die bij hetzelfde oorspronkelijke pakket behoren, hebben hetzelfde IF getal. Alle gefragmenteerde pakketten die bij hetzelfde oorspronkelijke pakket behoren, hebben hetzelfde IF getal. More Fragments veld maakt duidelijk of er nog meer fragmenten komen die tot hetzelfde pakket behoren. More Fragments veld maakt duidelijk of er nog meer fragmenten komen die tot hetzelfde pakket behoren.

43 ICMP Internet Control Message Protocol Internet Control Message Protocol ICMP is het protocol voor transport van management-informatie. ICMP is het protocol voor transport van management-informatie. IP en ICMP zijn ontworpen om samen te werken. IP en ICMP zijn ontworpen om samen te werken. ICMP-berichten getransporteerd in het dataveld van een IP-pakket. Dus ICMP zelf zit op de transportlaag (TCP). ICMP-berichten getransporteerd in het dataveld van een IP-pakket. Dus ICMP zelf zit op de transportlaag (TCP).

44 ICMP Verschillende soorten ICMP Berichten Verschillende soorten ICMP Berichten 1. Error messages. 1. Error messages. Let op: het gaat hier niet om de foutcorrectie van data, maar management-informatie. Let op: het gaat hier niet om de foutcorrectie van data, maar management-informatie. Error Message

45 ICMP Verschillende soorten ICMP berichten Verschillende soorten ICMP berichten ICMP query request vraagt of de host actief is. ICMP query request vraagt of de host actief is. Host stuurt een query response terug. Host stuurt een query response terug. Ook “Echo” en “Ping” genoemd. Ook “Echo” en “Ping” genoemd. Echo Request Echo Response

46 ICMP Verschillende ICMP berichten. Verschillende ICMP berichten. Flow control: Source quench bericht vraagt om snelheid te verlagen. Flow control: Source quench bericht vraagt om snelheid te verlagen. Source Quench

47 Source Quench Eenvoudige vorm van flow-control Eenvoudige vorm van flow-control Als een zendende host een source quench krijgt dan gaat hij langzamer zenden Als een zendende host een source quench krijgt dan gaat hij langzamer zenden Als er nog een source quench bericht komt dan gaat hij nog langzamer zenden Als er nog een source quench bericht komt dan gaat hij nog langzamer zenden Als de source quench berichten stoppen, gaat de snelheid weer langzaam omhoog. Als de source quench berichten stoppen, gaat de snelheid weer langzaam omhoog.

48 ICMP ICMP kent nog meer management- berichten. ICMP kent nog meer management- berichten. Alleen een paar belangrijke zijn genoemd. Alleen een paar belangrijke zijn genoemd.

49 IP- en Datalink laag adressen. Iedere host en router in een subnet hebben een datalink-laag adres. Iedere host en router in een subnet hebben een datalink-laag adres. Dit adres staat in het frame wat op de datalink-laag actief is (bijv. HDLC) Dit adres staat in het frame wat op de datalink-laag actief is (bijv. HDLC) Bijv. 48-bit MAC-adres voor LANs of HDLC-adres in point-point verbindingen. Bijv. 48-bit MAC-adres voor LANs of HDLC-adres in point-point verbindingen. Subnet DA DL Frame voor Subnet

50 Adressen Elke host en router hebben ook een IP- adres. Specificeert lokatie in het wereldwijde internet. Elke host en router hebben ook een IP- adres. Specificeert lokatie in het wereldwijde internet. Subnet


Download ppt "13-11-20011 Het TCP/IP referentiemodel 2 Heterogene Netwerken Hoorcollege 2."

Verwante presentaties


Ads door Google