Download de presentatie
De presentatie wordt gedownload. Even geduld aub
1
Hoofdstuk 5: Computernetwerken
1. Inleiding 2. Fysische laag 3. Dataverbindingslaag 4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
2
niet-grafische terminals
1. Inleiding mainframe niet-grafische terminals
3
1. Inleiding (verv.) PC of workstation server
4
1. Inleiding (verv.) 1.1 Waarom Computernetwerken?
1.2 Componenten in een netwerk 1.3 Netwerkarchitectuur 1.4 OSI-referentiemodel 1.5 Internet model
5
1.1 Waarom Comp.netwerken? Gemeenschappelijk gebruik hulpmiddelen
apparaten (drukker, scanner, supercomputer, …) gegevens (bestand, gegevensbank, …) Betrouwbaarheid beschikbaarheid reserve computer: taken overnemen reserve kopieën van bestanden, ... Kostenreductie Communicatiekanaal
6
1.1 Waarom Comp.netw.? (verv.)
Gemeenschappelijk gebruik hulpmiddelen Betrouwbaarheid beschikbaarheid Kostenreductie prijs/prestatie: n * prijs(R) < prijs (n * R) dure randapparatuur: print-server, file-server, ... uitbreiden eenvoudiger: extra pc vervangen computer Communicatiekanaal e-post gewone post bestanden overhalen cassettes, floppies versturen elektronisch berichtenbord, e-krant, ...
7
1.2 Componenten v/e netwerk
Beeld van de gebruiker Communicatienetwerk Computernetwerk vs Gedistribueerd systeem Opbouw van een communicatienetwerk lange afstand communicatienetwerk lokaal netwerk
8
Communicatie-netwerk
Beeld van de gebruiker S4 Communicatie-netwerk S1 S3 S2 A B
9
Beeld van de gebruiker (verv.)
Communicatienetwerk vergelijk telefoonnetwerk centrales, kabels, aansluitpunten telefoontoestellen, faxtoestellen kanaal met voldoende bandbreedte (3000 Hz)
10
Beeld van de gebruiker (verv.)
Computernetwerk communicatienetwerk + aangesloten systemen (PCs, …) systemen autonoom + identificeerbaar vb. Gebruiker A wil op B werken
11
Beeld van de gebruiker (verv.)
Gedistribueerd systeem computernetwerk 1 virtueel systeem transparante toegang tot drukker transparante toegang tot bestand transparant “werk” verdelen
12
Opbouw v/e comm.netwerk
Lange afstand comm.-netwerk WAN (Wide Area Network) onderling verbonden “schakelaars” verbindingen (coaxiale kabel, glasvezel, …) bandbreedte = | hoogste doorgel. freq. - laagste freq. | routering
13
Lange afstand comm. netwerk
B A B S1 S3 S1 S4 S3 S1 S2 S4 S3
14
Opbouw v/e comm.netwerk (2)
Lokaal Netwerk LAN (Local Area Network) binnen 1 gebouw (< 1 km) geen schakelaars communicatiebord in PC bus- of ringnetwerk routering niet nodig
15
Lokaal Netwerk (LAN)
16
1.3 Netwerkarchitectuur Communicatie niet eenvoudig
betrouwbaar bit-transport bepalen van route opsplitsen in pakketten samenvoegen van pakketten … Systematische aanpak Protocol + Gelaagde architectuur
17
1.3 Netwerkarchitectuur (verv.)
Protocol “regels” aard en samenstelling van boodschappen reactie op boodschap Dienst aan gebruikers van “entiteit” vb. foutvrij transport van pakketten entiteit entiteit
18
1.3 Netwerkarchitectuur (verv.)
Gelaagde architectuur Logische comm. protocol 2 entiteit entiteit Laag 2 dienst dienst protocol 1 entiteit entiteit Laag 1
19
1.3 Netwerkarchitectuur (verv.)
Gelaagde architectuur protocol 2 entiteit entiteit Laag 2 dienst dienst protocol 1 entiteit entiteit Laag 1
20
Vb 1: Discuterende Filosofen
Ik vind dat men mensen niet mag klonen. Filosoof (Tokio) Filosoof (Gent) taal Tolk Tolk telefoon fax (brief) comm. kanaal Secretaris telefoonnetwerk Secretaresse
21
Vb 2: Comm. ts Processen x y
Proces A op computer x vraagt aan proces B op computer y om bestand “brief.doc” op te sturen Proces A Proces B brief.doc x y
22
Vb 2: Comm. ts Processen (verv.)
Protocol A zend “brief.doc” B 1200 bytes OK Beste rector, ... OK x y
23
Vb 2: Comm. ts Processen (verv.)
Protocol: “dialoog” Hoe boodschappen overgebracht belangrijk Transportlaag: comm. ts. processen identificatie: (machinenaam, procesnaam) Netwerklaag: transport over netwerk identificatie: machinenaam
24
Vb 2: Comm. ts Processen (verv.)
A B Transport Netwerk Processen B C D Transport Netwerk x y Communicatie- netwerk Processen B D Transport Netwerk z
25
Vb 2: Comm. ts Processen (verv.)
zend “brief.doc” Proces A Proces B Transport-laag op x Transport-laag op y zend “brief.doc” y, B x, A B, A zend “brief.doc”
26
Vb 2: Comm. ts Processen (verv.)
B, A Transport-laag op x Transport-laag op y y x B, A B, A B, A y, x Netwerk-laag op x Netwerk-laag op y
27
Vb 2: Comm. ts Processen (verv.)
B, A zend “brief.doc” voorstellen door: B, A zend “brief.doc”
28
Vb 2: Comm. ts Processen (verv.)
Proces A zend “brief.doc” Proces B y, B Transport-laag op x Transport-laag op y zend “brief.doc” x, A B, A zend “brief.doc” y x Netwerk-laag op x Netwerk-laag op y B, A zend ... zend “brief.doc” y, x B, A zend “brief.doc”
29
Samenvatting proces gegevens proces gegevens transport hoofding
netwerk hoofding
30
1.4 OSI-Referentiemodel Ontwerp netwerk = complex
Decompositie: manieren OSI: Open System Interconnection open: comm. ts. versch. systemen referentie: raamwerk voor ontw. protocols functionaliteit van elke laag gedefinieerd kan door versch. protocols gerealiseerd
31
1.4 OSI-Referentiemodel (verv.)
7 lagen hoogste vier: ts. aangesloten systemen S4 S1 y S3 S2 x
32
1.4 OSI-Referentiemodel (verv.)
Hoofdstuk 6: Computernetwerken 1.4 OSI-Referentiemodel (verv.) protocol applicatielaag applicatie presentatie sessie transport netwerk dataverbinding fysische applicatie presentatie sessie transport netwerk dataverbinding fysische protocol presentatielaag protocol sessielaag protocol transportlaag protocol netw. laag N D F N D F protocol data. laag protocol fys. laag systeem x S1 S systeem y Structuur en Organisatie van Computersystemen
33
1.4 OSI-Referentiemodel (verv.)
Fysische laag versturen van bits over fysische kabel aard van kabel kenmerken van connectoren voorstellen van bits op kabel Dataverbindingslaag creatie van foutvrij comm. kanaal herkennen van pakketjes detectie van fouten controle op stroom van pakketjes (flow control)
34
1.4 OSI-Referentiemodel (verv.)
Netwerk laag verkeer van pakketjes door 1/# netwerken 2 soorten diensten: virtuele verbindingen datagram dienst routebepaling kostendoorrekening onderling verbinden van netwerken + routebepaling doorheen die netwerken
35
1.4 OSI-Referentiemodel (verv.)
Transport laag betrouwbaar comm. kanaal ts. eindsystemen efficiënt gebruik comm. Netwerken multiplexing meerdere verbindingen tussen eindsystemen opdelen in pakketjes + samenvoegen controle op boodschappenstroom (flow control)
36
1.4 OSI-Referentiemodel (verv.)
Sessielaag extra hulpmiddelen voor samenwerking via betrouwbaar comm. kanaal organisatie van dialoog: vb. Beurtelings zenden plaatsen van synchronisatiepunten (voor hervatten van dialoog na fout)
37
1.4 OSI-Referentiemodel (verv.)
Presentatielaag behoud van betekenis van informatie keuze van voorstelling van gegevens “op de kabel” ASCII vs EBCDIC 16-bit, 32-bit, … integers met 2-complementvoorst. ... ev. vercijfering van gegevens (confidentialiteit!) ev. compressie van gegevens
38
1.4 OSI-Referentiemodel (verv.)
Applicatielaag hoogste laag applicaties, geschreven door eindgebruikers sturing van robots, elektronisch geldverkeer, … standaard applicaties elektronische post (X400) overdracht van bestanden (FTAM) deelproblemen: RPC (remote procede call)
39
1.4 OSI-Referentiemodel (verv.)
Belangrijk referentiemodel Niet basis voor praktische protocols Definitie te lang geduurd Ondertussen: Internet groeiend succes
40
1.5 Internet model nooit formeel gedefinieerd geleidelijk aan gegroeid
slechts 5 lagen geen sessielaag (toch weinig functionaliteit) geen presentatielaag ( elk appl.protocol moet dit definiëren)
41
1.5 Internet Model (verv.) OSI referentiemodel Internet model
applicatie presentatie sessie transport netwerk dataverbinding fysische Applicatie transport netwerk dataverbinding fysische OSI referentiemodel Internet model
42
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
43
2. Fysische laag Basisbegrippen Digitale communicatie Modems
Schakeltechnieken
44
2.1 Basisbegrippen Analoog <> digitaal Periodieke signalen
G(t) = ak sin(2kf t) + bk cos(2kf t) Transmissiemedia Gevlochten koperparen Coaxiale kabels
45
2.2 Digitale Communicatie
Digitaal signaal: 0-en en 1-en Synchronisatie ts zender & ontvanger ev. speciaal bitpatroon begin/einde +5V 0V -5V
46
2.2 Digitale Communicatie (verv.)
Vervorming Verzwakking Beperkte bandbreedte G(t) = ak sin(2kf t) + bk cos(2kf t) Omgevingsfactoren: ruis +5V 0V -5V
47
2.3 Modems Digitaal signaal over analoog kanaal met beperkte bandbreedte Amplitude Frequentie Fase Combinaties
48
2.4 Schakeltechnieken Lijnschakelen Boodschapschakelen Pakketschakelen
49
Lijnschakelen 3 Fasen: vergelijk telefoonverbinding
opzetten van een verbinding ev. onderhandelen gebruik van de verbinding slechts kleine vertraging ( km/sec) verbreken van de verbinding vergelijk telefoonverbinding niet efficiënt voor communicatie tussen computers
50
Lijnschakelen (verv.) opdracht resultaat niet gebruikt tijd
51
Boodschapschakelen Verbindingen gemeensch. gebruikt
boodschap: schakelaar schakelaar Store-and-forward Grotere vertraging volledig ontvangen, dan pas verdergestuurd als verbinding vrij Variabele vertraging
52
Boodschapschakelen (verv.)
53
Pakketschakelen Boodschap opdelen in pakketjes
Afzonderlijk over netwerk verstuurd eventueel verschillende route Lijn slechts korte tijd bezet Vertragingen zijn variabel
54
Pakketschakelen (verv.)
1 2 3 4 5 6 3 6 1 5 4 2
55
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
56
3. Dataverbindingslaag Fysische laag: bits oversturen (onbetrouwbaar)
Fysische Laag Fysische Laag Hoofdopdracht: realiseren v. betrouwbaar kanaal Beperkingen: mogelijk: verwerkingssnelheid geen voorz. om systemen te synchroniseren
57
3. Dataverbindingslaag (verv.)
Inhoud 3.1 Taken 3.2 Algoritmen en Protocols 3.3 Protocol 1: Geen fouten, geen stroombeheersing 3.4 Protocol 2: Stroombeheersing, geen fouten 3.5 Protocol 3: Stroombeheersing, fouten mogelijk 3.6 Protocol 4: 1-bit venster protocol 3.7 Uitbreidingen
58
3.1 Taken M.O.: sommige taken door HW, andere door SW Afbaken van pakketjes begin & einde herkennen vb. bitpatroon: kan ook in pakket voorkomen! (0 inlassen na vijf 1-bits)
59
3.1 Taken (verv.) Detectie van fouten
zender: controlebits toevoegen aan pakket ontvanger: nagaan of correct ontvangen bijvoorbeeld pariteitsbit: 1-bit fout detecteren (on)even pariteit: # 1-bits in pakket is (on)even CRC (Cyclic Redundancy Check) fouten van meerdere bits detecteren indien fout: opnieuw zenden hoofding met volgnummer duplicaten herkennen (bij heruitzending)
60
3.1 Taken (verv.) Stroombeheersing flow control snelle zender overspoelt trage ontvanger ontvanger: expliciete/impliciete toelating om volgend pakket te sturen Pakket Layout Beginpatroon Hoofding Data Eindpatroon Controlesom HW v. Netwerklaag
61
3.2 Algoritmes en protocols
typedef struct {...} data_van_netwerklaag; typedef struct { int nr: …; /* veld van hoofding */ data_van_netwerklaag data; } pakket; void ontvang_van_netwerklaag (data_van_netwerklaag *d); /* na oproep verwijst d informatie die moet verstuurd worden*/ void geef_aan_netwerklaag (data_van_netwerklaag d); /* data in ontvangen pakket w. doorgegeven aan netwerklaag */ void verzend_pakket (pakket p); /* p wordt voor verzending doorgegeven aan fysische laag */ void ontvang_pakket (pakket *p); /* ontvang pakket p van de fysische laag */
62
3.2 Algoritmes & Protocols (verv.)
1 zender & 1 ontvanger 1-richting communicatie NWL (zender): onbeperkte hoeveelheid gegevens NWL (ontvanger): onbeperkte hoev. Bufferruimte ontvang_van_netwerklaag geef_aan_netwerklaag DVL (zender) DVL (ontvanger) verzend_pakket ontvang_pakket Fysische Laag Fysische Laag
63
3.3 Protocol 1: geen fouten, geen stroombeheersing
zender ontvanger Vertraging ts zenden en ontvangen tijd Zender kan onbeperkt zenden
64
3.3 Protocol 1: geen fouten, geen stroombeheersing (verv.)
Algoritme zender Algoritme ontvanger data_van_netwerklaag dnl; data_van_netwerklaag dnl; pakket p; pakket p; while (true){ while (true){ ontvang_van_netwerklaag(&dnl); ontvang_pakket(&p); p.info = dnl; geef_aan_netwerklaag(p.info); verzend_pakket(p); } }
65
3.3 Protocol 1: geen fouten, geen stroombeheersing (verv.)
Zender kan onbeperkt zenden ...
66
3.4 Protocol 2: geen fouten, wel stroombeheersing
zender ontvanger Ontvanger geeft expliciet toestemming voor sturen van volgend pakket tijd
67
3.4 Protocol 2: geen fouten, wel stroombeheersing (verv.)
Algoritme zender Algoritme ontvanger data_van_netwerklaag dnl; dnl: data_van_netwerklaag; pakket p, t; pakket p, t; while (true){ while (true){ ontvang_van_netwerklaag(&dnl); ontvang_pakket(&p); p.info = dnl; geef_aan_netwerklaag(p.info); verzend_pakket(p); verzend_pakket(t); ontvang_pakket(&t); } }
68
3.5 Protocol 3: fouten mogelijk, stroombeheersing
pakket niet ontvangen pakket wordt als foutief herkend (wordt niet doorgegeven aan Netwerklaag) stel herkend in procedure ontvang_pakket (de procedure keert niet terug, maar wacht op een volgend -correct- pakket van de fysische laag) bijgevolg: geen onderscheid tussen beide
69
3.5 Protocol 3: fouten mogelijk, stroombeheersing
Algoritme (2) zender Algoritme (2) ontvanger … ... while (true){ while (true){ ontvang_van_netwerklaag(&dnl); ontvang_pakket(&p); p.info = dnl; geef_aan_netwerklaag(p.info); verzend_pakket(p); verzend_pakket(t); ontvang_pakket(&t); } } zender ontvanger Impasse!!!
70
3.5 Protocol 3: fouten mogelijk, stroombeheersing (verv.)
zender ontvanger P0 P0.info P1 wekker P1 P1.info P2 P2.info
71
3.5 Protocol 3: fouten mogelijk, stroombeheersing (verv.)
zender ontvanger P2 P2.info wekker P2 Duplicaat!!! Pakketten nummeren onderscheid: nieuw heruitzending 1-bit nummer volstaat
72
3.5 Protocol 3: fouten mogelijk, stroombeheersing (verv.)
Zender: na zetten van wekker: 2 gebeurtenissen mogelijk wekker loopt af aankomst van een pakket gebeurtenis wacht_op_gebeurtenis(); geb := wacht_op_gebeurtenis(); { geb = AANKOMST of geb = WEKKER }
73
3.5 Protocol 3: fouten mogelijk, stroombeheersing (verv.)
Algoritme zender data_van_netwerklaag dnl; int volgend_volgnummer; /* 0 of 1 */ pakket p, t; gebeurtenis geb; /*AANKOMST of WEKKER*/ volgend_volgnummer = 0; if (geb == AANKOMST) { ontvang_van_netwerklaag(&dnl); stop_wekker(); while(true){ ontvang_pakket(&t); p.nr = volgend_volgnummer; ontvang_van_netwerklaag(&dnl); p.info = dnl; volgend_volgnummer = verzend_pakket(p); (volgend_volgnummer + 1) % 2; start_wekker(); } geb = wacht_op_gebeurtenis(); }
74
3.5 Protocol 3: fouten mogelijk, stroombeheersing (verv.)
Algoritme ontvanger data_van_netwerklaag dnl; int verwacht_volgnummer; pakket p, t; verwacht_volgnummer = 0; while(true){ ontvang_pakket(p); if (p.nr == verwacht_volgnummer) { geef_aan_netwerklaag(p.info); verwacht_volgnummer = (verwacht_volgnummer +1) % 2; } verzend_pakket(t); /*steeds nodig, ook als duplicaat ontvangen is */
75
3.5 Protocol 3: Corrrect??? (verv.)
zender ontvanger zender ontvanger I0 I0 I3 1 beschouwd als duplicaat I1 1 I1 wekker traag! I4 I1 1 I4 duplicaat I2 Legende: info nr
76
3.6 Protocol 4: 1-bit venster protocol
bedoeld voor gegevensverkeer in 2 richtingen Hier vereenvoudiging alleen verkeer in 1 richting Fout in protocol 3: Zender: Toelating foutief interpreteren Oplossing: Toelating bevat bevestiging v. laatst correct ontvangen pakket (acknowledgement)
77
3.6 Protocol 4: 1-bit venster protocol (verv.)
Algoritme zender data_van_netwerklaag dnl; int volgend_nr; /* 0..1 */ pakket p, ack; gebeurtenis geb; /*AANKOMST of WEKKER*/ volgend_volgnummer = 0; if (geb == AANKOMST) { ontvang_van_netwerklaag(&dnl); stop_wekker(); while(true){ ontvang_pakket(&ack); p.nr = volgend_nr; if (ack.nr == volgend_nr) { p.info = dnl; ontvang_van_netwerklaag (dnl); verzend_pakket(p); volgend_nr = (volgend_nr + 1) % 2; start_wekker(); } geb = wacht_op_gebeurtenis(); } }
78
3.6 Protocol 4: 1-bit venster protocol (verv.)
Algoritme ontvanger data_van_netwerklaag dnl; int verwacht_volgnummer; /* 0..1*/ pakket p, ack; verwacht_volgnummer = 0; while(true){ ontvang_pakket(&p); if (p.nr == verwacht_volgnummer) { geef_aan_netwerklaag(p.info); verwacht_volgnummer = (verwacht_volgnummer + 1) % 2; } ack.nr = p.nr; verzend_pakket(ack);
79
3.6 Protocol 4: 1-bit venster protocol (verv.)
zender ontvanger zender ontvanger I0 1 I0 I2 I2 I1 1 I1 wekker traag! I1 1 I3 1 I3 duplicaat 1 I2 Legende: info nr nr
80
3.7 Uitbreidingen beperkingen protocol 4:
als propagatietijd signaal onefficiënt gebruik van communicatiekanaal bijv. Satellietverbinding
81
3.7 Uitbreidingen (verv.) 200.000 km/s 36.000 km 64.000 bits/s
82
3.7 Uitbreidingen (verv.) 0 ms 125 ms 180 ms 360 ms 485 ms 845 ms
83
3.7 Uitbreidingen (verv.) Onefficiënt gebruik van kanaal:
1 pakket uitzenden: 125 ms, volgende pas na 845 ms = 15% nuttig gebruik van kanaal Oplossing: zender: mag meerdere pakketjes sturen bijv. 8 pakketjes zendvenster = 8 (max. 8 niet bevestigde pakketten) ontvanger: wat als pakket niet correct ontvangen? volgende ook verwerpen?
84
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
85
4. Lokale netwerken 4.1 Algemene Kenmerken 4.2 Ethernet Fysische Laag
Werkingsprincipe (3 Regels) Pakket Layout Diensten
86
4.2 Algemene Kenmerken Geografisch beperkt gebied Topologie:
geen afzonderlijke schakelaars / wel interfaceborden eenvoudige topologie: ring of bus Hoge transmissiesnelheden: 10Mbit/s Mbit/s Hoge kwaliteit: weinig fouten Gemeenschappelijk gebruikt kanaal protocol voor toegang tot fysische kanaal alle pakketten door iedereen ontvangen
87
4.1 Algemene Kenmerken (verv.)
bus ring
88
4.1 Algemene Kenmerken (verv.)
Gemeenschappelijk gebruikt kanaal: (vergelijk: kamer met mensen) gelijktijdige toegang mogelijk iedereen ontvangt elk pakket
89
4.1 Algemene Kenmerken (verv.)
Specifieke protocols: in dataverbindingslaag + fysische laag! netwerklaag: leeg (tenzij LANs verbonden) Dataverbindingslaag LLC: Logical Link Control (gemeensch. LANs) MAC: Medium Access Control verschillend voor elk soort LAN onbetrouwbaar transport van pakketten
90
4.1 Algemene Kenmerken (verv.)
LLC (vgl. Dataverbindingslaag in WANs) 2 soorten diensten: virtuele verbinding (perfect kanaal) datagram dienst (geen garantie aflevering v. pakket) LANs steeds datagram dienst dataverbindingslaag fysische laag LLC MAC fysische laag OSI Model Lokaal Netwerk
91
4.2 Ethernet IEEE 802.3 Busnetwerk
Fysische Kabel (versch. alternatieven) dunne coaxiale kabel (thin Ethernet) gevlochten koperparen (twisted pair): meest flexibele bekabeling dikke coaxiale kabel (thick Ethernet): verouderd
92
4.2 Ethernet Fysische Laag
3 soorten bekabeling:
93
4.2 Ethernet Fysische Laag
Elke computer: interface bord verbinding met coaxiale kabel
94
4.2 Ethernet Fysische Laag (verv.)
Pakket versturen: Signaal plant zich voort naar beide uiteinden aansluitpunt computersysteem coaxiale kabel signaal
95
4.2 Ethernet Fysische Laag (verv.)
2 Computers gelijktijdig versturen: elektrisch signaal gewijzigd geen van beide pakketten correct herkend BOTSING (nog niet detecteerbaar door beide systemen) botsing
96
4.2 Ethernet Fysische Laag (verv.)
Botsing: weet nog niet dat botsing opgetreden is hoort botsing
97
4.2 Ethernet Fysische Laag (verv.)
Enkele cijfers |kabel| = 1000 m 2 PCs nabij de twee uiteinden transmissiesnelheid = 10 Mbit/s |pakket| = 1kByte transmissiesnelheid (signaal) = km/s uitzenden pakket = 800 s bit (andere kant v/d kabel) = 5 s
98
4.2 Ethernet Fysische Laag (verv.)
Worst Case (detectie van botsing) PC begint te zenden na > 5 s: alle andere systemen op hoogte andere PC begint net iets daarvoor te zenden na > 10 s: eerste zender hoort botsing (indien hij nog aan het zenden is!!! |pakket| )
99
4.2 Ethernet (verv.) Werkingsprincipe
Vergelijk: ruimte met # mensen geen moderator aanwezig Stel: computer mag op elk ogenblik beginnen sturen beide pakketten foutief ontvangen globale verlies = 800 s s = 1600 s < 18% v/d capaciteit benutten! 1e PC begint versturen 2e PC begint versturen 800 s tijd
100
4.2 Ethernet Werkingsprincipe (verv.)
Regel 1: Begin pas te versturen als kabel vrij is (computer vangt geen signaal op) Botsingen niet uitgesloten pas na 5 s signaal aan andere uiteinde
101
4.2 Ethernet (verv.) Werkingsprincipe
Toepassing van regel 1: Computer mag alleen starten indien kabel vrij is beide pakketten foutief ontvangen globale verlies = 5 s s = 805 s < 36% v/d capaciteit benutten! 1e PC begint versturen 800 s 2e PC begint versturen 800 s tijd
102
4.2 Ethernet Werkingsprincipe (verv.)
Regel 2: Blijf luisteren tijdens zenden Stop zodra botsing vastgesteld Zend kort stoorsignaal Bla bla ...
103
4.2 Ethernet (verv.) Werkingsprincipe
Toepassing van regels 1 & 2: Computer mag alleen starten indien kabel vrij is Stop met zenden zodra botsing vastgesteld wordt geen pakketten ontvangen globale verlies 5 s + 5 s 10 s Verlies (10 s) <<< tijd voor verzenden pakket (800 s) 1e PC begint versturen 5 s + ... 2e PC begint versturen 5 s + ... tijd
104
4.2 Ethernet Werkingsprincipe (verv.)
Regel 3: Na botsing: wacht willekeurige tijd herhaalde botsingen: wachttijd neemt toe na 16 mislukkingen: faling melden
105
4.2 Ethernet Werkingsprincipe (verv.)
CSMA/CD MA Multiple Access CS Carrier Sense CD Collision Detect Eigenschappen: - belasting vertraging - geen garantie uitsturen - belasting tot 90% (real time systemen!?!) v/d capaciteit nuttig gebruikt - CD (door 2 systemen) indien |pakket| |pakket| 64 bytes
106
4.2 Ethernet (verv.) Pakket Layout
Elke verbindingskaart uniek (wereldwijd) adres = 6 bytes “broadcast” adres naar alle aangesloten systemen Hoofding - bestemmeling - afzender - ... Data Controlesom
107
4.2 Ethernet (verv.) Diensten
MAC + LLC: datagram dienst voor netwerklaag typedef struct{...} ethernet_adres; /* 6 byte adres */ typedef struct {...} info; /* data van de netwerklaag */ void zend_pakket (ethernet_adres naar, info data); void ontvang_pakket (ethernet_adres *van, info *data);
108
4.2 Ethernet (verv.) Bekabeling
109
Centraal opgestelde hubs
4.2 Ethernet (verv.) Hubs Centraal opgestelde hubs Twisted pairs vanaf iedere werkplek naar hubs (lengte < 100m) Gemeenschappelijk kanaal in hub (interne werking principieel niet belangrijk) Signalen over twisted pair gestandaardiseerd Resultaat: Eenvoudiger beheer Nieuwe varianten: fast Ethernet, geschakeld Ethernet
110
4.2 Ethernet (verv.) Fast Ethernet
10 Mbps 100 Mbps 10 Mbps: 10s <> 800 s efficiënte werking 100 Mbps: 10s <> 80 s ?? Reductie lengte kabel: 2,5km 250m 10 Mbps m 100 Mbps + 100m 100 Mbps: 1s <> 80 s efficiënte werking
111
4.2 Ethernet (verv.) Geschakeld Ethernet
= hub + … bufferruimte voor inkomende pakketten per lijn Botsingvrij transport tussen buffers = switch Ethernet? Ja: zelfde standaard voor communicatie over lijnen Neen: werking Nieuwe probleem: Naar welke buffer een pakket sturen?
112
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
113
5. Netwerklaag 5.1 Diensten 5.2 Protocol 5.3 Routering
Dataverbindingslaag: communicatie tussen direct verbonden computersyst. Netwerklaag: communicatie tussen verwijderde computersystemen mogelijk maken 5.1 Diensten 5.2 Protocol 5.3 Routering
114
5. Netwerklaag (verv.) S2 S1 S3 S4 A B N D F netwerk dataverb.
protocol netw. laag protocol data. laag protocol fys. laag netwerk dataverb. fysische N D F protocol netw. laag protocol data. laag protocol fys. laag netwerk dataverb. fysische S1 S2 A B S4 S3
115
5.1 Diensten 2 soorten diensten: Elk computersysteem: netwerkadres
virtuele verbinding datagram dienst geen garantie van aflevering bijv. door falen van schakelaar volgorde aflevering kan volgorde verzending bijv. door volgen van andere route Elk computersysteem: netwerkadres internationale standaarden
116
5.2 Diensten (verv.) typedef struct{...} netwerk_adres;
typedef struct{...} info; /* data van de transportlaag */ void zend_pakket (netwerk_adres naar, info data); void ontvang_pakket (netwerk_adres *van, info *data);
117
5.2 Protocol Hier: alleen datagram dienst NWL (Computer A, S1, S3):
pakket over bepaalde verbinding sturen Hoofding - netwerkadres bestemmeling - netwerkadres afzender - protocol transportlaag - ... Data van Transportlaag
118
5.3 Routering Schakelaar:
routeringstabel: per bestemming: uitgaande lijn A B S4 S3 D F E S1 C S2 1 2 3 nr S1 S2 S3 S4 A B C D E F
119
5.3 Routering (verv.) A B S4 S3 D F E S1 C S2 1 2 3 nr S1 S2 S3 S4 A B C D E F : A B: : A S1 (1) S2 (1) S3 (1) B : F C: : F S4 (2) S2 (0) C : E D: : E S1 (2) S4 (3) S3 (0) D
120
5.3 Routering (verv.) Statische routering: Routeringsprotocol
tabellen ingevuld door netwerkbeheerder pakketten (X): dezelfde route uitvallen/overbelasting lijn/schakelaar Routeringsprotocol schakelaars wisselen informatie uit (comp.syst.) kost van verbinding berekend routes berekend
121
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
122
6. Netwerken verbinden Niet alle computersystemen op 1 netwerk:
bedrijf: volledige controle over eigen netwerk toch kunnen communiceren met andere bedrijven binnen organisatie: verschillende netwerken vb. KULeuvenNet: elk departement eigen netwerk Een internet (internetwork) verbinden van verschillende netwerken Internet = wereldwijde internet (IP protocol)
123
6. Netwerken verbinden (verv.)
WAN-1 WAN-2 WAN-3 LAN-1 LAN-2 R1 R2 R3 R4 R5 Schakelaars Ri (routers) 5.1 Adressering 5.2 Diensten en Protocol 5.3 Routering
124
Netwerk Computersysteem
6.1 Adressering 1 globaal, uniform adresseringsschema Internet: adres = 32 bits (dotted decimal) verschillende soorten adressen Omzetting Internet-adres Lokaal adres vertaaltabellen of vertaalprotocol Netwerk Computersysteem
125
6.1 Adressering (verv.) Voorbeelden: 134.58.39.91
KULeuvenNet Netwerk van Comp.Wet. Masker: scheiden van 2 delen van een adres adres & masker = netwerk-gedeelte
126
6.2 Diensten en Protocol Internet netwerklaag: alleen datagram dienst
protocol = IP (Internet Protocol) 1 soort pakket hoofding = 20 bytes mogelijkheid om IP-pakket op te splitsen indien onmogelijk verder te sturen: foutboodschap naar zender (ander protocol)
127
6.2 Diensten en Protocol (verv.)
Hoofding: (20 bytes): adres-zender 32 bits adres-bestemmeling 32 bits identificatie 16 bits lengte 16 bits (max = ) protocol transportlaag 8 bits time-to-live 8 bits (max # te passeren routers) type-of-service 8 bits (verwachte dienstverlening) overige … opsplitsing van IP pakket, afz. doorsturen, later weer samenvoegen … versie nummer, controle bits (hoofding), ...
128
6.3 Routering WAN-1 - - R2 R1 R4 Iedere router: WAN-2 R2 - - R1 R3
naar R1 R2 R3 R4 R5 WAN R2 R1 R4 WAN-2 R2 - - R1 R3 WAN-3 R4 R LAN-1 - R1 R4 - R4 LAN-2 R4 R3 R5 R5 - Iedere router: routeringstabel WAN-1 WAN-2 WAN-3 LAN-1 LAN-2 R1 R2 R3 R4 R5 volgende router (op zelfde netwerk) op pad naar bestemm. vaak verzuimingang: kortere tabel
129
6.3 Routering naar R1 R2 R3 R4 R5 WAN-1 WAN-2 WAN-3 LAN-1 LAN-2 R1 R2 R3 R4 R5
130
6.3 Routering (verv.) Internet: ook routeringsprotocols
op verschillende niveaus binnen een AS (autonomous system): kortste pad tussen twee routers berekenen volgens metriek tussen AS-en: ander protocol, eventueel ook beleidsopties doorheen welk netwerk wel/niet mogelijkheid tot manueel uitsluiten van netwerken
131
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
132
7. Transportlaag Transportlaag in Internet 7.1 Adressering
TCP (Transmission Control Protocol) UDP (Universal Datagram Protocol) 7.1 Adressering 7.2 TCP Protocol en Diensten 7.3 UDP Protocol en Diensten
133
7.1 Adressering Communicatie-eindpunt van proces: TCP / UDP Hoofding:
(IP-adres, poortnummer) TCP / UDP Hoofding: alleen poortnummer IP-adres in IP-hoofding Standaard Toepassingen: vaste poortnummers (www-server, 80), (ftp-server, 21), … Andere toepassingen: dyn. aanvragen
134
7.2 TCP Protocol & Diensten
Virtuele verbinding tussen eindpunten (netwerk alleen datagram diensten!) 3 Fasen: opzetten van verbinding gebruik v/d verbinding vgl. protocols dataverbindingslaag complexer! volgorde aankomst van pakketten 1-bit venster te beperkend op snelheid byte stroom (elke byte 32-bit volgnummer) verbreken v/d verbinding TCP hoofding volgnummer 1e byte in pakket
135
7.3 UDP Protocol & Diensten
Datagram dienst tussen eindpunten Datagram dienst van IP
136
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
137
8. Naamdiensten IP-adresssen niet gebruiksvriendelijk leesbare namen
telnet telnet nix.cs.kuleuven.ac.be 8.1 Domeinnamen 8.2 Omzetting Domeinnamen naar IP adressen
138
8.1 Domeinnamen Internet domeinnamen hiërarchisch gestructureerd
nix.cs.kuleuven.ac.be landcode (België) univ. (academic) K.U.Leuven dep. computerwetenschappen naam van het computersysteem
139
8.1 Domeinnamen (verv.) 3 groepen Top Level Domains (TLD)
2-letter landcodes (ISO 3166) generieke namen (gelijkaardige organisaties) com commerciële organisaties org niet-commerciële organisaties (bv. Vzw) int internationale organisaties (nato, EU, …) net bedrijven die netwerkdiensten aanbieden Nieuwe: info, biz, name, aero, museum,... namen (organisaties binnen USA) edu universiteiten gov Amerikaanse overheid mil Amerikaanse leger
140
8.1 Domeinnamen (verv.) Elk TLD: Elke organisatie met naam:
beheerder (toekennen van namen in domein) “be”: dept. Computerwetenschappen tot jan 2000 nu: vzw DNS BE (ispa, agoria, beltug) Elke organisatie met naam: zelf creatie nieuwe namen in dat domein bijv. kuleuven.ac.be en kulak.ac.be Hiërarchische naamgeving + delegatie = werkbare structuur
141
8.2 Omzetting Domeinnaam IP Adres
Gegevensbank niet gecentraliseerd (flessehals!) naambeheerder (name server) omzetting domeinnaam IP-adres hiërarchie van naambeheerders ieder domein: aparte naambeheerder
142
8.2 Omzetting Domeinnaam IP Adres (verv.)
Naambeheerder cs.kuleuven.ac.be Machines/subdomeinen type IP-adres van cs.kuleuven.ac.be nix A idefix A droopy A stevin A ... A = Address
143
8.2 Omzetting Domeinnaam IP Adres (verv.)
Naambeheerder kuleuven.ac.be Machines/subdomeinen type IP-adres van kuleuven.ac.be cs NS esat NS … www A … ... NS = NameServer
144
8.2 Omzetting Domeinnaam IP Adres (verv.)
Naambeheerder voor TLD-namen = root-naambeheerder gekend IP-adres alleen verwijzingen naar andere naambeheerders
145
8.2 Omzetting Domeinnaam IP Adres (verv.)
Example : Lokale NS (cs.kuleuven.ac.be) Root-NS NS (nl) NS (vu.nl) NS (cs.vu.nl)
146
8.2 Omzetting Domeinnaam IP Adres (verv.)
Omslachtig? Naambeheerders: “cache” Gedurende zekere tijd opgezochte namen opslaan Kwetsbaar? Naambeheerder kan uitvallen Voor elk domein: meerdere naambeheerders
147
Inhoud 1. Inleiding 2. Fysische laag 3. Dataverbindingslaag
4. Lokale Netwerken 5. Netwerklaag 6. Netwerken verbinden: internet 7. Transportlaag 8. Naamdiensten 9. Toepassingen
148
9. Toepassingen E-Mail World Wide Web E-mailadressen E-mail
programma’s servers World Wide Web URL Componenten Opbouw van pagina’s
149
9.1 E-mail E-mail adressen pv@cs.kuleuven.ac.be na @: domeinnaam
domeinnaam loginnaam, Voornaam.Naam, groepsnaam
150
9.1 E-mail (vervolg) E-mailprogramma’s
vaak grafische gebruikersinterface functionaliteit: ontvangen & lezen van berichten (receive) opstellen & versturen van berichten (send) beantwoorden van berichten (reply) doorsturen van berichten (forward) organiseren van berichten (folder) bijhouden van adressenbestand (addressbook) vb: Netscape, Exchange, Eudora, pine, elm, ...
151
9.1 (vervolg) programma’s: Netscape
152
9.1 E-mail (vervolg) E-mail hoofding blanko lijn Boodschap zelf
SleutelWoord: waarde From: afzender To: bestemmeling Cc: kopie naar … Subject: onderwerp dat besproken wordt Date: datum + tijd waarop verstuurd werd ... blanko lijn Boodschap zelf
153
9.1 E-mail (vervolg) E-mailservers sturen / ontvangen van boodschappen
progr. POP SMTP server server IMAP SMTP Simple Mail Transfer Protocol POP Post Office Protocol IMAP Internet Mail Access Protocol progr.
154
9.1 E-mail (vervolg) E-mailservers Internet: steeds SMTP
vinden van andere server? Naambeheerders domeinnaam: IP-adres waarop server draait Poortnummer = 25
155
9.2 World Wide Web Zie cursus Informaticawerktuigen Hypertext
URL (Uniform Resource Locator) Browser HTTP (HyperText Transfer Protocol) WebServer HTML (HyperText Markup Language)
156
Hypertekst Hypertekst bevat verwijzingen naar andere documenten
Computer A Computer B Hypertekst … (meer info) … Een link is … Meer informatie kan je hier vinden (Engels). Hypertext Hypertext allows a document to … Links … hypertekst … Hypertekst bevat verwijzingen naar andere documenten
157
URL — Uniform Resource Location
Absoluut of relatief Absoluut: protocol computer details (padnaam) Protocol: http (web-pagina) mailto (elektronische post) ftp (file transfer protocol) - news (USENET nieuwsgroep) file (loaal bestand) gopher, wais, shttp, telnet, ...
158
URL (vervolg) Computer: DNS-naam (Web-site) optioneel
//domein.naam:poortnummer Details: padnaam adres (mailto) … URL#naam #naam: plaats in een pagina (i.p.v. het begin)
159
URL (voorbeelden) http://www.kuleuven.ac.be/kuleuven/news_nl.html
/pub/README ftp://ftp.simtel.com/simtelnet/win95 telnet://pluto.cs.kuleuven.ac.be file:/user/rik/IW/practicum1 news:be.politics
160
Web Browser Web pagina ophalen + tonen Populaire Browsers:
Netscape Navigator Microsoft Internet Explorer HotJava (Sun) … HTTP Protocol + ... ftp news telnet gopher, ...
161
HTTP Hypertext Transfer Protocol dienst- verle-ner cliënt
cliënt dienst- verle-ner GET /nv_jobs/index.html HTTP/1.0 200
162
Web Server Beheert lokale Web-pagina’s Taken:
vaak sub-boom van lokaal bestandensysteem Taken: geen visualisatie! aanvragen browsers/servers beantwoorden beveiliging caching Meestal boven: Unix of Windows NT
163
HTML — Hypertext Markup Language
Web-pagina om even wat: tekst (ascii), Word-document, rekenblad, foto, ... browser: visualiseren ! standaard-formaat: HTML Hypertext tekst met verwijzingen naar andere teksten Markup: code (instructies) die structuur weergeven van document Andere formaten: hulp-programma’s of plug-ins of kopiëren
164
HTML (voorbeeld) <HTML> <HEAD>
<TITLE>Netwerken</TITLE> </HEAD> <BODY> <H1>Computernetwerken</H1> <H2>1. Inleiding</H2> Gedurende de laatste 10 jaar is de computerinfrastructuur in bedrijven <B>grondig</B> gewijzigd. … <P>In dit hoofdstuk bestuderen we het netwerk, ... </BODY> </HTML>
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.