TCP/IP - Internets obrutna ryggrad
Protokollen TCP och IP är närmast synonymt med fortskaffningsmedlet på Internets allfartsvägar. Vi förklarar hur protokollen fungerar, hur de förhåller sig till huvudkonkurrenten Novell IPX och vad den nya IP-versionen, v6, egentligen innebär.

Av: Rikard Westman

TCP/IP är internet och Internet är TCP/IP. Och WWW, förstås. Begreppet TCP/IP är väl knappast, som "webben", spritt till lastbilschaufförer och bartendrar, men är i branschen lika känt som "PC" och "grafikkort".
Fast hur känt är TCP/IP till sin funktion och inre mekanismer? Och hur pass väl känner just du till varför det kommer en ny version av IP, IPv6, och vad den tillför? Fler nätverksadresser visst, men det är bara början.
Vi börjar dock från början, med det väl utprovade IP4, som i kombination med kollegan TCP sköter det mesta av trafiken på Internet idag.
Orsakerna till TCP/IPs genomslag var protokollsvitens flexibilitet och förmåga att sköta trafiken för såväl lokala nät (LAN) som långdistanskommunikation (WAN). IP (Internet Protocol) syftar just på möjligheten att koppla ihop olika nät, och det var just för det ändamålet som det amerikanska försvaret under 70-talet tog fram protokollen.
IP-protokollen, som är betydligt fler än TCP och IP, omfattar OSI-modellens nätnivå upp till applikationsnivå, där vi hittar de välkända verktygen FTP, Telnet, SMTP, SNMP och NFS. Protokollen talar emellertid inget om de lägre nivåerna, förutom att protokollen ARP och RARP ska kunna översätta fysiska nätadresser till logiska (till exempel Ethernet till IP-adresser). ARP och RARP är för övrigt något av nyckeln till IP-protokollens flexibilitet. De möjliggör nämligen att sändande noder aldrig behöver hålla reda på fysiska nätverksadresser (som Ethernet-adresser) hos mottagaren. Istället finns alltid en översättning mellan IP- och fysisk adress lagrat på en ansvarig server.

IP utan förbindelser
IP-protokollet utgör kärnan i Internetprotokollen. IP ansvarar för att förbindelselöst (connectionless) skicka datapaket över nätet. Förbindelselöst innebär att ingen garanti finns för att paketen kommer fram som det ska. IP-paket routas (skickas mellan nät) helt oberoende av varandra. Paket med samma destination kan därför komma att ta olika vägar och följaktligen komma fram i fel ordning. Därför ingår ordningsnummer i pakethuvudet. Ett fält kallat TTL (Time To Live - tid att leva) styr hur många gånger ett paket får routas innan det ska betraktas som borttappat. För Netware är detta värde alltid 16.

ICMP är invävt i IP
Invävt i IP ligger protokollet ICMP (Internet Control Message Protocol) som ansvarar för att skicka meddelanden om flödeskontroll, felrapportering och annan nätverksinformation. ICMP-data kapslas in i ett IP-huvud och kan exempelvis tala om att en mottagare inte hinner bearbeta inkommande paket eller att en viss destination inte går att nå.
TCP (Transmission Control Protocol) kallas transportprotokollet i en IP-stack och det är det protokollet som säkerställer en stabil och felfri förbindelse mellan sändande och mottagande nod. Det är på TCP-nivån som IP-paket sätts ihop i rätt ordning och som checksummorna kontrolleras. TCP leverar data till applikationsnivån via portnummer (det är samma nummer som ibland förekommer i webbsammanhang: www.server.com:80 innebär port 80) och det är på TCP som alla övriga IP-verktyg vilar, inklusive FTP, Telnet, SMTP-e-post och så vidare.
Fast egentligen är det inte bara på TCP de vilar, för i många sammanhang används istället ett transportprotokoll som skulle kunnat heta TCP Light men istället kallas UDP, User Datagram Protocol. UDP är mycket enklare och även förbindelselöst liksom IP. Det är därför också snabbare och används främst när små mängder data ska skickas. Då är TCP-huvudet för stort i förhållande till del felkontroller som egentligen behövs.

