TCP (Transmission Control Protocol) og UDP (User Datagram Protocol) er to av de viktigste protokollene som brukes i nettverkspakken Internet Protocol (IP). De brukes begge til dataoverføring, men de fungerer på ulike måter og har ulike styrker og svakheter.
TCP er en tilkoblingsorientert protokoll. Dette betyr at før data kan overføres ved hjelp av TCP, må det opprettes en forbindelse mellom avsender- og mottaksvertene. Denne forbindelsen opprettes ved hjelp av treveis håndtrykk. Når forbindelsen er opprettet, kan data overføres i begge retninger. TCP garanterer at data leveres pålitelig, i orden og uten duplisering. Hvis noen data går tapt eller blir ødelagt under overføring, vil TCP automatisk overføre dem på nytt.
UDP er en forbindelsesløs protokoll. Dette betyr at det ikke er nødvendig å etablere en forbindelse før data kan overføres ved hjelp av UDP. Dette kan være mer effektivt enn TCP, spesielt når du sender små mengder data eller data som ikke trenger å garanteres pålitelig levering i rekkefølge. UDP garanterer imidlertid ikke at data vil bli levert pålitelig, i rekkefølge eller uten duplisering. Hvis noen data går tapt eller blir ødelagt under overføring, vil ikke UDP automatisk overføre dem på nytt.
Her er en tabell som oppsummerer de viktigste forskjellene mellom TCP og UDP:
| Funksjon | TCP | UDP |
|---|---|---|
| Tilkoblingsorientert | Ja | Nei |
| Pålitelig | Ja | Nei |
| Levering på bestilling | Ja | Nei |
| Garantert ingen duplisering | Ja | Nei |
| Overhead | Høyere | Nedre |
Generelt brukes TCP for applikasjoner som krever pålitelig levering av data i rekkefølge, for eksempel filoverføringer og e-post. UDP brukes til applikasjoner som trenger å sende data raskt og effektivt, for eksempel VoIP og nettspill.