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 emparejamiento. Este rol ahora se ha expandido para incluir implementaciones significativas entre la red de acceso de un proveedor de servicios y una red troncal para brindar servicio a clientes residenciales y / o empresariales. [1]
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, video u otros datos de la llamada junto con información de estadísticas y calidad de la llamada. Juntos, estos flujos 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 simple, 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 administrar 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 borde de sesión tienen en los flujos de datos que comprenden las sesiones, ya que atraviesan las fronteras entre una parte de una red y otra. Además, los controladores de frontera de sesión a menudo proporcionan 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 completo y ofrecen las siguientes funciones:
- Seguridad : proteja la red y otros dispositivos de:
- Ataques maliciosos como un ataque de denegación de servicio (DoS) o DoS distribuido
- Fraude telefónico a través de flujos de medios fraudulentos
- Protección de paquetes con formato incorrecto
- Cifrado de señalización (a través de TLS e IPSec ) y medios ( SRTP )
- Conectividad: permite que diferentes partes de la red se comuniquen mediante el uso de una variedad de técnicas como:
- Calidad de servicio : la política de QoS de una red y la priorización de flujos generalmente la implementa el SBC. Puede incluir funciones como:
- Regulatorio: muchas veces se espera que el SBC brinde soporte para requisitos regulatorios tales como:
- priorización de llamadas de emergencia y
- interceptación legal
- Servicios de medios: muchos de los SBC de nueva generación también proporcionan procesadores de señales digitales (DSP) integrados para permitirles ofrecer servicios y control de medios basados en fronteras, tales como:
- Relé DTMF e interfuncionamiento
- Transcodificación de medios
- Tonos y anuncios
- Interfuncionamiento de datos y fax
- Soporte para llamadas de voz y video
- Estadísticas e información de facturación: dado que todas las sesiones que pasan por el borde de la red pasan por el SBC, es un punto natural recopilar estadísticas e información basada en el uso de estas sesiones.
Con la llegada de WebRTC, algunos SBC también han asumido el papel de SIP en WebRTC Gateway y traducen SIP. Si bien las especificaciones de WebRTC no imponen ningún protocolo de señalización, [2] SIP sobre WebSockets (RFC 7118) se utiliza a menudo 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 una 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 llamantes y llamadas en una llamada VoIP, predominantemente aquellas que utilizan el Protocolo de inicio de sesión (SIP), H.323 y los protocolos de señalización de llamadas 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 la llamada a la parte de destino. En términos técnicos, cuando se usa con el protocolo SIP, esto define un agente de usuario back-to-back (B2BUA). El efecto de este comportamiento es que el SBC controla no solo el tráfico de señalización, sino también el tráfico de medios (voz, video). 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 propósitos 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 ruta.
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, corregir o cambiar protocolos y sintaxis de protocolo para lograr la interoperabilidad, y también superar algunos de los problemas que presentan los firewalls y los traductores de direcciones de red (NAT) 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. [3] 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 enviarle la solicitud. El proxy también agrega un encabezado Via con su propia dirección para indicar la ruta que debe atravesar la respuesta. El proxy no cambia ninguna información de identificación de diálogo presente en el mensaje, como la etiqueta en el encabezado From, Call-Id o Cseq. Los proxies 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 organismos de 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 las 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 de SBC exacto que se aplicaría 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 de agente de usuario (UAC), actúa como servidor, en el lado que mira al servidor de 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 que finaliza la transacción, por ejemplo, después de recibir una respuesta, la información de estado se eliminará poco después. Un B2BUA mantendrá la información de estado para 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 de la llamada. En este sentido, el SBC realmente termina esa llamada que fue generada por la persona que llama y comienza una nueva llamada hacia la persona que llama. El mensaje INVITE enviado por el SBC ya no contiene una referencia clara a la persona que llama. El INVITE enviado por el SBC al proxy incluye los encabezados Via y Contact que apuntan al SBC en sí y no a la persona que llama. Los SBC a menudo también manipulan la información de identificación del diálogo que aparece en la etiqueta 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 cym del cuerpo del SDP. Por lo tanto, no solo todos los mensajes SIP atravesarán el SBC, sino también todos los paquetes de audio y video. A medida que el INVITE enviado 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 de Max-Forwards. Tenga en cuenta que la lista de manipulaciones de encabezado que se enumeran 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, es posible que no sea necesario 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 desde y hacia una red empresarial protegida. Los proveedores de servicios de VoIP utilizan SBC para permitir el uso de protocolos de 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 pasarelas de nivel de aplicación . [4] En empresas más grandes, los SBC también se pueden usar 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 con conmutación de circuitos.
Además, algunos SBC pueden permitir que se establezcan llamadas VoIP entre dos teléfonos utilizando 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 se utilizan diferentes códecs. La mayoría de los SBC también ofrecen funciones de cortafuegos para el tráfico de VoIP ( protección de denegación de servicio , filtrado de llamadas, gestión del ancho de banda). Los SBC también proporcionan normalmente la normalización de protocolos y la manipulación de encabezados, lo que permite la comunicación entre diferentes proveedores y redes.
Desde una perspectiva de arquitectura IP Multimedia Subsystem (IMS) o 3GPP ( 3rd Generation Partnership Project ), el SBC es la integración de P-CSCF e 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 a 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 el IBCF / IWF se puede separar de las funciones I-BGF físicamente. La plataforma de señalización puede utilizar un protocolo basado en estándares, como el perfil H.248 Ia, para controlar el medio, mientras que algunos SBC utilizan protocolos propietarios.
Controversia
Durante su infancia, 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 SBC pueden extender la longitud de la ruta de medios (la forma de los paquetes de medios a través de la red) de manera significativa. Una ruta de medios larga no es deseable, 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 existen obstáculos para la comunicación, como cortafuegos entre las partes de la llamada, y en estos casos los SBC ofrecen un método eficaz para guiar los flujos de medios hacia una ruta aceptable entre el llamante y el destinatario de la llamada; sin el SBC, los medios de llamada se bloquearían. Algunos SBC pueden detectar si los extremos de la llamada están en la misma subred y liberar el control de los medios, lo que permite que fluya directamente entre los clientes, esto es anti-tromboning o liberación de medios. Además, algunos SBC pueden crear una ruta de medios donde de otro modo no se permitiría que exista ninguno (en virtud de varios cortafuegos y otros aparatos de seguridad entre los dos puntos finales). Por último, para modelos de red VoIP específicos en los que el proveedor de servicios es propietario de la red, los SBC pueden reducir la ruta de los medios mediante métodos de enrutamiento de acceso directo. Por ejemplo, un proveedor de servicios que proporciona servicios de enlace troncal a varias empresas normalmente asignaría a cada empresa una VPN. A menudo es deseable tener la opción de interconectar la VPN a través de SBC. Un SBC con reconocimiento de VPN 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 tienen el potencial de restringir el flujo de información entre los puntos finales de las llamadas, restringiendo la transparencia de un extremo a otro. Es posible que los teléfonos VoIP no puedan utilizar nuevas funciones de protocolo a menos que el SBC las entienda. Sin embargo, los SBC suelen ser capaces de hacer frente a la mayoría de las funciones de protocolo nuevas e imprevistas.
- A veces, el cifrado 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 cifradas, y el SBC puede utilizar esas porciones e influir en ellas. Sin embargo, las nuevas generaciones de SBC, armadas con suficiente capacidad informática, pueden descargar esta función de cifrado de otros elementos de la red terminando SIP- TLS , IPsec y / o SRTP . Además, los SBC realmente pueden hacer que las llamadas y otros escenarios SIP funcionen cuando antes no podían, al realizar una "normalización" o "reparación" de un protocolo específico.
- En la mayoría de los casos, el cruce de NAT alojado o de extremo lejano se puede realizar sin SBC si los teléfonos VoIP admiten protocolos como STUN , TURN , ICE o Universal Plug and Play (UPnP).
La mayor parte de la controversia en torno a los SBC se refiere a si el control de llamadas debe permanecer únicamente con los dos puntos finales en una llamada (en servicio a sus propietarios), o si debe compartirse con otros elementos de red propiedad de las organizaciones que administran varias redes involucradas en la conexión de los dos. llamar a los puntos finales. Por ejemplo, el control de llamadas debe permanecer con Alice y Bob (dos personas que llaman), o el control de llamadas debe compartirse con los operadores de todas las redes IP involucradas en la conexión de los teléfonos VoIP de Alice y Bob. El debate de este punto fue vigoroso, casi religioso, por naturaleza. Aquellos que querían un control sin restricciones solo en los puntos finales, también se sintieron muy frustrados por las diversas realidades de las redes modernas, como los cortafuegos y el filtrado / estrangulamiento. Por otro lado, los operadores de red suelen estar preocupados por el rendimiento general de la red, la interoperabilidad y la calidad, y quieren asegurarse de que sea segura.
Intercepción legal y CALEA
Un SBC puede proporcionar medios de sesión (generalmente RTP ) y servicios de escuchas telefónicas de señalización (a menudo SIP) , que los proveedores pueden utilizar para hacer cumplir las solicitudes de interceptación legal de sesiones de red. Los estándares para la interceptación de dichos servicios son proporcionados por ATIS , TIA , CableLabs y ETSI , entre otros.
Historia y mercado
Según Jonathan Rosenberg, autor de RFC 3261 (SIP) y muchas otras RFC relacionadas, Dynamicsoft desarrolló el primer SBC en funcionamiento junto con Aravox, pero el producto nunca ganó realmente cuota de mercado. [ cita requerida ] . 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 se cotiza en bolsa desde 1990. Acme Packet siguió en octubre de 2006 y flotó en el NASDAQ. Con el campo reducido por la adquisición, NexTone se fusionó con Reefpoint y se convirtió en Nextpoint, que posteriormente fue adquirido en 2008 por Genband . Al mismo tiempo, surgió el SBC “integrado” donde la función de control de fronteras se integró en otro dispositivo de borde. En 2009, el Firewall de Ingate Systems 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 de VoIP de un SBC.
El continuo crecimiento de las redes VoIP empuja a los SBC más al límite, lo que exige la adaptación en capacidad y complejidad. A medida que crece la red VoIP y aumenta el volumen de tráfico, más y más sesiones pasan por SBC. Los proveedores están abordando estos nuevos requisitos de básculas de diversas formas. Algunos han desarrollado sistemas de equilibrio de carga separados para sentarse frente a los clústeres de SBC. Otros, han desarrollado nuevas arquitecturas utilizando chipsets de última generación que ofrecen SBC de mayor rendimiento y escalabilidad mediante tarjetas de servicio.
Ver también
- Cortafuegos (informática)
- Subsistema multimedia IP (IMS)
- Evolución a largo plazo de 3GPP (LTE)
- Protocolo de inicio de sesión (SIP)
- Sistema universal de telecomunicaciones móviles (UMTS)
- Troncal SIP
Referencias
- ↑ Hautakorpi, J .; Camarillo, G .; Penfield, R .; Hawrylyshen, A .; Bhatia, M. (abril de 2010). Requisitos de las implementaciones de control de fronteras de sesión SIP (Protocolo de inicio de sesión) . IETF . doi : 10.17487 / RFC5853 . RFC 5853 .
- ^ Cómo WebRTC está revolucionando la telefonía . Blogs.trilogy-lte.com (21 de febrero de 2014). Consultado el 11 de abril de 2014.
- ^ "Comprensión de los controladores de borde de sesión" (PDF) . FRAFOS GmbH .
- ^ Sinnreich, Henry; Johnston, Alan B. (2001), Comunicación por Internet mediante SIP , Wiley, p. 180, ISBN 978-0-471-77657-4