Download de presentatie
De presentatie wordt gedownload. Even geduld aub
1
Het TCP/IP referentiemodel 2
Heterogene Netwerken Hoorcollege 2
2
Multiplexen Het dataveld bij IP-pakketten kan bestaan uit:
TCP segmenten UDP datagrammen ICMP management info (later) RIP berichten (later) IP Data Veld IP Header
3
Multiplexen Stroom van IP-pakketten UDP IP-H TCP IP-H UDP IP-H ICMP
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. TCP UDP UDP IP-H IP ICMP Aankomst van pakketten IP Proces
5
Multiplexen Het IP-proces aan de ontvangstkant moet dus weten wat er in het dataveld zit. IP Data Veld IP Header
6
Multiplexen 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 1700. Version (4) Hdr Len (4) TOS (8) Total Length in bytes (16) Identification (16 bits) Flags (3) Fragment Offset (13) Time to Live (8) Protocol (8) Header Checksum (16) Source IP Address Destination IP Address …
7
Multiplexen Bij TCP/UDP velden die analoog zijn. TCP enUDP
Identificatie van het type info in het dataveld. TCP enUDP Zogenaamde Poort nummers (TCP-term voor TSAP) 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) Reserved (6) Flags (6) Window Size (16)
8
Terug naar TCP Sequence Number Field Initial Sequence Number
Acknowledgement Number Field
9
TCP TCP is betrouwbaar De volgorde van IP-pakketten is niet gegarandeerd. TCP is hiervoor verantwoordelijk. 5 3 4 2 1
10
TCP TCP is betrouwbaar Ieder correct TCP-segment wordt bevestigd.
Bron Transport Proces Bestemming Transport Proces ACK
11
TCP Segment 3? Elk TCP-segment moet een volgnummer hebben.
Eenvoudigst: 1,2,3,4,5,6,7 Handig om verloren segmenten of problemen in de volgorde te ontdekken TCP doet het echter complexer 3? 1 4 2 5
12
Sequence Number (32 bits)
TCP sequence nummers 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) Reserved (6) Flags (6) Window Size (16) TCP Checksum (16) Urgent Pointer (16) Options (if any) PAD Data Field
13
Met eerste Sequence Nummer (79)
TCP Sequence Nummers Het eerste sequence-nummer is niet 1 maar een random-getal geselecteerd door het zendend TCP-proces (bijv. 79). TCP Header 79 TCP Data veld 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. TCP Segment 1 79 TCP Segment TCP Segment 3 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.) 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.
TCP Segment Bron TCP Proces Bestemming TCP Proces ACK
17
Acknowledgement Number (32 bits)
TCP Acknowledgements 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) Reserved (6) Flags (6) Window Size (16) TCP Checksum (16) Urgent Pointer (16) Options (if any) PAD Data Field
18
TCP Acknowledgement Nummers
Acknowledgement Number field bevat het volgende octet dat verwacht wordt. TCP 1 79 TCP TCP 80 is AckNum waarde 83 is AckNum waarde 85 is AckNum waarde
19
TCP Acknowledgement Nummer
Vraag: Een TCP segment bevat de volgende data-octetten. 567, 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 acknowledgement nummer veld van het TCP-proces te staan dat de ontvangst bevestigd? Ga uit van correcte overdracht.
20
TCP Flow Control Flow Control Een TCP proces zend te snel
De ontvanger moet de transmissiesnelheid regelen. Dit heet flow control Te veel Data TCP Proces TCP Proces Flow Control bericht
21
TCP Flow Control 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) Reserved (6) Flags (6) Window Size (16) TCP Checksum (16) Urgent Pointer (16) Options (if any) PAD Data Field
22
Acknowledgement met Window Size veld
TCP Flow Control Hoeveel octetten mag de zender sturen gerekend vanaf het laatste bevestigde segment. Data TCP Proces TCP Proces Acknowledgement met Window Size veld
23
TCP Flow Control Voorbeeld TCP segment bevat octetten 45-89
Ack-nummer wordt 90 Als de waarde in het Window Size veld 50 is, dan: Mag de zender doorgaan tot octet 140 (90 plus 50) 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) 1-44 45-79 80-419 Doorgaan tot 480 400 1-44 45-79 80-419 Doorgaan tot 920 500
25
Applicatie Laag bericht
TCP Fragmentatie 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. Applicatie Laag bericht TCP Data Veld Max TCP Header
26
TCP Fragmentatie Applicatielaag bericht moet gefragmenteerd worden.
Komt in afzonderlijke TCP segmenten App Frag 1 App Frag 2 App Frag 3 TCP Data Veld Max TCP Header
27
TCP Fragmentatie De transportlaag verzorgt de feitelijke fragmentatie.
Transparantie op het niveau van de applicatielaag. Applicatie Applicatie Bericht Transport TCP Segment TCP Segment Internet
28
TCP Fragmentatie Wat is nu de maximum grootte van het TCP data veld?
Complex Maximum Segment Size (MSS) Maximum grootte van het dataveld in het TCP segment. NIET de maximum grootte van het segment als geheel!
29
TCP Fragmentatie MSS Default-waarde is 536 octetten
Minimum IP pakketgrootte dat elk netwerk moet ondersteunen is 576 octetten. Grotere IP pakketten KUNNEN gefragmenteerd worden. Afhankelijk van de MTU. IP en TCP header zijn elk 20 octetten (zonder opties) 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?
30
MTU Maximale Transfer Unit (MTU)
Grootste IP pakket dat een netwerk accepteert. MTU IP Pakket
31
IP Fragmentatie 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 MTU IP Pakket 3 2 1 IP Pakketten Fragmentatie
32
IP Fragmentatie Wat wordt gefragmenteerd?
Alleen het oorspronkelijke IP data veld Nieuwe headers MTU IP Pakket 3 2 1 IP Pakketten Fragmentatie
33
IP Fragmentaties Kan meer dan 1 keer voorkomen. Bron Host Internet
Proces Bestemming Host Internet Proces Fragmentatie
34
Defragmentatie Defragmentatie gebeurt maar 1 keer! Alleen bij de bestemmings host! Bron Host Internet Proces Bestemming Host Internet Proces Defragmentatie
35
Fragmentatie en IP velden
More Fragments veld (1 bit) flags-veld 1 als er meerdere fragmenten zijn. 0 als dat niet zo is. 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. 1 1 Originele IP Pakket Fragmenten
36
Identification (16 bits)
Identification Field IP pakket heeft een 16-bit Identification field Version (4) Hdr Len (4) TOS (8) Total Length in bytes (16) Identification (16 bits) Flags (3) Fragment Offset (13) Time to Live (8) Protocol (8) Header Checksum (16) Source IP Address Destination IP Address Options (if any) PAD Data Field
37
Identification Field Het IP-proces op de source plaatst een random-getal in dit veld. Is bij ieder IP-pakket weer anders. Version (4) Hdr Len (4) TOS (8) Total Length in bytes (16) Identification (16 bits) Flags (3) Fragment Offset (13) Time to Live (8) Protocol (8) Header Checksum (16)
38
Identification Field Als een router fragmenteert, dan wordt het originele IF-getal gekopieerd in alle fragmenten. 47 47 47 47 Original IP Packet Fragments
39
Identification Field Doel is simpel
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)
40
Fragmentatie: IP Fragmentatie
Data veld van een groot IP pakket wordt gefragmenteerd. Fragmenten passen binnen de MTU Fragmentatie wordt gedaan door routers Fragmentatie mag meer dan 1 keer plaatsvinden
41
Defragmentatie: IP Defragmentatie
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. More Fragments veld maakt duidelijk of er nog meer fragmenten komen die tot hetzelfde pakket behoren.
43
ICMP Internet Control Message Protocol
ICMP is het protocol voor transport van management-informatie. 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).
44
ICMP Verschillende soorten ICMP Berichten 1. Error messages.
Let op: het gaat hier niet om de foutcorrectie van data, maar management-informatie. Error Message
45
ICMP Verschillende soorten ICMP berichten
ICMP query request vraagt of de host actief is. Host stuurt een query response terug. Ook “Echo” en “Ping” genoemd. Echo Request Echo Response
46
ICMP Verschillende ICMP berichten.
Flow control: Source quench bericht vraagt om snelheid te verlagen. Source Quench
47
Source Quench Eenvoudige vorm van flow-control
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 de source quench berichten stoppen, gaat de snelheid weer langzaam omhoog.
48
ICMP ICMP kent nog meer management-berichten.
Alleen een paar belangrijke zijn genoemd.
49
IP- en Datalink laag adressen.
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) 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. Subnet Subnet Subnet
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.