SlideShare uma empresa Scribd logo
1 de 37
“Um paradigma inovador para a Comunicação Oportunista e Autonômica” 
Mestrando: Ramon Mayor Martins 
Disciplina: Tópicos Avançados em Redes 
Prof. Dr. Antônio Marcos Alberti 
Mestrado em Telecomunicações 
INATEL – Instituto Nacional de Telecomunicações
Escopo: 
Redes oportunistas 
•Refere-se a trocas de dados aproveitando "oportunidades " de conexoes; 
•Tais situações são comuns em muitas regiões do mundo onde a infraestrutura de acesso 
banda larga possui uma cobertura limitada. 
•A infra-estrutura de acesso atual é vulnerável a desastres naturais ou outras falhas, e redes 
oportunistas podem ser a única maneira viável para realizar importantes transmissões de 
dados.
Escopo: 
Redes PSN: Pocket Switch Network 
•PSNs são redes tolerantes a atrasos (Delay Tolerant Networks - DTN) 
•Tentam prover comunicação em ambientes onde a conectividade fim-a-fim nem sempre pode 
ser feita. 
•Beneficiam-se de conexões locais intermitentes de forma oportunística (por ex., rede Wi-Fi. ad 
hoc, Bluetooth, etc.) e conexões globais (por ex., pontos de acesso à Internet, GPRS, SMS, 
etc.) quando disponíveis. 
•As redes PSN não são úteis somente na ausência de infra-estrutura de rede, mas também em 
cenários como tráfego intenso na rede, catástrofes, falta de energia, redes de sensores e 
meios de transporte (trens, aviões, etc.).
Introdução: 
•O projeto Haggle tem uma abordagem centrada em informação para a 
comunicação em vez de uma abordagem centrada em nó / host. 
•É um projeto de rede posicionada entre Redes DTN e Redes Oportunistas, cujo 
objetivo é fornecer uma rede "infrastructureless" de dispositivos móveis, 
aproveitando a mobilidade de usuários e conexões sociais entre os usuários. 
•Forte ênfase no lado experimental.
Dados do Projeto:
Modelo HAGGLE: Características 
•Possibilita que dispositivos móveis tornem-se independentes das redes infra-estruturadas 
•Utiliza um modelo sem camadas (layerless) o que o torna bem diferente do modelo 
em camadas TCP/IP tradicional(explora aplicações orientadas de encaminhamento 
de mensagens, em vez de delegar essa responsabilidade para a camada de rede) 
•É uma nova arquitetura de rede autônomo, projetado para permitir a comunicação 
na presença de rede de conectividade intermitente 
•Explora comunicações autonômicas e oportunistas (na ausência de infra-estrutura 
de comunicação fim a fim ou ponta a ponta). 
•Foca em redes ad hoc utilizando os dispositivos móveis, com conexões 
oportunísticas, para envio de informações na forma de armazena-e-envia
Modelo HAGGLE: Características 
•Utiliza os conceitos de Best effort e context aware para encaminhamento de 
mensagem entre dispositivos móveis ubíquos a fim de fornecer serviços quando a 
conectividade é local e intermitente. 
•Forte embasamento em privacidade,confiança, autenticação, e manipulação de 
dados avançados; 
•Foi projetado para superar as limitações dos serviços de comunicação. 
•Possui características autonômicas como a auto-configuração, auto-otimização, 
auto-aprendizagem, auto-protecção e auto-cura.
Arquitetura HAGGLE: Características 
•Conexões locais e mobilidade de usuários são tão importantes quanto o acesso à 
Internet de forma infra-estruturada. 
•Haggle seleciona, em cada salto de envio, o melhor protocolo e a melhor conexão 
no encaminhamento dos dados ao destino. Essas características justificaram a 
escolha por uma arquitetura sem camadas, evitando sinalização e transferência de 
dados entre camadas, como ocorre com o protocolo IP tradicional. 
•Por ser uma arquitetura layerless, não é passado dados e sinais de controle para 
cima e para baixo, entre as camadas, como para a arquitetura de rede atual. Em 
vez disso, todos os gerentes oferecem interfaces, e pode se comunicar com outros 
evoluindo a partir das experiências com a arquitetura.
Arquitetura HAGGLE: Características 
•A Arquitetura Haggle é construído em torno de objetos de dados. (Objetos de dados 
são uma representação geral de todas as informações dentro e fora do Haggle). 
•Haggle utiliza o conceito de gerentes para o controle de parâmetros. 
•Haggle possui seis gerenciadores, com interfaces que permitem a comunicação 
entre si. 
•O desenvolvimento da arquitetura segue uma estrutura evolucionária. Onde 
aprende-se com experiências, testes, análises,modificações,novas 
implementações,refinamentos e correção de erros.
Arquitetura HAGGLE: Evolução 
HAGGLE INFANT HAGGLE CHILD HAGGLE YOUNG HAGGLE ADULT
Arquitetura HAGGLE: Principais Componentes 
•Gerentes: 
Um gerente resolve tarefas específicas no contexto de seu domínio, como 
a detecção de vizinhos, ou trocar dados com eles. 
Gerenciador de Dados (Data Manager) - armazena, pesquisa e gerencia a gravação 
de objetos chamados DO (Data Object - objeto de dados); 
Gerenciador de Nomes (Name Manager) - executa a resolução de nomes e 
associa nomes a destinos potenciais; 
Gerenciador de Protocolos (Protocol Manager) - encapsula todos os 
métodos de transferência de objetos de dados;
Arquitetura HAGGLE: Principais Componentes 
Gerenciador de Conectividade (Connectivity Manager) - fornece serviço de 
descoberta de conexões na vizinhança, calcula o custo (utilização de 
recursos) de envio dos dados e estabelece conexões com vizinhos. 
Gerenciador de Encaminhamento (Forwarding Manager) - decide quais 
objetos devem ser enviados a quem (qual vizinho) e obtém/calcula o 
benefício dessa ação; 
Gerenciador de Recurso (Resource Manager) - decide qual tarefa deve ser 
executada em um dado momento, considerando o custo e o benefício de 
todas as tarefas possíveis.
Arquitetura HAGGLE: Atuação dos Componentes:
Arquitetura Haggle: HAGGLE-INFANT 
•A arquitetura INFANT identificou princípios-chave da 
operação do Haggle quando confrontados com um 
ambiente de rede com conectividade intermitente e 
oportunista 
•Informação e comunicação centrada nas pessoas (data 
and communication centrism) 
• Comutação de mensagens em vez de comutação de 
pacotes, como o formato de dados nativo
Arquitetura Haggle: HAGGLE-INFANT 
•Haggle-INFANT tambem especificou uma estrutura 
modular para a arquitetura, composta por gerentes que 
atuam dentro dos domínios pré-definidos de 
responsabilidade. 
•Abordagem de gerentes como agentes autônomos ( 
reforça um sistema descentralizado, onde não há único 
agente controlando com uma visão global do sistema), mas 
uma cooperação entre os agentes.
Arquitetura Haggle: HAGGLE-INFANT 
•A implementação do nó Haggle-INFANT, foi muito útil como 
prova de conceito para validar a abordagem de projeto de 
Haggle. No entanto observou-se alguns problemas: 
Desempenho do nó dramaticamente piora à medida que aumenta 
o número de tarefas. 
Os gerentes muitas vezes executam trabalho redundante. 
•Das lições aprendidas com o Haggle-INFANT, elaborou-se o 
Haggle-CHILD.
Arquitetura Haggle: HAGGLE-CHILD 
•Foi adicionada algumas funcionalidades para tornar o 
tratamento mais eficaz da informação, mesmo em 
ambientes dinâmicos, incertos e não garantidos, onde 
Haggle opera. 
•A modificação mais radical é a orientação a eventos para 
conseguir uma interação mais coordenada entre Gerentes. 
•O novo modelo é DO-centric ; 
•Utilização de Algoritmos de encaminhamento mais 
eficientes; 
•Implementação de recursos autonomicos; 
•Gestão de recursos baseado em data-awareness; 
•Foi mantida a abordagem centrada em informação.
Arquitetura Haggle: HAGGLE-CHILD 
•Dois novos gerentes foram modificados e adicionados à 
arquitetura: o Gerente de nó (substitui o Gerente de 
nome) e o Gerente de Segurança, enquanto o Data 
Manager foi renomeado para o Gerenciador de 
DataObject. 
•O novo núcleo Haggle-CHILD é composto por 2 novos 
componentes: 
HaggleKernel: O HaggleKernel é uma fila de eventos que 
coordena a comunicação entre os gestores. 
Datastore: Um repositório central com de dados e 
informações sobre nós e suas Interfaces. O Datastore é 
de leitura acessível a todos os gestores.
Arquitetura Haggle: HAGGLE-CHILD 
•Os recursos autonomicos implementados: 
Self-configuration de sistemas de roteamento 
capaz de roteamento com conhecimento Zero. 
Self-optimization 
Self-adaptation 
Self-learning 
Self-protection
Arquitetura Haggle: HAGGLE-YOUNG 
•As novas adições à arquitetura Haggle-YOUNG 
foram: 
Gestão de recursos 
Interações com redes legadas e aplicações 
Segurança 
•Incluiu o conceito de Haggle como uma arquitetura 
de rede search-based. 
• Afastou-se do esquema de nomes hierárquico. 
Utilizando namespaces plano facilitando a busca de 
aspectos Haggle
Arquitetura Haggle: HAGGLE-YOUNG 
•Foi introduzido um novo sistema de gestão de 
recursos (utilizando protocolos autonomos); 
•Implementada a interação com redes legadas 
•Outras redes podem ser utilizadas para virtualizar 
um nó Haggle. 
•Gerente de Segurança otimizado. 
•A questão de Privacidade é mais abordado.
Arquitetura Haggle: HAGGLE-YOUNG 
Resolução baseada em pesquisa: Quem Quer este 
item de dados? 
•Haggle baseado no paradigma publish-subscribe 
•Sistema local-aware
Arquitetura Haggle: HAGGLE-ADULT 
•Traz refinamentos feitos nas áreas de gestão de 
recursos e segurança. 
•Melhoramentos: 
Na capacidade de capturar contatos e 
oportunidades; 
Na capacidade de fornecer dados para destinos;
Arquitetura Haggle: HAGGLE-ADULT 
•Community-based: 
Recursos limitados. Nós com recursos escassos 
(por exemplo, nível de bateria fraca ou pouca 
disponibilidade de memoria) podem encaminhar os 
dados importantes para os membros da mesma 
comunidade. 
Estado ocioso. Se um nó está em um estado 
ocioso (sem tarefas a realizar), pode oferecer aos 
membros da sua comunidade, recursos 
computacionais 
Economia de recursos. Um nó pode usar os 
recursos computacionais de outros membros de sua 
comunidade para preservar seus recursos próprios 
para uso futuro
Arquitetura Haggle: HAGGLE-ADULT 
•Compartilhamento de conteúdo social-aware 
•Utilizar tanto o contexto e as informações sociais 
sobre o usuário para se tornar capaz de suportar 
reconfiguração dinâmica da rede e as condições de 
conectividade intermitente (caracteristicas 
autonoma): 
•Nós Haggle tem agora a capacidade de auto-conhecer 
o contexto social de seus usuários,se 
auto-adaptar, de modo a otimizar a utilização dos 
recursos com base neste conhecimento. 
•Cooperacao de redes oportunistas.
Arquitetura Haggle: HAGGLE-ADULT 
•Na arquitetura ADULTO Haggle, novos recursos de 
segurança são definidas : 
Certificados Haggle, todos nós, são capazes de comparar 
certificados e descobrir discrepancias nos atributos, a fim 
de encaminhar os pacotes corretamente; 
Criptografia: Antes de uma mensagem ser enviada, um 
nó criptografa o objeto de dados com uma chave 
simétrica, que por sua vez é criptografada com a 
chave pública do nó de destino e depois é enviado 
juntamente com o objeto de dados criptografados.
Relação dos Recursos e Principais Características: 
INFANT: 
•Data and Communication Centric 
•Context-aware 
•Gerentes Autonomos 
CHILD: 
•DO-Centric 
•Data-awareness 
•Self-Configuration 
•Self-Optimization 
•Self-Learning 
•Self-Protection 
YOUNG: 
•Search-Based 
•Local-aware 
ADULT 
•Community-Based 
•Social-Aware 
•Self-Protection 
•Self-Health 
•Self-Awareness 
•Self-Adapting
Questionamentos: 
1 - Qual é o esquema de nomenclatura que usa Haggle: hierárquico ou apartamento? 
flat - Haggle usa um conjunto de atributos para expressar metadados e interesses. 
Metadados correspondentes aos interesses é a nossa forma de nomeação. 
2 - Segurança: haggle usa a chave pública ou função hash? 
chave pública - nós assinamos objetos de dados usando uma chave privada nos nós , a 
chave pública para verificação é distribuído na descrição de cada nó. É claro, a 
assinatura usa funções hash.
Questionamentos: 
3 - Como funciona o roteamento? 
resolução - fazemos resoluções no gráfico de relação (banco de dados) para identificar 
os dados mais relevantes em cada nó de contato . Da mesma forma, usamos a mesma 
resolução para identificar os nós mais interessado quando novos dados são inseridos. 
encaminhamento - para além de resolução, protocolos de encaminhamento estão 
identificando forwarders delegado, que é nós que não estão interessados em os dados, 
mas pode carregá-lo com a expectativa de entregá-lo para nós interessados nos dados. 
Módulos de encaminhamento são plug-ins que permitem que você implementar o seu 
encaminhamento próprio. No momento temos implementado Profhet como um 
exemplo.
Questionamentos: 
> 4 - têm "encontro" em Haggle? 
interface de descoberta - wifi hello e bluetooth discovery 
descoberta de nó - troca de descrições de nós 
> 5 - o que posso falar sobre escalabilidade? 
dados - o que fazemos de dados de envelhecimento para manter o gráfico relação 
fresca e limitada. O número de objetos de dados no gráfico relação impactos o tempo 
de execução da operação de resolução. Temos testado com até 10.000 objetos com 
desempenho razoável (alguns segundos em Nexus One), sem ajuste nossas consultas. 
nós - os nós são representados como objetos no gráfico relação (veja acima). 
Envelhecimento também se aplica às descrições nó. 
nós - o número de contatos nó concorrente não significativamente Haggle impacto 
como as resoluções não são feitos apenas no início de um contato nó e limitamos o 
número de dados a ser transferidos durante um contato nó.
Comparacao com outros projetos centrados a Informação: 
NetInf CCN PSIRP HAGGLE 
Esquemas d 
Nomeação 
Um namespace 
plano 
Hierarquico Dois namespaces 
planos 
Namespaces plano 
facilitando a busca de 
aspectos Haggle 
Segurança Ligação direta 
do nome com a 
chave publica 
Ligação com o 
publicador 
através do 
prefixo do 
nome 
Hash de 
conteúdo+hash 
chave 
publica+autenticação 
a nível d pacote 
nó criptografa o objeto de 
dados com uma chave 
simétrica, que por sua vez 
é criptografada com a 
chave pública do nó de 
destino 
Roteamento Dois 
roteamentos: 
um para 
encontro e 
outro para 
transporte 
Broadcast do 
pacote de 
interesse para 
fonte, dado 
caminho 
reverso 
Dois roteamentos: 
Um para encontro, 
outro para 
transporte + filtro de 
Bloom 
Oportunistico / 
Disseminação dos Dados / 
Relação de Confiança 
Relação entre 
Publicador e o 
Assinante 
Pub: Objeto de 
informação. 
As: Consulta 
NRS 
Pub: Prefixo 
de nome 
As: Envia o 
interesse 
Pub: Estabelece o 
ponto de encontro 
As: Estabelece o 
contato 
APIs baseada no 
paradigma publish-subscribe, 
Basicamente 
igual do PSIRP. 
Desacoplamento 
ID/LOC 
Informação 
Desacopla Não desacopla Desacopla Quer separar nomes e 
endereços de dados e 
usuários tanto no sentido 
espacial e temporal.
FUTURO DO PROJETO 
•Melhoramento das técnicas de estabelecimento de conexão. 
•Melhoramento das taxas de varredura, a fim de reduzir a interferência, e 
deduzindo conectividade vizinho através de outros meios (médias 
históricas ou implícita). 
•Desenvolvimento de técnicas para reduzir utilização de energia nas 
próximas gerações de Haggle. 
•Mecanismos de privacidade e relação de confiança em redes de conexão 
intermitente estão sendo refinados, bem como formas de prevenir 
ataques de negação de serviço.
FUTURO DO PROJETO 
“We are regularly running experiments on Haggle and make 
improvements/fixes to the code when necessary for the experiments. 
There is not project that succeeded Haggle.” 
Best, 
Christian Rohner
Conclusão 
A arquitetura Haggle final é capaz de suportar a comunicação entre os 
nós oportunistas dentro de uma comunidade, agir e reagir com o apoio 
dos seus próprios dados, para explorar informações de contexto para 
encaminhamento de dados e divulgação, e para garantir um intercâmbio 
de dados entre os nós.
Referencia Bibliográfica 
A arquitetura Haggle final é capaz de suportar a comunicação entre os 
nós oportunistas dentro de uma comunidade, agir e reagir com o apoio 
dos seus próprios dados, para explorar informações de contexto para 
encaminhamento de dados e divulgação, e para garantir um intercâmbio 
de dados entre os nós.
MUITO OBRIGADO!

