450 likes | 656 Views
Desarrollo de una aplicación de videoconferencia bajo protocolo SIP. Realizado por: D. Pablo Montoro Escaño Dirigido por: Dr. Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universidad de Málaga, Junio 2005. Índice. Introducción. Protocolo SIP. Metodología. Desarrollo del software.
E N D
Desarrollo de una aplicación de videoconferencia bajo protocolo SIP Realizado por: D. Pablo Montoro EscañoDirigido por: Dr. Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universidad de Málaga, Junio 2005
Índice Introducción Protocolo SIP Metodología Desarrollo del software Aplicación umasip 1.00 Pruebas realizadas Ayudas y documentación Conclusiones y líneas futuras
Desarrollo de una aplicación de videoconferencia bajo protocolo SIP Introducción Programación Multimedia Tecnología de Señalización
Introducción (2) Especificaciones - Una aplicación de videoconferencia que funcione extremo a extremo - Multiplataforma, válido con usuarios que empleen diferentes sistemas operativos - Transmisión y recepción de flujos multimedia en tiempo real - Tecnología de señalización para sesiones multimedia bajo protocolo SIP, y que su funcionamiento sea visible desde el propio interfaz - Con un interfaz amigable y un sistema de ayudas - Software Libre, de forma que su código fuente sea accesible por futuros desarrolladores
Introducción (3) Restricciones Funcionales - No implementar el registro de un usuario en un servidor SIP - Sin funcionalidad como servidor proxy dentro de la misma aplicación - Ningún mecanismo para atravesar un sistema NAT (Network Address Translation) - Videoconferencia punto a punto, prescindiendo de la implementación multipunto.
Introducción (4) Esquema de funcionamiento
Protocolo SIP Definición El protocolo SIP (Session Initiation Protocol) es un protocolo de control, o señalización, a nivel de sesión para la creación, modificación y conclusión de sesiones multimedia de uno o más participantes Se trata de un estándar del IETF, definido en el RFC (Request for Comments) 3261 de Junio de 2002, y que actualiza al RFC 2543 de Marzo de 1999 Identificador sip:user:password@host:port;uri-parameters?headers SIP URI (Uniform Resource Identifier) sip:usuario@host.com SIPS URI (Uniform Resource Identifier) sips:usuario@host.com
Protocolo SIP (2) Introducción Protocolo SIP Elementos SIP - Un agente de usuario o UA (User Agent), integra cliente y servidor - El cliente de agente de usuario o UAC (User Agent Client) - El servidor de agente de usuario o UAS (User Agent Server) - Un proxy o servidor proxy es una entidad intermedia que actúa como servidor - Un servidor de redirección genera respuestas de redirección (respuestas 3xx) - Un proxy de registro, o en inglés registrar, provee un servicio de localización
Protocolo SIP (3) Cabecera Mensajes SIP Cuerpo del Mensaje (Protocolo SDP) Mensajes Petición Mensajes Respuesta (Código y Frase Textual Asociada) REGISTER INVITE ACK CANCEL BYE OPTIONS 1xx: Provisional (Provisional) 2xx: Éxito (Success) 3xx: Redirección (Redirection) 4xx: Error de Cliente (Client Error) 5xx: Error de Servidor (Server Error) 6xx: Fallo Global (Global Failure)
Protocolo SIP (4) Modelo de capas
Protocolo SIP (4) Modelo de capas
Protocolo SIP (5) Ejemplo de sesión SIP
Metodología modelo incremental en modo secuencial + modelo de construcción de prototipos
Desarrollo del software jSIP (Java SIP) - Protocolo SIP Lenguaje de programación Java JMF (Java Media Framework) - Multimedia Interpretado, Máquina Virtual Java (JVM) Code Conventions for the Java Programming Language de Sun Microsystems Documentación para el desarrollador en Javadocs
Desarrollo del software jSIP (Java SIP) - Protocolo SIP Lenguaje de programación Java JMF (Java Media Framework) - Multimedia Interpretado, Máquina Virtual Java (JVM) Code Conventions for the Java Programming Language de Sun Microsystems Documentación para el desarrollador en Javadocs
Desarrollo del software (2) Clases implementadas: - umasip - Interfaz - Idioma - Preferencias - Agente - Llamada Notación UML
Desarrollo del software (3) Ejemplo de diagrama de flujos Método texto( ) de la clase Idioma
Desarrollo del software (4) Diagrama de bloques umasip Agente Interfaz Preferencias Llamada jSIP Idioma JMF
Desarrollo del software (5) Diagrama de estados
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 Menú de opciones
Aplicación umasip 1.00 (2) Funcionamiento de los idiomas - Ficheros .fiu
Pruebas realizadas Pruebas de caja blanca durante la fase de desarrollo Pruebas de funcionamiento básico Pruebas de caja negra Pruebas de entorno Pruebas de casos extraordinarios
Pruebas realizadas (2) Ethereal
Pruebas realizadas (3) Análisis de las capturas
Ayudas y documentación Español - Manual del usuario en formatos .pdf y .sxw Inglés - Ficheros de ayuda elemental acompañando al programa (README.txt,...) - Menú de ayudas dentro del programa - Documentación generada por Javadocs (clases del programa y librería jSIP) - Página web índice de toda la documentación disponible y código fuente - Memoria del proyecto (diagramas de estado, flujos, bloques, clases UML, ...)
Ayudas y documentación Español - Manual del usuario en formatos .pdf y .sxw Inglés - Ficheros de ayuda elemental acompañando al programa (README.txt,...) - Menú de ayudas dentro del programa - Documentación generada por Javadocs (clases del programa y librería jSIP) - Página web índice de toda la documentación disponible y código fuente - Memoria del proyecto (diagramas de estado, flujos, bloques, clases UML, ...)
Conclusiones y líneas futuras Conclusiones Se ha creado una aplicación con una funcionalidad completa Software novedoso - Videoconferencia - Multiplataforma (Java) - Protocolo SIP - Software Libre - Multilingüe Telefonía Móvil (3ª Generación) Banda Ancha para Internet (ISP) Software de interés actual Videollamada en Telefonía Fija
Conclusiones y líneas futuras (2) Líneas futuras Software Libre permite su mejora y ampliación Continuación del software: - Implementar la opción de registro - Solución a sistemas NAT - Aumentar la posibilidad de videoconferencia a multipunto - Funcionalidades adicionales (chat, pizarra compartida,...)
Desarrollo de una aplicación de videoconferencia bajo protocolo SIP Realizado por: D. Pablo Montoro EscañoDirigido por: Dr. Eduardo Casilari Pérez Dpto. Tecnología Electrónica - Universidad de Málaga, Junio 2005