Estructura para servidores de servicios en redes IRC Alumno: Rubén Lozano Díaz Tutor: Carlos Molina Clemente
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Componentes de una red IRC Usuarios Bots Servidores Redes
Conexiones con IRC Modo cliente Modo servidor Acciones limitadas Control total por permisos Visibilidad de la red acotada Visibilidad total de la red Comandos simples Comandos restringidos Administración de servidores
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Protocolo HTTP Definición: Protocolo orientado a transacciones, sigue el esquema petición-respuesta entre un cliente y un servidor. Uso: Se usa en cada transacción de la web (WWW) Funcionamiento: Un user agent envía una petición y el servidor transfiere el recurso mediante una URL
XML - RPC Definición: Protocolo de llamada a procedimiento remoto que usa XML para codificar los datos y HTTP como protocolo de transmisión de mensajes. Uso: Computarización distribuida multiplataforma. Funcionamiento: El cliente lanza una llamada que el servidor recibe, procesa y posteriormente envía el resultado.
Estándar en comunicaciones XML-RPC como estándar Implementaciones importantes: C/C++ Delphi Perl Java PHP .NET
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, Arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Motivación y objetivos Aprendizaje Programación a partir de una herramienta base Creación herramienta para comunidad IRC
Motivación y objetivos Herramienta multiplataforma Herramienta multilenguaje Arquitectura para protocolos IRC Base de datos general ampliable Acercar orientación a objetos a la comunidad IRC
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Diseño
Arquitectura
Base de datos Guardamos: Hibernate: Objetos de la red IRC Datos verificación de servicios Hibernate: Permite abstracción de la base de datos. Modelo orientado a objetos.
Base de datos
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Servicios de ejemplo Servicio de monitorización visual Servicio de administración de Nicks Servicio de monitorización en .NET
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Herramientas De bases de datos: De XML-RPC: Hibernate Hibernate Reverse Engineering Tools Oracle DB Express edition 10g SQL Developer De XML-RPC: WSXML-RPC implementación de Apache
Herramientas De IRC: De entorno Java: Servidor IRC Hispano P10 Cliente IRC mIRC Jibble PircBot De entorno Java: Eclipse Ganymede Log 4 Java JDK Java SE 6 Junit
Herramientas De control de versiones: Subversion SubClipse
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Introducción software libre Libertad de uso, modificación y distribución. Mejoras de calidad y soporte para y por usuarios y desarrolladores. Forma ética de entender el software. Distribuye documentación, ejecutables y código fuente del programa.
Importancia en este proyecto Basado en herramientas de software libre. El 99% de las herramientas usadas son software libre. Se han personalizado herramientas.
Índice Internet Relay Chat Protocolos de red Motivación y objetivos Diseño, arquitectura y base de datos Servicios de ejemplo Herramientas Introducción al software libre Croquis temporal y conclusiones
Croquis temporal
Conclusiones