Mais conteúdo relacionado

Semelhante a Redes Oportunistas: Haggle

Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Dalton Martins
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
Fabio Roberto
 
Palestra cloud-computing
Palestra cloud-computingPalestra cloud-computing
Palestra cloud-computing
Naptec
 
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacionalCloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
José Morelli Neto
 
Redes de computadores douglas rocha mendes
Redes de computadores   douglas rocha mendesRedes de computadores   douglas rocha mendes
Redes de computadores douglas rocha mendes
William Nascimento
 
Projeto de pesquisa exemplo
Projeto de pesquisa   exemploProjeto de pesquisa   exemplo
Projeto de pesquisa exemplo
Felipe Pereira
 

Semelhante a Redes Oportunistas: Haggle (20)

Projetos Estruturados de Redes - Parte 5
Projetos Estruturados de Redes - Parte 5Projetos Estruturados de Redes - Parte 5
Projetos Estruturados de Redes - Parte 5
 
Provocação Konker no 1º hackday FIESP 2016
Provocação Konker no 1º hackday FIESP 2016Provocação Konker no 1º hackday FIESP 2016
Provocação Konker no 1º hackday FIESP 2016
 
Aula 5 - Protocolos de comunicação
Aula 5 - Protocolos de comunicação Aula 5 - Protocolos de comunicação
Aula 5 - Protocolos de comunicação
 
