Ian Vilar Bastos, Victor Costa Macedo...

61
Universidade Federal Fluminense Instituto de Computa¸ c ˜ ao Departamento de Ci ˆ encia da Computa¸ c ˜ ao Ian Vilar Bastos Victor Costa Macedo Sousa ENCAMINHAMENTO DE PACOTES EM REDES ORIENTADAS A CONTE ´ UDO Niter´ oi-RJ 2015

Transcript of Ian Vilar Bastos, Victor Costa Macedo...

Page 1: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Universidade Federal Fluminense

Instituto de Computacao

Departamento de Ciencia da Computacao

Ian Vilar Bastos

Victor Costa Macedo Sousa

ENCAMINHAMENTO DE PACOTES EM REDES

ORIENTADAS A CONTEUDO

Niteroi-RJ

2015

Page 2: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

ii

IAN VILAR BASTOS

VICTOR COSTA MACEDO SOUSA

ENCAMINHAMENTO DE PACOTES EM REDES ORIENTADAS A CONTEUDO

Trabalho submetido ao Curso de

Bacharelado em Ciencia da Computacao

da Universidade Federal Fluminense como

requisito parcial para a obtencao do tıtulo

de Bacharel em Ciencia da Computacao.

Orientador: Prof. Igor Monteiro Moraes

Niteroi-RJ

2015

Page 3: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Ficha Catalográfica elaborada pela Biblioteca da Escola de Engenharia e Instituto de Computação da UFF

B327 Bastos, Ian Vilar

Encaminhamento de pacotes em redes orientadas a conteúdo / Ian

Vilar Bastos, Victor Costa Macedo Sousa. – Niterói, RJ : [s.n.],

2015.

60 f.

Trabalho (Conclusão de Curso) – Departamento de Computação,

Universidade Federal Fluminense, 2015.

Orientador: Igor Monteiro Moraes.

1. Arquitetura de redes de computador. 2. Rede orientada a

conteúdo. 3. Internet. I. Sousa,Victor Costa Macedo. II. Título.

CDD 004.6

Page 4: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a
Page 5: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

iv

As nossas famılias.

Page 6: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

v

Agradecimentos

Primeiramente, eu, Ian, gostaria de agradecer aos meus pais, Vilma e Roberto,

por todo apoio e carinho que sempre me concederam, por estarem sempre presentes, de-

monstrando interesse e participando dos meus estudos alem de oferecer todas as bases

necessarias para minha formacao pessoal e profissional. Em toda sua dedicacao nunca

foram poupados esforcos para que esse momento pudesse ser realizado, e como esse tra-

balho e o resultado de toda essa dedicacao, gostaria principalmente de compartilhar essa

conquista com eles.

Gostaria de fazer tambem um agradecimento especial aos meus avos, Maria das

Neves, Dulcinea e Jovino e a toda famılia, que sempre deram muito suporte e conselhos

durante todo o curso, o que fez me manter focado e motivado ate o fim dessa jornada.

Aos amigos, Humberto, Murilo, Vinicius e Cassio, que compartilhei muitos mo-

mentos desses quatro anos e meio. Nossas conversas, fossem elas de questoes academicas

ou nao, sempre foram fundamentais para refletir, passar pelas dificuldades e rir para ter

um pouco de descontracao.

Eu, Victor, gostaria de agradecer primeiramente a meus pais, Marcos e Ana, irmao,

Allan, e toda a minha familia pelo amor, incentivo e apoio que sempre me deram e a

capacidade de acreditar em mim e investir em mim mesmos nos momentos difıceis.

Aos amigos, Leandro, Olavo, Giulio, Matheus, Fabio e Gabriel, companheiros de

trabalhos e irmaos na amizade que fizeram parte da minha formacao e que vao continuar

presentes em minha vida com certeza.

Ao professor Igor Moraes, por ter se disponibilizado a nos orientar e cumprir sua

funcao com toda competencia que possui. Agredecemos muito a todos os conselhos,

revisoes e reunioes, sua dedicao nao so nos mostrou a direcao correta para resolver os

problemas que surgiram, como teve grande contribuicao em nossa evolucao profissional.

Aos professores Diego Passos e Aline Paes, que gentilmente aceitaram fazer parte

Page 7: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

vi

de nossa banca.

Aos professores do instituto de computacao, que, em sua maioria, foram sempre

solıcitos e dedicados exercendo sua profissao com grande paixao. Sem duvidas seus ensina-

mentos, dentro e fora da sala de aula, foram de grande importancia para o conhecimento

adquirido ao longo desses anos.

Aos funcionarios do IC/UFF como um todo, assim como os alunos e funcionarios

do laboratorio MıdiaCom que nos forneceram grande auxılio nesse ultimo semestre.

Por fim, ao CNPq, CAPES, FAPERJ, Proppi/UFF, TBE/ANEEL e CELESC/ANEEL

por todos os recursos disponibilizados para que esse trabalho pudesse ser realizado.

Page 8: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

vii

Resumo

Atualmente, os usuarios da Internet estao mais interessados em obter conteudos de

interesse independentemente de onde estejam localizados e de quem envie esses conteudos.

Mais de 60% do trafego atual da Internet sao de aplicacoes com essa caracterıstica. O

interesse pelo conteudo independentemente da sua localizacao e a principal premissa para a

proposta de novas arquiteturas para Internet, chamadas de Redes Orientadas a Conteudo.

Uma da arquiteturas propostas e a Content Centric Networking (CCN). Nessa

arquitetura, os conteudos sao requisitados e encaminhados atraves de seus nomes, dife-

rentemente da Internet atual em que o encaminhamento e baseado no endereco IP. Alem

disso, os elementos da rede realizam armazenamento temporario (caching) dos conteudos

ao encaminharem os conteudos em direcao a quem os requisitou. Na presenca de uma

enorme estrutura distribuıda de caching, a localizacao, assim como a disponibilidade dos

conteudos e dinamica ao longo do tempo, devido a forma na qual os conteudos estarao dis-

tribuıdos atraves da rede. Assim, pode-se argumentar que um mecanismo que investigue a

rede por conteudos armazenados em caches de nos vizinhos em um determinado instante

de tempo e mais apropriado do que descobrir e manter uma rota para os produtores de

tais conteudos. Na segunda abordagem, o aumento da disponibilidade so ocorrera na rota

predefinida entre quem requisita e quem produz o conteudo.

Com isso em mente, esse trabalho propoe uma estrategia de encaminhamento de

pacotes para a CCN. A proposta usa a tecnica de aprendizado por reforco, cuja ideia prin-

cipal e realizar um balanco entre explorar novos caminhos e se aproveitar da informacao

adquirida durante exploracoes anteriores. As interfaces de um no da rede sao classificadas

com base no tempo de recuperacao dos conteudos e todo interesse com o mesmo prefixo

para um conteudo ja encaminhado e enviado pela interface com o menor tempo de recu-

peracao medio. A exploracao e realizada probabilisticamente, na qual cada no envia o

mesmo interesse para a interface melhor classificada e tambem para uma outra interface

Page 9: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

viii

escolhida aleatoriamente. O objetivo e fazer com que o conteudo seja entregue pelo me-

lhor caminho encontrado ate o momento e ao mesmo tempo explorar copias que possam

ter sido armazenadas em caches ainda mais proximos recentemente. Os resultados de

simulacao mostram que a estrategia proposta reduz o numero de saltos cerca de 28% em

cada no e 80% a carga de interesses tambem por no em determinados cenarios quando

comparada as outras estrategias de encaminhamento propostas para a CCN.

Palavras-chave: Redes Orientadas a Conteudo, CCN, Encaminhamento, Aprendizado por

Reforco.

Page 10: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

ix

Abstract

Internet users are currently more interested in obtaining contents regardless of

where these contents are located or who provides them. More than 60% of the Internet

traffic is from applications with these characteristics. The interest in contents regardless

of its location is the main assumption of a set of architectures proposed to the Future

Internet, called Information Centric Networks (ICN). The Content Centric Networking

(CCN) is one of these new architectures. In CCN data is requested and forwarded by

using named contents differently from the current Internet architecture, where forwarding

is based on IP addresses. Furthermore, core nodes store content replicas after forwar-

ding the requested contents to the users. In the presence of such a highly distributed

caching infrastructure, content availability and location can vary over the time because

of temporary replicas spread across the network. Thus, we argue that a mechanism that

investigates the network looking for content replicas stored in cache of neighbor nodes is

more appropriate than mechanisms that discover and mantain routes to the location or

domain of content producers. In this case, growth of availability will only occur en-route

of those who requests and produces the content. With that in mind, this work proposes

a packet forwarding strategy for CCN. Our proposal is based on reinforcement learning

techniques and aims at balancing the exploration of new paths and data acquired from

previous exploitations. The output interfaces of a node are classified according to the

content retrieval time and all interests that share the same prefix with contents previ-

ously forwarded are sent through the interface with the lowest mean retrieval time. The

path exploration is probabilistic. Each node sends the same interest through the best

interface and through another interface chosen at random simultaneously. The goal is to

retrieve the content by using the best path found until present moment and at the same

time explore copies that are recently stored in the cache of nearest nodes. Simulation

results shows that the proposed strategy reduces up to 28% the number of hops traversed

Page 11: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

x

by received contents and up to 80% the interest load per node in comparison to other

forwarding strategies.

Keywords: Information Centric Networks, CCN, Forwarding, Reinforcement Learning.

Page 12: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Sumario

Resumo vii

Abstract ix

Lista de Figuras xiv

1 Introducao 1

1.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.3 Organizacao do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Redes Orientadas a Conteudo 6

2.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 Visao Geral da CCN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2.1 Nomeacao de Conteudos . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2.2 Processo de Requisicao e Obtencao de Conteudos . . . . . . . . . . 11

3 Encaminhamento na Arquitetura CCN 16

3.1 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.2 O Problema das Maquinas Caca-Nıqueis . . . . . . . . . . . . . . . . . . . 19

3.3 Metodo Acao-Valor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.4 Implementacao Incremental . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.5 Rastreando um Problema Nao-Estacionario . . . . . . . . . . . . . . . . . . 23

3.6 Estrategia de Encaminhamento como um Problema das Maquinas Caca-

Nıqueis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.6.1 Construcao da Tabela de Encaminhamento . . . . . . . . . . . . . . 25

3.6.2 O Processo de Encaminhamento e Exploracao . . . . . . . . . . . . 26

xi

Page 13: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

xii

4 Modelo de Simulacao 29

4.1 Funcionamento Basico do ndnSIM . . . . . . . . . . . . . . . . . . . . . . . 29

4.2 A Topologia de Rede Utilizada . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.3 Comportamento dos Nos da Rede . . . . . . . . . . . . . . . . . . . . . . . 31

4.3.1 Publicadores de Conteudo . . . . . . . . . . . . . . . . . . . . . . . 32

4.3.2 Consumidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.3.3 Roteadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

5 Resultados 34

5.1 Definicao dos Parametros da Estrategia de Encaminhamento Proposta MAB 35

5.2 Comparacao das Estrategias de Encaminhamento . . . . . . . . . . . . . . 37

6 Conclusao 41

6.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Referencias Bibliograficas 43

Page 14: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Lista de Figuras

1.1 As dez aplicacoes que geraram mais trafego na America Latina em 2014 [1]. 2

2.1 Porcentagem de trafego downstream em perıodo de pico na America do

Norte por aplicacao [2]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Comparacao da pilha de protocolos TCP/IP e CCN [3]. . . . . . . . . . . . 10

2.3 Nome hierarquico estruturado [3]. . . . . . . . . . . . . . . . . . . . . . . . 11

2.4 Formato do cabecalho dos pacotes na CCN [3]. . . . . . . . . . . . . . . . . 11

