Agentes Móveis zMobilidade ypropriedade ortogonal de um agente ynem todos os agentes necessitam ser móveis zAgentes Estacionários yum agente pode simplesmente.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Sistemas Cliente/Servidor Introdução
Noções de Sistemas Operacionais
Sistemas operacionais
Sistemas Distribuídos:Definições e Caracteristicas
Sistemas Distribuídos
Vírus.
Sistema para Gerenciamento de Redes Baseado em Agentes Móveis
Interação Cliente Servidor
CAPÍTULO Sistemas de supervisão 2. Sistema SCADA
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Objetos Distribuídos Padrão CORBA
Threads.
Mobilidade Cláudia Ribeiro.
UFRPE – Modelos de Qualidade Teresa Maciel
Configuração de manutenção
Sistemas Distribuídos
Funcionalidades e Protocolos da Camada de Aplicação
Middleware e Sistemas Distribuídos
Software de Rede Willamys Araújo.
Modelo de referência OSI
Maria Tereza Nagel Junho 2004 Grids de Agentes Processadores para Gerência de Redes de Computadores e Telecomunicações Orientador: Prof. Dr. Carlos Becker.
Aula 9 - Camada de aplicação
Carlos Eduardo Calvente Ribeiro Universidade Federal do Rio de Janeiro
1 Modelos de Sistemas Distribuídos. Introdução - Dificuldades e ameaças para SD. Grande variação na utilização de SD )carga de trabalho e requerimentos.
Sistemas Distribuídos
Sistemas Operacionais
Arquitetura Cliente /Servidor
Sistemas Distribuídos
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 07.
Concorrência e Java RMI
1 Mobilidade de Código com μcode Projeto Giga Alexandre Lages
Gerenciamento de Redes Utilizando Agentes Móveis
Técnico em Informática
Sistemas Distribuídos
Professor: Márcio Amador
Sistemas Distribuídos Estrutura de Redes
Orientação a Objetos Parte I
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Sistemas Distribuídos
BD Distribuído Conceitos Iniciais.
Hubs Os hubs são dispositivos concentradores, responsáveis por centralizar a distribuição dos quadros de dados em redes fisicamente ligadas em estrela.
Sistemas Operacionais
Processos.
Elementos de um Sistema de Agentes Móveis Agentes e Places Comportamento de Agentes Comunicação Padronização OMG/MASIF.
Escola de Engenharia de Piracicaba Administração Sistema de Comunicação de Dados Aula 6 – A Internet Alberto Martins Júnior Flávio I. Callegari.
MONITORAMENTO DE REDE E SERVIDORES UTILIZANDO O CACTIEZ E SNMP
Gestão SNMP. Planeamento Montagem e Manutenção de Redes e Equipamentos Informáticos 2 SNMP- Simple Network Management Protocol Nos primeiros dias da Arpanet,
TECNOLOGIAS DE PROCESSO
CONECTIVIDADE Prof.: Alessandro V. Soares Ferreira
Linguagem de Programação IV Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Capítulo 4: Processos.
Infra-Estrutura para Computação Distribuída
Capítulo 6: SAD – Arquitetura e aspectos de rede e segurança
Conceitos de Monitoramento
Serviços de rede e internet Jackson Eduardo da Silva.
Implementação Distribuída Escalonamento de Tempo-Real Prof. Dr. Norian Marranghello Grupo 8 Daniela Gonçalves Strozi – Sayuri Watanabe
Escola de Engenharia de Piracicaba Administração Sistema de Comunicação de Dados Aula 6 – A Internet Alberto Martins Júnior Flávio I. Callegari.
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Por que Redes? Estamos cercados por redes: supermercados, lojas, bancos, cinemas, farmácias e inúmeros outros lugares; Com a queda do custo de implementação.
Softwares Faculdade de Ciências Aplicadas e Sociais de Petrolina - FACAPE Ciência da Computação Professora: Cynara Carvalho
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Maique C. Garcia Pelotas, Junho de  Controle Automático Autônomo  Através da identificação da ação mais adequada em caso de um diagnóstico de.
Curso Superior em Redes de Computadores Camada de Aplicação Prof. Sales Filho.
Transcrição da apresentação:

Agentes Móveis zMobilidade ypropriedade ortogonal de um agente ynem todos os agentes necessitam ser móveis zAgentes Estacionários yum agente pode simplesmente permanecer em seu site original e se comunicar com o resto do mundo por meio da rede yum agente estacionário executa somente no sistema onde ele foi originalmente executado yse um agente estacionário necessita de informações que não estão no sistema, ele utiliza algum mecanismo de comunicação para acessar outros agentes ou recursos yagentes estacionários podem ser extremamente úteis e poderosos - a falta de mobilidade não é necessariamente uma fraqueza do agente

Agentes Móveis zAgente Móvel ynão está ligado ao sistema que o iniciou ylivre para viajar por entre hosts em uma rede yuma vez criado em uma máquina/sistema hospedeiros, ele pode transportar seu estado e código consigo para outras máquinas/sistemas na rede, onde continua sua execução zEstado yvalores dos atributos do agente necessários para que ele continue sua execução após o transporte zCódigo ydentro de um contexto orientado a objetos, o código das classes necessárias para que o agente possa executar

Agentes Móveis zDefinição de um Agente Móvel yum agente móvel é um agente que não está ligado permanentemente ao sistema que o iniciou enquanto processo yele possui a habilidade única de se transportar de um sistema a outro em uma rede, mantendo seu contexto original antes do transporte yesta habilidade para viajar, permite ao agente móvel se mover para o sistema que contém o recurso com o qual o agente deseja interagir ypode portanto tirar vantagem disso para estar na mesma máquina ou rede onde busca informações, e com isso ser muito mais eficiente em sua tarefa

Boas Razões para Usar Agentes Móveis zAgentes Móveis reduzem o tráfego na rede ysistemas distribuídos demandam protocolos de comunicação que envolvem múltiplas interações para concluir uma tarefa yisso é especialmente verdadeiro quando medidas de segurança são utilizadas yo resultado disso é um tráfego intenso na rede yagentes móveis permitem o deslocamento da interação entre a aplicação cliente e o servidor para a máquina onde está o servidor, onde estas interações podem então ocorrer localmente yquando grandes volumes de dados estão armazenados remotamente e necessitam ser processados, ao invés de trazer os dados para serem processados localmente, enviamos o agente para processá-los remotamente

Boas Razões para Usar Agentes Móveis zAgentes podem resolver problemas de latência na rede ysistemas críticos de tempo-real (tais como robôs e processos de manufatura) precisam responder imediatamente a mudanças em seu ambiente ycontrolar estes sistemas por meio de redes em uma fábrica de tamanho substancial pode introduzir tempos de latência significativos ypara sistemas de tempo real críticos, essas latências podem não ser aceitáveis yagentes móveis podem solucionar o problema, pois estes podem ser despachados de um controlador central para agir localmente e executar diretamente as diretivas de controle

Boas Razões para Usar Agentes Móveis zAgentes podem encapsular protocolos yquando trocamos dados em um sistema distribuído, cada host implementa localmente os protocolos de comunicação com o qual pode receber e enviar dados yentretanto, como estes protocolos estão sendo sempre aperfeiçoados e/ou modificados por razões de segurança e eficiência, os softwares que implementam estes protocolos necessitam estar em constante manutenção yem uma rede com um número grande máquinas, a manutenção destes softwares pode ser custosa e até mesmo impossível yprotocolos normalmente tornam-se uma sina de sistemas mais antigos yagentes móveis podem carregar consigo estes protocolos, e portanto podem implementar esta manutenção de uma maneira muito eficaz

Boas Razões para Usar Agentes Móveis zAgentes Móveis executam de maneira assíncrona e autônoma yfrequentemente, dispositivos móveis necessitam dispor de conexões de rede caras e frágeis ytarefas que demandam de conexões continuamente abertas entre um dispositivo móvel e uma rede fixa podem não ser economicamente viáveis yestas tarefas podem ser implementadas por meio de agentes móveis, que podem então ser despachados para dentro da rede yapós serem despachados, os agentes móveis tornam-se independentes do processo que os criou e podem atuar de maneira assíncrona e autônoma yo dispositivo móvel pode se reconectar posteriormente então para coletar o agente de volta

Boas Razões para Usar Agentes Móveis zAgentes Móveis podem adaptar-se dinamicamente yagentes móveis têm a habilidade de sensorear seu ambiente de execução e reagir autonomamente a mudanças yestas mudanças podem envolver questões como: xtaxa de ocupação de memória e CPU de máquinas específicas xtráfego na rede xociosidade de máquinas xtrechos e/ou segmentos de rede congestionados xhorários prioritários em máquinas específicas ymúltiplos agentes móveis possuem a habilidade única de se distribuírem mutuamente entre os hosts disponíveis em uma rede, de maneira a manter uma configuração ótima para a resolução de um dado problema

Boas Razões para Usar Agentes Móveis zAgentes Móveis são naturalmente heterogêneos yredes são sistemas fundamentalmente heterogêneos, tanto sob perspectivas de hardware como de software ymúltiplos tipos de máquinas e sistemas operacionais podem estar presentes em redes de vasto alcance ypromover a integração de máquinas e sistemas diferentes pode constituir uma tarefa razoavelmente complicada yesta integração normalmente demanda soluções específicas para cada máquina/sistema ycomo agentes móveis geralmente não dependem do computador ou da camada de transporte que os conecta, mas somente de seu ambiente de execução, eles provêm condições ótimas para a integração de sistemas

Boas Razões para Usar Agentes Móveis zAgentes Móveis são Robustos e Tolerantes a Falhas yagentes móveis podem reagir dinamicamente diante de situações desfavoráveis e eventos imprevistos yesta habilidade dos agentes móveis facilita a construção de sistemas distribuídos mais robustos e tolerantes a falhas yse um determinado host passa a apresentar problemas e necessita ser desligado, todos os agentes executando nesta máquina são avisados e têm um dado tempo para transferirem- se para outro host yno novo host, podem então continuar sua operação normal, sem prejuízo para o cumprimento de suas tarefas ycaso seja impossível essa transferência, grupos de agentes que comunicam-se constantemente podem notar a ausência de comunicações do agente subitamente desaparecido e tomar providências para compensar sua ausência