Det gäller att inte bli portad
Begreppet portar förtjänar också en förklaring, särskilt eftersom port nummer 80 blivit en sådan kändis i och med World Wide Web. Portar är ett sätt för olika processor på en dator att kunna dela på en IP-adress.
Följaktligen äger porthanteringen rum på transportnivån, det vill säga i TCP- eller UDP-protokollet. Principen är väldigt enkel. Om flera processorer (program) på datorn behöver kommunicera, exempelvis webbläsaren och e-postprogrammet, skulle det uppstå problem om de inte kunde skilja sin trafik åt. Därför finns portar. Portarna har nummer från 0 och uppåt. 80 används för HTTP (webbtrafik), 20 för FTP, 1023 för TCP, och så vidare. (Se skiss nedan). I Novells Netware motsvaras TCP/IP ganska precis av IPX/SPX. Novell utgick i viss mån från TCP/IP och optimerade nätskiktet (IP) för IEEE 802.3 och bytte ut namnet till IPX för Internetwork Packet Exchange. De definierade även det viktiga protokollet SAP (Service Advertisement Protocol) som låter servrar skicka ut information om vilka tjänster de kan tillhandahålla på nätet.
I det ser vi en pragmatisk inriktning mot lokala nät (det skulle inte vara så lämpligt om alla servrar i globala nät automatiskt skickade ut information till alla...), och mycket riktigt är det Netware som hittills varit marknadsledande i lokala nät, åtminstone för PC.
I långt högre grad än TCP/IP är Netware ett nätoperativsystem, som Microsofts Lan Manager, det vill säga det tillhandahåller en helhetsmiljö. I grunden finns en noggrann uppdelning mellan klienter och servrar, vilket skiljer Netware från IP-protokollen, som över huvud taget inte skiljer på olika noder.

Likt och olikt i Netware
Liksom IP garanterar inte IPX överföring, utan är förbindelselöst. Feldetektering och -korrigering överlämnas åt övre skikt - läs SPX. Liksom IP kan IPX-paket routas till andra nät. En viktig skillnad är dock att IPX-adresser refererar till hela nätsegment och inte enskilda noder. För att få ett paket till rätt mottagare krävs alltså den fysiska adressen - något som underlättar för den systemansvarige. Det försvårar emellertid för den avlägset belägna avsändaren som måste befatta sig med fysiska adresser, som i sin tur dessutom kan förändras, till exempel vid byte av nätverksadapter. TCP-motsvarigheten SPX (Sequenced Packet Exchange Protocol) fungerar i stort sett som TCP, fast är betydligt enklare.
Medan det i IP-miljön alltid förekommer ett explicit transportprotokoll i form av TCP eller UDP, förbigås ofta SPX i Netware. Istället används protokoll på högre nivå som NCP (Netware Core Protocol). Anledningen är att SPX helt enkelt inte är "värt" det extra besväret varför tillämpningar hellre väljer det mer kapabla NCP liksom det i IP-miljön skulle nöjt sig med SPX.
Ett sista Netware-protokoll värt att nämna är BMP (Burst Mode Protocol) som liksom NCP kan ta vid direkt ovanför IPX. Syftet med BMP är helt enkelt att snabba upp NCP genom att protokollet kan skicka upp till 64 kilobyte i en enda sändning.
Också värt att nämna är att dagens version av Netware även hanterar TCP/IP. Det är till och med så att Novell övergett IPX/SPX. Protokollen används dock på enormt många persondatorer runt om i världen.

Netware för lokala nät
Om vi sammanfattar de tekniska skillnaderna mellan TCP/IP och IPX/SPX finner vi att Netwares variant är är bättre anpassat för lokala nät. IP-gruppen har sin styrka i nät-till-nät-kommunikationen och när det gäller att flexibelt kunna dela resurser. I Netware är skillnaden mellan servrar och icke-servrar tydligare. Servrarna distribuerar också information om sina tjänster automatiskt (med SAP). IP kräver alltså på gott och ont mer manuell hantering.
Som kommentar till ovanstående teoretiska resonemang kan man konstatera att det inte är några problem att ha både IP- och IPX-stack samtidigt i sin PC. Därtill att de olika problemen för lokal TCP/IP-användning sedan långt tillbaka funnit sin lösning. De problem som finns är att IP-adresserna tar slut och att en bättre routingarkitektur på det stora hela måste till.