2.5 Estrutura dos mecanismos de um no CCN. . . . . . . . . . . . . . . . . . . 13

2.6 Processo de encaminhamento de pacotes dos interesse [4]. . . . . . . . . . . 14

2.7 Processo de encaminhamento dos pacotes de dados [4]. . . . . . . . . . . . 14

2.8 Recuperacao de pacotes de dados. . . . . . . . . . . . . . . . . . . . . . . . 15

3.1 Maquina Caca-Nıquel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Entrada da tabela de encaminhamento. . . . . . . . . . . . . . . . . . . . . 25

3.3 Processo decisorio ao encaminhar um pacote de interesse. . . . . . . . . . . 26

4.1 A arquitetura do ndnSIM [5]. . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.2 A Topologia Rocketfuel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.1 Atraso medio por no em funcao de α. . . . . . . . . . . . . . . . . . . . . . 36

5.2 Desvio Padrao. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.3 Atraso medio por no em funcao de ε. . . . . . . . . . . . . . . . . . . . . . 37

5.4 Desvio Padrao. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.5 Media de interesses satisfeitos e interesses recebidos por no. . . . . . . . . . 37

5.6 Media do numero de saltos por no em funcao da quantidade de consumidores. 38

5.7 Atraso medio por no em funcao da quantidade de consumidores. . . . . . . 38

xiii

Page 15: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

xiv

5.8 Media da quantidade de pacotes de dados recebidos por no em funcao da

quantidade de consumidores . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.9 Media da quantidade de pacotes de interesse recebidos por no em funcao

da quantidade de consumidores . . . . . . . . . . . . . . . . . . . . . . . . 38

5.10 Media da quantidade de pacotes de dados recebidos por no para cada cenario. 39

5.11 Media da quantidade de pacotes de interesse recebidos por no para cada

cenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.12 Media do numero de saltos por no para cada cenario. . . . . . . . . . . . . 40

5.13 Atraso medio por no para cada cenario. . . . . . . . . . . . . . . . . . . . . 40

Page 16: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 1

Introducao

No inıcio do desenvolvimento da Internet na decada de 1970, os principais desafios

estavam em torno do compartilhamento de recursos e comunicacao eficiente entre siste-

mas finais [3]. Estacoes interconectadas realizavam troca de informacoes, basicamente

textuais, como ocorrem nos protocolos de acesso remoto e de correio eletronico, e com-

partilhavam recursos de equipamentos que possuıam um alto custo na epoca e eram de

grande importancia para os usuarios, como impressoras e sistemas de arquivos remotos.

Desta forma, a Internet foi desenvolvida em um modelo denominado Cliente-Servidor, no

qual um sistema final que queira usar algum tipo de servico, deve requisitar este servico

a um outro sistema final especıfico que o forneca e possa atender a essa requisicao. Para

tanto, e preciso conhecer a priori o endereco de rede do sistema final que hospeda esse

servico.

Atualmente, tecnologias de rede empregadas no nucleo da rede e em redes de acesso

a Internet experimentam um aumento significativo de suas capacidades ao mesmo tempo

em que o custo de acesso para os usuarios finais e reduzido. Assim, ha uma popularizacao

do acesso a Internet, o que permite que novas aplicacoes e servicos sejam desenvolvidos,

como as redes par-a-par (peer-to-peer - P2P) para compartilhamento de arquivos e siste-

mas de publicacoes de vıdeos [6]. O uso dessas aplicacoes acabou se mostrando de grande

sucesso. Dados comprovam que 60% do trafego em 2014 na Internet teve como origem as

redes de compartilhamento e de distribuicao de conteudos [1]. A Figura 1.1 mostra que

aplicacoes como YouTube e BitTorrent sao lıderes de trafego compartilhado na America

Latina. Dessa forma, e possıvel observar uma mudanca nas necessidades dos usuarios

que utilizam a Internet nesse processo de evolucao, em que se afasta cada vez mais do

1

Page 17: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

2

modelo de sistema de informacao textual e se caminha para um modelo multimıdia, no

qual dados, servicos e aplicacoes sao consumidos como conteudos [7]. Essa mudanca de

perfil enfatiza que o interesse dos usuarios esta no conteudo em si, independente da sua

localizacao ou de quem o prove.

Figura 1.1: As dez aplicacoes que geraram mais trafego na America Latina em 2014 [1].

Uma tentativa de atender as necessidade que surgiram devido a nova caracterizacao

da Internet sao as redes de distribuicao de conteudos (Content Distribution Network -

CDN) [6]. Entretanto, os protocolos utilizados para realizar a distribuicao de conteudos

sao os mesmos propostos no inıcio do desenvolvimento da Internet, ou seja, orientados a

arquitetura TCP/IP. Alem disso, o princıpio basico de funcionamento da rede continua

o mesmo, em que o nucleo se responsabiliza somente por encaminhar as informacoes

geradas ate seus destinos atraves do endereco IP (Internet Protocol) e a borda possui

toda complexidade de geracao e manutencao das conexoes. Dessa forma, para muitos

pesquisadores, a utilizacao de aplicacoes voltadas para as redes P2P e CDN em uma

arquitetura orientada a conexao torna a Internet de hoje uma “colcha de retalhos” [7].

Uma alternativa ao modelo de comunicacao atual da Internet sao as Redes Orienta-

das a Conteudo (ROCs) [7, 8]. As ROCs sao um novo paradigma de comunicacao em que

a recuperacao dos conteudos nao importando sua origem e destaque. As ROCs utilizam

conceitos que divergem do modelo de comunicacao atual, como conteudos e encaminha-

mento baseados em nomes, seguranca aplicada ao proprio conteudo ao inves do canal de

comunicacao estabelecido entre sistemas finais e a atribuicao de uma nova responsabi-

Page 18: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

3

lidade aos roteadores pertencentes ao nucleo da rede, o armazenamento temporario dos

conteudos. [3]. Quando comparadas com a arquitetura atual as ROCs apresentam muitos

benefıcios em potencial, como maior eficiencia na distribuicao e localizacao de conteu-

dos, aumento de sua disponibilidade e menor tempo de resposta percebido pelo usuario

final [7]. Contudo, sua implantacao traz inumeros desafios, dentre eles o encaminhamento

baseado em nomes. Nas ROCs todos os elementos da rede potencialmente armazenam as

informacoes que encaminham com o objetivo de servir requisicoes futuras para o mesmo

conteudo.

Como varios caminhos sao possivelmente conhecidos para um certo conteudo, uma

nova camada na pilha de protocolos denominada camada de estrategia fica responsavel

por selecionar uma ou mais interfaces de proximo salto entre o conjunto de possibilidades.

A camada de estrategia e o modulo responsavel por realizar as retransmissoes assim como

selecionar quais e quantas das varias interfaces de saıda serao utilizadas para encaminhar

as requisicoes [3]. Nos intermediarios no caminho escolhido podem dispor de copias arma-

zenadas em cache do conteudo requisitado. Logo, a disponibilidade das diferentes replicas

armazenadas depende de diversos fatores, como a popularidade dos conteudos e a polıticas

de reposicao nos caches, e esses fatores sao diretamente influenciados pela estrategia de

encaminhamento adotada [9].

1.1 Motivacao

Podemos encontrar na literatura relacionada as ROCs duas abordagens coexisten-

tes que podem ser exploradas para tratar da requisicao e encaminhamento de informacoes.

Em longo prazo, protocolos associados ao plano de controle [10, 11, 12] distribuem infor-

macoes de disponibilidade dos conteudos atraves da rede no intuito de alcancar replicas

permanentes que se encontram nos elementos responsaveis por sua producao ou que pos-

suam baixo grau de volatilidade. No modelo atual, em que o foco e a conexao entre

sistemas finais, o plano de controle e frequentemente relacionado aos protocolos de rotea-

mento como o RIP (Routing Information Protocol) e o OSPF (Open Shortest Path First)

que especificam como roteadores interagem entre si ao disseminar informacoes de estado

de vizinhaca, possibilitando a escolha de rotas entre dois nos da rede [13]. Em curto prazo

nas ROCs, estrategias de encaminhamento no plano de dados [4, 14, 15] se baseiam em

Page 19: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

4

informacoes locais disponıveis em cada no separadamente, como tempo de recuperacao

de um conteudo, quantidade de retransmissoes e ate mesmo a impossibilidade de utilizar

alguma interface de saıda devido a uma falha na rede, o que permite uma reacao rapida

as constantes mudancas de conectividade e de disponibilidade dos conteudos encontrados

na rede. E possıvel perceber a diferenca no uso do plano de dados entre os paradigmas, ja

que, a abordagem utilizada atualmente realiza a escolha de por qual interface encaminhar

os dados recebidos ao consultar informacoes previamente disponibilizadas pelos algorit-

mos presentes no plano de controle apos os roteadores convergirem para a mesma visao

topologica.

Um protocolo de roteamento baseado em nome ideal necessitaria enderecar todas as

replicas temporarias de todos os conteudos a fim de encaminhar a requisicao dos usuarios

na direcao da “melhor” replica disponıvel se baseando em alguma metrica, como mais

proxima ou com menor tempo de resposta. Entretanto, um mecanismo como esse descrito

e claramente inviavel por tres principais razoes: a escala da rede, a volatilidade nos caches

e a explosao da tabela de encaminhamento [9]. O paradigma proposto pelas ROCs se aplica

aos conteudos de diversas aplicacoes e nao foi projetado para operar em regioes pequenas

e controladas. Replicas temporarias armazenadas pelos elementos da rede sao altamente

volateis e, dessa forma, a sobrecarga de sinalizacao frequente para atualizacao de rotas

seria imenso. Alem disso, e possıvel considerar uma preocupacao simplesmente enderecar

os conteudos que ficam armazenados nos elementos que os produzem antes mesmo de

cogitar as replicas temporarias armazenadas em cache. A quantidade de enderecos IP

esta na casa dos bilhoes enquanto que a quantidade de URLs indexadas pelo Google ja

esta na casa do trilhoes [16].

Seguindo a abordagem de uma estrategia de encaminhamento no plano de dados e

possıvel localizar eficientemente replicas temporarias sem a necessidade de ficar sujeito a

sobrecarga de sinalizacao explıcita para descobrir sua localizacao. Para alcancar tal obje-

tivo, realizar uma exploracao restrita na rede com o intuito de ajustar o encaminhamento

conforme o estado momentaneo da rede pode reduzir o tamanho das tabelas de enca-

minhamento com o custo de uma comunicacao um pouco mais intensa, mas que podera

beneficiar terceiros com o aumento da disponibilidade dos conteudos em nos vizinhos.

Page 20: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

5

1.2 Objetivo

O objetivo desse trabalho e propor e analisar uma estrategia de encaminhamento

baseada na tecnica de aprendizado por reforco denominada ε−greedy. Na estrategia pro-

posta, explora-se probabilisticamente caminhos alternativos em busca da melhor interface

de saıda de acordo com o tempo de resposta. Esse tempo e definido como o que leva

para obter o conteudo assim que o interesse por ele e enviado na rede. A finalidade dessa

abordagem e localizar as replicas temporarias mais proximas e, assim, reduzir o tempo de

entrega dessas replicas percebido pelo usuario final.

1.3 Organizacao do Texto

O restante deste trabalho esta organizado como descrito a seguir. Os aspectos e

caracterısticas basicas do funcionamento da CCN sao discutidos no Capıtulo 2. O Capı-

tulo 3 apresenta os trabalhos relacionados, introduz os conceitos estudados do problema

das maquinas caca-nıqueis e os contextualiza com as redes CCN e a implementacao da

estrategia proposta. O Capıtulo 4 discute os parametros e cenarios de simulacao e o Ca-

pıtulo 5 os resultados obtidos. Finalmente, o Capıtulo 6 conclui o trabalho realizado e

mostra direcoes para trabalhos futuros.

