Download - Agentes Móviles

Transcript
Page 1: Agentes Móviles

Agentes Móviles

Oscar Huertas Lara A52807Mario Solís Parajeles A55540

Page 2: Agentes Móviles

Agenda• Introducción• Definición• Características• ¿Cómo se mueve un agente?• ¿Qué se debe mover?• Ventajas• Desventajas• Seguridad• Aplicaciones• Soporte de movilidad en JADE• Conclusiones• Referencias

Page 3: Agentes Móviles

Introducción

• Evolución: – Tendencia Computación Estática, estacionaria- >

Computación Dinámica, móvil.– Software (Cliente - Servidor).– Hardware (Dispositivos móviles).

Page 4: Agentes Móviles

Introducción(cont)

• Meta: – Cooperación y movilidad total.– Ambientes Diferentes.

• Nuevo paradigma: Agentes Móviles.

Page 5: Agentes Móviles

Definición

• Agente estático: – Sólo puede ejecutarse en la máquina donde fue

iniciado.

• Agente móvil: – No está limitado al sistema donde se inició su

ejecución.– Capaz de transportarse de una máquina a otra a

través de una red heterogénea.

Page 6: Agentes Móviles

Características

• Software + Datos.

• Capacidad de moverse por diferentes nodos de la red una o más veces.

• Deciden cuando y donde.

• Son autónomos en ejecución de tareas.

• Se envían como objetos a través de plataformas conservando su código, datos y estado de ejecución.

Page 7: Agentes Móviles

Características (cont.)

• Código móvil.• Scripts – Lenguajes interpretados.

• Operan sin conexión.

• Tienen la capacidad para su suspender su ejecución y reanudarla en otro nodo.

Page 8: Agentes Móviles

¿Cómo se mueve un agente?

• Iniciación de la transferencia.

– El agente identifica el destino deseado.– El sistema suspende la ejecución del agente.– Se realiza la Serialización.– El sistema hace la autenticación del agente.– Se realiza la transferencia.

Page 9: Agentes Móviles

¿Cómo se mueve un agente? (cont.)

• Recepción del agente.– El sistema destinatario acredita al cliente.– Se realiza la De-serialización.– Asigna Recursos, etc.– El sistema crea la instancia del agente, restaura su

estado y continúa la ejecución. – El Agente parte hacia un nuevo host.

Page 10: Agentes Móviles

¿Cómo se mueve un agente? (cont.)

• Transferencia de otras clases.– La transferencia de las clases puede realizarse

completamente junto con el viaje del agente o hacer peticiones de carga cuando sea preciso.

Page 11: Agentes Móviles

¿ Qué se debe mover?

• Movilidad fuerte VS Movilidad Debil.– Dificultad para desarrolladores vs movilidad total.

• Thread State (Fuerte):– Congelar totalmente la ejecución.– Call stack, variables locales.– Débil: Reiniciar desde un punto de entrada (Main).

Page 12: Agentes Móviles

¿ Qué se debe mover?(Cont.)

• Data (Ambos):– Variables Globales, Heap.– Fuerte: Todo el data alcanzable desde el objeto.– Débil: Se transmiten ciertos Objetos.

• Código(Ambos):– Lógica del agente.– Se puede enviar junto con la Data.• El agente tiene todo lo que necesita al llegar

Page 13: Agentes Móviles

¿ Qué se debe mover?(Cont.)

– Se puede enviar a petición.• Evita transferencia código innecesario.• Cacheo de código.

Page 14: Agentes Móviles

Ventajas

Ejecución asíncrona de tareas

Page 15: Agentes Móviles

Ventajas (cont.)

Reducción del tráfico en la redy de la capacidad de cómputo del cliente.

Page 16: Agentes Móviles

Ventajas (cont.)

Robusto: reducción de la dependencia de ladisponibilidad de la red y del cliente/servidor

Page 17: Agentes Móviles

Ventajas (cont.)

Automatización del proceso de tareas distribuidas.

Page 18: Agentes Móviles

Desventajas

• Restricciones.

• Lenguajes de programación.

• Virus.

