PROTOKOL

En protokol er en særlig slags standard indenfor informationsteknologien. Ordet "standard" betyder en aftalt norm eller et aftalt mønster, som gør, at forskellige ting kan kobles sammen og virke sammen. Der kan være tale om fysiske, funktionsmæssige eller proceduremæssige standarder.

En fysisk standard er fx beskrivelsen af de mekaniske dimensioner til et hanstik og et hunstik, der skal passe sammen, eller beskrivelsen af de elektriske signaler, der skal sendes igennem ledninger samt ledningernes elektriske egenskaber.

En funktionsmæssig standard er fx beskrivelsen af kontrolsignaler, der sendes mellem kommunikerende enheder på bestemte linier og retningen af data på disse linier.

En proceduremæssig standard er fx beskrivelsen af, hvornår der skal eller må sendes kontrolsignaler på de ovenfor nævnte linier.

Nedenfor er en lille illustration fra den ikke tekniske verden, der skulle vise, hvordan vi er afhængige af standarder: Historien om John og Mary.



John ønsker at udtrykke sine tanker og følelser overfor Mary, og han vælger at gøre det pr. brev. Indholdet udtrykkes i et sprog, de begge forstår. Det er deres fælles "kode". Standarden kunne fx være dansk eller engelsk. Brevet lægges i en konvolut, og der skrives navn og adresse på og sættes frimærke på. Der er faste regler for, hvilken størrelse konvolutter må have, og der er forskellige vægtklasser. Der er regler for, hvordan navn og adresse skal skrives udenpå konvolutten, og der skal frankeres i overensstemmelse med vægtklassen med frimærker i øverste højre hjørne. Dette er standarder for indpakningen af de data, der skal transmitteres. Brevet lægges i en postkasse, som er brugerens servicegrænseflade i transportsystemet (brevtransport-netværket). Postkassen tømmes på bestemte tidspunkter, og alle brevene sendes til sortering på en postterminal. Herfra sendes breve til samme geografiske områder med bil, tog, skib eller fly i retning af modtagerne. Der er planer og terminer for, hvornår posten afgår til de forskellige destinationer. Igen bruges vedtagne standarder, procedurer (protokoller), aftaler.

På modtagersiden foregår det hele i omvendt orden: Posten bliver sendt til områder og distrikter og de enkelte veje (eller andre lokale inddelinger), og brevet havner i modtagerens postkasse. Der er igen standarder for udbringningsterminer og modtagerpostkassers udformning og placering (og i fx USA viser et lille rødt flag, at der er post i kassen). Mary finder brevet og åbner det med forventningsfulde hænder og forstår indholdet, da det er skrevet på et sprog, hun kan læse. Denne lille historie skulle illustrere, at der faktisk er standarder på alle niveauer af kommunikationen, som blev forårsaget af, at John ville udtrykke sine tanker for Mary.

Maskiner gør det faktisk efter samme model. Den ene computer skal sende data til en anden. Det kan fx være fra en PC til en Macintosh over et offentligt net. Sender-computeren konverterer data i det interne format til det standardformat, der skal afleveres til nettet. Data opdeles i blokke efter standarden for den overførselsprotokol, der benyttes. Der tilføjes adresseinformation, og blokke af data med modtageradresse sendes ud på nettet. Nettet modtager blokkene, som sendes videre i nettet, og netværkssoftware sørger for at sende blokke rundt i nettet via en ledig rute til den netknude, der foreskrives af adresseoplysningerne. Blokke afleveres til modtagerstationen, som frasorterer adressebit og konverterer data i standardformat til det format, der arbejdes med internt hos modtageren til lagring på disk og evt. præsentation på skærm.

Det skulle være anskueliggjort, at de to ovennævnte eksempler på kommunikation faktisk har det til fælles, at der er fulgt givne standarder og protokoller, som er organiseret i grupper eller lag, der følger funktionsmæssigt efter hinanden.

Inden for datakommunikation benyttes ordet "protokol" som betegnelse for de regelsæt, som overførsel af data er underkastet vedrørende format, indhold og sekvens. En protokol er således en speciel funktionsmæssig eller proceduremæssig standard.

En protokol fastlægger formater af dataenheder, opbygning af headere og de gyldige reaktioner, som hver part må benytte i givne situationer. Derved skal protokollen sikre, at data overføres effektivt, selv om transmissionsfejl optræder. Ofte tillader en protokol også forskellige reaktioner i en given tilstand, idet der både er mulighed for simple og avancerede implementeringer. Protokoller fastlægges i specifikationer og standarder, der ofte er ganske omfattende, da de forskellige fejlmuligheder og optioner medfører, at mange tilstande skal beskrives. Protokoller for datakommunikation fastlægges overvejende af standardiseringsorganisationerne ISO og CCITT.

Som eksempler på protokoller, der alene transmitterer data, kan nævnes asykrone protokoller, bitorienterede protokoller og tegnorienterede protokoller. X.28, X.25 og BSC er eksempler på praktiske anvendelser af disse protokoller. Derimod øges antallet af forskellige protokoller på de øverste niveauer, da disse protokoller typisk er udformet til bestemte anvendelser, f.eks message handling system.

