domingo, 7 de agosto de 2011

SIP: Session Intiation Protocol

Ya hace un varios meses que no escribo pues he estado ocupado en un tema que me apasiona y sobre el cual escribiré. Estos son algunos notas que he sacado del libro de Alan B. Johnston "SIP Understanding the Session Initiation Protocol".

SIP es un protocolo de senalización encargado de la iniciacion, modificacion y terminación de sesiones de multimedia, las cuales se llevan acabo de manera interactiva, pero no solo es de señalización tambien es un protocolo de presence y mensajeria instantanea. Es protocolo caracteristico de Internet, esto significa que SIP usa y toma ventaja de la arquitectura de Internet y toda la suite (juego) de protocolos pues se apoya en protocolos tan conocidos como HTTP y SMTP.

Otra característica importante de SIP, es un protocolo end-to-end esto quiere decir que la lógica (ruteo de la llamada y funciones de administración de la sesión) son distribuidas a través de todos los nodos de la red, es decir esta lógica se encuentra en los dispositivos finales; lo anterior acarrea ventajas y desventajas. La ventaja esta en que los servidores se descongestionan de mensajes SIP, pero quizás la principal ventaja que resalta A. Johnston (entre otras) es que SIP rompe el modelo centralizado de la telefonía tradicional, donde todos los nodos (peers) dependen de la central. SIP proporciona independencia , descentraliza el modelo de comunicación, (se rompe el cordón umbilical con las operadoras) lo cual abre el mercado y se incrementan las posibilidades para los desarrolladores de servicios SIP. En cuanto a las desventajas radica en el tamaño de los mensajes pues están basados en texto.
Estoy totalmente convencido que SIP marcara la pauta en Internet.

viernes, 25 de marzo de 2011

Definiciones Claves de SIP

Address of Record (AOR)

Es una direccion SIP o SIPS URI, que apunta a un dominio con un servicio de localizacion, a traves del cual se puede mapear la URI inicial hacia otra URI (traducida). Esta ultima permite ubicar al usuario destino (UAD). Se conoce tambien como “Public Address”.


Back-to-Back User Agent (B2BUA)

Es una entidad logica que recibe y procesa peticiones (request) como un User Agent Server (UAS) y ademas genera repuestas a dichas peticiones actuando como User Agent Client (UAC). La particularidad de esta entidad es que esta presente en todas las request del dialogo. Ejemplo de esta entidad es aquella que tiene funciones de facturacion (billing) de la llamada.


Call

Termino que se refiere a la comunicación entre dos entidades.


Call Stateful

Llamada con estado se presenta cuando el proxy mantiene un registro (log) de las requests dentro del dialogo, es decir desde el INVITE hasta el BYE.


Client

Es un elemento dentro del protocolo SIP, que envia SIP request y recibe respuesta SIP. Ejemplo son User Agent Client y Proxy.


Conference

Una sesion multimedia que contiene multiples users


Core

Termino para referirse a las funciones especificas de una entidad SIP. Todos los Cores son transaction user execpto stateless proxies (TU).


Dialog

Es la comunicación entre dos entidades SIP, se establece con una INVITE request enviada por el UAC y una respuesta 200Ok enviada por el UAS. Consiste de un conjunto de request y responds que permiten establecer la comunicación, las cuales a su vez constituyen una o varias transacciones dentro del dialog.


Downstream

Es el sentido del flujo de la comunicación que va desde el UAC al UAS.


Final Response

Respuesta final para terminar una transaccon SIP. Todas las repuesta excepto las tipo 1xx son respuestas finales.


Header

Se refiere a una parte de un mensaje SIP que proporciona informacion sobre el y esta compuesto por una secuencia de Header fields.


Header fields

Es un componente del SIP message Header. Puede aparecer en una o varias lineas (ej. VIA), a su vez puede tener varios valores separados por comas.


Header field value

Valor dado a un header fields.


Home domain

Es el dominio donde esta registrado el SIP user, generalmente hace parte de la direccion AOR


Information response

Son respuestas provisionales a una peticion


Initiator, Calling party, Caller

Es el UAC que inicia un dialogo con un INVITE. El rol se conserva durante hasta recibir una respuesta final al INVITE (BYE).


Invitation

es una INVITE request