Hadoop
HadoopHadoop
Hadoop
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
 
Transferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiançaTransferência para uma nuvem privada com confiança
Transferência para uma nuvem privada com confiança
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
 
Redes 1
Redes 1Redes 1
Redes 1
 
Palestra cloud-computing
Palestra cloud-computingPalestra cloud-computing
Palestra cloud-computing
 
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacionalCloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
Cloud Computing: uma abordagem objetiva sobre o novo ambiente computacional
 
Material Seminário NoSQL
Material Seminário NoSQLMaterial Seminário NoSQL
Material Seminário NoSQL
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
ECODE
ECODEECODE
ECODE
 
BANNER DE TI
BANNER DE TIBANNER DE TI
BANNER DE TI
 
Redes de computadores douglas rocha mendes
Redes de computadores   douglas rocha mendesRedes de computadores   douglas rocha mendes
Redes de computadores douglas rocha mendes
 
Projeto de pesquisa exemplo
Projeto de pesquisa   exemploProjeto de pesquisa   exemplo
Projeto de pesquisa exemplo
 
Peer-to-peer
Peer-to-peerPeer-to-peer
Peer-to-peer
 
#Palestra - Wireless Mesh Network - IFMA ECOMP
#Palestra - Wireless Mesh Network - IFMA ECOMP#Palestra - Wireless Mesh Network - IFMA ECOMP
#Palestra - Wireless Mesh Network - IFMA ECOMP
 