En given kommunikation fastlægges gennem en udvælgelse af de protokoller, som skal indgå i kommunikationens enkelte lag. En sådan udvælgelse kaldes også en protokolstak, en lidt upræcis betegnelse for en kombination af forskellige driverprogrammer, som håndterer forskellige protokollag (jævnfør den lagdelte OSI-model) i en computer. F.eks. tales om en OSI-protokolstak eller en TCP/IP-protokolstak. TCP/IP er blevet en populær standard og benyttes af mange leverandører, specielt i forbindelse med Ethernet, hvor inhomogene systemer skal kobles sammen. Da TCP/IP bruges i forbindelse med Internettet, er anvendelsen er vokset eksplosivt sammen med dette. TCP/IP betyder: Transmission Control Protocol / Internet Protocol

IP danner basis for Internet´s grundlæggende leveringsservice for pakker. Denne leveringsservice er forbindelseuafhængig, dvs. den kræver ingen forudgående oprettelse af en forbindelse eller session. Leveringen sker efter "bedste evne", dvs. uden garanti for perfekt overførsel. Ønskes dette, anvendes TCP. IP omfatter i øvrigt ICMP-protokollen for kontrol og fejlbeskeder som en integreret del. I et Internet er computerene tilkoblet et antal forskellige subnet. Pointen ved IP er at IP er subnet-uafhængig. Desuden er IP adresser også uafhængige af nettets art. (f.eks. uafhængig af Ethernet adresser ). Samlingen af protokoller under Internet benævnes ofte TCP/IP, fordi IP er en af de to mest fundamentale protokoller.

Visse former for kommunikationsprogrammer eller lokalnetstyresystemer (f.eks. LAN manager) understøtter flere protokolstakke på samme fysiske net eller på forskellige net, tilsluttet samme computer. IEEE (Institute of Electrical and Electronics Engineering,Ingeniørforeningen i USA (også andre landes ingeniører kan bliv medlem) er kendt for LAN-standarder, der udgives under betegnelsen IEEE 802.

  • IEEE 802.3 beskriver CSMA/CD bus (Ethernet)

  • IEEE 802.4 beskriver Token Bus

  • IEEE 802.5 beskriver Token Ring

Der er nu indgået et samarbejde med ISO på LAN-området, som både omfatter teknisk udvikling af standarderne og fælles offentliggørelse af disse. I ISO´s system er LAN-standarderne placeret i ISO 8802 serien. IEEE udfærdiger mange standarder, der opnår status af de-facto standarder eller danner forbillede for andre internationale standarder. Standardiseringsarbejdet omkring IEEE 802 startede i 1980 som et modspil mod etableringen af den leverandørdefinerede Ethernet-standard. Hensigten var at komme tidsnok frem med en formaliseret, leverandøruafhængig lokalnetstandard, der var kompatibel med Ethernet. Af denne grund, og måske også fordi lokalnet dengang udgjorde et nyt, lovende og ubetrådt område, var IEEE 802 den hidtil hurtigst arbejdende komité i IEEE´s historie. Ved siden af de standarder, der er defineret under IEEE 802, er der etableret flere funktionelle industristandarder.

Det gælder for lokalnetstyresystemer (eksempelvis Netware og LAN manager), transportprotokoller (IPX, netBEUI) og protokoller til etablering af sessioner mellem programmer (f.eks. netbios on named pipes). I forbindelse med definitionen af LAN manager er der imidlertid kommet én fælles standard, NetBEUI, som er tilgængelig for alle LAN manager leverandører. LAN manger versioner af NetBIOS er endvidere funktionelt udvidet på en lang række områder. I LAN manager miljøer forventes named pipes dog at overtage rollen som program til program kommunikationsprotokol i en væsentlig del af de anvendelser, hvor NetBIOS bruges i dag. NetBIOS Extended User Interface er navnet på det driverprogrammel i LAN manager, der vartager NetBIOS transportprotokollen. Betegnelsen “ User Interface “ er lidt misvisende, da programmellet ikke indeholder nogen form for brugerdialog, men kun er en intern del af LAN manager. NetBEUI definerer dog et (udvidet) NetBIOS, som skal følges af andre transportprotokoller under LAN manager. Sammen med device drivere til specifikke lokalnet-adaptere udgør NetBEUI en protokolstak.

Named pipes understøttes endvidere transporten af LAN manager. Konsekvensen er, at interproces kommunikation kan etableres på samme måde, uanset om de kommunikerende processer befinder sig samlet på samme computer eller fordelt på forskellige enheder på et lokalnet. Dette gør named pipes særdeles attraktiv, sammenlignet med at etablere interproces kommunikation over et lokalnet via NetBIOS. Named pipes er derfor blevet det fortrukne valg i implementeringen af moderne, effektive client/server arkitekturer.