INVITEe, INVITEd user, Called party, Callee

Es el UAS, quien recibe las peticiones INVITE, el rol se mantiene durante todo el dialogo


Location service

Servicio utilizado por el Redirect server y Proxy server, se emplea para encontrar la ubicación fisica del UAD. El Location service se actualiza a traves de peticiones Registrar. En resumidad es una Base de Datos que contiene la ubicación fisica del User Agent. En ella se mantiene un registro que relaciona la direccion SIP (AOR y la direccion(es) IP real del User Agent.


Loop

Es un ciclo de una request,se presenta cuando esta regresa al mismo proxy que la ha enviado inicialmente, esta situacion es un error.



Diferencia entre Strict y loose Routing


Strict Routing

Un proxy sigue un strict routing si sus reglas de procesamiento del ruteo siguen de acuerdo a las especificaciones del rfc 2543 u anteriores. Las reglas dicen que el proxy elimina el contenido del Request-URI cuando el Route Header Field esta presente en los mensajes SIP. Los proxis que realizan el strict routing se llaman strict routers.


Loose Routing

un proxy es loose routing se al procesar el campo route header field, realiza el siguiente proceso: separa el destino final de la Request (esto es Request-URI) del conjunto de proxies que debe visitar la request para llegar a su destino, (esto es los campos del Route header filds), un proxy compatible con este mecanismo se conoce como loose routers. NO elimina los valores del campo Request-URI.



Messages

Datos intercambiado entre dos entidades SIP


Methods

Funcion de una peticion o request que realiza una tarea especifica en el establecimiento de un dialog


Outbound Proxy

Proxy que recibe las request de UAC, puede ser configurado manualmente por UA o auto-configurado


Paralle search

Procedimiento que realiza un Proxy cuando retransmite simultaneamente varias peticiones a varios destinos.


Provisional respose

Respuestas del tipo 1xx


Proxy, Proxy server

Entidad SIP que actua como cliente y server a la vez. La principal funcion es retransmitir las request del cliente que permita ubicar al user agent destino. Igualmente es un elemento de seguridad al permitir aplicar reglas de seguridad en la comunicación. Puede reescribir parte del mensaje transmitido de la request antes de retransmitirlo.


Redirect server

Un proxy que genera respuesta tipo 3xx al cliente especificandole los posibles direcciones SIP donde puede ubicar al user agent destino, con esta informacion el client genera de nuevo una INVITE


Registrar

proceso de asociar la direccion SIP (AOR) y la direccion IP fisica del user agent en una Base de datos de localicarion (Location server) a traves de peticiones REGISTER


Regular Transaction

Cualquier transaccion con un metodo diferente al ACK, INVITE, CANCEL


Request

Peticion enviada por un cliente hacia un servidor para invocar una operación especifica


Response

Mensaje SIP enviado desde un servidor al cliente, como resultado de una Request previa


Ringback

Senal de tono generada por la aplicación de cliente y que se reproduce en user destino, alertadolo de una llamada


Route set

Conjunto de direcciones SIP o SIPS URI de los proxies que el mensaje debe pasar para llegar a su destino, se reunen en header Record-route


Server

Elemento de una red, que recibe peticiones y genera respuesta a ellas, ejemplo proxy, user agent servers, redirect server y registrar server


Sequential search

Proceso que realiza un proxy y consiste en atender una secuencia de contactos; una respuest 2xx o 6xx finaliza una busqueda secuencial


Session

RFC2327 define como la reunion de uno a varios sesiones RTP. Entiende tambien como un dialogo entre dos entidades SIP


SIP Transaction

Conjunto de peticiones intercambiadas entre un cliente y un server, se inicia con una peticion INVITE hasta una respuesta final diferente al tipo 1xx; todos los mensajes SIP entre ellas constituyen una transaccion. Si la respuesta final NO es 2xx, la peticion ACK hace parte de la misma transaccion (se incluye), caso contrario, si la respuesta final es 2xx, ACK hace parte de otra transaccion (se excluye)


Spiral

Al proceso que realiza un proxy al retransmitir una peticion, la cual posteriormente regresa al proxy origen, y luego se retransmitda de nuevo pero con otra direccion. En la spiral, el campo Request-URI de las peticiones son diferentes cada vez que llega la proxy origen, de alli que no se considera un error como el Loop. En ej de una spiral es el proceso call-forwarding.


Stateful proxy

Proxy con estado, un tipo de proxy que llega un registro de todos mensajes SIP dentro del dialogo.


Staless proxy

Proxy que no lleva un registro de las peticiones en el dialogo


Target refresh request

Request que puede modificar el dialogo


Transaction user TU

Capa de procesamiento del protocolo SIP, que reside por encima de las capas transaction y transporte del mismo. Incluye el UAC core, UAS core y proxy core.


Upstream

Sentido del mensaje SIP desde el server hacia el cliente


UAC Core

Conjunto de funciones de procesamiento del UAC, que reside por encima de la capa de transporte y transaction


User agent

Entidad logica que puede actuar como ciente o server


User Agent Client

Entidad logica que emite una request para establecer un dialogo


User Agetn Server

Entidad logica que recibe peticiones y genera una respues a ellas


UAS Core

Conjunto de funciones de procesamiento del UAS que reside por encima de la capa de transporte y transaction



El rol del UAC y UAS como el Proxy y el redirect proxy, se intercambian entre cada transaction, es decir el UAC puede actuar como tal, pero en otra transaction actuar como UAS y viceversa.Por ejmplo cuando emite una request actua como UAC pero cuando recibe un BYE actua como UAS. Lo mismo ocurre a nivel de Proxy y redirect proxy.


martes, 22 de febrero de 2011

Algunos Mitos de IPv6

Este documento esta basado de una publicación de Cisco by Ear Carter, la cual puede ser consultada en su versión original :ver referencias.


La versión original de Ipv6, publicada en 1998 RFC 2460 – Internet Protocol, Version 6 Specification. La idea principal detrás de Ipv6 era resolver los asuntos relacionados con la escasez de direcciones disponibles de Ipv4. Con el tiempo otras características tales como Stateless Address Autoconfiguration ( SLAAC : Proceso usado por los nodos de Ipv6, para configurar una dirección basada en los prefijos anunciado vía un Router Advertisement (RA) o algún identificador de Interface); Network Renumbering ( el ejercicio de renumerar una red consiste en cambiar la IP hos address y tal vez la mascara de red de cada dispositivo dentro de la red que tiene una direccion en ella (Pc's, workstation, printer, file server, terminal server y routers); Soporte Ipsec – Internet Protocol security- conjunto de protocolos cuya función es asegurar las comunicaciones sobre el Protocolo de Internet IP, autenticando y/o cifrando cada paquete IP en un flujo de datos; fueron adicionados al Ipv6. Pero en realidad la importancia de Ipv6 esta en aumentar el espacio de direcciones en Internet debido a su agotamiento (no se esperaba tanto crecimiento en sus inicios de Internet). En el transcurso del tiempo, muchos mitos han salido a la luz publica, los cuales pueden tener un impacto en la seguridad de su red Ipv6, entender la verdad de estos conceptos errados es importante, especialmente ahora que Ipv6 se esta implementando en las redes


Mito 1: Nosotros no lo necesitamos

Mucha gente ha tomado esta posición, lo cierto a enero 2011, el agotamiento de las Ipv4 es una realidad según IANA Internet Assigned Numbers Authority.

Mito 2 Intercambio inmediato

Cuando Ipv4 se agote, Ipv6 sera rápidamente desplegado. Esto es otro mito. La transición de Ipv4 a Ipv6 se hará en años en vez de meses, ambos protocolos coexistirán en Internet.

Mito 3 Nat provee seguridad

El próximo mito es que Ipv6 sera menos seguro debido a la eliminación de la Network Address Translation NAT, una de las razones por las cuales Ipv4 ha permanecido mucho tiempo es debido a la existencia y utilizacion de la NAT, mucha gente tiene esta falsa creencia: la NAT es un mecanismo de seguridad, cuando en realidad la NAT solamente fue diseñada para que muchas direcciones privadas (dentro la red ) pudieran compartir una dirección IP publica. El tamaño que proporciona Ipv6, elimina la necesidad de traducciones de IP address, sin la NAT, la configuración de las redes sera menos compleja que antes, pero eliminar la NAT no incrementa o disminuye la seguridad de las redes Ipv6, usted tendrá que desarrollar los controles adecuados para garantizar dicha seguridad

Mito 4 la tabla de ruteo se hace pequeña

Otro mito común es que Ipv6 reducirá el tamaño de la tabla de ruteo requerido en Internet. Aunque los protocolos de routing fueron recontsruidos para soportar Ipv6 mas eficientemente, no habrá un mejoramiento significante. El direccionamiento Ipv6 reduce el tamaño de la tablas de ruteo. Durante la transición , se necesita soportar la tablas de rutoe tanto para Ipv4 e Ipv6 lo cual podría causar algunos inconvenientes , es mas, el crecimiento de las tablas de ruteo es un hecho debido al incremento de las direcciones Ipv6.

Mito 5 QoS se mejora

El mito que Ipv6 mejora la QoS -Calidad de servicio- con respecto a Ipv4 es erróneo. Ambos protocolos provee QoS en una red IP. Que Ipv6 hace diferente? Ademas de QoS, Ipv6 provee un campo 20-bit flow label en la cabecera de Ipv6, este campo no existe en Ipv4 y mejora la eficienca del flujo en las redes Ipv6 . Sin embargo hoy en día este campo no es usado amplia mente y por tanto no suministra un mejoramiento en la QoS en las redes Ipv6

Mito 6 Ipv6 es sinónimo de mejor seguridad

El mito mas común en cuanto a seguridad es que Ipv6 es mejor que Ipv4 lo cual es errado. Desde el comienzo se ha mencionado que Ipv6 soporta Ipsec y mucha gente ha interpretado esto como un incremento de la seguridad en redes Ipv6. Primero que todo Ipsec no puede detener un ataques a nivel d aplicación. Segundo aunque Ipsec es buen comienzo para un entorno seguro, no se puede usar en todas las conecciones. Mucho mesajes ICMP utilizan multicast (direcciones), el Ipsec para esto mensajes multicast no son fiables . CMP Internet Control Messages Protocol es el subprotocolo de control y notificación de errores del protocolo de internet IP, se usa para enviar mensajes de error, indicando por ejemplo que un servicio determinado no esta disponible o que un router o host no puede ser localizado.) . Así ambos protocolos son seguros pero ninguno es mas seguro que el otro.


Referencias

http://blogs.cisco.com/security/ipv6-myths/


domingo, 21 de noviembre de 2010

M-Pesa Dinero movil

M-PESA es sinónimo de dinero móvil, un servicio de transferencia de dinero desarrollado por la empresa Safaricom de Kenya. M es para el móvil, y Pesa es la palabra dinero en swahili – este servicio fue creado para permitir a los prestatarios de micro finanzas recibir y devolver prestamos usando la red móvil de Safaricom a unas tasas mas competitivas. Con M-PESA se puede depositar, sacar dinero, transferirlo a otras personas, incluso a usuarios no clientes de M-PESA, pagar cuentas, cargar un celular, también es posible hacer transferencia utilizando los cajeros automáticos ATM. M-PESA es un servicio de micro-finanzas que contribuye a reducir la pobreza. Son muchos los beneficios que ofrece este servicio, entre los cuales tenemos:

Facilita el comercio, el pago de productos y servicios como facturas de energía, el pasaje , compra fácilmente airtime o minutos de telefonía, aumenta la seguridad de los taxis al no tener que manejar efectivo al aceptar pagos electrónicos.

Incrementa la seguridad del usuario al no manejar dinero efectivo, disminuye el riesgo de robo


Facilita las transacciones interpesonales dando origen a un mercado peer to peer o persona a persona

Incrementa los niveles de ahorro entre la población pues evita a las personas sacar dinero de las cuentas bancarias ya que hacen uso de una forma mas rápida y económica.

La economía se agiliza, pues facilita el prentamo personal peer to peer, con tal solo utilizando un telefono, por otro lado esto seria una amenaza para los banco pues disminuirian sus transacciones (El cuatro por mil!) y por ende sus utilidades.

Hace las transferencia o giros a larga distancia mas barata (competencia para las empresa de giros internacionales). OH! que estarán pensando Paypal?

Mejora la calidad de vida de los usuarios, al brindarles ahorros que pueden ser utilizados en educacion o compra de bienes y servicios adicionales

Disminuye el riesgo de perdida del dinero

Mejora el poder de negociación del usuario al poder disponer de dinero rápidamente y aprovechar un negocio

Aumenta el consumo en la economia

Son innumerables los beneficios de este innovador servicio, veremos que trabas le colocara el sector financiero para que no prospere, pero una cosa si es cierta esta tomando fuerza!



miércoles, 3 de noviembre de 2010

Asterisk 1.8 release LTS

Digium, anuncio desde el mes pasado (octubre 22), el lanzamiento de la nueva versión LTS (long time support -support for the next fourt years ) de su producto estrella : Asterisk 1.8, entre sus principales caracteristica vale mencionar reverse call display, la integración con Google voice, Google Talk, soporte SRTP ( Secure Real Time- Transport Protocol) para encriptar las llamadas, integración con Microsoft exchange, soporte IPv6 y IPv4 simultáneamente, entre otras.

Que versiones Asterisk le depara el futuro? por ahora se conservara el mismo nucleo de Asterisk, es decir Asterisk 1.x, la version 2.0 todavia se demora un poco , pues ello implica un cambio importante del nucleo de Asterisk.

Asterisk: Scalable communications Framework

Asterisk Scalable Communications Framework (SCF) es un nuevo proyecto de Digium que tiene como objetivo construir un sistema VoiP de fuentes abiertas (Open Source) para infraestructuras complejas. Con ello, Digium desea proporcionar una herramienta (framework) donde los desarrolladores de software puedan desarrollar nuevas aplicaciones bajo Asterisk, a parte de sus tradicionales IP PBX.

Según lo expuesto por Kevin Fleming director de Tecnología de Software de Digium, Asterisk SCF sera un nuevo proyecto, escalable de acuerdo a los cambios de la demanda y complementario (integrado) al proyecto Asterisk PBX. El factor diferenciable de SCF es su escalabilidad frente a las exigencias de la demanda; ( haciendo una similitud es lo que Amazon EC2 -Amazon Elastic Compute Cloud)- plataforma de viene desarrallando.

lunes, 11 de octubre de 2010

La tendencia del Sector de las Telecomunicaciones

En Europa los subscriptores móviles gastan alrededor de USD 36 al mes, lo que se conoce en la industria como – Average Revenue Per User ARPU- Ingreso promedio por usuario. En América USD 51, Japón USD 57 pero en China solamente USD 10 y en India menos de USD 7 y en África el gasto es más bajo. El ARPU en los países desarrollados esta cayendo debido a una demanda saturada. Ante esta situación, los operadores esta creando nuevos modelos para reducir sus costos operativos y ser mas competitivos.

China es el mercado mas grande en telefonía móvil, con 700m subscriptores. Con los mercados desarrollados saturados, las operadoras enfilan baterías hacia mercados en desarrollo, el nuevo campo de batalla de la industria de las telecomunicaciones.

Según estimaciones el mercado a nivel global alcanzara los 6 billones para 2013 – algo sorprendente :)

Varias tendencias están marcando la industria de las telecomunicaciones y las cuales esta llevando a un re acomodo de los operadores establecidos, la primera es el cambio de centro de operaciones hacia países en desarrollo y pobres; la segunda el surgimiento de nuevos participantes en la fabricación de equipos Huawei, ZTE de China, inicialmente empresas de bajo perfil pero ahora con una gran reputación que compiten con las grandes empresas de occidente. La tercera tendencia es el surgimiento de nuevos servicios basados en telefonía móvil. Estas tres tendencias están generando un re acomodo de la industria.

Con todo esto es claro que la industria de las telecomunicaciones esta sufriendo una transformación, cambiando su centro de operaciones de los países desarrollados hacia los países en desarrollo, esto ya se observa en las zonas pobres rurales de Uganda. Debido a este nuevo escenario, los operadores se han visto en la necesidad de crear nuevos modelos de negocios, como el modelo indio.

En la India se ha desarrollado un modelo conocido como “el modelo indio” desarrollado por los operadores móviles, los cuales han desarrollado maneras innovadoras para reducir los costos de las llamadas, a pesar que ARPU es de USD6.5 y el minuto llamada llega a $0.02 aproximadamente $40 pesos, el margen operativo es de $40%, muy superior que sus similares de occidente.