Bij een koppeling van computers binnen een gebouw of eventueel gebouwencomplex spreekt men van een local areal network (LAN). In dit geval hoeft men niet van openbare datanetwerken gebruik te maken en is men in principe helemaal vrij het netwerk te plannen en te kiezen. Een LAN kan een lengte van enkele meters tot enkele kilometers overbruggen. Bij een LAN zijn de knopen op een zeer eenvoudige manier met elkaar verbonden, terwijl het protocol zelf zeer ingewikkeld is. Dit protocol moet immers in staat zijn conflicterende aanspraken op de gemeenschappelijke verbinding op te lossen. COMPUTERNETWERKEN Een wide area network (WAN) is een netwerk van geografisch ver van elkaar verwijderde computers en terminals. Voor de koppeling van de verschillende knopen maakt men gebruik van openbare communicatienetten. Daardoor is het mogelijk dat er verschillende verbindingen zijn tussen twee knopen, waarbij bepaalde wegen duurder of trager kunnen zijn dan andere. Bij het gebruik van de openbare communicatienetten is men gebonden aan de daarvoor geldende protocollen en snelheden. Ook zal er nu een prijskaartje hangen aan het dataverkeer, omdat de aanbieders van openbare digitale netwerken zowel de tijd alsook de hoeveelheid overgestuurde informatie in rekening brengen. Netwerk topologie LAN en WAN In de jaren tachtig werden vele personal computers geı̈ntroduceerd in de bedrijven. De mini of mainframe computer scheen niet meer nodig te zijn. Al snel bleek echter dat het overzicht over de beschikbare informatie verdween. Het was heel moeilijk te achterhalen op welke PC nu de laatste versie van iets stond. Daardoor ontstond de behoefte de computers met elkaar te verbinden. + bereikbaarheid: alle gegevens zijn vanaf elk systeem te bereiken; + uitwisseling: gegevens kunnen naar andere systemen gestuurd en van andere systemen ontvangen worden; + besparing: door het koppelen van systemen is het mogelijk gebruik te maken van randapparaten (printers, disks, faxen, ...) die niet direct aan het systeem zelf gekoppeld zijn, maar via het netwerk beschikbaar zijn; + rekenkracht: het is mogelijk om een proces op een sneller of meer geschikt computersysteem te draaien; in geavanceerde systemen is het mogelijk de computerpower van de afzonderlijke systemen te bundelen. H HH H HH PP P @ @ @ @ H PP P Bustopologie : alle computers zijn parallel met een communicatie-kanaal verbonden. Er zal op een bepaald moment maar één computer kunnen zenden; alle andere systemen kunnen dit dan ontvangen. Ster topologie : systemen zijn met centraal netwerksysteem verbonden, dat alles ontvangt en de verschillende boodschappen doorstuurt naar de juiste bestemming. Head-end topologie : gelijkaardig aan een bustopologie, maar met één communicatiekanaal waarop gezonden wordt, op een ander kanaal wordt ontvangen. Ring topologie : de systemen zijn in een ringvorm gekoppeld. Een boodschap wordt naar de buur doorgegeven totdat het zijn bestemming bereikt. Open Systems Interconnect Het OSI referentie model, gedefinieerd door de ISO (International Standards Organization), is een algemeen model dat een goede voorstelling geeft van de werking van een computernetwerk. Het lagen model Bij het ontwerp van een computernetwerk wordt gewoonlijk gebruik gemaakt van een lagen-model. Elke laag in het model vertegenwoordigt een specifiek netwerk proces en is verantwoordelijk voor het afschermen van de bovenliggende lagen zodat die niet hoeven te weten hoe de onderliggende lagen functioneren. In elke laag wordt maar een beperkt aantal functies uitgevoerd. Het effect is dat elk netwerk proces geı̈soleerd is in een specifiek software subsysteem dat kan ontworpen en getest worden zonder andere lagen te beı̈nvloeden. Het is een theoretisch model en geen enkel praktisch gebruikt netwerksysteem bevat componenten die precies overeenkomen met de OSI-lagen. Het OSI-model bevat zeven lagen: Physical: het gebruikte fysische medium: mechanische aspecten zoals kabeltype, kabellengte, aard van de connectoren en elektrische aspecten zoals de voltages die de data voorstellen. Data link: zorgt voor de fout-vrije transmissie van een stroom van ongestructureerde bits. Te grote datapakketten worden in werkbare stukken (frames) gehakt. Network: de routering van informatie doorheen het netwerk van een zendende host naar een ontvangende host. gewichtig H persoon HH h tolk politieke argumenten H HH gewichtig persoon - service access punten HH H vertaalde boodschappen geëncrypteerde boodschappen HH H computer h h zend/ontv. H HH installatie tolk h h computer HH H H HH h elektrische signalen HH zend/ontv. H installatie Transport: verzending van pakketten op een betrouwbare manier, eventuele fouten in lagere lagen worden opgevangen. Waar de netwerk laag alleen zorgt voor het afleveren van het pakket op de juiste host, zal de transport laag onderscheid maken tussen de verschillende processen op deze host. Session: realiseert de communicatie tussen processen op verschillende hosts: bijvoorbeeld het laten inloggen van een gebruiker op een remote host via een virtuele terminal. Presentation: de data-vertaling diensten, bijvoorbeeld omzetting van ASCII naar EBCDIC of Unicode, en data-encryptie. Application: de interpretatie van de overgezonden data en de gebruikersinterface naar de netwerkdiensten, bijvoorbeeld elektronische mail. Elk van deze lagen vormt een interface tussen wat erboven ligt en wat eronder komt. De bovenste zes lagen vormen de software van een computernetwerk. Vergelijking OSI en TCP/IP 7 6 5 4 3 2 1 OSI Application Presentation Session Transport Network Data Link Physical TCP/IP Application Transport (TCP,UDP) Internet (IP) Data encapsulation Om data over een netwerk te sturen wordt gebruik gemaakt van netwerkprotocollen. Deze beschrijven hoe de indeling is van een datapakket dat op het netwerk kan geplaatst worden. Dit is analoog met een klassieke brief. Op de omslag wordt het adres van de bestemmeling geplaatst. De inhoud van de brief zelf zit in de omslag en hoeft dus niet gekend te zijn om de brief op de bestemming te krijgen. De data zit dus ingekapseld in de omslag. Het is mogelijk dat deze inkapseling een aantal keren toegepast wordt. Host-to-network data Een voorbeeld van een veel gebruikt referentie model is TCP/IP, een model dat ontworpen en getest is in de reële wereld. Het model is ontworpen om verschillende netwerken, zogenaamde subnetwerken, samen te smelten in een groter internetwerk. Het TCP/IP model bevat 4 lagen: Host-to-network: de fysische verbinding tussen de host en het netwerk en de transmissie van data over zo’n lokaal subnetwerk. Het specifieke gebruikte protocol wordt overgelaten aan de implementatie; de enige vereiste is dat het correct kan communiceren met de internet laag. Internet: de lijm van het ganse TCP/IP systeem. Deze laag laat toe dat een host op een subnetwerk pakketten (datagrams) kan versturen naar een andere host op om het even welk subnetwerk zonder het onderliggende netwerksysteem te kennen. Deze datagrammen geven een best-effort connectionless service. Dit wil zeggen dat er geen garantie is dat het datagram zal aankomen of dat verschillende datagrammen zullen aankomen in de volgorde dat ze verstuurd zijn. Transport: realisatie van een conversatie tussen twee hosts: TCP en UDP. Transmission Control Protocol (TCP) realiseert een betrouwbare connection-oriented, twee-richting datastroom tussen twee processen op verschillende hosts. TCP wordt gebruikt om sessie georiënteerde diensten waar betrouwbare aflevering belangrijk is (bijv. telnet) te implementeren. User Datagram Protocol (UDP) geeft een onbetrouwbare connectionless communicatie. Hier is snelle aflevering belangrijker dan nauwkeurigheid, zoals bij real-time data (audio of video) het geval is. Application: implementatie van een toepassingsspecifiek protocol bijv. SMTP (mail) of HTTP (www). TCP TCP header IP data IP header ethernet header ethernet data IP crc 802.3 Het ethernet-pakket bevat een IP-pakket. Dit IP-pakket heeft naast velden omtrend afzender en bestemmeling ook een data-gebied. Dit datablok kan op zijn beurt een TCP-pakket zijn. Zo’n TCP-pakket bevat weer een hoofding en data. We krijgen dus een opstapeling van protocollen; zo’n stapel van protocollen wordt protocol stack genoemd. Wanneer een datacommunicatie moet plaats vinden tussen twee klanten, zal de zender zijn data vormen in de applicatielaag en via een service access punt doorgeven naar een volgende laag. In deze laag wordt een bijkomende hoofding aan het pakket toegevoegd en dan doorgegeven aan de volgende laag. Elke software-laag zal aan het pakket een hoofding toevoegen totdat de physical layer bereikt wordt. Deze laag zal het volledige pakket via het netwerk doorsturen. Langs de ontvanger kant wordt het pakket ontvangen en doorgegeven aan de bovenliggende lagen. Elke laag zal zijn hoofding eraf halen totdat de uiteindelijke informatie in de applicatielaag kan geı̈nterpreteerd worden. Lokale netwerken In de jaren 70 hebben Abramson en zijn collega’s van de universiteit van Hawaii een elegant systeem uitgedacht om hun communicatieprobleem tussen terminals en de mainframe op te lossen. Er wordt gebruik gemaakt van geostationaire satellieten op een hoogte van 36000 km: het duurt 270 msec voordat de zender weet dat de transmissie succesvol is. S 3 B Br Br Br + T T M ALOHA REPEAT zend datablok B; ontvang blok Br; ok = (B==Br); if ( !ok ) wacht een tijdje; UNTIL ok Het idee is bruikbaar in elk systeem waarbij ongecoördineerde gebruikers in competitie zijn voor het gebruik van een enkelvoudig gemeenschappelijk kanaal. 10 Base-5 en 10 Base-2 De eerste commercieel succesvolle versies van Ethernet werkten met een snelheid van 10 Mbit/sec en gebruikten thick 50Ω coaxial kabel met een maximale lengte van 500 m. In de IEEE standaard voor lokale netwerken (IEEE 802.3) is deze versie gekend onder de naam 10 Base 5. Omwille van de hoge installatiekost bij dit type kabel, is een goedkopere versie ontwikkeld, 10 Base 2. Hierbij wordt thin 50 Ω coaxial kabel gebruikt. Deze coaxkabel is van systeem naar systeem doorgelust en is via een T-koppelstukje met de computer verbonden. Op de eindpunten van de kabel moeten afsluiters aangebracht worden met een weerstand van 50 Ω. De snelheid is 10 Mbit/sec maar de maximale lengte van één segment is slechts 185 m. Ethernet Ethernet is gebaseerd op een busstructuur: alle computers zijn parallel op een coaxkabel aangesloten en kunnen allen zenden. De toegangsmethode is geı̈nspireerd door ALOHA: carrier sense multiple access with collision detection (CSMA/CD). Als een computer een datapakket wil zenden zal het systeem eerst luisteren of de kabel niet in gebruik is (carrier sense). Is er iemand aan het zenden, dan wordt er gewacht. Is de kabel vrij, dan begint het systeem te zenden. Omwille van de looptijd van het signaal kan een systeem een eindje verderop “denken” dat de kabel vrij is, en dus ook beginnen te zenden (multiple access). In dit geval gaan de signalen interfereren en spreekt men van een botsing. Deze botsing wordt door minstens één van de zenders gedetecteerd (collision detect). De ontdekker zet een jamming signaal op de kabel om de andere zender ook te verwittigen. Beide systemen distantiëren zich nu van de kabel en proberen het na een willekeurig gekozen pauze opnieuw. Repeaters Voor grotere netwerken moeten een aantal segmenten met repeaters gekoppeld worden. B A C K B O N E repeater R R R R segment Een repeater koppelt twee gelijke netwerken. Alle dataverkeer op het ene netwerk wordt doorgegeven aan het andere netwerk en omgekeerd. Het maximum is een serieschakeling van vijf segmenten en vier repeaters. Dit leidt dikwijls tot een backbone topologie. Eén segment vormt de hoofdader van het netwerkverkeer. De andere segmenten zitten hier met een repeater aan gekoppeld. Een bijkomend voordeel bij het opsplitsen van een groter netwerk in kleine segmenten is dat een storing zich tot een segment zal beperken en dus eenvoudiger te lokaliseren is. 10 Base-T Fast ethernet Naast ethernet gebaseerd op coaxkabel, zijn er ook oplossingen die gebruik maken van unshielded twisted pair (UTP). De ethernet-interfaces worden met deze wijze van bedrading aangesloten op een zogenaamde hub. 100Base-T : 100 Mbit/sec : UTP kabel in combinatie met hub of switch • 100Base-TX : twee getwiste kabelparen (van Category 5 kabel): één paar voor het zenden en het andere voor het ontvangen; • 100Base-T4 : vier getwiste kabelparen (met mindere kwaliteit kabel); • 100Base-FX: twee glasfibers: één voor zenden en één voor ontvangen. × × A 12 port A HUB A UTP A CPU CPU ×× A A A A CPU CPU Een combinatie van de twee systemen is ook mogelijk. De coaxkabel verbindt een aantal hubs. Deze hubs zijn over het bedrijf verspreid en op elke hub zijn de systemen van een bepaalde afdeling aangesloten. Switch Bij een eenvoudige hub (een repeating hub) worden de inkomende ethernetsignalen doorgegeven aan alle aangesloten poorten. Een efficiëntere werkwijze is echter mogelijk door intelligentie in de hub in te bouwen. Een switching hub stuurt de informatie alleen naar de bestemming en niet naar de andere aangesloten systemen. Er kunnen nu meer systemen tegelijk op volle snelheid twee aan twee met elkaar communiceren. Een veralgemening hiervan is een bridge. Deze koppelt twee gelijke netwerken. Alle verkeer wordt echter niet domweg doorgestuurd maar alleen het dataverkeer dat ook voor het andere netwerk bedoeld is. Een gateway koppelt verschillende netwerken. Een router koppelt een aantal netwerken en zoekt voor dataverkeer de juiste bestemming. Gigabit ethernet (IEEE 802.3z) • 1000Base-LX : met single mode fiber : tot 5000m; • 1000Base-SX : licht met golflengte van 800 nm : tot 550m; • 1000Base-CX : speciaal soort twisted pair kabel : tot 25m; • 1000Base-T : vier paren van category 5 UTP : tot 100m; 10Gbit ethernet (IEEE 802.3ae) : single mode fiber, afstand tot 40 km. Token-ring Begin jaren tachtig ontwikkelde IBM een alternatief voor Ethernet. De reden hiervoor was dat zij geen producten ontwikkeld door andere bedrijven wensten te gebruiken. Op basis van hun ervaring met ster-structuren gebruikt bij de verbinding van terminals met mainframes, gebruikten zij als basis een ring-topologie. In een token ring heeft elk station een ontvanger en een zender. De ontvanger is rechtstreeks verbonden met de zender van het voorgaande station en de zender met de ontvanger van het volgende station. Alle stations met uitzondering van het station dat data op de ring aan het zetten is, sturen de ontvangen data gewoon door naar het volgende station. Het zendende station zendt data komende van een interne buffer op het net en stuurt binnenkomende data niet door naar zijn buur. Wanneer geen enkel station data te versturen heeft, wordt een speciaal bitpatroon doorgestuurd voor de synchronisatie van de clocks van de verschillende stations. Dit speciaal bitpatroon wordt token genoemd. Wanneer een bepaald station (A) data wil versturen, moet het wachten totdat het token passeert. Op het moment dat het station het token in bezit heeft, mag het data beginnen te zenden: In de boodschap zelf wordt een bit opgezet om aan te geven dat ze ontvangen is en dan doorgestuurd naar het volgend station. Uiteindelijk komt de boodschap terug aan bij de zender A. in plaats van het token verder door te geven, wordt nu data vanuit de interne buffer op het net gezet. Dit station neemt nu de boodschap terug van de ring. Deze data wordt nu van station naar station doorgegeven totdat het bij de bestemmeling (B) aankomt. Het station geeft dan het token aan het volgend station zodat iedereen aan de beurt kan komen om eens iets te zenden. Dit station herkent zijn adres en de data wordt naar een interne buffer gecopieerd. Dus, wanneer een station het token in bezit heeft, mag het zenden. Anders moet het de data die binnenkomt gewoon doorgeven en wachten totdat het token aankomt. td A d I @ @ @ d -d -d @ @ 1 d td A @ Rd B d d I @ @ @ d -d 2 d -d @ @ @ Rd De eerste token ring netwerken werkten met een snelheid van 4 Mbit/sec; via verbeteringen is de snelheid verhoogd tot 16 Mbit/sec. De token ring is opgenomen in de IEEE standaard voor lokale netwerken onder de referentie IEEE 802.5. B d Draadloze netwerken td A d I @ @ @ d td A d I @ @ I @ @ @ d @ -d 3 d -d 5 d -d @ @ @ @ @ @ Rd R B d -d @ @ @ @ @ @ Rd R B d td A d I @ I @ @ @ @ @ d d A d I @ @ @ d -d 4 d - td 6 d -d @ @ @ @ @ @ R Rd B d -d @ @ @ Rd B d • IrDA (Infrared Data Association): digitaal met infrarood licht; korte afstand, apparaten moeten elkaar kunnen ‘zien’; draagbare computers, printers, toetsenborden, joysticks, muizen, ... • Bluetooth : draadloos verbinden van verschillende computersystemen, randapparaten en communicatieapparaten; laag energiegebruik, lage complexiteit, lage kostprijs ; radiogolven in de 2,4 GHz band: apparaten hoeven elkaar niet te zien; 1Mbit/s: voldoende omdat het niet bedoeld is als draadloos LAN. • IEEE 802.11 wireless LAN, draadloos alternatief voor ethernet: maximale snelheid hangt af van de te overbruggen afstand; eenvoudig te koppelen met een bestaand 802.3 ethernet netwerk. 802.11b: 2,4 GHz band, afstand tot 30m, 11Mbit/s; WiFi-certificaat: compatibiliteit tussen producten van verschillende merken; 802.11a: 5 GHz band, tot 54 Mbit/s; (met Forward Error Correction (FEC) ). 802.11g: 2,4 GHz band, tot 54 Mbit/s (max indoor afstand: 20m); 11Mbit/s (outdoor 180m, indoor 125m). IEEE 802.11 Client-server topologie Circuit en packet switching Peer-to-peer topologie LAN oproep signaal h h h hh h hh h AP PC PC PC PC PC • Wireless Lan Access Point • elk systeem met wireless netwerkkaart; • informeel netwerk tussen enkele PC’s; • geen koppeling met andere netwerken. • koppeling met bedraad netwerk; • alle verkeer via deze hub; • afstand: van 20 tot 500m; • 15 tot 250 gebruikers. Wide area netwerken Het meeste klassieke WAN is het telefonienetwerk. Bij dit netwerk wordt gebruik gemaakt van circuit switching. Bij een telefoonoproep wordt door het telefonie-systeem een fysische “koperen” weg gebouwd vanaf de zender tot aan de ontvanger. Gedurende de ganse duur van het gesprek, blijft dit pad bestaan, zelfs als er helemaal niets gezegd wordt. Voor datacommunicatie is deze switching methode minder geschikt. Het geconstrueerde pad wordt slechts heel sporadisch gebruikt omdat er slechts tussendoor boodschappen doorgestuurd worden. Bij packet switching wordt de boodschap in een aantal pakketten opgedeeld. Er wordt geen vaste weg tussen zender en ontvanger gemaakt maar de verschillende pakketten worden elk afzonderlijk doorgestuurd naar de bestemmeling, eventueel via verschillende wegen. Daar worden ze terug samengebracht, resulterend in de oorspronkelijke boodschap. Een voorbeeld is het X25 netwerk, DCS (Data Communication Services) van Belgacom. T i j d h h h hh h hh h wachttijd op 6 uitgaande trunk ? h hh hh h h h h aanname hh hh oproep signaal h hh hh h h h h h h ?h hh hh hh hh hh hh hh hh h h h h h h h h h h h h h hh hh hh hDATA hh h hh hh hh h h h h h h h h hh hh h hh h hh hh hh h h h h h h h h hh hh h h h h h h h hhh hh h A B C D h h h h h h h h h h h Pk 1 h h h h hh h h h h hh h h h h h h h h h h h h h Pk 2h h h h h h Pk 1 h h h hh h h hh h h h h h h h h h h h h h h h h h h h h h h Pk 3h h h h h Pk 2h h hh h h hh h h h hh h h hh h h hh h h Pk 1 h h h h h h hh h h h h h h h h h h h h Pk 3 h h h h h hh h hh h h hh h h Pk 2 h h h h hh h h h h h h h h h h h h Pk 3 h h h h hh h A B C D