Unterschied zwischen TCP und SCTP

TCP gegen SCTP

TCP (Transmission Control Protocol) gibt es schon seit einiger Zeit und es hat uns das Protokoll zur Verfügung gestellt, um Daten in unseren Computernetzwerken von einem Punkt zum anderen zu verschieben. Trotz seines Erfolges hat TCP auch viele Einschränkungen. Das SCTP-Protokoll (Stream Control Transmission Protocol) erledigt alles, was TCP tut, und fügt neue Funktionen hinzu, die TCP nicht bietet.

Das erste Feature, das SCTP dem Mix hinzufügt, ist das Multi-Homing. Durch Multi-Homing können die beiden Endpunkte einer Verbindung mehrere Schnittstellen (IP-Adressen) angeben. Bereitstellung einer alternativen Route für die Daten für den Fall, dass die aktuell verwendete Schnittstelle aus irgendeinem Grund fehlschlägt. Die Übertragung von einer Schnittstelle zur anderen erfolgt nahtlos. Daher wird die Verbindung nicht unterbrochen.

Die zweite Funktion ist das Multi-Streaming. Anstelle eines einzigen Datenstroms kann SCTP mehrere Streams erstellen, die unabhängig voneinander verwendet werden können. Die Geschwindigkeit des Mediums wird dadurch zwar nicht wirklich verbessert, die Daten können jedoch gleichzeitig ankommen. Die Wartezeit bis zum vollständigen Laden der Seiten wird minimiert. Diese Funktion verhindert auch, dass Steuerungspakete durch Datenpakete blockiert werden, wie dies normalerweise bei TCP der Fall ist. Dadurch wird die Datenkontrolle verbessert.

TCP ist sehr anfällig für Denial-of-Service-Angriffe, wodurch die Ressourcen des Servers blockiert werden und andere Benutzer daran gehindert werden. Anstelle von TCPs 3-Wege-Handshake-Initiierung verwendet SCTP einen 4-Wege-Handshake, der Ressourcen am Ende des gesamten Handshakes zuweist. Aus diesem Grund ist SCTP nicht anfällig für DoS-Angriffe.

Daten in TCP werden in Paketen geliefert. Pakete haben eine bestimmte Größe, und ein langer Stream wird entsprechend aufgeteilt, während kurze Pakete zusammengefügt werden. Dies bedeutet, dass das Nachrichten-Framing auf der Anwendungsebene bereitgestellt werden muss, um separate Nachrichten vollständig zu identifizieren. SCTP implementiert das Framing von Nachrichten, und jede Nachricht hat immer die gleiche Größe, wenn sie ausgegeben wird.

Schließlich hat SCTP die Lieferungsbestellung optional gemacht. Die Bestellung der Lieferung ist in vielen Fällen erforderlich. Deshalb ist es in TCP obligatorisch. In bestimmten Fällen, in denen keine Bestellung erforderlich ist, können Ressourcen durch Deaktivieren dieser Funktion freigegeben werden. SCTP bietet Flexibilität für jede Situation mit optionaler, bestellter Lieferung.

SCTP ist TCP in vielerlei Hinsicht überlegen. Aufgrund unserer langfristigen Verwendung von TCP ist es jedoch schwierig, auf das übergeordnete umzustellen. Trotzdem würden die Vorteile von SCTP nach und nach die Aufmerksamkeit und Nutzer auf sich ziehen.

Zusammenfassung:

1. SCTP ist bei Multi-Homing besser als TCP
2. SCTP verfügt über Multistreaming, TCP dagegen nicht
3. SCTP hat einen Initiationsschutz, während TCP dies nicht tut
4. SCTP hat einen Nachrichtenrahmen, während TCP dies nicht tut
5. Die bestellte Lieferung ist optional mit SCTP, nicht jedoch mit TCP