Slide db4 o
Slide db4 oSlide db4 o
Slide db4 o
 
Open nebula
Open nebulaOpen nebula
Open nebula
 

Mais de Ramon Mayor Martins

Mais de Ramon Mayor Martins (20)

[2.2]ifsc integrado rdt_2015_1
[2.2]ifsc integrado rdt_2015_1[2.2]ifsc integrado rdt_2015_1
[2.2]ifsc integrado rdt_2015_1
 
[1]ifsc integrado rdt_2015_2
[1]ifsc integrado rdt_2015_2[1]ifsc integrado rdt_2015_2
[1]ifsc integrado rdt_2015_2
 
IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3IES GF Circuitos Digitais Parte 3
IES GF Circuitos Digitais Parte 3
 
IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3 IES GF - Linguagem de Programação Estruturada - Parte 3
IES GF - Linguagem de Programação Estruturada - Parte 3
 
IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2IES GF - Linguagem de Programação Estruturada - Parte 2
IES GF - Linguagem de Programação Estruturada - Parte 2
 
IES GF - Linguagem de Programação Estruturada - Parte 1
IES GF - Linguagem de Programação Estruturada - Parte 1IES GF - Linguagem de Programação Estruturada - Parte 1
IES GF - Linguagem de Programação Estruturada - Parte 1
 
IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2IES GF - Circuitos Digitais - Parte 2
IES GF - Circuitos Digitais - Parte 2
 
IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1IES GF - Circuitos Digitais - Parte 1
IES GF - Circuitos Digitais - Parte 1
 
IFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por softwareIFSC SJ - Grupo de estudos em rádio definido por software
IFSC SJ - Grupo de estudos em rádio definido por software
 
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
IES GF - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - P...
 
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
IES - Ciência da Computação - Desenvolvimento de Sistemas Distribuídos - Part...
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
INATEL - Matlab introdução
INATEL - Matlab introduçãoINATEL - Matlab introdução
INATEL - Matlab introdução
 
Introdução ao matlab
Introdução ao matlabIntrodução ao matlab
Introdução ao matlab
 
Nova geração de satélites brasileiros
Nova geração de satélites brasileirosNova geração de satélites brasileiros
Nova geração de satélites brasileiros
 
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
[Apresentação de Defesa] Análise comparativa entre os métodos HMM e GMM-UBM n...
 
Implementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodosImplementação da técnica VTLN - Estudo dos métodos
Implementação da técnica VTLN - Estudo dos métodos
 
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
Application of Neural Network for Sensing Primary Radio Signals in a Cognitiv...
 
Aplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios CognitivosAplicações de Inteligência Artificial em Rádios Cognitivos
Aplicações de Inteligência Artificial em Rádios Cognitivos
 
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e DamageRedes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
Redes Neurais - Poda Hessiana: Optimal Brain Surgeon e Damage
 

Último

Último (8)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 

