Session Initiation Protocol
Session Initiation Protocol (SIP o Protocolo de Inicio de Sesiones) es un protocolo desarrollado por el grupo de trabajo MMUSIC del IETF con la intención de ser el estándar para la iniciación, modificación y finalización de sesiones interactivas de usuario donde intervienen elementos multimedia como el video, voz, mensajería instantánea, juegos en línea y realidad virtual.
La sintaxis de sus operaciones se asemeja a las de HTTP y SMTP, los protocolos utilizados en los servicios de páginas Web y de distribución de e-mails respectivamente. Esta similitud es natural ya que SIP fue diseñado para que la telefonía se vuelva un servicio más en Internet.
En noviembre del año 2000, SIP fue aceptado como el protocolo de señalización de 3GPP y elemento permanente de la arquitectura IMS (IP Multimedia Subsystem). SIP es uno de los protocolos de señalización para voz sobre IP, otros, por ejemplo, son H.323 e IAX2.
[rev_slider captions]
[rev_slider ServerVoip]
Funcionamiento del protocolo
El protocolo SIP permite el establecimiento de sesiones multimedia entre dos o más usuarios. Para hacerlo se vale del intercambio de mensajes entre las partes que quieren comunicarse.
Agentes de usuario
Los usuarios, que pueden ser seres humanos o aplicaciones de software,nota 1 utilizan para establecer sesiones lo que el protocolo SIP denomina «Agentes de usuario». Estos no son más que los puntos extremos del protocolo, es decir son los que emiten y consumen los mensajes del protocolo SIP. Un videoteléfono, un teléfono, un cliente de software (softphone) y cualquier otro dispositivo similar es para el protocolo SIP un agente de usuario. El protocolo SIP no se ocupa de la interfaz de estos dispositivos con el usuario final, sólo se interesa por los mensajes que estos generan y cómo se comportan al recibir determinados mensajes.
Los agentes de usuario se comportan como clientes (UAC: User Agent Clients) y como servidores (UAS: User Agent Servers). Son UAC cuando realizan una petición y son UAS cuando la reciben. Por esto los agentes de usuario deben implementar un UAC y un UAS.
Además de los agentes de usuario existen otras entidades que intervienen en el protocolo, estos son los servidores de registro o registrar, los proxy y los redirectores. A continuación se describe su finalidad.
Servidores de registro o Registrar
El protocolo SIP permite establecer la ubicación física de un usuario determinado, esto es, en qué punto de la red está conectado. Para ello se vale del mecanismo de registro. Este mecanismo funciona como sigue:
Cada usuario tiene una dirección lógica que es invariable respecto de la ubicación física del usuario. Una dirección lógica del protocolo SIP es de la formausuario@dominio es decir tiene la misma forma que una dirección de correo electrónico. La dirección física (denominada «dirección de contacto») es dependiente del lugar en donde el usuario está conectado (de su dirección IP). Cuando un usuario inicializa su terminal (por ejemplo conectando su teléfono o abriendo su software de telefonía SIP) el agente de usuario SIP que reside en dicho terminal envía una petición con el método REGISTER a un Servidor de Registro (Registro en inglés), informando a qué dirección física debe asociarse la dirección lógica del usuario. El servidor de registro realiza entonces dicha asociación (denominada binding). Esta asociación tiene un período de vigencia y si no es renovada, caduca. También puede terminarse mediante un desregistro. La forma en que dicha asociación es almacenada en la red no es determinada por el protocolo SIP, pero es vital que los elementos de la red SIP accedan a dicha información.
Servidores proxy y de redirección
Para encaminar un mensaje entre un agente de usuario cliente y un agente de usuario servidor normalmente se recurre a los servidores.3 Estos servidores pueden actuar de dos maneras:
1. Como Proxy, encaminando el mensaje hacia destino,
2. Como Redirector (Redirect) generando una respuesta que indica al originante la dirección del destino o de otro servidor que lo acerque al destino.
La principal diferencia es que el servidor proxy queda formando parte del camino entre el UAC y el (o los) UAS, mientras que el servidor de redirección una vez que indica al UAC cómo encaminar el mensaje ya no interviene más.
Un mismo servidor puede actuar como Redirector o como Proxy dependiendo de la situación.
Servidor de localización
Un servidor de localización, simplemente da información acerca de donde puede estar el cliente al que se quiere llamar para así poder localizarlo.
Casos típicos de servidores
Un conjunto de usuarios que pertenecen a una compañía o proveedor de servicios de comunicaciones, conforman un dominio. Este dominio, que se indica en una dirección SIP después del carácter «@» es normalmente atendido por un servidor (o más de uno). Este servidor recibe las peticiones hacia sus usuarios. Este servidor será el encargado de determinar la dirección física del usuario llamado. Un servidor que recibe las peticiones destinadas a un dominio específico es denominado servidor entrante (Inbound Server).
Es habitual también, que exista un servidor que reciba las peticiones originadas por los usuarios de un dominio hacia otros dominios. Este recibe el nombre de Servidor Saliente (Outbound Server).
Un agente de usuario normalmente encamina todos sus pedidos hacia un servidor de su propio dominio. Es este quien determina (por sus propios medios o valiéndose de otros servidores) las ubicaciones de los usuarios que son llamados por el agente de usuario en cuestión.
Formato de los mensajes
Los mensajes que se intercambian en el protocolo SIP pueden ser peticiones o respuestas.
Las peticiones tienen una línea de petición, una serie de encabezados y un cuerpo.
Las respuestas tienen una línea de respuesta, una serie de encabezados y un cuerpo.
En la línea de petición se indica el propósito de la petición y el destinatario de la petición.
Las peticiones tienen distintas funciones. El propósito de una petición está determinado por lo que se denomina el Método (Method) de dicha petición, que no es más que un identificador del propósito de la petición. En la RFC 3261 se definen los métodos básicos del protocolo. Existen otros métodos definidos en extensiones al protocolo SIP.
En la línea de respuesta se indica el código de estado de la respuesta, que es un número que indica el resultado del procesamiento de la petición.
Los encabezados de peticiones y respuestas se utilizan para diversas funciones del protocolo relacionadas con el encaminamiento de los mensajes, autenticación de los usuarios, entre otras. La extensibilidad del protocolo permite crear nuevos encabezados para los mensajes agregando de esta manera funcionalidad.
El cuerpo de los mensajes es opcional y se utiliza entre otras cosas para transportar las descripciones de las sesiones que se quieren establecer, utilizando la sintaxis del protocolo SDP.
Flujo de establecimiento de una sesión
El flujo habitual del establecimiento de una sesión mediante el protocolo SIP es el siguiente (en este ejemplo todos los servidores actúan como proxy):
Un usuario ingresa la dirección lógica de la persona con la que quiere comunicarse, puede indicar al terminal también la característica de la sesión que quiere establecer (voz, voz y video, etc.), o estas pueden estar implícitas por el tipo de terminal del que se trate. El agente de usuario SIP que reside en el terminal, actuando como UAC envía la petición (en este caso con el método INVITE) al servidor que tiene configurado. Este servidor se vale del sistema DNS para determinar la dirección del servidor SIP del dominio del destinatario.
El dominio lo conoce pues es parte de la dirección lógica del destinatario. Una vez obtenida la dirección del servidor del dominio destino, encamina hacia allí la petición. El servidor del dominio destino establece que la petición es para un usuario de su dominio y entonces se vale de la información de registro de dicho usuario para establecer su ubicación física.
Si la encuentra, entonces encamina la petición hacia dicha dirección. El agente de usuario destino si se encuentra desocupado comenzará a alertar al usuario destino y envía una respuesta hacia el usuario origen con un código de estado que indica esta situación (180 en este caso). La respuesta sigue el camino inverso hacia el usuario origen.
Cuando el usuario destino finalmente acepta la invitación, se genera una respuesta con un código de estado (el 200) que indica que la petición fue aceptada. La recepción de la respuesta final es confirmada por el UAC origen mediante una petición con el método ACK (de Acknowledgement), esta petición no genera respuestas y completa la transacción de establecimiento de la sesión.
Normalmente la petición con el método INVITE lleva un cuerpo donde viaja una descripción de la sesión que quiere establecer, esta descripción es realizada con el protocolo SDP. En ella se indica el tipo de contenido a intercambiar (voz, video, etc.) y sus características (códecs, direcciones, puertos donde se espera recibirlos, velocidades de transmisión, etc.). Esto se conoce como «oferta de sesión SDP». La respuesta a esta oferta viaja, en este caso, en el cuerpo de la respuesta defnitiva a la petición con el método INVITE. La misma contiene la descripción de la sesión desde el punto de vista del destinatario. Si las descripciones fueran incompatibles, la sesión debe terminarse (mediante una petición con el método BYE).
Al terminar la sesión, que lo puede hacer cualquiera de las partes, el agente de usuario de la parte que terminó la sesión, actuando como UAC, envía hacia la otra una petición con el método BYE. Cuando lo recibe el UAS genera la respuesta con el código de estado correspondiente.
Si bien se ha descrito el caso de una sesión bipartita, el protocolo permite el establecimiento de sesiones multipartitas. También permite que un usuario esté registrado en diferentes ubicaciones pudiendo realizar la búsqueda en paralelo o secuencial entre todas ellas.
Tomado de: https://es.wikipedia.org/wiki/Session_Initiation_Protocol
Emprendiendo en la Telefonía por Internet
Mientras Algunos se pasan Observando los Logros de Otros; TÚ Trabajas por el Tuyo.
Y Tú, ¿Tienes lo Que le Hace Falta para Ser un VERDADERO EMPRENDEDOR@?
Tu Empresa de Telefonía VoIP está diseñada para que administres, gestiones y monitorees sus herramientas sin complicaciones o necesidad de conocimientos técnicos.
- Genera CLIENTES,
- Ingresa PROVEEDORES,
- Forma DISTRIBUIDORES
ServerVoip presenta el mejor server fisico dedicado para telefonia voip que incluye el software de telefonía ip «VoipSwitch» especial para voz sobre ip.
VoipSwitch es la plataforma ideal para que sin necesidad de conocimientos técnicos crees tu propia empresa de Telefonía IP VoIP y encuentres una forma de ganar DINERO en la red siendo carrier de telefonía sobre Ip (Voip).
Te brindamos todas las herramientas para que estés al nivel de las grandes empresas y negocios; puedas obsequiar llamadas gratis como estrategia de marketing en fidelización a tus clientes / free entre tus clientes; el servidor VoIP te permite utilizar múltiples proveedores como nosotros tenemos www.alosip.com. (carrier / routes) para un mismo destino, vender terminación (wholesale), clientes finales (retail), etc.
El software te proporciona todo lo que necesitas; sistema llave en mano: para crear tu empresa de telefonía IP (VoIP) bajo tu propio nombre o marca. Más información en marcaBlanca.servervoip.com
Para que CREES y DESARROLLES tu propia empresa de telefonia por internet, revisa más detalles en VoIPSwitch
¿Quieres Emprender por Internet?
«Ahora Trabajar desde la Comodidad de tu Casa y Ganar Dinero por Internet… Nunca Había Sido tan Fácil, Rápido y con RESULTADOS Impresionantes»
Descubre el NEGOCIO Perfecto y conviértete en un EMPRESARIO de Éxito creando y desarrollando tu Propia Empresa de Telefonía por Internet. Suscríbete y RECIBE FREE: