Hoe werkt SCTP?

SCTP (Stream Control Transmission Protocol) werkt door het leveren van betrouwbare, berichtgerichte transportdiensten tussen twee eindpunten in een netwerk. Zo werkt SCTP:

SCTP brengt associaties tussen eindpunten tot stand en onderhoudt deze, vergelijkbaar met TCP-verbindingen. Het ondersteunt zowel unicast- als multicast-communicatie. SCTP segmenteert gegevens in berichten, elk met een eigen volgnummer voor tracking en herschikking aan de ontvangende kant. Hierdoor kan SCTP datastromen onafhankelijk verwerken en tegelijkertijd een betrouwbare levering in de juiste volgorde garanderen. SCTP ondersteunt ook multi-homing, waarbij elk eindpunt aan meerdere IP-adressen kan worden gekoppeld, wat veerkracht biedt tegen netwerkstoringen.

Het SCTP-hartslagmechanisme wordt gebruikt voor het controleren van de gezondheid en beschikbaarheid van een SCTP-koppeling tussen twee eindpunten. Heartbeats zijn kleine controleberichten die periodiek worden uitgewisseld tussen SCTP-eindpunten om te bevestigen dat de verbinding nog steeds actief is. Als het ene eindpunt geen hartslagen meer ontvangt van het andere, kan het herstelprocedures initiëren om de koppeling te herstellen of de fout netjes af te handelen.

SCTP controleert congestie met behulp van verschillende mechanismen die vergelijkbaar zijn met TCP. Het omvat algoritmen voor congestiecontrole, zoals een langzame start, het vermijden van congestie, snelle hertransmissie en snel herstel. SCTP past zijn transmissiesnelheid aan op basis van netwerkomstandigheden en feedback van het ontvangende eindpunt, met als doel een efficiënte gegevensoverdracht te behouden zonder netwerkcongestie of pakketverlies te veroorzaken.

Bij proces-naar-proces-communicatie bij SCTP communiceren applicaties rechtstreeks via SCTP-sockets. SCTP maakt meerdere gegevensstromen binnen één enkele associatie mogelijk, waardoor applicaties onafhankelijk en efficiënt berichten kunnen verzenden en ontvangen. Elk bericht wordt betrouwbaar en in volgorde afgeleverd, zodat de ontvangende applicatie de gegevens precies ontvangt zoals verzonden door de verzendende applicatie.

SCTP maakt niet uitsluitend gebruik van TCP of UDP. In plaats daarvan is SCTP een afzonderlijk transportlaagprotocol dat functies biedt van zowel TCP (betrouwbaarheid, congestiecontrole) als UDP (berichtgericht, ondersteuning voor multi-streaming). Het werkt onafhankelijk en wordt geïdentificeerd door zijn eigen protocolnummer (132) in de IP-protocolsuite. SCTP is ontworpen om verbeterde betrouwbaarheid, prestaties en flexibiliteit te bieden voor toepassingen die robuuste mechanismen voor gegevensoverdracht en congestiecontrole vereisen.