View
2
Download
0
Category
Preview:
Citation preview
Redes Ativas - Active Networking
Dilmari Seidel, Reggie Vivekananda
dilmari@inf.ufpr.br, reggie@inf.ufpr.br
Curitiba, 24 de Maio de 2005
Conteudo
1. Introducao
2. Conceitos
3. Princıpio
4. Arquitetura
5. Conclusoes
1
Curitiba, 24 de Maio de 2005
Redes Ativas
• O que sao Redes Ativas
• Usos imediatos
• Aplicacoes
– Multicasting Confiavel
– Controle de Congestao Ativa
– Leiloes
2
Curitiba, 24 de Maio de 2005
Historico
• DARPA
• OpenSig
3
Curitiba, 24 de Maio de 2005
Desafios de Implementacao
• utilizavel
• flexıvel
• segura
• alto desempenho
4
Curitiba, 24 de Maio de 2005
Paradigmas de Redes Ativas
• servicos padrao nos nos da rede
• switch programavel
• modelo capsula
5
Curitiba, 24 de Maio de 2005
Redes Ativas e Interfaces de Programacao
• poder de expressao da linguagem
• estados
• granularidade de controle
6
Curitiba, 24 de Maio de 2005
Arquitetura Geral para Redes Ativas
• ambiente de execucao
• sistema operacional de nodo
7
Curitiba, 24 de Maio de 2005
Exemplo de Fluxo de Dados em um Nodo Ativo
8
Curitiba, 24 de Maio de 2005
O Sistema Operacional de Nodo
9
Curitiba, 24 de Maio de 2005
O Sistema Operacional de Nodo
• thread pools
• memory pools
• channels
• flows
Reforco de seguranca por NodeOS
10
Curitiba, 24 de Maio de 2005
Exemplos de NodeOSes
• SCOUT
– Universidade do Arizona
– modulos
– caminhos
– escalonamento
• ExoKernel
– MIT
– biblioteca AMP
11
Curitiba, 24 de Maio de 2005
Ambientes de Execucao (1/2)
• SmartPackets
– objetivo: gerenciamento de redes
– arquitetura: codigo distribuıdo em pacotes IP
• Liquid Software
– objetivo: mover e transformar dados eficientemente
– arquitetura: java -> C
12
Curitiba, 24 de Maio de 2005
Ambientes de Execucao (2/2)
• SwitchWare
– objetivo: seguranca e flexibilidade para infraestrutura compar-
tilhada
– arquitetura: API PLAN e Caml
• Netscript
– objetivo: prover uma linguagem universal
– arquitetura: interpretadores + java
13
Curitiba, 24 de Maio de 2005
ANTS
• objetivo: padronizar um modelo de comunicacao
• arquitetura: java
– capsulas
– nodos ativos
– sistema de distribuicao de codigo
• PAN - Pratical Active Network
14
Curitiba, 24 de Maio de 2005
Seguranca em Redes Ativas
• Seguranca em Redes Ativas
– Ameacas
– Reforcos atraves de autorizacoes
• Arquiteturas de Seguranca
– Modelo SwitchWare
– Modelo ANTS
– Modelo SANE
15
Curitiba, 24 de Maio de 2005
Detalhes do SANE
• objetivos
– reduzir numero e tamanho de componentes confiaveis
– prover um mecanismo para contexto seguro
• assercoes
– seguranca fısica
– infraestrutura de chaves publicas
16
Curitiba, 24 de Maio de 2005
Arquitetura da Rede SANE
17
Curitiba, 24 de Maio de 2005
Pacotes Ativos e os Protocolos Correntes
• IP Ativo
– ANEP
– Formato do Pacote
• Abordagem OpenSig
18
Curitiba, 24 de Maio de 2005
Dois Modelos de Redes Ativas
• Active Node Transport System - ANTS
• SwitchWare
Sao os dois modelos mais utilizados por estarem disponıveis
(codigo aberto) por isso sao bastante flexıveis para modificacoes e
experiencias.
19
Curitiba, 24 de Maio de 2005
ANTS - Sistema de Transporte de Nos Ativos
• codigo movel
• carga sobre demanda
• tecnicas de cache
20
Curitiba, 24 de Maio de 2005
ANTS - Descricao da Arquitetura
• Pacotes IP tradicionais sao trocados por capsulas que personali-
zam os servicos de rede
• Roteadores classicos sao substituıdos por nos ativos que processam
as capsulas entrantes e mantem dados armazenados por um
perıodo de tempo
• Um mecanismo de distribuicao de codigo e usado para empregar
dinamicamente e automaticamente as rotinas requeridas nos nos
21
Curitiba, 24 de Maio de 2005
ANTS - Modelo da Capsula
• a capsula e um especıfico pacote IP que encapsula dados do
usuario e referencia um rotina de transferencia
• a rotina de transferencia e executada por todos os nos ativos onde
a capsula passa, e caso seja um no convencional, a rotina classica
de transferencia IP e executada
• nos nos ativos a rotina de tranferencia utiliza uma API do ANTS
para acessar o ambiente do no, manipular os dados da aplicacao
e encaminhar a capsula para outros nos
22
Curitiba, 24 de Maio de 2005
ANTS - Distribuicao do Codigo (1/2)
• por razoes de desempenho o codigo de rotinas de transferencia e
enviado e armazenado nos nos ativos
• as capulas sao agrupadas por grupos de codigos dependentes para
serem transferidas juntas
• na recepcao de uma capsula a rotina de tranferencia e verifica na
cache de codigo do no, se o codigo esta presente e executado,
senao a capsula e suspensa e uma requisicao de codigo e enviada
ao no emissor
23
Curitiba, 24 de Maio de 2005
ANTS - Distribuicao do Codigo (2/2)
• quando um no recebe uma requisicao de codigo e tem o codigo
correspondente, ele o envia imediatamente para o no requerente
• quando um no recebe um codigo requisitado ele coloca o codigo
na cache e executa a capula suspensa
24
Curitiba, 24 de Maio de 2005
ANTS - No Ativo
• para garantir a seguranca no modelo ANTS os nos ativos exportam
um conjunto de primitivas para serem utilizadas pelas aplicacoes
e pelas capsulas
• os nos proveem um modelo de execucao que suportam essas pri-
mitivas que viabilizam os objetivos de seguranca e administracao
de recursos
• os dois itens acima permitem que o codigo venha de qualquer
fonte e evitem erros acidentais e intencionais
25
Curitiba, 24 de Maio de 2005
ANTS - Primitivas dos Nos
• acesso ao ambiente: acessar estado da comunicacao e tabela de
roteamento
• manipulacao da capsula: acesso aos campos de cabecalho e dados
• operacoes de controle: envio, descarte, suspensao e execucao de
capsulas
• cache: armazenar e acessar estados
• reuniao: permitir que capsulas se encontrem com outras e coor-
denar suas acoes
26
Curitiba, 24 de Maio de 2005
ANTS - Exemplo
if (n.getAddress() == getDst()) {
ping = true;
}
else if (ping != true) {
return n.routeForNode(this, getDst());
}
27
Curitiba, 24 de Maio de 2005
SwitchWare
• arquitetura em camadas: flexibilidade X seguranca
• Pacotes Ativos
• Extensoes Ativas
• Infraestrutura do Roteador Ativo
28
Curitiba, 24 de Maio de 2005
SwitchWare - Pacotes Ativos
• pacotes ativos transportam dados e codigos ao inves de dados e
cabecalho
• o codigo e habilitado a executar funcoes no ambiente do roteador
• os dados dentro do pacote sao personalizados e podem ser mani-
pulados facilmente pelo programa
• PLAN - Packet Language for Active Networks: linguagem de
programacao utilizada
29
Curitiba, 24 de Maio de 2005
SwitchWare - PLAN
• simples e leve
• fortemente tipada e verificada dinamicamente
• execucao com recursos limitados
• sem necessidade de autenticacao
• utiliza rotinas de servicos residentes no no para execucoes mais
pesadas garantindo tambem a seguranca da rede
30
Curitiba, 24 de Maio de 2005
SwitchWare - Switchlets ou Extensoes Ativas
• codigos mais pesados
• podem ser partes dos componentes do roteador ou serem carre-
gadas dinamicamente
• sao permitidas composicoes de extensoes ativas com a linguagem
PLAN
• Active Bridge: programada em caml (caml gera bytecode por isso
e independente de maquina)
• prove controle de recursos
31
Curitiba, 24 de Maio de 2005
SwitchWare - Exemplo
Fun ping (src:host, dest: host) : unit =
if (not thisHostIs(dest)) then
OnRemote(|ping|(src,dest), dest, getRB(), defaultRoute)
else
OnRemote(|ack|(), src, getRB(), defaultRoute)
Fun ack() : unit = print("Success");
32
Curitiba, 24 de Maio de 2005
Conclusoes
• Foi visto o estado da arte de redes ativas
• As Redes Ativas envolvem a sıntese e a extensao de linguagens
de programacao, sistemas operacionais e expertise de redes
• As aplicacoes podem utilizar componentes de protocolos ao inves
de pilhas de protocolos, que podem ser especializados para realizar
alguma funcao especıfica da aplicacao
33
Curitiba, 24 de Maio de 2005
Trabalhos Futuros
• Definicao de mecanismos comuns para protecao de recursos
• Abordagens de instalacao de estados no lugar certo na rede
34
Curitiba, 24 de Maio de 2005
Para saber mais...
• Janos - Java-oriented Active Network Operating System
http://www.cs.utah.edu/flux/janos/
• ANTS
http://www.cs.washington.edu/research/networking/ants/
• SwitchWare
http://www.cis.upenn.edu/ switchware/
• MIT ExoKernel
http://pdos.csail.mit.edu/exo/
35
Curitiba, 24 de Maio de 2005
Bibliografia
• Calvert, K.L. et al., Directions in Active Networks, IEEE
Communications Magazine, Special Issue on Programmable
Networks, October 1998
• Mishra, Mahim; Active Networks; 1998
• Huang, I-Hsuan; Active Networks - An Overview; 2002
• Teixeira Jr. Jose Helvecio; de Moraes, Luis Felipe M.; Teixeira,
Suzana Ramos; Uma proposta para o emprego de Teconolo-
gias de Redes Ativas no Gerenciamento de Redes 2000
36
Curitiba, 24 de Maio de 2005
Bibliografia
• DARPA Active Network Prog., http://www.darpa.mil/ito/research/anets/projects.html
• Open Signalling Working Group, http:/www.comet.columbia.edu/opensig/
• Achir, N. et al., Active Networking system evaluation: A
practical experience, 2000
37
Recommended