Page 21: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 2

Redes Orientadas a Conteudo

2.1 Motivacao

A popularizacao da Internet permitiu que a comunicacao ultrapassasse barreiras

que, na epoca da criacao da rede de computadores, eram impossıveis de serem previstas.

Em 1967, teve inıcio o desenvolvimento da ARPANET, a primeira rede baseada na tecnica

de comutacao de pacotes e que e considerada o embriao da Internet. O objetivo da AR-

PANET era basicamente interconectar sistemas de computacao para permitir o trabalho

cooperativo de grupos de pesquisa espalhados geograficamente e o compartilhamento de

recursos cientıficos e militares.

Desde a sua criacao, a Internet segue o princıpio basico de funcionamento em que o

nucleo da rede possui como principal responsabilidade encaminhar as mensagens geradas

pelas aplicacoes com base no endereco de destino anexado a elas, e toda complexidade da

geracao e manutencao da troca de informacoes sendo mantida nas bordas. Os roteadores

empregam a polıtica do melhor esforco, em que nao e realizada qualquer distincao ou

garantia da entrega dos dados que recebem para encaminhar, resultando em variacoes

na latencia e uma entrega nao confiavel dos dados. Todas as modificacoes que foram

introduzidas ao longo dos anos para acomodar o crescente uso da Internet, como por

exemplo o NAT (Network Address Translation), DNS (Domain Name System) e o SSL

(Secure Sockets Layer) continuam atuando em elementos como roteadores de borda e

sistemas finais [13, 7].

Mesmo nao havendo modificacoes nos conceitos originais de funcionamento, o perfil

dos usuarios e das aplicacoes utilizadas na Internet mudou radicalmente. E possıvel

6

Page 22: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

7

perceber que a propria exibicao de uma pagina Web em um navegador representa uma

mudanca de paradigma. A insercao de Web caches na rede permite que a requisicao de

uma pagina possa ser atendida por qualquer elemento que possua essa pagina armazenada,

nao sendo mais estritamente necessario efetuar uma conexao fim-a-fim com o servidor Web.

Consequentemente, exibir uma pagina Web passa a ser visto como a entrega de um bloco

de dados nomeado e identificado por um endereco de recurso (Uniform Resource Locator

- URL) [17].

Atualmente, a Internet e utilizada principalmente para geracao, compartilhamento

e recuperacao de conteudos [6, 18]. Navegacao Web, chamadas de voz e vıdeo, sistemas

de publicacao de vıdeos e sistemas de compartilhamento de arquivos ilustram esse novo

perfil. Estudos estimam que a soma de trafego de todas as formas de distribuicao de vıdeo

(e.g. TV, vıdeo sob demanda (VoD), Internet e P2P) estara no intervalo de 80% a 90%

do trafego global consumido em 2018 [19], sendo que aplicacoes como o BitTorrent sao as

mais comumente utilizadas para obter esses tipos de conteudo que possuem como forte

caracterıstica a obtencao dos dados nao importando a sua origem.

Figura 2.1: Porcentagem de trafego downstream em perıodo de pico na America do Norte

por aplicacao [2].

Apesar da arquitetura atual da Internet suportar muitas aplicacoes com essas ca-

racterısticas de compartilhamento e recuperacao de conteudos (e.g. Netflix, BitTorrent e

YouTube), se faz necessaria uma arquitetura que realize de forma mais eficiente a distri-

Page 23: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

8

buicao de conteudos, aumente sua disponibilidade e de suporte intrınseco de seguranca [7].

Para esse fim, surgiram entao, diversas propostas de arquiteturas de redes orien-

tadas a conteudo (ROCs) na literatura, todas com o mesmo objetivo: propor um arqui-

tetura de rede que busca satisfazer os criterios de eficiencia e seguranca na entrega de

conteudos [7, 8]. Mesmo com algumas diferencas de implementacao, todas as arquiteturas

defendem tres princıpios fundamentais: (i) recuperacao de conteudos atraves de requisicao

e resposta, (ii) armazenamento temporario de conteudos em todos os nos da rede e (iii)

seguranca aplicada no proprio conteudo [20].

A proposta deste novo paradigma muda o foco da conexao fim-a-fim para os con-

teudos. Na proxima secao serao explicados detalhadamente os conceitos utilizados na

arquitetura Content-Centric Networking1 [3]. Em razao de ser a arquitetura com maior

numero de trabalhos propostos desde sua criacao, alem de possuir a organizacao de um

consorcio conjunto entre universidades e a industria no intuito de promover um desenvol-

vimento mais acelerado de seus procolos [21], foi a arquitetura escolhida para realizacao

deste trabalho.

2.2 Visao Geral da CCN

A CCN (Content-Centric Networking - CCN) [3] e uma arquitetura de rede pro-

jetada com base no paradigma das ROCs. Quando um usuario, na Internet atual, deseja

obter uma informacao de interesse, ele precisa requisita-la diretamente ao servidor em que

esta armazenada utilizando um URL ou atraves de seu endereco IP. Diferentemente do

modelo de comunicacao utilizado hoje, a CCN permite que usuarios, tambem chamados

de consumidores, possam requisitar um conteudo atraves de seu nome, sem se preocupar

onde os conteudos estao armazenados e de onde serao recuperados. Dessa forma, a infra-

estrutura da rede fica responsavel por localizar e entregar tal conteudo ao usuario que o

requisitou.

Para aumentar a disponibilidade dos conteudos, alem de proporcionar uma maior

eficiencia em sua recuperacao, os elementos intermediarios da CCN, denominados rotea-

dores de conteudo, mantem temporariamente em cache os conteudos que sao previamente

encaminhados por ele. Assim, requisicoes futuras para o mesmo conteudo podem ser aten-

1Tambem conhecida como Named Data Networking

Page 24: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

9

didas e recuperadas pelo cache mais proximo, reduzindo o tempo de resposta percebido

pelo usuario e o consumo de largura de banda no nucleo da rede [22].

A estrutura adotada pela CCN apresenta algumas diferencas em relacao a arquite-

tura TCP/IP, como pode ser visto na Figura 2.2. E possıvel observar que a “cintura fina”

na pilha CCN passa a ser os fragmentos ou partes dos proprios conteudos, os chunks, e

nao mais o protocolo IP, visto na arquitetura atual. Essa caracterıstica evidencia a im-

portancia do conteudo. Outra diferenca e uma camada especıfica para seguranca. Visto

que os dados podem ser recuperados a partir de qualquer elemento da rede, sendo eles

confiaveis ou nao, e necessario garantir a autenticidade e integridade do conteudo obtido,

mas sem a obrigacao de assegurar que essas mesmas propriedades sejam satisfeitas em

toda infraestrutura da rede. E, por ultimo, outra caracterıstica de destaque e a inclusao

da camada de estrategia na pilha CCN.

A ausencia de loops na CCN possibilita que varias interfaces sejam selecionadas ao

mesmo tempo para que os pacotes sejam encaminhados, dispondo de qualquer tecnologia

disponıvel, como Ethernet, Bluetooth, 3G, IEEE 802.11, dentre outras. Como encaminhar

os pacotes atraves de todas as interfaces disponıveis pode levar a um uso inadequado dos

recursos da infraestrutura de rede, os roteadores podem adotar diferentes estrategias de

encaminhamento para decidir quais interfaces serao escolhidas para propagar a requisi-

cao pelos conteudos. Este trabalho aborda o uso de uma estrategia de encaminhamento

baseada em uma tecnica de aprendizado de maquina por reforco [23], batizada de MAB

(Multi-Armed Bandits), e sera detalhada nas Secoes 3.6.1 e 3.6.2. Uma caracterıstica

interessante e que mesmo adotando diferentes paradigmas de comunicacao, a CCN pode

coexistir com o protocolo IP, permitindo que essa arquitetura seja implantada de forma

incremental na Internet.

2.2.1 Nomeacao de Conteudos

Os nos pertencentes a CCN realizam o encaminhamento de pacotes utilizando o

nome do conteudo presente nos proprios pacotes para decidir quais interfaces devem ser

selecionadas. A fim de que informacoes relevantes possam ser extraıdas dos nomes e

aproveitadas na consulta da tabela de encaminhamento, os nomes necessitam de uma

estrutura que possa ser reconhecida pelos nos da rede. Para esse objetivo, a CCN adota

uma estrutura de nomeacao muito semelhante a empregada nos URLs.

Page 25: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

10

Figura 2.2: Comparacao da pilha de protocolos TCP/IP e CCN [3].

Os nomes sao compostos por um conjunto variavel de componentes que sao separa-

dos entre si pelo caractere “/” indicando uma posicao hierarquica dentro da estrutura [3].

Os nomes que sao concedidos aos conteudos nao possuem nenhum significado semantico

para os roteadores, sua funcao para os elementos centrais da rede esta na hierarquia atri-

buıda, de forma a instruir como o encaminhamento deve ser realizado. Consequentemente,

os publicadores de conteudo podem adotar um padrao de nomeacao que lhes seja mais

conveniente, desde que a estrutura hierarquica seja respeitada. Por exemplo, se os alunos

ou futuros alunos da Universidade Federal Fluminense desejam assistir o vıdeo de apre-

sentacao da universidade, a instituicao pode disponibiliza-lo em sua pagina Web principal

com o seguinte nome /br.uff/video/intro.avi.

E importante notar que na ausencia de motores de busca, os usuarios deverao ter

conhecimento do nome e, portanto, da estrutura hierarquica dos conteudos que pretendem

requisitar. Dessa forma, e fundamental que os nomes sejam boas representacoes dos

conteudos e de sua posicao hierarquica.

O uso desse modelo de nomeacao facilita a composicao de relacionamentos entre

os chunks pertencentes ao mesmo conteudo, ilustrado na Figura 2.3. Por exemplo, o

quarto chunk da primeira versao do vıdeo “intro.avi” poderia ser nomeado como “/br.uff”

sendo o domınio da instituicao, no qual os pacotes de interesse serao encaminhados caso

nenhum roteador intermediario possua uma copia do conteudo requisitado. Os compo-

nentes “/video/intro.avi” sendo a estrutura hieraquica organizacional em que os diferentes

conteudos do publicador deste domınio poderao ser disponibilizados e encontrados. E,

Page 26: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

11

por fim, os componentes “/1/4” representam que o consumidor deseja o quarto chunk

da primeira versao do conteudo. Assim, uma requisicao a intro.avi utilizando o nome

/br.uff/video/intro.avi poderia fazer referencia ao primeiro chunk deste conteudo e atra-

ves de informacoes contidas em seu cabecalho, a aplicacao utilizada pelo consumidor seria

capaz de requisitar os demais chunks.

Figura 2.3: Nome hierarquico estruturado [3].

2.2.2 Processo de Requisicao e Obtencao de Conteudos

A CCN possui somente dois tipos de pacotes, os pacotes de interesse (interest

packets) que sao utilizados para requisitar um conteudo, e os pacotes de dados (data

packets) que sao utilizados para recuperar um conteudo. O cabecalho que compoe cada

um dos pacotes e ilustrado na Figura 2.4. O processo de recuperacao de um conteudo na

CCN e baseado no modelo Requisicao-Resposta, semelhante ao modelo usado no procolo

HTTP, no qual entidades, denominadas publicadores, providenciam conteudos na rede e

os usuarios, denominados consumidores, requisitam tais conteudos.

Figura 2.4: Formato do cabecalho dos pacotes na CCN [3].

Uma das principais propostas da CCN esta em aumentar a disponibilidade dos

Page 27: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

12

conteudos trafegados na rede e reduzir o seu tempo de recuperacao observado pelos usua-

rios finais. Dessa forma, a CCN estabelece que cada no da rede, incluindo os roteadores,

realizem cache de conteudos. Assim, ao receber um pacote de dados, o no o armazena em

