De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Hoofdstuk 5: Computernetwerken

Verwante presentaties


Presentatie over: "Hoofdstuk 5: Computernetwerken"— Transcript van de presentatie:

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(2kf t) +  bk cos(2kf 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(2kf t) +  bk cos(2kf 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: 10s <> 800 s  efficiënte werking 100 Mbps: 10s <> 80 s  ?? Reductie lengte kabel: 2,5km  250m 10 Mbps m  100 Mbps + 100m 100 Mbps: 1s <> 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>


Download ppt "Hoofdstuk 5: Computernetwerken"

Verwante presentaties


Ads door Google