Um Novo Paradigma de Programação em Rede zParadigmas de Programação em Rede yParadigma Cliente-Servidor yParadigma Código-sob-Demanda yParadigma Agentes Móveis zAgentes Móveis yprovêm um paradigma poderoso e uniforme para programação em rede ypodem revolucionar o design e desenvolvimento de sistemas distribuídos ypodem ser mais simples de conceber ypodem ser mais simples de se testar ypodem gerar comportamentos mais sofisticados que os sistemas distribuídos convencionais

Paradigmas de Programação em Rede zParadigma Cliente-Servidor yservidor oferece um conjunto de serviços que provêm acesso a um conjunto de recursos (por exemplo bases de dados) yo código que implementa estes serviços está normalmente localizado no servidor (o servidor tem o know-how) yo servidor por si mesmo executa o serviço e portanto tem a capacidade de processamento yse o cliente está interessado em acessar algum recurso, ele simplesmente usa um dos serviços oferecidos pelo servidor yo cliente precisa saber quais os serviços disponíveis e como acessá-los yeste paradigma está associado a uma vasta gama de tecnologias: xRPC, CORBA, RMI

Paradigmas de Programação em Rede zParadigma Código-sob-Demanda yO cliente obtém o know-how quando o necessita yum determinado host A deseja executar uma tarefa, mas não possui o código que a implementa (know-how) youtro host B acessável via rede possui o código desejado yo código é transmitido do host B para o host A yo host A pode então executar o código yAo contrário do paradigma cliente-servidor, o host A não precisa de maiores dados de B sobre o serviço, uma vez que o código necessário será obtido via download yExemplos deste paradigma são: xJava applets e servlets, controles ActiveX

Paradigmas de Programação em Rede zParadigma Agentes Móveis ycaracterística chave é que qualquer host da rede pode agregar qualquer mistura dentre know-how, recursos e processamento ycapacidade de processamento dos agentes móveis pode então ser combinada a recursos locais, sendo transportada de host a host na rede yo know-how (na forma de agentes móveis), não está vinculado a nenhum host específico, mas está disponível a partir da rede ycomparando-se aos outros paradigmas, percebe-se a grande flexibilidade do paradigma agentes móveis: xclientes e servidores foram unificados na idéia de “host” xapplets e servlets são combinados e têm suas características extendidas e aperfeiçoadas

Aplicações de Agentes Móveis zComércio Eletrônico yagentes podem vasculhar a rede e negociar em nome de quem os enviou zAssistente Pessoal yassistentes podem efetuar tarefas na rede em nome de seus criadores. Estes podem desligar seus micros da rede zNegociação Segura yagentes podem mover-se para sites seguros a fim de negociar zBusca de Informação Distribuída yao invés de concentrar busca em um só site, distribui agentes pela rede zProcessamento Paralelo yagentes podem gerenciar processos paralelos

Aplicações de Agentes Móveis zServiços de Telecomunicação via Rede yagentes podem reconfigurar dinamicamente redes de telecomunicações, mantendo-a coesa zAplicações de Workflow e Groupware yagentes móveis podem cooperar em nome de co-participantes de um grupo de trabalho zMonitoração e Notificação yagente pode monitorar uma determinada fonte de informações de maneira independente de onde se originou zDisseminação de Informação yagentes vêm até você com a informação desejada (tecnologia push - aplicada a agentes móveis)

Plataformas de Agentes Móveis em Java zAglets ydesenvolvido pela IBM yinspirado no modelo de applets: aglet = agent + applet zOdissey ydesenvolvido pela General Magic Inc. ydescendente do Telescript, primeiro sistema de agentes móveis comercial zConcordia ydesenvolvido pela Mitsubishi zVoyager ydesenvolvido pela ObjectSpace yORB completo, com capacidades para agentes móveis

Outras Plataformas de Agentes Móveis zAgent TCL ydesenvolvido no Dartmouth College ysistema de agentes móveis desenvolvido para a linguagem TCL yprovê extensivos serviços de navegação e comunicação, mecanismos de segurança e debug, além de ferramentas de rastreamento de agentes zAra ydesenvolvido na Universidade de Kaiserslautern ydesenvolvido para TCL, em redes heterogêneas zTACOMA yprojeto focaliza no desenvolvimento de suporte do sistema operacional a agentes móveis ybaseado em UNIX e TCP, suportando C, TCL/TK, Perl, Python e Scheme

Padronização de Agentes Móveis - MASIF zMobile Agent System Interoperability Facility (MASIF) ydesenvolvido pelas empresas: Crystaliz, General Magic, GMD Fokus, IBM Corporation e Open Group ysubmetido ao Object Management Group (OMG) zFoco yinterface entre sistemas de agentes (não entre aplicações de agentes e sistemas de agentes) zTópicos Abordados yGerenciamento de Agentes yTransferência de Agentes yNomes de Agentes e de Sistemas de Agentes yTipos de Sistemas de Agentes e Sintaxe de Localização