uma estrutura chamada armazem de conteudos (Content Store - CS). Consequentemente,

requisicoes futuras a esse mesmo conteudo podem ser atendidas de forma imediata, sem

que o pacote de interesse necessite ser encaminhado ate a entidade que o publicou.

Os nos da CCN contam com mais duas outras importantes estruturas alem do CS,

conhecidas como tabela de interesses pendentes (Pending Interest Table - PIT) e a base

de informacoes para encaminhamento (Forwarding Information Base - FIB).

A PIT possui como responsabilidade manter uma indexacao entre os prefixos en-

caminhados pelo no e todas as interfaces de entrada por onde pacotes de interesse de

um mesmo conteudo foram recebidos. Essa indexacao facilita a agregacao dos nomes dos

conteudos no encaminhamento dos pacotes de dados, aumentando o desempenho da co-

municacao. Gracas ao mecanismo da PIT, todo roteador, ao encaminhar um pacote de

interesse, possui a garantia que o pacote de dados correspondente ira passar por ele no

caminho de volta ate o consumidor que o requisitou.

A FIB e a tabela encarregada pela decisao de qual ou quais interfaces de saıda serao

selecionadas para encaminhar um pacote de interesse. As tabelas de encaminhamento na

rede CCN relacionam domınios roteaveis na forma de prefixos de nome a um conjunto de

interfaces de saıda, muito diferente das entradas na tabela das redes IP, no qual enderecos

IP sao associados a uma unica interface. Para evitar que loops sejam formados pelo

encaminhamento de um mesmo pacote de interesse via multiplas interfaces, esses pacotes

possuem um numero unico gerado aleatoriamente (nonce) que e usado para distinguir

interesses recem recebidos de interesses previamente encaminhados.

Em vista das estruturas e mecanismos mencionados, conforme mostrado na Figura

2.5, o processo de recuperacao de um conteudo ocorre da seguinte maneira. Para requisitar

um conteudo, o consumidor envia um pacote de interesse a rede com no mınimo o prefixo

do conteudo desejado. Ao receber o interesse, o roteador CCN extrai o prefixo do conteudo

e faz uma busca em seu CS por uma correspondencia exata. Caso possua o conteudo

correspondente, o roteador gera um pacote de dados e o encaminha pela interface de

chegada do interesse. Caso contrario, o roteador procura por uma entrada na PIT que

contenha o prefixo. Em caso afirmativo, o roteador verifica se o nonce do interesse recebido

Page 28: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

13

Figura 2.5: Estrutura dos mecanismos de um no CCN.

ja esta presente na entrada indicando que este ja foi previamente encaminhado e deve ser

descartado. Caso contrario, o roteador agrega a interface de recepcao do interesse a

entrada da PIT. Caso nenhuma entrada da PIT seja encontrada, o roteador realiza uma

busca de maior prefixo em sua FIB, com o objetivo de encontrar nos vizinhos que possam

atender tal requisicao. Se nenhuma interface de saıda e encontrada para o prefixo do

conteudo, o pacote de interesse e entao descartado e um NACK (negative acknowledgment)

e enviado indicando a impossibilidade de atender e encaminhar o interesse. Se uma ou

mais interfaces estiverem disponıveis, o roteador recorre a camada de estrategia para

decidir por quais interfaces encaminhar o interesse. O processo esta ilustrado na Figura

2.6.

Quando o pacote de dados e recebido por um roteador, ele verifica se na PIT

existem um ou mais interesses pendentes para o conteudo contido no pacote de dados.

Page 29: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

14

Figura 2.6: Processo de encaminhamento de pacotes dos interesse [4].

Caso exista, a entrada da PIT e removida, o conteudo e armazenado na CS para atender

a futuros pacotes de interesses, e o pacote de dados e enviado para todas as interfaces

que requisitaram aquele conteudo anteriormente. Caso contrario, o pacote de dados e

descartado. A Figura 2.7 ilustra o processo.

Figura 2.7: Processo de encaminhamento dos pacotes de dados [4].

Caso nenhum roteador, que o interesse tenha percorrido, possua uma copia do

conteudo requisitado armazenado em seu cache, o pacote de interesse e encaminhado

pelos nos da rede ate que o seu publicador seja encontrado. O publicador, na CCN o

no responsavel por disponibilizar os conteudos aos consumidores, entao reconhece que o

Page 30: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

15

pacote de interesse e referente a um conteudo o qual ele prove e, assim, monta o pacote

de dados que e enviado pela mesma interface no qual o pacote de interesse foi recebido.

Por exemplo, na Figura 2.8 o no “br.uff” e o publicador de conteudo que deve atender a

uma requisicao do Cliente1. Note que a partir do instante 3 o conteudo ja se encontra

nos caches dos roteadores e quando Cliente2 envia um pacote de interesse para o mesmo

conteudo que o Cliente1 tinha enviado anteriormente o roteador C e capaz de satisfazer a

requisicao sem precisar encaminhar o interesse ate o publicador de conteudos.

Figura 2.8: Recuperacao de pacotes de dados.

Page 31: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 3

Encaminhamento na Arquitetura

CCN

Os nos na CCN encaminham os conteudos ao extrair o prefixo de nome contido no

cabecalho do pacote de interesse ao inves de usar a localizacao do no publicador e, assim,

desassocia-se conteudo e seu local de recuperacao [3]. Devido aos roteadores pertencentes

ao nucleo da rede realizarem armazenamento temporario de conteudos, abre-se um leque

de atraentes possibilidades que podem ser empregadas na estrategia de encaminhamento

para essa arquitetura. Nas redes IP, o roteamento determina o menor caminho entre

origem e destino enquanto que o encaminhamento, a cada roteador, transfere o pacote

da interface de entrada para a interface de saıda que faz parte desse menor caminho.

Na CCN os roteadores podem dinamicamente selecionar multiplas interfaces de sua FIB

para encaminhar o mesmo pacote de interesse alem de poder recuperar o conteudo de

multiplas fontes diferentes, sejam elas publicadores ou roteadores [3]. Em vista disso, um

mecanismo que explore essas multiplas possibilidade pode se encaixar melhor no perfil da

arquitetura, do que simplesmente manter rotas de menor caminho do consumidor ate um

produtor de conteudos.

3.1 Trabalhos Relacionados

Pesquisas anteriores sobre encaminhamento em ROCs progrediram em duas di-

recoes diferentes. Por um lado protocolos de roteamento operando no plano de con-

trole [11, 10, 12] possuem a finalidade de disseminar as informacoes contidas na FIB

16

Page 32: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

17

que enderecam replicas permanentes. O protocolo de roteamento baseado em nomes

OSPFn [10] realiza anuncio dos prefixos de nomes de conteudos permanentes, que po-

dem ser obtidos com os interesses encaminhados ate o produtor que detem as replicas

permanentes.

Na outra direcao, trabalhos com o foco em estrategias de encaminhamento no

plano dos dados [14, 4, 15] possuem como finalidade a recuperacao de replicas volateis

seguindo alguma metrica, como a mais proxima ou a com o menor tempo de resposta. A

principal vantagem dessa abordagem em relacao a anterior e a possibilidade de recuperar

replicas temporarias sem a necessidade de ficar sujeito a sobrecarga de sinalizacao explıcita

para descobrir sua localizacao. Dessa forma, realizar uma exploracao restrita na rede no

intuito de ajustar o encaminhamento conforme o estado momentaneo da rede pode reduzir

o tamanho das tabelas de encaminhamento [9] em troca de uma comunicacao um pouco

mais intensa, mas que podera beneficiar terceiros com o aumento da disponibilidade dos

conteudo com replicas armazenadas em nos vizinhos.

Em particular, Chiocchetti et al. 2012 evidenciam que usar somente o primeiro

chunk de um conteudo em um mecanismo de exploracao reduz o tempo de recuperacao

dos conteudos requisitados pelos consumidores e permite que replicas temporarias ar-

mazenadas em caches de nos mais proximos sejam encontradas. Mostram tambem que

uma estrategia de encaminhamento que faz o uso de exploracoes se beneficia de multiplos

produtores de um mesmo conteudo [9]. Posteriormente, partindo da ideia de explorar

esporadicamente a rede, Chiocchetti et al. 2013 utilizam a tecnica Q-learning de apren-

dizado por reforco distribuidamente em cada no da rede. A estrategia possui duas fases

que ocorrem em momentos distintos, a fase de exploracao e a fase de aproveitamento do

conhecimento adquirido. Durante a fase de exploracao os nos sondam suas interfaces,

uma por vez a cada pacote de interesse recebido de forma aleatoria, com o objetivo de

aprender qual delas retorna a melhor recompensa, ou seja, possui menor tempo de recu-

peracao para o conteudo requisitado. A fase de exploracao dura ate que um numero de

chunks predefinido seja alcancado, dando inıcio a fase de aproveitamento. Essa fase possui

como objetivo utilizar toda a informacao adquirida durante a exploracao para minimizar o

tempo de recuperacao dos conteudos ao encaminhar os pacotes de interesse somente pela

interface que produziu o menor tempo estimado para o especıfico conteudo. Sua duracao

termina quando uma mudanca nao desprezıvel e identificada no tempo de recuperacao a

Page 33: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

18

partir daquela interface ou quando um numero predeterminado de chunks foi enviado por

ela. Por fim, entradas da tabela de encaminhamento que nao sao atualizadas durante um

certo tempo, tambem predefinido, acabam por ser apagadas por estarem obsoletas [14].

Por ultimo, Yi et al. 2012 introduzem uma abordagem dinamica na qual as inter-

faces sao sondadas periodicamente e estatısticas sao coletadas para cada uma delas [4].

Cada prefixo de nome presente em sua FIB possui uma lista de interfaces associadas a

tres parametros, uma estimativa para o tempo de recuperacao semelhante a empregada no

protocolo TCP (Transmission Control Protocol), uma taxa limite para envio de pacotes

de interesse e uma taxa limite para recebimento de pacotes de dados. Ambas as taxas

possuem como objetivo o controle de congestionamento e sao calculadas pela razao entre

a capacidade da fila da interface e o tamanho medio dos pacotes de dados trafegados por

ela, sendo a razao multiplicada por uma constante. Quando uma interface acaba de ser

conectada ou uma nova entrada da FIB e criada, o estado dessa interface e atribuıdo como

amarelo. Outra forma de a interface ser classificada com essa cor ocorre quando sua cor e

verde e o tempo estimado para que um pacotes de dados retorne por ela seja estourado.

Ela se torna verde quando pacotes de dados sao recebidos por ela, e se torna vermelha

caso deixa de funcionar, um pacote NACK com uma mensagem “sem caminhos disponı-

veis” e recebido ou alguma das taxas limite e ultrapassada. As interfaces de cor verde e

amarela sao ranqueadas de acordo com a estimativa do tempo de recuperacao. Cada novo

interesse recebido e enviado utilizando a interface de cor verde melhor ranqueada para o

prefixo de nome contido no interesse. Caso nao possua interfaces de cor verde, utiliza-se a

interface de cor amarela melhor ranqueada. Ao receber interesses retransmitidos, ou seja,

seus nonces ainda estao presentes em entradas da PIT, a estrategia de encaminhamento

verifica se o tempo estimado para a recuperacao do conteudo pela interface utilizada foi

excedido. Em caso afirmativo, encaminha-se o interesse retransmitido pela interface verde

ou amarela melhor ranqueada se disponıvel. Quando um NACK por um prefixo de nome

e recebido pela interface utilizada, interfaces classificadas com cor amarela sao exploradas

ate que um pacote de dados seja recebido ou seu tempo estimado para a recuperacao do

conteudo chega ao fim.

A MAB, estrategia proposta nesse trabalho, apresenta um artifıcio para identifi-

car que um dado conteudo esta inacessıvel por alguma interface de saıda, o que nao e

