Controlador de borde de sesión
Un controlador de borde de sesión (SBC) es un elemento de red implementado para proteger redes de voz sobre protocolo de Internet (VoIP) basadas en SIP.
Las primeras implementaciones de SBC se centraron en las fronteras entre dos redes de proveedores de servicios en un entorno de peering. Esta función ahora se ha ampliado para incluir implementaciones importantes entre la red de acceso de un proveedor de servicios y una red troncal para brindar servicio a clientes residenciales y/o empresariales.
El término "sesión" se refiere a una comunicación entre dos o más partes; en el contexto de la telefonía, esto sería una llamada. Cada llamada consta de uno o más intercambios de mensajes de señalización de llamada que controlan la llamada y uno o más flujos de medios de llamada que transportan el audio, el vídeo u otros datos de la llamada junto con información sobre las estadísticas y la calidad de la llamada. Juntas, estas corrientes forman una sesión. El trabajo de un controlador de borde de sesión es ejercer influencia sobre los flujos de datos de las sesiones.
El término "frontera" Se refiere a un punto de demarcación entre una parte de una red y otra. Como ejemplo sencillo, en el borde de una red corporativa, un firewall delimita la red local (dentro de la corporación) del resto de Internet (fuera de la corporación). Un ejemplo más complejo es el de una gran corporación donde diferentes departamentos tienen necesidades de seguridad para cada ubicación y quizás para cada tipo de datos. En este caso, se utilizan enrutadores de filtrado u otros elementos de red para controlar el flujo de flujos de datos. El trabajo de un controlador de frontera de sesión es ayudar a los administradores de políticas a gestionar el flujo de datos de sesión a través de estas fronteras.
El término "controlador" Se refiere a la influencia que los controladores de límites de sesión tienen sobre los flujos de datos que componen las sesiones, a medida que atraviesan fronteras entre una parte de una red y otra. Además, los controladores de borde de sesión suelen proporcionar funciones de medición, control de acceso y conversión de datos para las llamadas que controlan.
Funciones
Los SBC suelen mantener el estado de sesión completa y ofrecen las siguientes funciones:
- Seguridad – proteger la red y otros dispositivos de:
- Maliciosos ataques como un ataque de denegación de servicio (DoS) o DoS distribuidos
- Fraude de los peajes a través de corrientes de medios
- Protección de paquetes malformados
- Encryption of signaling (via TLS and IPSec) and media (SRTP)
- Conectividad – permite que diferentes partes de la red se comuniquen mediante el uso de una variedad de técnicas tales como:
- NAT traversal
- Normalización SIP mediante mensaje SIP y manipulación de encabezados
- IPv4 a IPv6 interworking
- Conectividad VPN
- Traducciones de protocolo entre SIP, SIP-I, H.323
- Calidad de servicio – la política QoS de una red y priorización de flujos suele ser implementada por el SBC. Puede incluir funciones tales como:
- Tráfico policial
- Asignación de recursos
- Tasa límite
- Control de admisión
- Ajuste de bits ToS/DSCP
- Regulatory – muchas veces se espera que el SBC proporcione soporte para requisitos regulatorios tales como:
- emergencia llamadas priorización y
- legal entrecepción
- Los servicios multimedia –muchas de la nueva generación de SBCs también proporcionan procesadores de señal digital integrados (DSP) para permitirles ofrecer control y servicios de medios basados en la frontera tales como:
- DTMF relay and interworking
- Transcodificación de medios
- Tonos y anuncios
- Interworking de datos y fax
- Soporte para llamadas de voz y vídeo
- Estadísticas e información de facturación – ya que todas las sesiones que pasan por el borde de la red pasan por el SBC, es un punto natural para reunir estadísticas e información basada en el uso en estas sesiones.
Con la llegada de WebRTC, algunos SBC también han asumido la función de SIP a WebRTC Gateway y traducen SIP. Si bien las especificaciones WebRTC no exigen ningún protocolo de señalización, SIP sobre WebSockets (RFC 7118) a menudo se usa en parte debido a la aplicabilidad de SIP a la mayoría de los escenarios de comunicación previstos, así como a la disponibilidad de software de código abierto como JsSIP. En tal caso, el SBC actúa como puerta de enlace entre las aplicaciones WebRTC y los puntos finales SIP.
Aplicaciones
Los SBC se insertan en las rutas de señalización y/o medios entre las partes llamante y llamada en una llamada VoIP, predominantemente aquellas que utilizan los protocolos de señalización de llamadas Protocolo de inicio de sesión (SIP), H.323 y MGCP.
En muchos casos, el SBC oculta la topología de la red y protege al proveedor de servicios o las redes de paquetes empresariales. El SBC finaliza una llamada entrante e inicia el segundo tramo de llamada al interlocutor de destino. En términos técnicos, cuando se utiliza con el protocolo SIP, esto define un agente de usuario consecutivo (B2BUA). El efecto de este comportamiento es que el SBC controla no sólo el tráfico de señalización, sino también el tráfico de medios (voz, vídeo). En los casos en que el SBC no tiene la capacidad de proporcionar servicios de medios, los SBC también pueden redirigir el tráfico de medios a un elemento diferente en otra parte de la red, para grabación, generación de música en espera u otros fines relacionados con los medios. Por el contrario, sin un SBC, el tráfico de medios viaja directamente entre los puntos finales, sin que los elementos de señalización de llamadas dentro de la red tengan control sobre su camino.
En otros casos, el SBC simplemente modifica el flujo de datos de control de llamadas (señalización) involucrados en cada llamada, quizás limitando los tipos de llamadas que se pueden realizar, cambiando las opciones de códec, etc. En última instancia, los SBC permiten a los operadores de red administrar las llamadas que se realizan en sus redes, arreglar o cambiar protocolos y sintaxis de protocolos para lograr la interoperabilidad y también superar algunos de los problemas que los firewalls y los traductores de direcciones de red (NAT) presentan para las llamadas VoIP.
Para mostrar el funcionamiento de un SBC, se puede comparar una secuencia de establecimiento de llamada simple con una secuencia de establecimiento de llamada con un SBC. En la secuencia de establecimiento de sesión más simple con un solo proxy entre los agentes de usuario, la tarea del proxy es identificar la ubicación de la persona que llama y reenviarle la solicitud. El proxy también agrega un encabezado Via con su propia dirección para indicar la ruta que debe recorrer la respuesta. El proxy no cambia ninguna información de identificación del diálogo presente en el mensaje, como la etiqueta en el encabezado De, el ID de llamada o el Cseq. Los proxy tampoco alteran ninguna información en los cuerpos de los mensajes SIP. Tenga en cuenta que durante la fase de inicio de sesión los agentes de usuario intercambian mensajes SIP con los cuerpos SDP que incluyen direcciones en las que los agentes esperan el tráfico de medios. Después de finalizar con éxito la fase de inicio de sesión, los agentes de usuario pueden intercambiar el tráfico de medios directamente entre sí sin la participación del proxy.
Los SBC están diseñados para muchas aplicaciones y los operadores y empresas los utilizan para lograr una variedad de objetivos. Incluso la misma implementación de SBC puede actuar de manera diferente según su configuración y el caso de uso. Por lo tanto, no es fácil describir un comportamiento SBC exacto que se aplique a todas las implementaciones de SBC. En general, es posible identificar ciertas características que son comunes a los SBC. Por ejemplo, la mayoría de los SBC se implementan como agentes de usuario consecutivos. Un B2BUA es un servidor similar a un proxy que divide una transacción SIP en dos tramos de llamada: en el lado que mira al cliente del agente de usuario (UAC), actúa como servidor, en el lado que mira al servidor del agente de usuario (UAS), actúa como cliente . Mientras que un proxy generalmente mantiene solo información de estado relacionada con transacciones activas, los B2BUA mantienen información de estado sobre diálogos activos, por ejemplo, llamadas. Es decir, una vez que un proxy recibe una solicitud SIP, guardará cierta información de estado. Una vez finalizada la transacción, por ejemplo, después de recibir una respuesta, la información del estado se eliminará poco después. Un B2BUA mantendrá la información del estado de las llamadas activas y solo eliminará esta información una vez que finalice la llamada.
Cuando se incluye un SBC en la ruta de la llamada, el SBC actúa como un B2BUA que se comporta como un servidor de agente de usuario hacia la persona que llama y como un cliente de agente de usuario hacia el destinatario. En este sentido, el SBC en realidad finaliza la llamada generada por la persona que llama e inicia una nueva llamada hacia el destinatario. El mensaje INVITE enviado por el SBC ya no contiene una referencia clara a la persona que llama. La INVITE enviada por el SBC al proxy incluye encabezados Vía y Contacto que apuntan al propio SBC y no a la persona que llama. Los SBC a menudo también manipulan la información de identificación del diálogo que figura en las etiquetas Call-Id y From. Además, en caso de que el SBC esté configurado para controlar también el tráfico de medios, entonces el SBC también cambia la información de direccionamiento de medios incluida en las líneas c y m del cuerpo del SDP. De este modo, no sólo todos los mensajes SIP atravesarán el SBC sino también todos los paquetes de audio y vídeo. A medida que la INVITE enviada por el SBC establece un nuevo diálogo, el SBC también manipula el número de secuencia del mensaje (CSeq), así como el valor Max-Forwards. Tenga en cuenta que la lista de manipulaciones de encabezado enumeradas aquí es solo un subconjunto de los posibles cambios que un SBC podría introducir en un mensaje SIP. Además, es posible que algunos SBC no realicen todas las manipulaciones enumeradas. Si no se espera que el SBC controle el tráfico de medios, entonces puede que no haya necesidad de cambiar nada en el cuerpo del SDP. Algunos SBC no cambian la información de identificación del diálogo y es posible que otros ni siquiera cambien la información de direccionamiento.
Las corporaciones suelen utilizar los SBC junto con firewalls y sistemas de prevención de intrusiones (IPS) para permitir llamadas VoIP hacia y desde una red empresarial protegida. Los proveedores de servicios VoIP utilizan SBC para permitir el uso de protocolos VoIP desde redes privadas con conexiones a Internet mediante NAT, y también para implementar fuertes medidas de seguridad que son necesarias para mantener una alta calidad de servicio. Los SBC también reemplazan la función de las puertas de enlace a nivel de aplicación. En empresas más grandes, los SBC también se pueden utilizar junto con troncales SIP para proporcionar control de llamadas y tomar decisiones de enrutamiento/políticas sobre cómo se enrutan las llamadas a través de la LAN/WAN. A menudo hay enormes ahorros de costos asociados con el enrutamiento del tráfico a través de las redes IP internas de una empresa, en lugar de enrutar las llamadas a través de una red telefónica tradicional de conmutación de circuitos.
Además, algunos SBC pueden permitir que se configuren llamadas VoIP entre dos teléfonos usando diferentes protocolos de señalización VoIP (por ejemplo, SIP, H.323, Megaco/MGCP), así como realizar la transcodificación del flujo de medios cuando hay diferentes códecs en usar. La mayoría de los SBC también ofrecen funciones de firewall para el tráfico VoIP (protección de denegación de servicio, filtrado de llamadas, gestión del ancho de banda). Los SBC también suelen proporcionar la normalización de protocolos y la manipulación de encabezados, lo que permite la comunicación entre diferentes proveedores y redes.
Desde la perspectiva de la arquitectura del Subsistema Multimedia IP (IMS) o 3GPP (Proyecto de Asociación de Tercera Generación), el SBC es la integración del P-CSCF y el IMS-ALG en el plano de señalización y el IMS Access Gateway en el plano de medios en el lado de acceso. En el lado de la interconexión, el SBC se asigna al IBCF, IWF en el plano de señalización y TrGW (Transition Gateway) en el plano de medios.
Desde una perspectiva de arquitectura IMS/TISPAN, el SBC es la integración de las funciones P-CSCF y C-BGF en el lado de acceso, y las funciones IBCF, IWF, THIG e I-BGF en el lado de peering. Algunos SBC se pueden "descomponer", lo que significa que las funciones de señalización se pueden ubicar en una plataforma de hardware separada de las funciones de retransmisión de medios; en otras palabras, el P-CSCF se puede separar del C-BGF o del IBCF. /IWF se puede separar físicamente de las funciones I-BGF. La plataforma de señalización puede utilizar un protocolo basado en estándares, como el perfil H.248 Ia, para controlar los medios, mientras que algunos SBC utilizan protocolos propietarios.
Controversia
Durante sus inicios, el concepto de SBC fue controvertido para los defensores de los sistemas de extremo a extremo y las redes de igual a igual porque:
- Los SBCs pueden extender la longitud de la ruta de los medios (la manera de los paquetes de medios a través de la red) significativamente. Un largo camino mediático es indeseable, ya que aumenta el retraso de los paquetes de voz y la probabilidad de pérdida de paquetes. Ambos efectos deterioran la calidad de voz/video. Sin embargo, muchas veces hay obstáculos para la comunicación, como cortafuegos entre las partes de llamada, y en estos casos los SBC ofrecen un método eficiente para guiar los flujos de medios hacia un camino aceptable entre el caller y la callee; sin el SBC los medios de llamada serían bloqueados. Algunos SBC pueden detectar si los extremos de la llamada están en la misma subredwork y control de liberación de los medios que le permiten fluir directamente entre los clientes, esto es antitromboning o comunicado de medios. Además, algunos SBC pueden crear una vía mediática donde no se permitiría que existiera otra cosa (en virtud de varios cortafuegos y otros aparatos de seguridad entre los dos puntos finales). Por último, para modelos específicos de red VoIP donde el proveedor de servicios posee la red, SBCs puede realmente disminuir la trayectoria de los medios mediante enfoques de enrutamiento atajos. Por ejemplo, un proveedor de servicios que presta servicios de troncalización a varias empresas suele asignar a cada empresa un VPN. A menudo es deseable tener la opción de interconectar la VPN a través de SBCs. Un VPN-aware SBC puede realizar esta función en el borde de la red VPN, en lugar de enviar todo el tráfico al núcleo.
- Los SBC pueden restringir el flujo de información entre los puntos finales de llamada, lo que podría reducir la transparencia de extremo a extremo. Los teléfonos VoIP no pueden usar nuevas características de protocolo a menos que sean comprendidas por la SBC. Sin embargo, los SBC son generalmente capaces de hacer frente a la mayoría de las características de protocolo nuevas e inanticipadas.
- A veces, la encriptación de extremo a extremo no se puede utilizar si el SBC no tiene la clave, aunque algunas partes del flujo de información en una llamada cifrada no están encriptadas, y esas porciones pueden ser usadas e influenciadas por el SBC. Sin embargo, las nuevas generaciones de SBCs, armadas con suficiente capacidad de cálculo, pueden descargar esta función de cifrado de otros elementos de la red al terminar SIP-TLS, IPsec y/o SRTP. Además, SBCs puede realmente hacer que las llamadas y otros escenarios SIP funcionen cuando no pudieron tener antes, realizando protocolo específico "normalización" o "fix-up".
- En la mayoría de los casos, la traversal NAT de extremo o hospedado se puede hacer sin SBCs si los teléfonos VoIP admiten protocolos como STUN, TURN, ICE o Universal Plug and Play (UPnP).
La mayor parte de la controversia que rodea a los SBC se refiere a si el control de llamadas debe permanecer únicamente en los dos puntos finales de una llamada (al servicio de sus propietarios) o, más bien, debe compartirse con otros elementos de red propiedad de las organizaciones que administran varias redes involucradas en conectando los dos puntos finales de la llamada. Por ejemplo, el control de las llamadas debería permanecer en manos de Alice y Bob (dos personas que llaman), o debería compartirse el control de las llamadas con los operadores de todas las redes IP involucradas en la conexión de los teléfonos VoIP de Alice y Bob. El debate sobre este punto fue de naturaleza vigorosa, casi religiosa. Aquellos que querían un control ilimitado sólo en los puntos finales también se sintieron muy frustrados por las diversas realidades de las redes modernas, como los firewalls y el filtrado/estrangulación. Por otro lado, los operadores de redes suelen estar preocupados por el rendimiento, la interoperabilidad y la calidad generales de la red, y quieren garantizar que sea segura.
Interceptación legal y CALEA
La interceptación legal se rige en Estados Unidos por la Ley de Asistencia en Comunicaciones para el Cumplimiento de la Ley (CALEA).
Un SBC puede proporcionar servicios de escuchas telefónicas de medios de sesión (generalmente RTP) y señalización (a menudo SIP), que los proveedores pueden utilizar para hacer cumplir las solicitudes de interceptación legal de sesiones de red. ATIS, TIA, CableLabs y ETSI, entre otros, proporcionan estándares para la interceptación de dichos servicios.
Historia y mercado
Según Jonathan Rosenberg, autor de RFC 3261 (SIP) y muchos otros RFC relacionados, Dynamicsoft desarrolló el primer SBC funcional junto con Aravox, pero el producto nunca ganó realmente participación de mercado. Newport Networks fue la primera en tener una oferta pública inicial en el AIM de la Bolsa de Valores de Londres en mayo de 2004 (NNG), mientras que Cisco cotiza en bolsa desde 1990. Acme Packet siguió en octubre de 2006 cotizando en el NASDAQ. Con el campo reducido por la adquisición, NexTone se fusionó con Reefpoint y se convirtió en Nextpoint, que posteriormente fue adquirida en 2008 por Genband. Al mismo tiempo, surgió el sistema "integrado" SBC donde la función de control fronterizo se integró en otro dispositivo de borde. En 2009, Ingate Systems' Firewall se convirtió en el primer SBC en obtener la certificación de ICSA Labs, un hito en la certificación de las capacidades de seguridad VoIP de un SBC.
El continuo crecimiento de las redes VoIP lleva a los SBC aún más al límite, lo que exige una adaptación en capacidad y complejidad. A medida que la red VoIP crece y el volumen de tráfico aumenta, cada vez más sesiones pasan por SBC. Los proveedores están abordando estos nuevos requisitos de escala de diversas maneras. Algunos han desarrollado sistemas de equilibrio de carga separados para ubicarse frente a los clústeres de SBC. Otros han desarrollado nuevas arquitecturas utilizando conjuntos de chips de última generación que ofrecen SBC de mayor rendimiento y escalabilidad utilizando tarjetas de servicio.
Contenido relacionado
Tarjeta perforada
CPython
Arquitectura Harvard