¿Por qué SCTP no se usa ni se conoce mucho?
Recientemente leí el libro "Programación de redes UNIX, Vol. 1" de Richards Stevens y descubrí que existe un tercer estándar de capa de transporte además de TCP y UDP: SCTP. .
Resumen: SCTP es un protocolo de nivel de transporte basado en mensajes como UDP, pero confiable como TCP. Aquí hay una breve introducción de IBM DeveloperWorks. .
Honestamente, nunca antes había oído hablar de SCTP. No recuerdo haber leído sobre esto en ningún libro sobre networking ni haber oído hablar de ello en las clases que había tomado. Leer otras preguntas de stackoverflow que mencionan SCTP sugiere que no estoy solo con esta falta de conocimiento.
¿Por qué SCTP es tan desconocido? ¿Por qué no se usa mucho?
De hecho, SCTP se utiliza principalmente en el área de las telecomunicaciones. Tradicionalmente, los conmutadores de telecomunicaciones utilizan SS7 ( Sistema de señalización n.° 7 ) para interconectar diferentes entidades en la red de telecomunicaciones. Por ejemplo, la base de datos de suscriptores (HLR) del proveedor de telecomunicaciones, con un conmutador (MSC), el suscriptor también está conectado (MSC).
El área de las telecomunicaciones se está moviendo hacia velocidades más altas y un entorno más accesible. Uno de estos cambios es reemplazar el protocolo SS7 por un protocolo basado en IP más elegante, rápido y flexible.
El sector de las telecomunicaciones es muy conservador. La red SS7 se utiliza aquí desde hace décadas. Es una red muy confiable y cerrada. Esto significa que un usuario normal no tiene acceso a él.
La red IP, por el contrario, es abierta y no confiable, y las telecomunicaciones no se convertirán a ella si no maneja al menos la carga que maneja SS7. Por eso se desarrolló SCTP. Intenta:
- para imitar todas las ventajas de la red SS7 acumuladas a lo largo de décadas.
- para crear un protocolo orientado a la conexión mejor que TCP en velocidad, seguridad y redundancia
Las últimas versiones de Linux ya cuentan con soporte SCTP.
Hemos estado implementando SCTP en varias aplicaciones y encontramos problemas importantes con la compatibilidad con SCTP en varios enrutadores domésticos. Simplemente no manejan SCTP correctamente. Creo que esto es principalmente un problema de rendimiento (la especificación del protocolo SCTP requiere que se vuelvan a calcular sumas de verificación para todos los paquetes y no solo para los encabezados).
Como muchos otros protocolos prometedores, SCTP lamentablemente está muerto hasta que D-link y Netgear arreglen sus cajas NAT rotas.