I computernetværk er en pakke en blok af data på en bestemt måde , der transmitteres over netværket i batch-tilstand. Computerlinks, der ikke understøtter burst-tilstand, såsom traditionel punkt-til-punkt- telekommunikation , transmitterer data blot som en sekvens af bytes , tegn eller bits enkeltvis. Hvis dataene pakkes, kan kommunikationsmediets bitrate fordeles mere effektivt blandt brugerne end i et kredsløbskoblet netværk . Ved brug af pakkekoblede netværk kan en tærskelbithastighed pålideligt garanteres, under hvilken den ikke falder.
En netværkspakke kan bestå af serviceinformation, herunder startbits (præamble), headere (headere) og trailer (trailer) og nyttelast ( nyttelast ). Mellem pakker, der sendes til netværket, observeres normalt interframe-intervallet ( engelsk Interframe gap ). Den maksimale belastningslængde kaldes den maksimale transmissionsenhed (MTU).
Der er mulighed for pakkefragmentering - generering af to netværkspakker fra én. Opstår, når framelængden overstiger MTU'en for den grænseflade, den i øjeblikket krydser. Fragmentering (og dets forbud) understøttes af IP -protokollen og leveres ikke i de fleste andre protokoller. Hvis netværksadapteren registrerer en ramme, der er længere end dens medie-MTU, bliver rammen normalt droppet. Dette sker, når jumbo-rammer er tilladt på én vært og ikke på en anden. Fragmentering af en IP-pakke øger belastningen på den centrale processor og reducerer overførselshastigheden af denne pakkes nyttelastdata (med 2 ÷ 50% i et Ethernet-netværk, afhængigt af framelængden), så de forsøger at undgå det. Hvis et fragment går tabt, skal hele sekvensen genudsendes, hvilket er en yderligere risiko for hastighedsreduktion. Samlingen af alle dele til den originale pakke udføres kun af adressaten, selvom MTU'en i en del af netværket er større end krævet. Pakkefragmentering kan bruges i netværksangreb og netværkssondering .
En pakke består af to typer data: kontrolinformation og brugerdata (også kaldet nyttelast). Kontrolinformationen indeholder data, der er nødvendige for at levere brugerdata: afsender- og modtageradresser, fejlregistreringskoder (såsom kontrolsummer) og prioritetsoplysninger. Som regel er kontrolinformation indeholdt i pakkens header og hale, og brugerdata placeres mellem dem.
Forskellige kommunikationsprotokoller bruger forskellige konventioner til adskillelse af elementer og til formatering af data. I protokollen "binær synkron overførsel" er pakken formateret i 8-bit bytes, og specialtegn bruges til at adskille elementerne. Andre protokoller, såsom Ethernet , fikser starten af headeren og dataelementerne, deres placering i forhold til starten af pakken. Nogle protokoller formaterer information på bitniveau, ikke bytes.
En god analogi er at tænke på en pakke som et brev: Overskriften er konvolutten, og dataområdet er det, personen lægger inde i konvolutten. Forskellen er dog, at nogle netværk kan bryde store pakker op i mindre pakker, hvis det er nødvendigt (bemærk, at disse mindre dataelementer også formateres som pakker).
Når du designer et netværk ved hjælp af pakker, kan der opnås to vigtige resultater: fejlregistrering og multi- host-adressering .
En mere effektiv og pålidelig metode til fejldetektion er at beregne en kontrolsum eller cyklisk redundanskode over indholdet af pakken end at kontrollere hvert tegn med en paritetsbit .
Halen af en pakke indeholder ofte fejlkontroldata, der opstod under pakkens transmission over netværket.
Moderne netværk forbinder typisk tre eller flere værter sammen. I sådanne tilfælde indeholder pakkehovedet normalt information, der registrerer den faktiske værtsadresse. I komplekse netværk bygget af flere switching- og routing-knuder, såsom ARPANET eller det moderne internet , kan et antal pakker sendt fra en computer til en anden følge forskellige ruter. Denne teknologi kaldes pakkeskift.
Udtrykket pakke refererer til enhver meddelelse, der er formateret som en pakke, mens udtrykket datagram generelt bruges til pakker med "ikke-pålidelige" tjenester. [1] "Pålidelig" er en tjeneste, der giver brugeren besked, hvis leveringen fejler, mens "upålidelig" ikke giver brugeren besked. For eksempel leverer IP ikke pålidelig service, mens TCP og IP sammen leverer det, mens UDP og IP ikke leverer pålidelig service. Alle disse protokoller bruger pakker, men UDP-pakker omtales generelt som datagrammer. [en]
Da ARPANET først kom ud med pakkeskift, gav den en pålidelig procedure til levering af pakker til servere gennem sin 1822-grænseflade. Netværksserveren organiserer dataene i en pakke af det ønskede format, indsætter adressen på destinationscomputeren i den, og sender meddelelsen gennem grænsefladen til meddelelsesprocessoren. Når meddelelsen er blevet leveret til destinationsserveren, leveres en bekræftelse til afsenderserveren. Hvis netværket ikke kan levere beskeden, vil en fejlmeddelelse blive sendt til afsenderserveren.
Udviklerne af CYCLADES og ALOHAnet har vist, at det er muligt at bygge et effektivt computernetværk uden at levere pålidelig pakketransmission. Denne erfaring blev senere brugt af Ethernet- designerne .
Hvis netværket ikke garanterer levering af pakker, bliver serveren ansvarlig for at sikre pålideligheden og gentransmissionen af tabte pakker. Efterfølgende erfaringer har vist, at ARPANET alene ikke pålideligt kan detektere alle mislykkede pakkeleverancer, og dette har bedt den afsendende vært til at være ansvarlig for fejldetektion i alle tilfælde. Dette førte til fremkomsten af ende-til-ende kommunikationsprincippet, som er et af de grundlæggende grundlag for internettet.
IP- pakker består af en header og en nyttelast. En IPv4- pakkeheader består af:
Efter disse data kan et andet antal valgfrie flag tilføjes, der ændres afhængigt af den anvendte protokol, så er der de data, som pakken bærer. En IP-pakke har ikke en hale trailer. Imidlertid transporteres IP-pakker ofte som nyttelast inden for en Ethernet-ramme, som har sin egen header og hale.
Mange netværk garanterer ikke levering, fravær af duplikerede pakker og den rækkefølge, de leveres i, såsom UDP på internettet . Det er dog muligt at lægge det oven på en transportlagsservicepakke , der kan give en sådan beskyttelse. TCP og UDP er de bedste eksempler på transportlag 4, et af de syv lag i OSI-netværksmodellen .
Pakkehovedet definerer datatypen, pakkenummeret, det samlede antal pakker og kilde- og destinations -IP-adresserne .
Udtrykket " ramme " bruges nogle gange til at henvise til pakker, præcis som det bruges i tråd- eller radiosignaltransmission.