Verschil tussen TCP- en SCTP-protocollen

TCP vs SCTP-protocollen

Zowel TCP (Transmission Control Protocol) als SCTP (Stream Control Transmission Protocol) liggen in de transportlaag en bieden transportfuncties voornamelijk in internettoepassingen. TCP biedt betrouwbare gegevensoverdracht met een strikte volgorde van levering van de pakketten, maar sommige toepassingen hebben een betrouwbare overdracht nodig, maar geen 100% volgorde van levering van pakketten. In deze gevallen kan TCP onnodige vertraging veroorzaken in de tweede optie waarbij betrouwbaarheid belangrijk is maar niet 100% sequentiële levering.

Bij het transporteren van pakketten zijn er twee belangrijke beperkingen: de ene is betrouwbaarheid en de andere is latency. Betrouwbaarheid is gegarandeerde aflevering van het pakket en latentie levert het pakket tijdig op. Beide kunnen niet tegelijkertijd worden bereikt, maar kunnen worden geoptimaliseerd.

SCTP is in principe ontwikkeld om PSTN-signalering via IP-netwerken te transporteren. (Sigtran). Maar tegenwoordig vinden andere applicaties ook dat SCTP goed aansluit op hun behoeften.

TCP:

Gedefinieerd in RFC 793

TCP is verbinding georiënteerd end-to-end betrouwbaar protocol om gegarandeerde gegevensoverdracht te ondersteunen. Vanuit de verbindingsopbouw zelf zorgt TCP voor de betrouwbaarheid. Enkele van de belangrijkste kenmerken van TCP zijn 3-weg-handshake (SYN, SYN-ACK, ACK), foutdetectie, Slow Start, Flow Control, Congestion Control.

TCP is een betrouwbaar transportmechanisme, dus het zal worden gebruikt waar de pakketaflevering zelfs in congesties een must is. Typische voorbeelden voor TCP-toepassingen en poortnummers zijn FTP-gegevens (20), FTP-besturing (21), SSH (222), Telnet (23), Mail (25), DNS (53), HTTP (80), POP3 (110) , SNMP (161) en HTTPS (443). Dit zijn bekende TCP-toepassingen.

SCTP:

Gedefinieerd in RFC4960

SCTP (Stream Control Transmission Protocol) is een IP-transportprotocol zoals TCP en UDP. SCTP is een unicast-protocol en ondersteunt end-to-end datadistributie binnen precies twee eindpunten. Eindpunten kunnen echter meer dan één IP-adres hebben.

SCTP is een full-duplex overdrachtsprotocol met functies zoals hertransmissie, stroomregeling en volgordeonderhoud.

Naast TCP heeft SCTP meer functies en sommige staan ​​hieronder vermeld

  • SCTP Multi-Streaming-functie

Met SCTP kunnen gegevens worden verdeeld in meerdere streams en elke stream heeft zijn eigen volgorde van levering. Overweeg het geval van telefoniesignalering, het is noodzakelijk om de reeks pakketten te behouden die van invloed is op dezelfde sessie of bron. (Bijvoorbeeld: dezelfde oproep of dezelfde trunk). Tracking op basis van volgordes is dus voldoende en levert betere prestaties op dan één volledige streaming.

  • SCTP multi-homing

Deze functie ondersteunt voor één SCTP-eindpunt om meerdere IP-adressen te hebben. De belangrijkste reden hiervoor is om de beschikbaarheid van het eindpunt via verschillende redundante routeringspaden te handhaven.

  • Pad selectie

Er wordt een teller bijgehouden om de niet-succesvolle verzendbevestigingen bij een bepaalde bestemming bij te houden. Er is een drempel gedefinieerd en als dat groter is dan wordt het bestemmingsadres gedeclareerd als inactief en SCTP begint naar een alternatief adres te verzenden.

Samenvatting:

(1) TCP en SCTP ondersteunen beide betrouwbare transportdiensten.
(2) TCP ondersteunt een enkele datatransmissie, waarbij SCTP meerdere datastroomstromen ondersteunt.
(3) TCP ondersteunt één TCP-eindpunt om één IP-adres te hebben waarbij SCTP-ondersteuning voor één SCTP-eindpunt meerdere IP-adressen kan hebben voor voornamelijk redundantiedoeleinden.
(4) Liever TCP, SCTP is veiliger.
(5) SCTP-initiatie- en -afsluitprocessen verschillen van TCP.