1 mac 5743 - computação móvel agentes de software para computação móvel aluno: eduardo leal...

28
1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra [email protected]

Upload: internet

Post on 22-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

1

MAC 5743 - Computação Móvel

Agentes de software para Computação Móvel

Aluno: Eduardo Leal [email protected]

Page 2: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

2

Introdução

Computação Móvel: Limitações de largura de banda Desconexões intermitentes Limitações de recursos Implica em variância na disponibilidade de

comunicação e recursos computacionaisNecessidade de Adaptação!=> Interesse em Agentes de Software

Page 3: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

3

Roteiro

Conceitos sobre agentes

Agentes na computação móvel Arquiteturas de Software para Computação Móvel Paradigmas de Comunicação Novas Arquiteturas

Middlewares baseados em agentes

Conclusão

Page 4: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

4

Agentes

“…everything that can be viewed as perceiving its environment through sensors and acting upon that environment through effectors” – Russell & Norvig

environment agent

effectors

sensorspercepts

actions

Page 5: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

5

Agentes

Características: Autonomia: execução desacoplada Reatividade: responder a eventos do ambiente Sociabilidade: interação entre agentes Mobilidade: troca de computador hospedeiro

Page 6: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

6

Agentes

Agentes Móveis: Programas (código + dados + estado (thread)) que podem

migrar de um computador a outro para execução Autonomia: podem migrar sem a intervenção do usuário Adaptativo: colaboram com outros agentes ou com o

ambiente Requer um ambiente de execução

Page 7: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

7

Agentes na Computação Móvel

Vantagens: Assincronismo Adaptação Configuração Dinâmica

Problemas: Desempenho e escalabilidade Portabilidade e padronização Segurança

Page 8: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

8

Agentes na Computação Móvel

Como são usados ? Modelo Computacional Paradigma de Comunicação

Em que são usados ? Middlewares para Adaptação e Aplicações Objetivos: gerenciamento de serviços,

recuperação de informação distribuída, distribuição de multimídia, etc.

Page 9: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

9

Arquiteturas para Computação Móvel

Relembrando … Cliente/Proxy/Servidor Cliente/Interceptador/Servidor Peer-to-Peer Baseada em Agente Móveis

Page 10: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

10

Arquiteturas para Computação Móvel

Modelo Cliente/Proxy/Servidor

UM

Cliente Proxy Servidor

Interface sem fio

Rede Fixa

Conversão/tradução de msgs, bufferização, compactação Adequado para clientes magros

Page 11: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

11

Arquiteturas para Computação Móvel

Modelo Cliente/ Interceptador /Servidor

UM

AgenteCliente

Agente Servidor

Servidor

Interface sem fio

Rede Fixa

Suporte à desconexão Adequado para clientes gordos

Cliente

Page 12: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

12

Arquiteturas para Computação Móvel

Modelo Peer-to-Peer

Adequado para aplicações P2P

UM

Proxy ProxyAplicaçã

o

Interface sem fio

Aplicação

UM

Page 13: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

13

Arquiteturas para Computação Móvel

Baseada em Agentes Móveis

Migração de funcionalidade Execução de operações demoradas na rede fixa

UM

Agente Agente Servidor

Interface sem fio

Rede Fixa

Cliente

Page 14: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

14

Paradigmas de Comunicação

Client-Server Remote Evaluation Agentes Móveis

Page 15: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

15

Paradigmas de Comunicação

Cliente-Servidor Joãozinho quer fazer um bolo de chocolate:

Ele não sabe a receita Ele não tem os ingredientes nem o forno

Joãozinho sabe que Mariazinha: Sabe a receita Tem uma cozinha equipada

Joãozinho pede à Mariazinha: “Você pode me fazer um bolo de chocolate ?”

Mariazinha faz o bolo e entrega ao Joãozinho

Page 16: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

16

Paradigmas de Comunicação

Remote Evaluation Joãozinho quer fazer um bolo de chocolate:

Ele sabe a receita Ele não tem os ingredientes nem o forno

Joãozinho sabe que Mariazinha: Não sabe a receita Tem uma cozinha equipada

Joãozinho pede à Mariazinha: “Você pode me fazer um bolo de chocolate ? Aqui está a

receita” Mariazinha faz o bolo e entrega ao Joãozinho

Page 17: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

17

Paradigmas de Comunicação

Agentes Móveis Joãozinho quer fazer um bolo de chocolate:

Ele sabe a receita e tem os ingredientes Ele não nem o forno

Joãozinho sabe que Mariazinha: Tem um forno

Joãozinho pode: preparar a massa Ir à casa de Mariazinha Cozinha o bolo

Page 18: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

18

Novas Arquiteturas

[Spyrou, Pitoura & Evrpidou 2004] propõem o uso do paradigma de comunicação baseado em Agentes Móveis nas arquiteturas já existentes: Cliente/Proxy/Servidor Cliente/Interceptador/Servidor

Propõem também que o modelo baseado em agentes não é ortogonal aos modelos “tradicionais”

Page 19: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

19

Novas Arquiteturas

Vantagens Configuração Dinâmica Flexibilidade

Desvantagens Em certas situações, aumento no tráfego da rede

Page 20: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

20

Middlewares baseados em Agentes

SOMA MAP MONADS

Page 21: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

21

SOMA: Secure and Open Mobile Agents

3 Serviços para suporte à mobilidade: Ambiente virtual do usuário: mantém o perfil

do usuário levando em conta a mobilidade (agentes: distribuição dinâmica da informação)

Terminal virtual móvel: mobilidade dos dispositivos (agentes: rebind de recursos/serviços e operações desconectadas)

Gerente de recursos virtuais: facilita o acesso aos recursos do sistema (agentes: migração de recursos e serviços)

Page 22: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

22

SOMA

Page 23: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

23

MAP – Mobile Agent Platform

plataforma para desenvolvimento e gerência de agentes móveis

suporte posterior a usuários nomades monitoramento de usuários conectados por

região através de um gerenciador (Lookup Server)

Page 24: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

24

MAP

Page 25: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

25

Monads

foco na adaptação utilizando agentes móveis e inteligentes

suporte à protocolos padrões: IIOP, SNMP, HTTP

Objetivos: melhorar a eficiência de aplicações de rede otimizar o estabelecimento, configuração e

manutenção das conexões sem fio

Page 26: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

26

Monads

adaptability adaptability

adaptability

co-operation

TerminalTerminal ServicesServices

Communications InfrastructureCommunications Infrastructure

Data Communication Agent

User Interface

Agent

Service Agent

Service Agent

User Interface

Agent

Page 27: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

27

Conclusões

O uso de agentes na solução de alguns desafios da computação móvel apresenta um potencial considerável

Podemos “ver” agentes não só como modelo computacional, mas também como paradigma de comunicação

Os modelos “tradicionais” de computação móvel não são ortogonais ao modelo de agentes móveis

Page 28: 1 MAC 5743 - Computação Móvel Agentes de software para Computação Móvel Aluno: Eduardo Leal Guerra eguerra@ime.usp.br

28

Conclusões

Agentes não resolvem todos os problemas, e nem sempre é a melhor solução

O uso de agentes não se restringe apenas aos middlewares