Redes Oportunistas: Haggle

  • 1. “Um paradigma inovador para a Comunicação Oportunista e Autonômica” Mestrando: Ramon Mayor Martins Disciplina: Tópicos Avançados em Redes Prof. Dr. Antônio Marcos Alberti Mestrado em Telecomunicações INATEL – Instituto Nacional de Telecomunicações
  • 2.
  • 3. Escopo: Redes oportunistas •Refere-se a trocas de dados aproveitando "oportunidades " de conexoes; •Tais situações são comuns em muitas regiões do mundo onde a infraestrutura de acesso banda larga possui uma cobertura limitada. •A infra-estrutura de acesso atual é vulnerável a desastres naturais ou outras falhas, e redes oportunistas podem ser a única maneira viável para realizar importantes transmissões de dados.
  • 4. Escopo: Redes PSN: Pocket Switch Network •PSNs são redes tolerantes a atrasos (Delay Tolerant Networks - DTN) •Tentam prover comunicação em ambientes onde a conectividade fim-a-fim nem sempre pode ser feita. •Beneficiam-se de conexões locais intermitentes de forma oportunística (por ex., rede Wi-Fi. ad hoc, Bluetooth, etc.) e conexões globais (por ex., pontos de acesso à Internet, GPRS, SMS, etc.) quando disponíveis. •As redes PSN não são úteis somente na ausência de infra-estrutura de rede, mas também em cenários como tráfego intenso na rede, catástrofes, falta de energia, redes de sensores e meios de transporte (trens, aviões, etc.).
  • 5. Introdução: •O projeto Haggle tem uma abordagem centrada em informação para a comunicação em vez de uma abordagem centrada em nó / host. •É um projeto de rede posicionada entre Redes DTN e Redes Oportunistas, cujo objetivo é fornecer uma rede "infrastructureless" de dispositivos móveis, aproveitando a mobilidade de usuários e conexões sociais entre os usuários. •Forte ênfase no lado experimental.
  • 7. Modelo HAGGLE: Características •Possibilita que dispositivos móveis tornem-se independentes das redes infra-estruturadas •Utiliza um modelo sem camadas (layerless) o que o torna bem diferente do modelo em camadas TCP/IP tradicional(explora aplicações orientadas de encaminhamento de mensagens, em vez de delegar essa responsabilidade para a camada de rede) •É uma nova arquitetura de rede autônomo, projetado para permitir a comunicação na presença de rede de conectividade intermitente •Explora comunicações autonômicas e oportunistas (na ausência de infra-estrutura de comunicação fim a fim ou ponta a ponta). •Foca em redes ad hoc utilizando os dispositivos móveis, com conexões oportunísticas, para envio de informações na forma de armazena-e-envia
  • 8. Modelo HAGGLE: Características •Utiliza os conceitos de Best effort e context aware para encaminhamento de mensagem entre dispositivos móveis ubíquos a fim de fornecer serviços quando a conectividade é local e intermitente. •Forte embasamento em privacidade,confiança, autenticação, e manipulação de dados avançados; •Foi projetado para superar as limitações dos serviços de comunicação. •Possui características autonômicas como a auto-configuração, auto-otimização, auto-aprendizagem, auto-protecção e auto-cura.
  • 9. Arquitetura HAGGLE: Características •Conexões locais e mobilidade de usuários são tão importantes quanto o acesso à Internet de forma infra-estruturada. •Haggle seleciona, em cada salto de envio, o melhor protocolo e a melhor conexão no encaminhamento dos dados ao destino. Essas características justificaram a escolha por uma arquitetura sem camadas, evitando sinalização e transferência de dados entre camadas, como ocorre com o protocolo IP tradicional. •Por ser uma arquitetura layerless, não é passado dados e sinais de controle para cima e para baixo, entre as camadas, como para a arquitetura de rede atual. Em vez disso, todos os gerentes oferecem interfaces, e pode se comunicar com outros evoluindo a partir das experiências com a arquitetura.
  • 10. Arquitetura HAGGLE: Características •A Arquitetura Haggle é construído em torno de objetos de dados. (Objetos de dados são uma representação geral de todas as informações dentro e fora do Haggle). •Haggle utiliza o conceito de gerentes para o controle de parâmetros. •Haggle possui seis gerenciadores, com interfaces que permitem a comunicação entre si. •O desenvolvimento da arquitetura segue uma estrutura evolucionária. Onde aprende-se com experiências, testes, análises,modificações,novas implementações,refinamentos e correção de erros.
  • 11. Arquitetura HAGGLE: Evolução HAGGLE INFANT HAGGLE CHILD HAGGLE YOUNG HAGGLE ADULT
  • 12. Arquitetura HAGGLE: Principais Componentes •Gerentes: Um gerente resolve tarefas específicas no contexto de seu domínio, como a detecção de vizinhos, ou trocar dados com eles. Gerenciador de Dados (Data Manager) - armazena, pesquisa e gerencia a gravação de objetos chamados DO (Data Object - objeto de dados); Gerenciador de Nomes (Name Manager) - executa a resolução de nomes e associa nomes a destinos potenciais; Gerenciador de Protocolos (Protocol Manager) - encapsula todos os métodos de transferência de objetos de dados;
  • 13. Arquitetura HAGGLE: Principais Componentes Gerenciador de Conectividade (Connectivity Manager) - fornece serviço de descoberta de conexões na vizinhança, calcula o custo (utilização de recursos) de envio dos dados e estabelece conexões com vizinhos. Gerenciador de Encaminhamento (Forwarding Manager) - decide quais objetos devem ser enviados a quem (qual vizinho) e obtém/calcula o benefício dessa ação; Gerenciador de Recurso (Resource Manager) - decide qual tarefa deve ser executada em um dado momento, considerando o custo e o benefício de todas as tarefas possíveis.
  • 14. Arquitetura HAGGLE: Atuação dos Componentes:
  • 15. Arquitetura Haggle: HAGGLE-INFANT •A arquitetura INFANT identificou princípios-chave da operação do Haggle quando confrontados com um ambiente de rede com conectividade intermitente e oportunista •Informação e comunicação centrada nas pessoas (data and communication centrism) • Comutação de mensagens em vez de comutação de pacotes, como o formato de dados nativo
  • 16. Arquitetura Haggle: HAGGLE-INFANT •Haggle-INFANT tambem especificou uma estrutura modular para a arquitetura, composta por gerentes que atuam dentro dos domínios pré-definidos de responsabilidade. •Abordagem de gerentes como agentes autônomos ( reforça um sistema descentralizado, onde não há único agente controlando com uma visão global do sistema), mas uma cooperação entre os agentes.
  • 17. Arquitetura Haggle: HAGGLE-INFANT •A implementação do nó Haggle-INFANT, foi muito útil como prova de conceito para validar a abordagem de projeto de Haggle. No entanto observou-se alguns problemas: Desempenho do nó dramaticamente piora à medida que aumenta o número de tarefas. Os gerentes muitas vezes executam trabalho redundante. •Das lições aprendidas com o Haggle-INFANT, elaborou-se o Haggle-CHILD.
  • 18. Arquitetura Haggle: HAGGLE-CHILD •Foi adicionada algumas funcionalidades para tornar o tratamento mais eficaz da informação, mesmo em ambientes dinâmicos, incertos e não garantidos, onde Haggle opera. •A modificação mais radical é a orientação a eventos para conseguir uma interação mais coordenada entre Gerentes. •O novo modelo é DO-centric ; •Utilização de Algoritmos de encaminhamento mais eficientes; •Implementação de recursos autonomicos; •Gestão de recursos baseado em data-awareness; •Foi mantida a abordagem centrada em informação.
  • 19. Arquitetura Haggle: HAGGLE-CHILD •Dois novos gerentes foram modificados e adicionados à arquitetura: o Gerente de nó (substitui o Gerente de nome) e o Gerente de Segurança, enquanto o Data Manager foi renomeado para o Gerenciador de DataObject. •O novo núcleo Haggle-CHILD é composto por 2 novos componentes: HaggleKernel: O HaggleKernel é uma fila de eventos que coordena a comunicação entre os gestores. Datastore: Um repositório central com de dados e informações sobre nós e suas Interfaces. O Datastore é de leitura acessível a todos os gestores.
  • 20. Arquitetura Haggle: HAGGLE-CHILD •Os recursos autonomicos implementados: Self-configuration de sistemas de roteamento capaz de roteamento com conhecimento Zero. Self-optimization Self-adaptation Self-learning Self-protection
  • 21. Arquitetura Haggle: HAGGLE-YOUNG •As novas adições à arquitetura Haggle-YOUNG foram: Gestão de recursos Interações com redes legadas e aplicações Segurança •Incluiu o conceito de Haggle como uma arquitetura de rede search-based. • Afastou-se do esquema de nomes hierárquico. Utilizando namespaces plano facilitando a busca de aspectos Haggle
  • 22. Arquitetura Haggle: HAGGLE-YOUNG •Foi introduzido um novo sistema de gestão de recursos (utilizando protocolos autonomos); •Implementada a interação com redes legadas •Outras redes podem ser utilizadas para virtualizar um nó Haggle. •Gerente de Segurança otimizado. •A questão de Privacidade é mais abordado.
  • 23. Arquitetura Haggle: HAGGLE-YOUNG Resolução baseada em pesquisa: Quem Quer este item de dados? •Haggle baseado no paradigma publish-subscribe •Sistema local-aware
  • 24. Arquitetura Haggle: HAGGLE-ADULT •Traz refinamentos feitos nas áreas de gestão de recursos e segurança. •Melhoramentos: Na capacidade de capturar contatos e oportunidades; Na capacidade de fornecer dados para destinos;
  • 25. Arquitetura Haggle: HAGGLE-ADULT •Community-based: Recursos limitados. Nós com recursos escassos (por exemplo, nível de bateria fraca ou pouca disponibilidade de memoria) podem encaminhar os dados importantes para os membros da mesma comunidade. Estado ocioso. Se um nó está em um estado ocioso (sem tarefas a realizar), pode oferecer aos membros da sua comunidade, recursos computacionais Economia de recursos. Um nó pode usar os recursos computacionais de outros membros de sua comunidade para preservar seus recursos próprios para uso futuro
  • 26. Arquitetura Haggle: HAGGLE-ADULT •Compartilhamento de conteúdo social-aware •Utilizar tanto o contexto e as informações sociais sobre o usuário para se tornar capaz de suportar reconfiguração dinâmica da rede e as condições de conectividade intermitente (caracteristicas autonoma): •Nós Haggle tem agora a capacidade de auto-conhecer o contexto social de seus usuários,se auto-adaptar, de modo a otimizar a utilização dos recursos com base neste conhecimento. •Cooperacao de redes oportunistas.
  • 27. Arquitetura Haggle: HAGGLE-ADULT •Na arquitetura ADULTO Haggle, novos recursos de segurança são definidas : Certificados Haggle, todos nós, são capazes de comparar certificados e descobrir discrepancias nos atributos, a fim de encaminhar os pacotes corretamente; Criptografia: Antes de uma mensagem ser enviada, um nó criptografa o objeto de dados com uma chave simétrica, que por sua vez é criptografada com a chave pública do nó de destino e depois é enviado juntamente com o objeto de dados criptografados.
  • 28. Relação dos Recursos e Principais Características: INFANT: •Data and Communication Centric •Context-aware •Gerentes Autonomos CHILD: •DO-Centric •Data-awareness •Self-Configuration •Self-Optimization •Self-Learning •Self-Protection YOUNG: •Search-Based •Local-aware ADULT •Community-Based •Social-Aware •Self-Protection •Self-Health •Self-Awareness •Self-Adapting
  • 29. Questionamentos: 1 - Qual é o esquema de nomenclatura que usa Haggle: hierárquico ou apartamento? flat - Haggle usa um conjunto de atributos para expressar metadados e interesses. Metadados correspondentes aos interesses é a nossa forma de nomeação. 2 - Segurança: haggle usa a chave pública ou função hash? chave pública - nós assinamos objetos de dados usando uma chave privada nos nós , a chave pública para verificação é distribuído na descrição de cada nó. É claro, a assinatura usa funções hash.
  • 30. Questionamentos: 3 - Como funciona o roteamento? resolução - fazemos resoluções no gráfico de relação (banco de dados) para identificar os dados mais relevantes em cada nó de contato . Da mesma forma, usamos a mesma resolução para identificar os nós mais interessado quando novos dados são inseridos. encaminhamento - para além de resolução, protocolos de encaminhamento estão identificando forwarders delegado, que é nós que não estão interessados em os dados, mas pode carregá-lo com a expectativa de entregá-lo para nós interessados nos dados. Módulos de encaminhamento são plug-ins que permitem que você implementar o seu encaminhamento próprio. No momento temos implementado Profhet como um exemplo.
  • 31. Questionamentos: > 4 - têm "encontro" em Haggle? interface de descoberta - wifi hello e bluetooth discovery descoberta de nó - troca de descrições de nós > 5 - o que posso falar sobre escalabilidade? dados - o que fazemos de dados de envelhecimento para manter o gráfico relação fresca e limitada. O número de objetos de dados no gráfico relação impactos o tempo de execução da operação de resolução. Temos testado com até 10.000 objetos com desempenho razoável (alguns segundos em Nexus One), sem ajuste nossas consultas. nós - os nós são representados como objetos no gráfico relação (veja acima). Envelhecimento também se aplica às descrições nó. nós - o número de contatos nó concorrente não significativamente Haggle impacto como as resoluções não são feitos apenas no início de um contato nó e limitamos o número de dados a ser transferidos durante um contato nó.
  • 32. Comparacao com outros projetos centrados a Informação: NetInf CCN PSIRP HAGGLE Esquemas d Nomeação Um namespace plano Hierarquico Dois namespaces planos Namespaces plano facilitando a busca de aspectos Haggle Segurança Ligação direta do nome com a chave publica Ligação com o publicador através do prefixo do nome Hash de conteúdo+hash chave publica+autenticação a nível d pacote nó criptografa o objeto de dados com uma chave simétrica, que por sua vez é criptografada com a chave pública do nó de destino Roteamento Dois roteamentos: um para encontro e outro para transporte Broadcast do pacote de interesse para fonte, dado caminho reverso Dois roteamentos: Um para encontro, outro para transporte + filtro de Bloom Oportunistico / Disseminação dos Dados / Relação de Confiança Relação entre Publicador e o Assinante Pub: Objeto de informação. As: Consulta NRS Pub: Prefixo de nome As: Envia o interesse Pub: Estabelece o ponto de encontro As: Estabelece o contato APIs baseada no paradigma publish-subscribe, Basicamente igual do PSIRP. Desacoplamento ID/LOC Informação Desacopla Não desacopla Desacopla Quer separar nomes e endereços de dados e usuários tanto no sentido espacial e temporal.
  • 33. FUTURO DO PROJETO •Melhoramento das técnicas de estabelecimento de conexão. •Melhoramento das taxas de varredura, a fim de reduzir a interferência, e deduzindo conectividade vizinho através de outros meios (médias históricas ou implícita). •Desenvolvimento de técnicas para reduzir utilização de energia nas próximas gerações de Haggle. •Mecanismos de privacidade e relação de confiança em redes de conexão intermitente estão sendo refinados, bem como formas de prevenir ataques de negação de serviço.
  • 34. FUTURO DO PROJETO “We are regularly running experiments on Haggle and make improvements/fixes to the code when necessary for the experiments. There is not project that succeeded Haggle.” Best, Christian Rohner
  • 35. Conclusão A arquitetura Haggle final é capaz de suportar a comunicação entre os nós oportunistas dentro de uma comunidade, agir e reagir com o apoio dos seus próprios dados, para explorar informações de contexto para encaminhamento de dados e divulgação, e para garantir um intercâmbio de dados entre os nós.
  • 36. Referencia Bibliográfica A arquitetura Haggle final é capaz de suportar a comunicação entre os nós oportunistas dentro de uma comunidade, agir e reagir com o apoio dos seus próprios dados, para explorar informações de contexto para encaminhamento de dados e divulgação, e para garantir um intercâmbio de dados entre os nós.