Bättre prestanda med V6:a
De stora nackdelarna med dagens IP, version 4, ligger dels i att adressfältet är för kort och dels i att protokollet inte alls är gjort för den nya typ av kommunikation som förekommer på Internet redan idag, det vill säga multimediaöverföringar, finansiella transaktioner och tunga client/server-tillämpningar.
Därför efterfrågade Internetorganet IETF redan 1992 förslag till nästa generationens IP - IPng. IPng blev sedermera till IPv6 och härbärgerade nyheter inom följande fyra viktiga områden:
- bättre adressering.
- snabbare och mer flexibel routning.
- säkerhet.
- resursallokering, QoS.
Dagens IP-adresser är 32 bitar långa (brukar delas upp i fyra 8-bitarstal som skrivs med punkter emellan, exempelvis 192.53.43.2). Det räcker till drygt fyra miljarder olika adresser och de håller på att ta slut. IPv6 har ett 128 bitar långt adressfält, vilket som jämförelse räcker till över 600 miljoner miljarder adresser per kvadratmillimeter på hela jordens yta...
Fördelen med ett sådant stort adressutrymme är inte bara att adressen garanterat räcker till, utan även att de kan fördelas och organiseras utan att man behöver "snåla". IPv6 har även funktioner för dynamisk tilldelning av adresser.
Den effektivare routningen är inte egentligen en del av IPv6, utan en följd av att pakethuvudet förenklats. Istället finns möjlighet att lägga extra routerinformation mellan det ordinarie pakethuvudet och transportprotokollets (TCP/UDP) huvud och data. På så sätt kan ett IPv6-paket snabbt slussas förbi routrar som inte har med paketets precisa slutdestination att göra.
Mellan IP- och TCP-huvudet ligger även säkerhets- och autenticeringsinformation, något som över huvud taget inte fanns i IPv4. IPv6 specificerar över huvud taget inte hur säkerheten/autenticeringen ska lösas, utan tillhandahåller bara ett utrymme för den extra information som måste transporteras.
Sist men sannerligen inte minst: resursallokering, det som ATM kallas QoS, Quality of Service, och som ATM-anhängarna anger som en av de viktigaste funktionerna. I IPv6 kan ett paket märkas så att det tillhör ett viss trafikflöde. Därigenom kan routrar och andra enheter längs en förbindelse ge paketet specialbehandling så att, exempelvis, en videouppspelning över nätet inte avbryts eller blir hackig.
IP version 6 lovar alltså en hel del, men det dröjer innan vi är där helt och hållet. Routrar, servrar och arbetsstationer måste uppgraderas och naturligtvis krävs det att hela kedjan klarar IPv6 innan alla finesser fungerar som de ska. Några funktioner kommer dock att smyga sig på eftersom IPv6 i grunden är bakåtkompatibelt med IPv4.'
Ordlista

(R)ARP - (Reverse) Adress Resolution Protocol, används för att översätta en IP-adress till en MAC-adress (eller tvärtom).
IETF - Internet Engineering Task Force, organisation som står för den grundläggande administration kring Internet-relaterade standarder; utfärdar så kallade RFC:er (Request For Comment).
ICMP - Internet Control Message Protocol, sköter diverse uppgifter som har med nät-till-nät-kommunikation (internetworking) att göra.
IP - Internet Protocol, sköter nätskiktet vid TCP/IP-kommunikation: befriar ovanpå liggande skikt från detaljer kring växling och ren dataöverföring; sköter upprättande, upprätthållande och avslutande av förbindelser.
MAC - Media Access Control, skikt närmast hårdvaran enligt IEEE, MAC-adress är hårdvaruadressen, i ett Ethernet detsamma som Ethernet-adressen (unik för varje adapter)
Netbios - vanligt programmeringsgränssnitt för lokala nät (ursprungligen för IBM-nät).
NFS - Network File System, filsystem som kan hantera diskar på ett sätt så att användaren inte behöver veta på vilket dator de sitter.
OSI - Open Systems Interconnect, ISO-definierad modell med olika konceptuella skikt för datakommunikation.
QoS - Quality of Service, ATM-relaterad term, betyder i princip att vissa överföringar kan garanteras en viss bandbredd.
TCP - Transmission Control Protocol, sköter transportskiktet vid TCP/IP-kommunikation: garanterar överföring mellan ändpunkterna, sköter fel- och flödeskontroll.
UDP - User Datagram Protocol, enklare variant av TCP, används när datamängderna är små.

På adressen cio.cisco.com/univercd/data/doc/cintrnet/ita.htm hittar du ordförklaringar (på engelska) för de flesta begrepp och förkortningar som har med nätverk att göra.

 


Berätta för oss vad du tyckter om den här artikeln!
-Mycket läsvärd
-Läsvärd
-Inte läsvärd
-För lång
-Lagom lång
-För kort
-För teknisk
-Lagom teknisk
-Inte tillräckligt teknisk
 



[Tillbaka till PC Worlds artikelindex]
Senast ändrad: 97-10-09 20:40:20