encontrado no trabalho realizado por Chiocchetti et al. 2013. A ausencia de um meca-

Page 34: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

19

nismo para identificacao de falhas na rede em uma estrategia de encaminhamento que

decide a melhor interface de saıda com base no tempo de recuperacao dos conteudos pode

prejudicar gravemente seu funcionamento. Nao receber um pacote de dados implica na

nao atualizacao da entrada da tabela de encaminhamento correspondente a interface “de-

feituosa” e, no caso de ter sido classificada anteriormente como “melhor” interface, o no

continuara enviando interesses por ela sem que os conteudos sejam recebidos. O meca-

nismo apresentado por Yi et al. 2012 utiliza pacotes NACK para identificar e avisar a

ocorrencia de falhas na rede. Entretanto, seu modelo de exploracao tem como objetivo

auxiliar os nos da rede em recuperar seus conteudos de interesse em momentos de conges-

tionamento da rede, mas nao explora caminhos alternativos que possam levar a replicas

mais proximas. A estrategia proposta realiza exploracoes probabilisticamente ao inves de

usar a fase de exploracao e esperar uma certa convergencia como em Chiocchetti et al.

2013, mas aproveita a ideia dos autores de utilizar uma unica interface de saıda quando

nao esta explorando e duas interfaces de saıda quando esta. Tambem realiza deteccao de

falhas na rede ao usar um limiar de retransmissoes, diferentemente de Yi et al. 2012 que

usam um pacote de controle. Esses mecanismos da estrategia de encaminhamento serao

detalhados nas Secoes 3.6.1 e 3.6.2.

3.2 O Problema das Maquinas Caca-Nıqueis

Considere o seguinte problema de aprendizado. Voce esta repetidamente diante

de uma escolha entre n diferentes opcoes, ou acoes. Depois de cada escolha, recebe

uma recompensa numerica que e atribuıda atraves de uma distribuicao de probabilidade

e depende da acao selecionada. O objetivo e maximizar a recompensa total esperada

durante um perıodo ou instantes de tempo.

Essa e a forma original do problema das maquinas caca-nıqueis (Multi-Armed Ban-

dits), nomeado por uma analogia na qual multiplas maquinas estao disponıveis para serem

selecionadas. Cada acao de selecionar e semelhante a puxar a alavanca de uma das ma-

quinas, e as recompensas sao os pagamentos por obter o jackpot. Atraves de repetidas

selecoes, pode-se maximar o ganho ao concentrar as acoes nas melhores maquinas.

Cada acao de selecao possui uma recompensa media esperada, que pode ser de-

nominada o valor dessa acao. Caso o valor de cada acao ja fosse conhecido, resolver o

Page 35: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

20

Figura 3.1: Maquina Caca-Nıquel.

problema das maquinas caca-nıqueis seria trivial, sempre seria escolhida a acao que pro-

duzisse o maior valor. Entretanto nao e possıvel saber o valor das acoes com certeza, mas

e possıvel manter estimativas.

Ao manter essas estimativas, em cada instante de tempo existe pelo menos uma

acao no qual o valor da estimativa e o maior. Essa acao e chamada de gulosa (greedy). Ao

selecionar a acao gulosa, e dito que o conhecimento adquirido ao guardar os valores de cada

acao esta sendo aproveitado. Caso uma das acoes nao gulosas seja escolhida, e dito que

acoes alternativas estao sendo exploradas para que suas estimativas sejam aperfeicoadas.

Dessa forma, a acao gulosa e a melhor escolha a ser feita para maximizar a recompensa

esperada em um determinado instante de tempo, entretanto, explorar acoes alternativas

pode produzir uma maior recompensa acumulada a longo prazo.

No contexto da CCN, as maquinas podem ser associadas as interfaces presentes

em cada no da rede. Toda vez que um interesse e recebido por um no e o conteudo

nao se encontra presente em seu cache, e nao possui uma entrada na PIT indicando um

encaminhamento anterior para o mesmo interesse, o no estara diante do mesmo problema

que o apostador ao precisar escolher uma ou mais interfaces para encaminha-lo.

A partir deste ponto, o restante do capıtulo esta organizado da seguinte forma. A

Secao 3.3 apresenta como as recompensas sao coletadas e suas estimativas sao calculadas.

A Secao 3.4 indica uma reformulacao para o calculo das recompensas esperadas, no qual

o mınimo de estado e armazenado alem de uma computacao com complexidade constante

para o calculo das estimativas. A Secao 3.5 discute como uma pequena mudanca na formu-

lacao matematica adequa o calculo das recompensas a um problema nao-estacionario. Por

fim, a Secao 3.6 introduz a MAB, estrategia de encaminhamento proposta nesse trabalho.

Page 36: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

21

3.3 Metodo Acao-Valor

Nessa secao e apresentado um metodo simples para estimar os valores das acoes e

utilizar essas estimativas nos momentos em que a decisao de qual acao deve ser selecionada

e tomada. Para efeito de convencao, o verdadeiro valor de uma acao a e denotado por

q∗(a), e o seu valor estimado no t-esimo instante de tempo por Qt(a). Lembrando que o

verdadeiro valor de uma acao e a recompensa recebida depois de a acao a ser selecionada.

Desse modo, uma forma de realizar a estimativa de uma acao e simplesmente fazer a

media de cada recompensa recebida quando a mesma foi escolhida, ou seja, se no t-esimo

instante de tempo a acao a foi escolhida Ka vezes antes de t, produzindo as recompensas

R1, R2, ..., RKa , entao seu valor estimado e:

Qt(a) =R1 +R2 + ...+RKa

Ka

(3.1)

Caso Ka = 0, define-se um valor padrao para Q1(a). Quando Ka →∞, pela lei dos

grandes numeros, Qt(a) converge para q∗(a). Esse metodo e denominado de aproximacao

pela media das amostras. A regra mais simples em selecionar uma acao e a de selecionar

a que possui o maior valor estimado, isto e, no instante de tempo t escolher a acao gulosa,

A∗t , no qual Qt(A∗t ) = maxaQt(a).

Esse metodo sempre usufrui do conhecimento obtido para maximizar a recompensa

imediata, nao realizando em momento algum amostragem de acoes com valor de recom-

pensa inferior. Uma alternativa simples e a de se comportar de forma gulosa na maior

parte do tempo, mas de vez em quando, com probabilidade ε, selecionar de forma aleato-

ria entre todas as possıveis acoes com igual probabilidade, independentemente dos valores

de recompensa. Metodos que utilizam essa regra quase gulosa de selecionar acoes sao

denominados ε − greedy. A vantagem destes metodos esta em que, no limite em que o

numero de selecoes aumenta, todas as acoes serao escolhidas infinitas vezes, garatindo que

Ka →∞ ∀ a, e garantindo assim que todos Qt(a) convirjam para q∗(a).

3.4 Implementacao Incremental

O metodo de acao-valor efetua estimativas ao fazer a media das recompensas ob-

servadas. A implementacao mais obvia deste metodo esta em manter, para cada acao a,

o conjunto de todas as recompensas que foram obtidas na sua selecao. Entao, quando a

Page 37: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

22

estimativa da acao a e necessaria em um determinado instante de tempo t, ela podera ser

computada de acordo com a Equacao 3.1.

Um grande problema com essa forma de implementacao esta em seus requisitos

computacionais e de memoria. Conforme a quantidade de recompensas adquiridas cresce

no decorrer do tempo, a quantidade de estado a ser armazenado em memoria e o custo

computacional para o calculo da media se tornam inviaveis. Entretanto, todo esse custo

nao e realmente necessario. Atraves de uma formula que dispoe de atualizacoes incremen-

tais e possıvel computar as medias com um custo computacional constante e de memoria

com a quantidade de bits proporcional a O(log2(k)) a cada nova recompensa recebida,

sendo k o valor que representa a iteracao de atualizacao. Para uma determinada acao,

assume-se Qk a estimativa para a k-esima recompensa, ou seja, a media das k - 1 primeiras

recompensas. Dados a media e a k-esima recompensa desta acao, Rk, entao a media de

todas as k recompensas pode ser computada da seguinte maneira

Qk+1 =1

k

k∑i=1

Ri

=1

k

(Rk +

k−1∑i=1

Ri

)=

1

k

(Rk + (k − 1)Qk +Qk −Qk

)=

1

k

(Rk + kQk −Qk

)= Qk +

1

k

[Rk −Qk

],

(3.2)

que para k = 1, obtem-seQ2 =R1 para umQ1 arbitrario. Essa implementacao incremental

necessita manter em memoria apenas os valores de Qk e k, e uma computacao constante

da media (Equacao 3.2) para cada nova recompensa.

A expressao[Rk − Qk

]presente na Equacao 3.2 representa o erro da estimativa.

Esse erro e reduzido quando as estimativas e as recompensas recebidas comecam a se

aproximar. E importante lembrar que as recompensas, uma vez ou outra, estarao acom-

panhadas de algum tipo de ruıdo. Para estes casos o termo 1k, muito conhecido como

Passo da iteracao, sera fundamental na atenuacao de tais ruıdos.

Page 38: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

23

3.5 Rastreando um Problema Nao-Estacionario

O metodo discutido ate o momento e apropriado para problemas estacionarios, mas

nao sao apropriados quando os estados se alteram continuamente com o passar do tempo.

Para estes casos faz sentido atribuir uma maior importancia as recompensas mais recentes

do que as de um passado distante. A forma mais popular de realizar tal atribuicao e a de

manter o parametro Passo como uma constante [23]. Por exemplo, a Equacao 3.2 pode

ser modificada para que a atualizacao da media das k - 1 recompensas passadas, Qk, passe

a ser

Qk+1 = Qk + α[Rk −Qk

], (3.3)

onde o parametro Passo, α, 0 < α ≤ 1, e constante. Esse artifıcio resulta em um Qk+1

sendo uma media ponderada das recompensas passasdas e a estimativa inicial Q1:

Qk+1 = Qk + α[Rk −Qk

]= αRk + (1− α)Qk

= αRk + (1− α)[αRk−1 + (1− α)Qk−1]

= αRk + (1− α)αRk−1 + (1− α)2αQk−2 +

· · · + (1− α)k−1αR1 + (1− α)kQ1

= (1− α)kQ1 +k∑

i=1

α(1− α)k−iRi.

(3.4)

A Equacao 3.4 e denominada media ponderada incremental devido a soma dos

pesos ser (1 − α)k +∑k

i=1 α(1 − α)k−i = 1. Nota-se que o peso, α(1 − α)k−i, dado

recompensa Ri depende de quantas recompensas passadas, k− i, foram observadas. Caso

1−α = 0, entao todo peso e atribuıdo a ultima recompensa recebida, Rk, dada a convencao

de que 00 = 1.

Denota-se o parametro Passo representado por αk(a) usado para processar a re-

compensa recebida apos a k-esima selecao da acao a. Como foi observado anteriormente,

a escolha de αk(a) = 1k

e apropriada para problemas estacionarios, no qual garante-se

a convergencia para o verdadeiro valor das acoes atraves lei dos grande numeros. Um

resultado bem conhecido ne teoria estocastica apresenta duas condicoes necessarias para

assegurar a convergencia com probabilidade 1:

∞∑k=1

αk(a) =∞ (3.5)∞∑k=1

α2k(a) <∞ (3.6)

Page 39: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

24

A Equacao 3.5 e necessaria para garantir que os passos sao grandes o suficiente

para superar eventuais condicoes iniciais ou flutuacoes aleatorias. A Equacao 3.6 garante

que os passos tornam-se pequenos o suficiente para garantir convergencia.

E possıvel observar que ambas condicoes de convergencia sao bem definidas para

o caso estacionario, onde αk(a) = 1k. Entretanto, isso nao acontece para o caso nao-

