TCP (Transmission Control Protocol) är ett anslutningsorienterat, pålitligt protokoll som används för kommunikation över ett nätverk. Dess viktigaste egenskaper inkluderar:
1. Anslutningsorienterad: Innan dataöverföring börjar skapar TCP en anslutning mellan avsändaren och mottagaren. Detta innebär en trevägshandskakning för att säkerställa att båda ändarna är redo och överens om parametrar som fönsterstorlek. Detta står i kontrast till UDP (användardatagramprotokoll), vilket är anslutningsfritt.
2. Pålitlig: TCP garanterar tillförlitlig dataleverans. Detta innebär att all skickad data kommer till destinationen i rätt ordning och utan fel. Det uppnår detta genom:
* erkännande (ACKS): Mottagaren skickar ACKS för att bekräfta mottagandet av datapaket. Om en ACK inte tas emot inom en viss tidsram, återförs avsändaren paketet.
* Sekvensnummer: Varje paket tilldelas ett sekvensnummer, vilket gör att mottagaren kan ordna om paket om de kommer ur ordning och upptäcker saknade paket.
* checksums: TCP använder kontrollsummor för att upptäcka fel i data under överföring. Korrupta paket kastas och vidarebefordras.
* Flödeskontroll: TCP använder en skjutfönstermekanism för att kontrollera hastigheten för dataöverföring för att förhindra att avsändaren överväldigar mottagaren. Mottagaren annonserar mängden data som den kan buffra, och avsändaren justerar sin överföringshastighet i enlighet därmed.
* trängselskontroll: TCP innehåller algoritmer (som långsam start, undvikande av trängsel, snabb överföring och snabb återhämtning) för att hantera nätverkstoppning och förhindra överbelastning av nätverk. Dessa algoritmer justerar dynamiskt överföringshastigheten baserat på nätverksförhållanden.
3. Beställd leverans: TCP garanterar att datapaket anländer i samma ordning som de skickades. Sekvensnumren spelar en avgörande roll för att uppnå detta.
4. Full-duplexkommunikation: Både avsändaren och mottagaren kan överföra data samtidigt.
5. Tungvikt: På grund av dess funktioner som feldetektering och korrigering, anslutningsanläggning, flödes- och trängselkontroll har TCP en högre omkostnad än UDP. Detta innebär att det konsumerar fler systemresurser och är långsammare än UDP.
6. Tyngre bearbetning: På grund av de ytterligare stegen som är involverade i att upprätta anslutningar, hantera erkännanden och felkontroll kräver TCP mer bearbetningskraft från avsändaren och mottagaren.
Sammanfattningsvis tillhandahåller TCP en pålitlig och beställd dataleveransmekanism, men till bekostnad av ökade kostnader för omkostnader och bearbetning. Det är lämpligt för applikationer där tillförlitlig dataöverföring är avgörande, till exempel webbläsning, e -post och filöverföring. UDP, å andra sidan, är mer effektiv men mindre pålitlig, vilket gör det bättre lämpligt för applikationer som strömmande video eller onlinespel där viss dataförlust är acceptabelt.