2
Agentes MóveisConteúdo
Conceito RPC vs Agentes Móveis Modelo de Agentes Ações sobre Agentes Principais Componentes dos Agentes Emprego dos Agentes Móveis Segurança Aglets (Prática no Laboratório)
3
Exemplos1 - Shopping
O agente tem a tarefa de procurar um determinado produto em várias lojas virtuais, segundo critérios pré-estabelecidos, eventualmente negociar e comprar ou encomendar o produto escolhido.
4
Exemplos2 - Primeiro Encontro
O agente tem a tarefa de escolher um restaurante, reservar uma mesa para dois, procurar um espetáculo (próximo ao restaurante), comprar ingressos e encomendar um buquê de flores para o dia seguinte.
5
Conceito São programas que podem migrar entre
computadores de uma rede durante a sua execução, carregando consigo o seu estado de execução.
6
RPC vs Agentes Móveis
Chamada de Procedimentos Remotos (RPC) A comunicação é feita computador à
computador, onde um cliente chama procedimentos em um servidor.
7
RPC vs Agentes Móveis Agentes Móveis
Usa programação remota (RP), na qual um programa além de poder fazer chamadas de procedimentos em outro computador, também pode executar seus procedimentos sobre outro computador.
8
RPC vs Agentes Móveis
A RP tem uma importante vantagem sobre o RPC. Quantitativa e Tática
Performance
Qualitativa e Estratégica Personalização
9
O Modelo de Agentes(Principais Conceitos)
Lugar (Contexto)É o ambiente lógico de execução de agentes,
que disponibiliza um conjunto de serviços (recursos). Tem atributos como identidade e autoridade.
10
O Modelo de Agentes(Principais Conceitos)
Agente Consiste de (Código + Estado), tem atributos
como identidade, localização, autoridade e permissões, podendo ser estacionário ou móvel.
11
O Modelo de Agentes(Principais Conceitos)
Deslocamento É a transferência de um agente de um lugar
para outro, que só ocorre se o agente está autorizado a visitar o destino.
12
O Modelo de Agentes(Principais Conceitos)
Encontro É a interação direta entre dois ou mais agentes,
geralmente posicionados em um mesmo lugar.
13
O Modelo de Agentes(Principais Conceitos)
Autoridade É a identidade da pessoa ou empresa que o
agente ou o lugar representa. Autoridade e identificação servem como base para a autenticação e autorização.
14
O Modelo de Agentes(Principais Conceitos)
Permissões Determinam quais operações podem ser
executadas por agentes e lugares, como também, a quantidade máxima de recursos que podem ser usados.
15
Visão Geral
O Exemplo do Primeiro Encontro
16
Ações Sobre Agentes
As seguintes ações podem ocorrer ao longo da vida de um agente: Create: o agente nasce, seu estado é inicializado. Clone: um clone de um agente é criado com o
mesmo estado do original. Dispatch: um agente é remetido para outra
máquina. Retract: um agente é chamado de volta ao seu
lugar de origem.
17
Ações Sobre Agentes (cont.)
Deactivate: a execução do agente é congelada e seu estado é armazenado.
Activate: a execução do agente é iniciada ou retomada.
Dispose: o agente é destruído e os seus recursos liberados.
18
Principais Componentes dos Agentes Móveis
Linguagem para Programação dos Agentes Permite aos desenvolvedores dos agentes
definir o algoritmo que o agente executa e a informação que ele carrega através do seu deslocamento pela rede.
19
Principais Componentes dos Agentes Móveis (cont.)
Sistema do Agente É o software que provê a máquina virtual para
a linguagem de programação dos agentes, e que gerencia a execução dos agentes e lugares.
20
Principais Componentes dos Agentes Móveis (cont.)
Protocolo de Transporte de Agentes Determina como os agentes são codificados e
transferidos entre servidores.
21
Emprego dos Agentes Móveis
Executar tarefas complexas ou tediosas (ex. busca de informação na rede).
Representar pessoas ou organizações, incorporando as suas autoridades.
Executar autonomamente durante um longo período de tempo (dias-meses).
Ser ativados de um computador móvel e retornar ao mesmo na próxima conexão.
22
Emprego dos Agentes Móveis(Cont.)
Ser usados em redes com conexões instáveis ou com pequena largura de banda.
Interagir com outros agentes de outros usuários.
Acessar recursos e dados em máquinas remotas.
Monitorar o estado de um sistema ou de uma base de dados.
23
Exemplo Monitor Financeiro
Um conjunto de agentes monitora as principais bolsas de valores no mundo para ativar transações nas bolsas de valores locais.
24
Segurança
Dois principais problemas em agentes móveis.Protegendo hosts de agentes maliciosos.Protegendo agentes de hosts maliciosos.
25
Protegendo agentes de hosts maliciosos.
Definição do Problema Agente Móvel para Viagens (AMV)
FHC quer viajar de Recife para Belém no próximo Domingo. Então ele envia um AMV para visitar os servidores de algumas companhias aéreas.
Cenário da Busca de Informação O AMV deve encontrar o melhor preço e
retorna-lo para o FHC.
26
Possíveis Ameaças
Ataque por Espionagem Limite de Preço configurado por FHC. Oferta dos Competidores.
Ataque por Manipulação Base de Dados do Agente Manipulando dados e programa.
27
O Problema Fundamental da Proteção de Agentes.
Detecção de Ataques Aplicação da lei é difícil, lenta e cara. Quebra da privacidade não pode ser tolerada.
Prevenção de Ataques Prevenção é melhor do que Detecção.
28
Prevenindo Ataques
Dados e Programas podem ser lidos, mudados e manipulados indevidamente.
Existem várias técnicas para proteger os Agentes Móveis.
CriptografiaDados e Programas podem ser criptografados
evitando assim, que sejam manipulados indevidamente.
29
Criptografia
Computação com funções criptografadas. Notação:
Função f Programa P que implementa f : P( f ) Função Criptografada E( f ) Programa que implementa E( f ): P (E( f ))
30
Criptografia Cont.
f E(f)
P(E(f))P(f)
31
Criptografia Cont.
f(x) E(f)(x)
P(E(f ))(x)P(f(x))
JaderFHC
32
Tecnologias
Plataforma que fornece aos agentes a capacidade de mover-se livre e facilmente sem afetar sua execução, utilizando várias L.P., em ambientes heterogêneos e de forma segura.
Critérios para escolhaLinguagemProtocoloPortabilidadeSegurança
33
Tecnologias
Baseados em Java: Aglet Softw. Development Kit (IBM) Concordia (Mitsubishi) Cyber Agents (FTP Software) Internet System Environment (OSF) Sumatra (UMCP) Odyssey (General Magic)
34
Tecnologias
Baseados em outras linguagens: Agent Tcl (Dartmouth) April (Fujitsu) Clearlake (Guideware) MO (Univ. Geneva) Obliq (DEC SRC) Tacoma (Tromsø & Cornell Univ.) Telescript (General Magic) Wave ( Univ. Surrey)
35
Telescript
Primeira e mais difundida
Provê um modo automático e interativo para acesso a uma rede de computadores usando agentes móveis
Foco comercial - Comércio Eletrônico
36
Telescript (cont.)
Linguagem (Telescript Language)CompletaOODinâmicaPersistentePortável e Segura
Comandos Básicosgo, travel, meet, connection, name, permit
37
Telescript (cont.)
EngineStorage APITransport APIExternal
Application API
Armazenamento
Lugares e Agentes
Telescript Engine
APIs
AplicaçõesExternas Transporte
38
Telescript (cont.)
ProtocoloTCP/IPX.25SMTP
Lugares e Agentes
Telescript Engine
APIs
AplicaçõesExternas
Armazenamento
Agente de Transporte
Agente de Codificação
39
Agent TCL
Linguagem - Tcl (interpretada) Scripts de alto nível
Comandos básicos begin, submit, jump, send, receive, meet, accept e end.
Características Principais Linguagem flexível e que suporta extensões Indicada para aplicações pequenas e médias Contra indicada para aplicações que exigem classificação de
grandes volumes de dados numéricos
40
Agent TCL (cont.)
Engine - status, migrations, communication e nonvolatile store
Protocolo - TCP/IP
41
Agent TCL (cont.)
Arquitetura TCLAgentes
Tcl ... Java
Server or Engine
TCP/IP ... SMTP
Inter-preter
APIServer
Security Statecaputure
42
ARA
LinguagemAgentes são programados em uma linguagem
interpretada e executados através de um interpretador. (Tcl e C/C++)
ARA COREARA CORE
Agente AInterpretador CInterpretador C
Agente C
43
Ara
EngineARA Core
ProtocoloTCPAX.25
44
ARA (cont.)
Arquitetura
Sistema Operacional do ServidorSistema Operacional do Servidor
ARA CoreARA Core
Processo do Sistema
Processo do Sistema
Agente A
Interpretador A Interpretador B
Agente B
ProcessoARA
45
Questões
A mobilidade é IA ou SD/ES? Onde está a inteligência?
Porque são chamados de agentes?A agenda da pesquisa em agentes móveis está
centrada em mobilidade, segurança, ... Só se tirará proveito completo da mobilidade com
agentes autônomos?É possível autonomia sem inteligência?Agentes móveis abrirão novos horizontes de
aplicação em IA?
46
Referências C. Harrison, et al: Mobile Agents: Are they a good idea ?, IBM
Research Report, 1995. J. White: Mobile Agents White Paper, General Magic,1996.
(www.genmagic.com/agents/whitepaper/whitepaper.html). M. Endler: Novos Paradigmas de Interação usando Agentes
Móveis, SBRC, 1996. T. Sander: Security! or “ How to Avoid to Breath Life in
Frankensteins Monster”, ICSI-Berkeley, 1997. T. Sander:On the Cryptographic Protection of Mobile Code,
ICSI-Berkeley, 1997. S. Bennet: A Sanctuary for Mobile Agents, 1997.
47
FIM !
Top Related