estacionario, onde αk(a) = α e constante. No ultimo caso, a segunda condicao nao e bem

definida, indicando que as estimativas nunca convergirao completamente, mas continuarao

a variar em resposta as recompensas recebidas mais recentemente.

Como o problema de encontrar as replicas de conteudos nos caches dos nos vizinhos

mais proximos e nao-estacionario, principalmente em razao da popularidade dos conteudos

e das constantes mudancas da disponibilidade dos conteudos nos caches, o modelo nao-

estacionario foi o adotado para o calculo das recompensas esperadas. Este mesmo modelo

pode ser encontrado no trabalho feito por Chiocchetti et al. 2013, no qual os autores

denominam a constante como taxa de aprendizado.

3.6 Estrategia de Encaminhamento como um Pro-

blema das Maquinas Caca-Nıqueis

Nessa secao apresenta-se como os nos da rede fazem a construcao das suas ta-

belas de encaminhamento e, descreve tambem, como selecionam as interfaces utilizadas

para encaminhar um conteudo com base nas recompensas coletadas na estrategia de en-

caminhamento proposta, a MAB. Seu objetivo e minimizar o tempo de recuperacao de

conteudos observado pelo usuario final, utilizando os artifıcios da tecnica ε− greedy [23]

descrita nas secoes anteriores. A ideia principal e descobrir caminhos alternativos que

levem a replicas temporarias de conteudos sem que nenhuma informacao sobre a locali-

zacao desses conteudos se encontre disponıvel a priori. A estrategia proposta modela o

encaminhamento como o problema das maquinas caca-nıqueis e desenvolve um algoritmo

em que, cada no explora probabilisticamente suas interfaces de saıda alem de entregar o

conteudo de interesse pela interface que obteve o menor tempo de recuperacao.

Page 40: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

25

3.6.1 Construcao da Tabela de Encaminhamento

Na MAB cada no constroi sua tabela de encaminhamento ao registrar o tempo de

resposta de cada prefixo de nome quando recebe o pacote de dados correspondente por uma

das interfaces de proximo salto. A tabela e composta por entradas que indicam o valor de

recompensa medio Q em cada no i para todos os destinos d, Qi(f , d)∀d ∈ interfaces(i),

onde Qi(f , d) representa o tempo de resposta medio para obter o conteudo f apos o no

i ter enviado um pacote de interesse via interface que alcanca d. A ilustracao de uma

das entrada da tabela pode ser vista na Figura 3.2. A acao de encaminhar realizada por

um no i consiste em selecionar a interface de proximo salto d com a melhor recompensa

media Q para um conteudo f, ou seja, a interface que ao longo do tempo produziu o

menor tempo de resposta para que o conteudo pudesse ser obtido. Para cada pacote de

dados recebido de volta pela interface d, o no i atualiza a recompensa Q em sua tabela

de acordo com a Equacao 3.7, onde rtt(f ,d),k representa o atraso desde o no i encaminhar

o pacote de interesse pelo conteudo f ate o momento em que i recebe o pacote de dados

que contem f.

Figura 3.2: Entrada da tabela de encaminhamento.

Cada no atualiza sua tabela de encaminhamento independentemente e, ao serem

utilizados em conjunto, conseguem identificar o “melhor” caminho dada as condicoes mo-

mentaneas da rede para encaminhar e recuperar um determinado conteudo. Para cada

conteudo f ∈ F , conjunto de todos conteudos disponibilizados, um no i mantem um con-

junto de valores Qi(f , d)∀d ∈ interfaces(i), e sao computados e atualizados toda vez que

o no i recupera f , seja pela “melhor” interface ou por uma interface explorada, como sera

descrito a seguir.

Page 41: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

26

3.6.2 O Processo de Encaminhamento e Exploracao

A estrategia de encaminhamento proposta supoe que nenhum conhecimento previo

foi adquirido antes de receber o interesse por um conteudo pela primeira vez. Posto

isso, ao receber um pacote de interesse por um conteudo f que nao consta na tabela de

encaminhamento, o roteador i ira inundar todas as suas interfaces, exceto a que recebeu

o interesse, para inicializar o valor das recompensas Qi(f , d). O objetivo de tal inundacao

esta em adquirir conhecimento sobre o estado atual da rede em relacao a f, garantindo ao

mesmo tempo a entrega dos pacotes de dados requisitados.

Figura 3.3: Processo decisorio ao encaminhar um pacote de interesse.

Apos essa fase inicial, as interfaces sao classificadas de acordo com o tempo trans-

corrido para a recuperacao dos primeiros pacotes de dados. A partir desse ponto, toda vez

que um pacote de interesse com o prefixo de f for recebido por um no, ele pesquisara em

sua tabela de encaminhamento e encaminhara o interesse pela interface que e considerada

a melhor classificada para recuperar o conteudo solicitado por um processo aleatorio, que

decide com uma probabilidade 1−ε propagar o pacote de interesse somente pela interface

que produziu o menor valor Qi(f , d) no decorrer do tempo. Ou, com probabilidade ε,

propagar o interesse para a “melhor” interface e tambem para outra interface escolhida

ao acaso diferente da atual “melhor” seguindo uma distribuicao uniforme. Atraves dessa

abordagem, garante-se que f sera entregue pelo cache mais “proximo” encontrado ate

o momento enquanto outras copias que possam ter sido armazenadas por caches ainda

mais “proximos” em um passado mais recente possam ser encontradas. As etapas desse

processo estao ilustradas na Figura 3.3. A opcao de possuir somente uma unica interface

para exploracao foi adotada para limitar a sobrecarga de pacotes de interesse trafegando

Page 42: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

27

na rede.

Da mesma forma, para cada pacote de dados retornado passada a inundacao, os

nos atualizarao sua tabela de encaminhamento de acordo com a seguinte equacao:

Qi ,k+1 (f , d) = Qi ,k(f , d) + α[rtt(f ,d),k −Qi ,k(f , d)]

= αrtt(f ,d),k + (1− α)Qi ,k(f , d)