Page 19: Agentes Móviles

Seguridad

Se deben controlar los siguientes aspectos:

• Protección de la máquina contra otros agentes

• Protección de los agentes contra la máquina

• Protección de la red

Page 20: Agentes Móviles

Seguridad (cont.)Ataques comunes que pueden realizarse a un agente móvil.

• Congestión.

• Escuchas.

• Alteración.

• Retransmisión.

Page 21: Agentes Móviles

Seguridad (cont.)Ataques comunes que pueden realizarse a un agente

móvil (cont.)

• Falsificación de identidad.

• Bloqueo.

• Propagación de virus.

Page 22: Agentes Móviles

Seguridad (cont.)

Estrategias para lograr la seguridad:• Comprobar credenciales.

• Restringir operaciones.

• Restringir recursos.

Page 23: Agentes Móviles

Aplicaciones• Servicios de información en Internet

– Múltiples lugares– Filtrado– Control de cambios– Difusión

• Comercio electrónico– Negociación

• Equipos móviles (telecomunicaciones)– Conexiones intermitentes y bajo ancho de banda

Page 24: Agentes Móviles

Aplicaciones (cont.)

• Procesamiento paralelo

• Gestión de procesos (workflow)

• Juegos (agentes que representan jugadores)

Page 25: Agentes Móviles

Aplicaciones (cont.)

Ejemplo: Gestión de red• Detección y corrección de fallos• Control del rendimiento

Page 26: Agentes Móviles

Soporte de la movilidad en JADE

• Consiste en un conjunto de clases, métodos y una ontología específica de movilidad (MobilityOntology).

• Se utilizan mensajes FIPA-ACL como medio de transporte– “Move” y “power-up”– “Mobile-agent-description” y “mobile-agent-

profile”

Page 27: Agentes Móviles

Proceso

• Se envía un Request a la plataforma destino esperando respuesta.

• Si obtenemos un Inform, el agente puede serializarse y enviarse dentro de un mensaje a la plataforma destino.

• Si ocurren algún problema durante este traspaso de información se desharán todos los cambios.

Page 28: Agentes Móviles

Ejemplo

Page 29: Agentes Móviles

Clase “Agent”• doMove(Location destino)

• doClone(Location destino,string nombre)

• beforeClone()

• afterClone()

• beforeMove

• afterMove

Page 30: Agentes Móviles

MobilityOntolgy Conceptos

• mobile-agent-description: agente.

• mobile-agent-profile: entorno de programación.

• mobile-agent-system: tiempo de ejecución.

• mobile-agent-language: lenguaje de programación.

• mobile-agent-os: operaciones.

• location: lugar.

Page 31: Agentes Móviles

MobilityOntolgy Acciones

• move-agent

• clone-agent

• where-is-agent

• query-platform-locations

Page 32: Agentes Móviles

Conclusiones

• Los agentes móviles son una gran alternativa para los procesos distribuidos.

• Es un campo actualmente en desarrollo (problemas de incompatibilidad y seguridad).

Page 33: Agentes Móviles

Referencias • Jansen, Wayne y Karygiannis, Tom. “Mobile Agent

Security”. National Institute of Standards and Technology. URL: http://csrc.nist.gov/publications/nistpubs/800-19/sp800-19.pdf

• Cybenko, George y otros. “Mobile Agents: Motivation and state-of-the-art systems”. Department of Computer Science Dartmouth College. Hannover, New Hampshire. URL: http://actcomm.dartmouth.edu/papers/gray:motivation-tr.pdf

Page 34: Agentes Móviles

Referencias (Cont.)

• Cybenko, George y otros. “D’Agents: Applications and Performance of a Mobile-Agent System”. Department of Computer Science Dartmouth College. Hannover, New Hampshire. URL: http://actcomm.dartmouth.edu/papers/gray:spe.pdf.

• Kotz, David y Gray, Robert. “Mobile Agents and the future of the Internet”. Department of Computer Science Dartmouth College. Hannover, New Hampshire. URL: http://actcomm.dartmouth.edu/papers/kotz:future2.pdf


Top Related