Blok 7: netwerken Les 5 Christian Bokhove
Vraag Welke problemen kom je tegen als je een netwerk bouwt ‘op de data-link laag´? Hoe kunnen deze problemen worden opgelost? We moeten de volgende vragen beantwoorden: Waarom zijn Bridges en Remote Bridges niet genoeg om wereldwijde (of inter-planetaire) netwerken te bouwen? Hoe kunnen we wél wereldwijde (of inter-planetaire) netwerken bouwen?
Data-Link Service Provider: Samenvatting Physical service provider Network Protocol Entity Data-Link #3 #4 #1 #2 De Data-Link Laag verbetert de Physical service provider zodat: Frames kunnen worden getransporteerd, In-volgorde Betrouwbaar OPMERKING: In principe levert de data-link service provider diensten over een enkele ´draad´. De Data-Link Service Provider kan verbindingsloos of verbindingsgericht zijn. Data-Link provider Network Protocol Entity #1 #2
Data-Link Service Provider: Samenvatting (2) Point-to-multipoint netwerk: verbindt meerdere systemen Point-to-Point netwerk: verbindt twee systemen system system Physical service provider Network Protocol Entity Data-Link #3 #4 #1 #2 Physical service provider Network Protocol Entity LLC MAC #4 #1 #6 #3 #5 #2
De Netwerk Protocol Laag De netwerk protocol laag is het cement van de verbinding van: Data-link laag netwerken Netwerk laag netwerken De ‘gebruikers' van de netwerk laag zijn Transport Protocol Entiteiten De Protocol Data Units die getransporteerd worden door Netwerk Protocol entiteiten heten: Packets, datagrams, cells, .. Er zijn dus verschillende benamingen voor dit fenomeen.
De Netwerk Protocol Laag (2) PC Data-Link Netwerk router / switch router / switch router / switch Netwerk
De Netwerk Protocol Laag (3) De functionele structuur langs het (rode) pad: Transport Protocol Entity Data-Link Service Provider Network #1 #2 #3 #4 #5 #6
Netwerk Laag Protocol Functies Contention Handling: Dit mechanisme verwerkt de packets die ´strijden´ om een ´poort´. Addressing: Om het systeem te herkennen, hebben we een adres nodig (bijvoorbeeld: telefoonnummer, IP adres). Segmentation & Reassembly: Packets kunnen groter zijn dan DL frame grootte: we moeten een packet dus kunnen splitsen (bij de zender) en weer samenstellen (bij de ontvanger). Forwarding / Switching Dit mechanisme ´duwt´ een packet (is een PDU) door een netwerk. Routing: Dit mechanisme bepaalt welke route de packets moeten volgen. Congestion Handling: Dit mechanisme ´beschermt´ het netwerk tegen een overmaat aan packets.
Forwarding / Switching: Switch architectuur PC/host PC/host Transport Protocol Entity Data-Link Service Provider Network Protocol Entiteit #4 #5 Network #1 #3 #6 #2 Routing router/switch Routing/switching table Forwarding/switching
Forwarding / Switching: Verbindingsloos router/switch Network Protocol Entiteit Routing Address SAP / Port X 3 Y Z 10 Forwarding/switching #1 DL-Service Provider #10 #n DL-Service Provider DL-Service Provider … …
Routerings Functie Om packets door te kunnen sturen, hebben we een routeringstabel nodig. De routerings functie is verantwoordelijk voor het vullen van de routeringstabel. Het vullen kan gebeuren door het verzamelen, opslaan en delen van topologische informatie, zodat routes door een netwerk bepaald kunnen worden. Informatie moet tussen systemen worden uitgewisseld om de routeringstabel te vullen. Hiervoor bestaan speciale protocollen. Voorbeelden van Routerings Protocollens voor het Internet zijn: Routing Information Protocol (RIP): version 1 - RFC 1058, version 2 - RFC 1388. Open Shortest Path First (OSPF): version 2 - RFC 1247. Border Gateway Protocol (BGP): version 3 - RFC 1267
Routerings Tabel Niet alleen routers/switches hebben een routerings tabel: een PC heeft er ook één Om deze te zien: Kies: Start > Programma´s > MS-DOS prompt Typ: netstat -r (dit commando is voor Windows 95/98/NT en LINUX hetzelfde) We komen later terug op wat dit allemaal betekent.
Contention Handling Network Protocol Entiteit router/switch Network Protocol Entiteit DL-Service Provider #1 #4 #2 #3 Neem aan dat een aantal packets aankomt: Bijna tegelijkertijd, en Bij verschillende 'poorten' Als deze packets naar eenzelfde poort doorgestuurd moeten worden: Kunnen de packets (tijdelijk) de capciteit van die poort overschrijden. Deze packets strijden dan dus om dezelfde poort Het mechanisme dat dit fenomeen afhandelt, heet: contention handling. #1 #4 #2 #3
Contention Handling (2) router/switch Network Protocol Entiteit DL-Service Provider #1 #4 #2 #3 Forwarding/switching buffer We zijn contention handling eerder tegengekomen: In Les 3 (Medium Access Control) strijden meerdere hosts om dezelfde physical service provider. In de netwerk laag kan contention bij de output poort voorkomen. Het is dus lokaal, en kan worden opgelost: Door strijdende packets tijdelijk op te slaan (buffer). In het figuur staat alleen uitgaand verkeer!
Contention Handling (3) Contention is een tijdelijk probleem. Het afhandelen van contention maakt deel uit van de ´normale´ functies (I.t.t. congestion handling, zie verderop). Het effect van contention is dat packets vertraagd kunnen zijn. Het is mogelijk om bepaalde packets prioriteit toe te kennen om vetraging te verminderen: In de Internet wereld wordt dit gestandaardiseerd.
Congestion Handling Als er té veel packets in (een deel van) het netwerk zijn. Dit is altijd relatief ten opzichte van (delen van) het netwerk. Realistische voorbeelden: Tele-voting (bijv. Sound Mix Show) zorgde er voor dat het telefoonnetwerk ´verstopt´ raakte. In de jaren 70 / 80 stortte het Internet volledig in door verstopping (het probleem werd veroorzaakt op Transport protocol niveau: TCP's slow-start mechanisme). Het 'I Love You'-virus zorgde op dlen van het Internet voor verstopping.
Congestion Handling - Voorbeelden In technische termen, kan congestie bijvoorbeeld veroorzaakt worden door: Veel gebruikers willen communiceren met dezelfde server (dus hoe dichter je bij de server komt, hoe meer verkeer, en dus packets, je ziet) Veel gebruikers versturen packets die over dezelfde link moeten gaan (bv. De capaciteit van een transatlantische link is niet genoeg, en erg duur). Het aantal packets dat bij een router aankomt is groot ten opzichte van de snelheid van die router De buffers die de packets tijdelijk opslaan, kunnen té klein zijn (ze ´overflowen´).
Congestion Handling - … Als congestie zich voordoet, heeft het de neiging om zich over het hele netwerk te verspreiden. Er is een sterke analogie tussen congestie in netwerken en verkeersopstoppingen. De oplossing is, echter, dramatisch anders: In verbindingsloze netwerken gooien we de packets gewoon weg. In verbindingsgerichte netwerken weigeren we simpelweg een verbinding te maken.
Congestion Control - Mechanisme Mogelijke manieren om congestie op te lossen: Probeer het te vermijden. Meet ´zaken´ en neem toepasselijke maatregelen als congestie wordt opgemerkt.