= αrtt(f ,d),k + (1− α)[αrtt(f ,d),k−1 + (1− α)Qi ,k−1 (f , d)

= αrtt(f ,d),k + (1− α)αrtt(f ,d),k−1 + (1− α)2Qi ,k−1 (f , d)

= αrtt(f ,d),k + (1− α)αrtt(f ,d),k−1 + (1− α)2αrtt(f ,d),k−2 +

· · · + (1− α)k−1αrtt(f ,d),k−1 + (1− α)kQi ,1 (f , d)

= (1− α)kQi ,1 (f , d) +k∑

j=1

α(1− α)k−jrtt(f,d),j.

(3.7)

Como a localizacao das replicas nos caches muda com o passar do tempo, incorpora-

se uma atualizacao que leva em conta a nao-estacionariedade do problema de encontrar

o cache que retorna mais rapidamente o conteudo requisitado. Fixando o valor de α em

uma constante, tal que 0 < α ≤ 1, a Equacao 3.7 mostra que, como 1 − α e menor que

1, o peso atribuıdo a rtt(f,d),j diminui a medida que a quantidade de tempos de resposta

intervenientes coletados aumentam. Na verdade, o peso decai exponencialmente de acordo

com o expoente 1−α. Consequentemente, a recuperacao de um pacote de dados no estado

atual da rede sempre possuira um peso maior no calculo do tempo de recuperacao medio,

mas sem que o historico obtido a partir de uma interface deixe de ser levado em conta, ja

que o estado corrente pode apresentar uma condicao particular e temporaria.

Outro tratamento realizado via recepcao de um pacote de dados e a identificacao

de uma possıvel queda de enlace. Cada entrada da tabela de encaminhamento possui uma

tupla contendo o prefixo de um conteudo, a interface utilizada na propagacao do interesse,

o tempo de recuperacao medio e um contador de retransmissoes. Assim, sempre que um

interesse e enviado, sua entrada correspondente na tabela tem o contador acrescido de uma

unidade. Caso esse contador atinja um valor de limiar predefinido T, o valor do tempo

de recuperacao medio e definido como infinito e, consequentemente, a interface associada

a essa entrada deixa de ser utilizada. Como a estrategia de encaminhamento proposta

realiza exploracoes de forma aleatoria, eventualmente tal interface que foi classificada como

“fora do ar” acaba sendo sondada novamente e, no recebimento de um respectivo pacote

Page 43: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

28

de dados, todo processo de aquisicao de recompensas associado aos prefixos previamente

encaminhados por ela recomeca.

Page 44: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 4

Modelo de Simulacao

A estrategia de encaminhamento proposta, a MAB, e avaliada atraves de simula-

coes. Logo, para que seja possıvel entender melhor os resultados obtidos nesse trabalho, e

preciso entender como tais simulacoes foram realizadas e modeladas. Para avaliar o com-

portamento da rede ao aplicar a estrategia de encaminhamento proposta e para poder ter

resultados que permitam a melhor parametrizacao da proposta, sao realizadas simulacoes

utilizando o simulador NS-3 [24], atraves do modulo ndnSIM [5], que implementa a pilha

de protocolos da CCN. Nesse capıtulo, aborda-se o funcionamento do modulo ndnSIM e

apresenta-se a maneira como os nos se comportam durante a simulacao.

4.1 Funcionamento Basico do ndnSIM

O simulador ndnSIM foi implementado de forma modularizada na linguagem C++

com classes abstratas, para definir cada um dos componentes da CCN: a tabela de inte-

resses pendentes (PIT), tabela de encaminhamento (FIB), o armazenador de conteudos

(CS), a interface de aplicacao, etc. Essa estrutura modular permite que cada componente

seja facilmente modificado ou substituıdo sem impactar os outros componentes. Alem

disso, o ndnSIM ja tem implementado geradores de aplicacao e classes Helpers, que sao

facilitadores para criacao dos cenarios de testes e seus componentes.

A arquitetura do ndnSIM segue a filosofia que tem como objetivo maximizar a

abstracao da implementacao de todos os modelos e componentes. Assim como as pilhas

IPv4 e IPv6, o ndnSIM foi arquitetado para ter uma pilha de camadas independentes que

possam ser instalados em cada no da rede durante a simulacao. A Figura 4.1 mostra como

29

Page 45: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

30

os componentes estao organizados. Como pode ser observado, o L3Protocol no ndnSIM

e a unidade central da arquitetura, e o unico componente que nao oferece alternativas de

implementacao. E o componente logico que agrega todas os canais de comunicacao das

aplicacoes com os outros nos da rede e faz a manipulacao basica dos pacotes que chegam

das Faces a partir de uma estrategia de encaminhamento.

Figura 4.1: A arquitetura do ndnSIM [5].

Alem do L3Protocol, o simulador ndnSIM e composto por outros componentes

como a Face, uma abstracao que permite uma comunicacao com a camada de aplicacao

AppFace e outros nos da simulacao. O ContentStore e um cache para armazenar os pacotes

de dados recebidos da rede, conforme uma polıtica de cache. A PIT e uma abstracao para

a tabela de interesses requisitados que mantem as Faces de origem dos interesses recebidos,

e assim poder encaminhar os pacotes de dados para os nos que o requisitaram. A FIB

e uma abstracao para a tabela de encaminhamento, que tem como funcao encaminhar o

interesse de acordo com alguma estrategia de encaminhamento. O ForwardingStrategy e o

componente responsavel por controlar como os pacotes de interesse e dados irao trafegar

pela rede, durante a simulacao. Todos esses componentes sao parametrizados para cada

cenario, para melhor se adequar aos objetivos dos testes, por exemplo modificar a polıtica

de cache ou o algoritmo de busca na FIB.

Page 46: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

31

Na Figura 4.1 e possıvel observar mais dois componentes conectados ao nucleo do

ndnSIM, a APPFace e a NetDeviceFace. Sao abstracoes utilizadas para realizar a comu-

nicacao entre a camada de rede (L3Protocol) e as outras camadas da pilha de protocolos.

Isto e, caso um no deseje ser um consumidor, ele deve ser capaz de utilizar uma AppFace

para enviar os interesses e receber os dados utilizando a camada de rede da CCN. O Net-

DeviceFace e o componente central responsavel por entregar os pacotes de dados para a

pilha CCN de acordo com o protocolo de enlace utilizado.

O ndnSIM e orientado a eventos, logo os componentes devem implementar funcoes

de tratamentos para os eventos lancados durante a simulacao. Dessa forma, possui uma

logica padrao para tratamento desses eventos. Isso facilita o desenvolvimento de novos

componentes, dado que para estender algum componente, basta sobrescrever a implemen-

tacao padrao, modificando apenas os metodos de tratamento dos eventos desejados. No

desenvolvimento da MAB alteramos o componente ForwardingStrategy, que executa em

cada no da simulacao a estrategia de encaminhamento escolhida para aquele cenario, e e

responsavel por manipular os modulos ContentStore, PIT e FIB, alem de tratar os eventos

enviados pelos nos. A lista de todos os eventos tratados pelo ForwadingStrategy pode ser

vista em [5].

4.2 A Topologia de Rede Utilizada

Para a execucao dos experimentos a topologia usada foi a Rocketfuel, ilustrada na

Figura 4.1. Essa topologia e derivada do ISP (Internet Service Provider) EBONE, obtida

atraves do mapeador de topologias Rocketfuel [25]. A rede conta com 163 nos, dos quais

72 nos sao folhas. Esses nos estao conectados entre si atraves de 366 enlaces com larguras

de banda, tamanho da fila das interfaces e o atraso de transmissao heterogeneos. Para

a execucao de todas as simulacoes, foram escolhidos 3 nos folhas, aleatoriamente, para

serem os nos produtores.

4.3 Comportamento dos Nos da Rede

No ndnSIM, existem apenas tres tipos diferentes de nos: publicadores de conteudo,

consumidores e roteadores. Estes sao detalhados nas proximas sessoes.

Page 47: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

32

Figura 4.2: A Topologia Rocketfuel.

4.3.1 Publicadores de Conteudo

Os publicadores de conteudo implementam todas as camadas da pilha CCN. No

contexto do ndnSIM, eles sao aplicacoes que tem o proposito de servir os dados de um ou

mais conteudos identificados pelos seus prefixos.

4.3.2 Consumidor

Assim como os publicadores de conteudo, os consumidores implementam todas as

camadas da pilha CCN. O ndnSIM ja fornece 4 tipos diferentes de consumidores: Con-

sumerCbr, ConsumerZipfMandelbrot, ConsumerBatches, ConsumerWindow. Observa-se

Page 48: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

33

que a frequencia na qual cada pagina da Internet e requisitada segue a lei de Zipf [26, 27,

28]. Sendo assim, nas simulacoes, considera-se o consumidor ConsumerZipfMandelbrot,

com uma taxa de envio de 100 interesses por segundo e distribuicao Zipf com α = 0, 7.

No Capıtulo 5 serao melhor detalhados os resultados obtidos, que validam a estrategia de

encaminhamento proposta como uma possıvel solucao para ser aplicada na arquitetura

CCN.

4.3.3 Roteadores

Os roteadores sao pecas fundamentais para o funcionamento da estrategia proposta

por esse trabalho. No contexto da CCN, no qual a origem do conteudo nao e relevante e

sim o conteudo propriamente dito, os roteadores tem a funcao de armazenar os pacotes

de dados previamente requisitados em seu cache, de tal forma que ao receber o mesmo

interesse o proprio roteador seja capaz de satisfaze-lo sem precisar encaminhar o interesse

para outros nos. Isso diminui o tempo de recuperacao, dado que a requisicao do conteudo

nao precisa chegar ao produtor para ser satisfeita, uma vez que a propria rede e capaz de

prover esse dado ao consumidor.

Page 49: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 5

Resultados

Para que o desempenho da estrategia proposta pudesse ser avaliado e comparado,

o simulador ndnSIM [5] foi estendido para acomodar a MAB. A estrategia proposta foi

comparada com duas outras estrategias de encaminhamento implementadas por padrao

no ndnSIM: a Best Route e a Smart Flooding [5]. Ambas as estrategias apoiam-se em uma

codificacao de cor para cada interface de saıda ao produzir estatısticas das informacoes

coletadas no plano de dados, como tempo de recuperacao e sobrecarga da PIT. A primeira

encaminha interesses somente para a interface de cor verde (teve o interesse enviado e o

dado correspondente retornado) melhor classificada se disponıvel. Caso contrario, uma

das interfaces de cor amarela (estado da interface desconhecido, ainda nao utilizada) e

selecionada. A segunda segue o mesmo princıpio, entretanto no caso de nao possuir uma

interface de cor verde, inunda todas as interface de cor amarela. As seguintes metricas

sao utilizadas para avaliar o desempenho das estrategias de encaminhamento:

• numero medio de saltos: numero medio de saltos que foram necessarios para

obter o chunk de interesse para cada consumidor, incluindo o caminho percorrido

pelos pacotes de interesse e pelos pacotes de dados;

• tempo de recuperacao medio: tempo decorrido, em milissegundos, a partir do

primeiro interesse enviado ate que o chunk requisitado seja entregue com sucesso;

• numero medio de pacotes de interesse: media da carga de interesses inseridos

na rede;

• numero medio de pacotes de dados: media da carga de dados inseridos na rede.

34

Page 50: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

35

Para efeito de comparacao com as estrategias ja adotadas pelo simulador, os ex-

perimentos sao dividos em funcao do numero de consumidores. Alem disso, testes sao

realizados em diferentes cenarios para avaliar o comportamento das estrategias de enca-

minhamento na presenca de falha de enlaces.

Em todos os experimentos, existem 3 produtores fixos e, com excecao da avaliacao

do numero de consumidores, 20 consumidores selecionados aleatoriamente entre os 72 nos

de borda. Cada consumidor envia 100 interesses por segundo seguindo a distribuicao de

popularidade MandelBrot-Zipf [29] com α = 0,7. O cache dos nos tem capacidade para

armazenar ate 1000 chunks e cada chunk tem tamanho igual a 1024 KB. A Least Recently

Used (LRU) e a polıtica de descarte empregada pelos caches. O limiar de retransmissoes T

para identificacao de um possıvel problema na rede e configurado em 50 tentativas para

a estrategia de encaminhamento proposta. Os demais parametros do simulador foram

mantidos em sua configuracao padrao. Todas as simulacoes tiveram uma duracao de 60 s

e os resultados sao gerados atraves da media de mutliplas rodadas de simulacao, com os

intervalos de confianca calculados, representados por barras verticais, para um nıvel de

confiabilidade de 95%.

5.1 Definicao dos Parametros da Estrategia de Enca-

minhamento Proposta MAB

O primeiro passo e investigar o impacto dos parametros da estrategia de encaminha-

mento proposta no seu desempenho. Primeiramente varia-se o parametro α para verificar

o peso adequado de importancia a ser colocado no historico de recompensas (tempo de re-

cuperacao) coletados ao longo do tempo. Nesse experimento, para efeito de simplificacao,

ajustamos o parametro ε em 0,5, ou seja, e concedida a mesma chance de utilizar somente

o melhor caminho e de explorar caminhos alternativos. Os resultados foram derivados de

20 rodadas de simulacao e representam a media de cada no consumidor.

Pode-se observar na Figura 5.1 que o tempo de recuperacao medio diminui conforme

aumentam-se o valores de α a partir de 0,2. Esse comportamento indica que atribuir

uma importancia maior ao caminho que recuperou um conteudo com menor atraso mais

recentemente proporciona uma adaptacao mais rapida em relacao a disponibilidade dos

conteudos na rede. A Figura 5.2 mostra que, alem de diminuir o tempo de recuperacao

Page 51: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

36

Figura 5.1: Atraso medio por no em fun-

cao de α. Figura 5.2: Desvio Padrao.

medio com maiores valor de α, tambem mantem-se uma maior estabilidade nos caminhos

selecionados. Portanto, assume-se α = 1 na comparacao da estrategia proposta com as

demais estrategias, apresentadas nas secoes seguintes.

Com α = 1, investiga-se o melhor valor para ε. A Figura 5.3 mostra que o tempo de

recuperacao medio diminui conforme ε aumenta, porem o alto nıvel de exploracao diminui

a estabilidade dos caminhos selecionados, como ilustra a Figura 5.4 com o crescimento do

desvio padrao conforme o aumento dos valores de ε.

Como o tempo de recuperacao medio e seu desvio padrao divergiram, analisam-se

tambem o comportamento da quantidade de interesses satisfeitos e do numero de pacotes

de interesses recebidos em media por no da rede. A primeira metrica informa os interesses

agregados na PIT de cada roteador que foram satisfeitos antes de seu temporizador estou-

rar. A segunda informa a agregacao bem sucedida de interesses na PIT. Na Figura 5.5,

pode-se observar que no intervalo [0,2, 0,4] a quantidade media de interesses satisfeitos

aumenta e a carga media de interesses recebidos diminui. Ao se avaliar a razao entre

interesses satisfeitos e interesses recebidos nesse intervalo, ε = 0,4 proporciona o maior

ganho, aproximadamente 63% em relacao a configuracao em que nunca novos caminhos

sao explorados (ε = 0), e uma perda de aproximadamente 14% em relacao a configuracao

com ε = 0,7, mas com uma menor sobrecarga. Logo, para a execucao dos experimentos

sera utilizado ε = 0,4.

Page 52: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

37

Figura 5.3: Atraso medio por no em fun-

cao de ε. Figura 5.4: Desvio Padrao.

Figura 5.5: Media de interesses satisfeitos e interesses recebidos por no.

5.2 Comparacao das Estrategias de Encaminhamento

O objetivo dos proximos resultados e avaliar e comparar o desempenho da estrate-

gia proposta MAB com as estrategias Smart Flooding (SF) e Best Route (BR). Avaliam-se

todas as metricas descritas no inicio deste capıtulo em funcao do numero de consumidores

presentes na rede, que varia de 5 a 50 consumidores. Todos os parametros dos mecanismos

BR e SF sao mantidos do padrao e a MAB com α = 1 e ε = 0,4.

E possıvel observar na Figura 5.7 que a MAB possui um menor tempo de recupera-

Page 53: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

38

Figura 5.6: Media do numero de saltos

por no em funcao da quantidade de con-

sumidores.

Figura 5.7: Atraso medio por no em fun-

cao da quantidade de consumidores.

Figura 5.8: Media da quantidade de pa-

cotes de dados recebidos por no em fun-

cao da quantidade de consumidores

Figura 5.9: Media da quantidade de pa-

cotes de interesse recebidos por no em

funcao da quantidade de consumidores

cao medio comparada a BR e uma curva muito semelhante a SF. Entretanto, as Figuras 5.8

e 5.9 mostram que a carga inserida na rede, tanto de pacotes de interesse e de pacotes de

dados, e menor com a MAB que com ambas as polıticas. Comparada a BR, a MAB reduz

de 44-46% a quantidade de dados recebidos por no, e com a SF de 55-75%. Ja em relacao

aos pacotes de interesse, a MAB reduz de 21-37% comparado ao BR, desconsiderando seu

Page 54: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

39

pico, e cerca de 51-80% quando comparado a SF. Esse comportamento esta associado a

exploracao esporadica de novos caminhos realizada por cada no da rede, fazendo com que

nos vizinhos aumentem a disponibilidade dos conteudos e, consequentemente, diminua a

necessidade dos pacotes serem encaminhados por uma quantidade maior de saltos, o que

pode ser verificado na Figura 5.6.

A segunda avaliacao realizada tem como objetivo verificar como a estrategia pro-

posta MAB se comporta na presenca de falha de enlaces. Por realizar exploracoes espo-

radicas, espera-se que a MAB mantenha aproximadamente as mesmas taxas para cada

metrica na presenca e na ausencia de pequenas falhas na rede em consequencia dos ca-

minhos alternativos encontrados durante as exploracoes. Para realizar a avaliacao, sao

gerados aleatoriamente 20 cenarios de falha diferentes contendo cada um 20 consumido-

res diferentes. Os enlaces foram quebrados em tempos escolhidos de forma aleatoria e

todos proximos aos produtores que se mantiveram fixos para todos os cenarios, forcando

a escolha de outros enlaces apos as falhas.

Figura 5.10: Media da quantidade de

pacotes de dados recebidos por no para

cada cenario.

Figura 5.11: Media da quantidade de pa-

cotes de interesse recebidos por no para

cada cenario.

A Figura 5.13 mostra que o tempo de recuperacao medio com a MAB se mantem

quase que identico aos experimentos anteriores, ficou ligeiramente maior que o da SF.

Acredita-se que essa diferenca seja em razao da forma como os dois mecanismos identificam

possıveis problemas na rede. A polıtica SF realiza essa identificacao pelo uso de pacotes

Page 55: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

40

Figura 5.12: Media do numero de saltos

por no para cada cenario.

Figura 5.13: Atraso medio por no para

cada cenario.

NACK, na qual nos acima na hierarquia comunicam a impossibilidade de encaminhar

o interesse aos nos inferiores com mais rapidez. A MAB realiza essa identificacao ao

perceber que depois de T retransmissoes nenhum pacote de dados chegou em reposta. No

caso dos experimentos, T = 50. Ainda assim, a MAB mantem a baixa carga media por no

de pacotes de interesse, Figura 5.11, e de pacotes de dados, Figura 5.10, comparada a SF

e a BR. Alem disso, e necessario um menor numero de saltos para recuperar os conteudos,

o que mais uma vez enfatiza o aumento da disponibilidade dos conteudos com o uso da

exploracoes.

Page 56: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Capıtulo 6

Conclusao

Esse trabalho teve por objetivo avaliar uma estrategia de encaminhamento para a

arquitetura CCN baseada na tecnica de aprendizado por reforco ε−greedy. Assim sendo,

foi desenvolvida a estrategia denominada MAB (Multi-Armed Bandits). Um no CCN

incorporado com a estrategia proposta deve primeiro classificar suas interfaces de acordo

com o tempo de recuperacao de um dado conteudo. Em seguida, para cada interesse

recebido com um prefixo de nome ja presente na tabela de encaminhamento, o no decide

probabilisticamente se envia o interesse somente pela melhor interface classificada ou se

envia tambem o interesse por outra interface escolhida aleatoriamente. O objetivo e

aprender outras interface que levem a copias de conteudos em nos cada vez mais proximos

e, assim, reduzir o tempo de recuperacao de conteudos.

Alem do desenvolvimento da estrategia, foi realizada a comparacao do seu desem-

penho com duas outras estrategias de encaminhamento: Best Route e Smart Flooding.

A avaliacao considera uma topologia de rede real chamada Rocketfuel e duas abordagens

para analise das metricas, o numero de consumidores e cenarios de falha. Os resultados

mostram que a estrategia proposta e a que proporciona o menor tempo de recuperacao de

conteudos, pois reduz em ate 28% o numero medio de saltos atravessados pelos conteudos

recuperados com sucesso. Tambem conclui-se que a estrategia proposta e robusta contra

falhas de enlace, uma vez que nao aumenta significativamente o tempo de recuperacao de

conteudos e a sobrecarga de controle para detectar uma falha.

41

Page 57: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

42

6.1 Trabalhos Futuros

Algumas avaliacoes nao foram realizadas mas sao bastante interessantes de serem

feitas. E desejado investigar futuramente a influencia do tamanho relativo do cache dado

um catalogo de conteudos fixo, assim como o efeito causado pelo tamanho da PIT na taxa

de entrega de conteudos. Alem disso, deseja-se estudar como os parametros presentes

na estrategia proposta influenciam em achar o no mais “proximo” para conteudos com

diferentes nıveis de popularidade. E interessante tambem analisar os pros e contras da

abordagem de usar um limiar de retransmissoes com a abordagem de um pacote de controle

NACK para deteccao de falhas.

Outras consideracoes importantes a serem estudadas estao relacionadas com a mo-

delagem da simulacao. Prentende-se pesquisar modelos que representem uma forma mais

consistente com a realidade da Internet, como a taxa de geracao de requisicoes por con-

teudos, a distribuicao da popularidade dos conteudos e falhas de enlaces e equipamentos

para que a estrategia proposta possa ser comparada com outras estrategias presentes na

literatura.

Page 58: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

Referencias Bibliograficas

[1] Sandvine, “Global Internet Phenomena Report”. Relatorio tecnico, Sand-

vine, 2014, https://www.sandvine.com/downloads/general/global-internet-

phenomena/2014/1h-2014-global-internet-phenomena-report.pdf.

[2] “Netflix and Youtube Are America’s Biggest Traffic Hogs”. http://www.statista.

com/chart/1620/top-10-traffic-hogs/.

[3] V. Jacobson, D. K. Smetters, J. D. Thornton, M. F. Plass, N. H. Briggs e R. L.

Braynard, “Networking Named Content”, em Proceedings of the 5th international

conference on Emerging networking experiments and technologies, pag. 1–12, ACM,

2009.

[4] C. Yi, A. Afanasyev, L. Wang, B. Zhang e L. Zhang, “Adaptive Forwarding in Named

Data Networking”, ACM SIGCOMM computer communication review, vol. 42, no. 3,

pag. 62–67, 2012.

[5] A. Afanasyev, I. Moiseenko, L. Zhang et al., “ndnSIM: NDN Simulator for NS-3”,

University of California, Los Angeles, Tech. Rep, 2012.

[6] A. Passarella, “A Survey on Content-Centric Technologies for the Current Internet:

CDN and P2P Solutions”, Computer Communications, vol. 35, no. 1, pag. 1–32, 2012.

[7] G. M. de Brito, P. B. Velloso e I. M. Moraes, “Redes Orientadas a Conteudo: Um

Novo Paradigma para a Internet”, Minicursos do Simposio Brasileiro de Redes de

Computadores-SBRC, vol. 2012, pag. 211–264, 2012.

[8] B. Ahlgren, C. Dannewitz, C. Imbrenda, D. Kutscher e B. Ohlman, “A Survey of

Information-Centric Networking”, Communications Magazine, IEEE, vol. 50, no. 7,

pag. 26–36, 2012.

43

Page 59: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

44

[9] R. Chiocchetti, D. Rossi, G. Rossini, G. Carofiglio e D. Perino, “Exploit the Known or

Explore the Unknown?: Hamlet-Like Doubts in ICN”, em Proceedings of the second

edition of the ICN workshop on Information-centric networking, pag. 7–12, ACM,

2012.

[10] L. Wang, A. Hoque, C. Yi, A. Alyyan e B. Zhang, “OSPFn: An OSPF Based Routing

Protocol for Named Data Networking”, University of Memphis and University of

Arizona, Tech. Rep, 2012.

[11] Y. Wang, K. Lee, B. Venkataraman, R. L. Shamanna, I. Rhee e S. Yang, “Adverti-

sing Cached Contents in the Control Plane: Necessity and Feasibility”, em Compu-

ter Communications Workshops (INFOCOM WKSHPS), 2012 IEEE Conference on,

pag. 286–291, IEEE, 2012.

[12] A. Hoque, S. O. Amin, A. Alyyan, B. Zhang, L. Zhang e L. Wang, “NLSR: Named-

Data Link State Routing Protocol”, em Proceedings of the 3rd ACM SIGCOMM

workshop on Information-centric networking, pag. 15–20, ACM, 2013.

[13] F. K. James e W. Keith, “Redes de Computadores e a Internet: uma Abordagem

Top-Down”, 2010.

[14] R. Chiocchetti, D. Perino, G. Carofiglio, D. Rossi e G. Rossini,“INFORM: A Dynamic

Interest Forwarding Mechanism for Information Centric Networking”, em Proceedings

of the 3rd ACM SIGCOMM workshop on Information-centric networking, pag. 9–14,

ACM, 2013.

[15] G. Rossini e D. Rossi, “Evaluating CCN Multi-Path Interest Forwarding Strategies”,

Computer Communications, vol. 36, no. 7, pag. 771–778, 2013.

[16] “Content Routing Using Internet Routing Protocols: Can it scale? IETF-82, ICNRG

BAR BOF, Novembro 2011”. http://trac.tools.ietf.org/group/irtf/trac/

wiki/icnrg.

[17] B. Baccala, “Data-Oriented Networking”, 2002. Internet draft, IETF, https:

//tools.ietf.org/html/draft-baccala-data-networking-00.

Page 60: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

45

[18] P. Rodriguez, S.-M. Tan e C. Gkantsidis, “On the Feasibility of Commercial, Legal

P2P Content Distribution”, ACM SIGCOMM Computer Communication Review,

vol. 36, no. 1, pag. 75–78, 2006.

[19] I. Cisco, “Cisco visual Networking Index: Forecast and Methodology,

2013–2018”, CISCO White paper, 2014. http://www.cisco.com/c/en/us/

solutions/collateral/service-provider/ip-ngn-ip-next-generation-

network/white_paper_c11-481360.pdf.

[20] A. Ghodsi, S. Shenker, T. Koponen, A. Singla, B. Raghavan e J. Wilcox,

“Information-Centric Networking: Seeing the Forest for the Trees”, em Proceedings

of the 10th ACM Workshop on Hot Topics in Networks, p. 1, ACM, 2011.

[21] “UCLA-led consortium to focus on developing a new architecture for the Inter-

net”. http://newsroom.ucla.edu/releases/ucla-led-consortium-to-focus-

on-developing-a-new-architecture-for-the-internet.

[22] I. Ribeiro, F. Q. Guimaraes, J. F. Kazienko, A. Rocha, P. Velloso, I. Moraes e

C. Albuquerque, “Seguranca em Redes Centradas em Conteudo: Vulnerabilidades,

Ataques e Contramedidas”, Minicursos do XII Simposio Brasileiro em Seguranca da

Informacao e de Sistemas Computacionais SBSeg 2012, pag. 151–195, 2012.

[23] A. G. Barto, Reinforcement learning: An introduction. MIT press, 1998.

[24] “NS-3 Simulator”, 2014. http://www.nsnam.org/.

[25] N. Spring, R. Mahajan e D. Wetherall, “Measuring ISP Topologies with Rocketfuel”,

em ACM SIGCOMM Computer Communication Review, vol. 32, pag. 133–145, ACM,

2002.

[26] G. ZIPF, Relative Frequency as a Determinant of Phonetic Change. (Reprinted from

the Harvard Studies in Classical Philology.). 1929.

[27] C. R. Cunha, A. Bestavros e M. E. Crovella, “Characteristics of www Client-Based

Traces”, relatorio tecnico, Boston University Computer Science Department, 1995.

[28] B. A. Huberman, P. L. Pirolli, J. E. Pitkow e R. M. Lukose, “Strong Regularities in

World Wide Web Surfing”, Science, vol. 280, no. 5360, pag. 95–97, 1998.

Page 61: Ian Vilar Bastos, Victor Costa Macedo Sousaapp.uff.br/riuff/bitstream/1/1778/1/monografia-ian-victor.pdf · B327 Bastos, Ian Vilar Encaminhamento de pacotes em redes orientadas a

46

[29] Z. Silagadze, “Citations and the Zipf-Mandelbrot’s Law”, arXiv preprint phy-

sics/9901035, 1999.