ARQUITETURA DE REDES DE COMPUTADORES Prof Jos Augusto

  • Slides: 51
Download presentation
ARQUITETURA DE REDES DE COMPUTADORES Prof. José Augusto Suruagy Monteiro suruagy@cin. ufpe. br

ARQUITETURA DE REDES DE COMPUTADORES Prof. José Augusto Suruagy Monteiro [email protected] ufpe. br

2 A Internet Arquitetura de Redes de Computadores (2013. 1)

2 A Internet Arquitetura de Redes de Computadores (2013. 1)

Internet: Origens 3 ARPAnet (1969): motivada pelo compartilhamento de recursos computacionais. Grupo limitado de

Internet: Origens 3 ARPAnet (1969): motivada pelo compartilhamento de recursos computacionais. Grupo limitado de usuários: laboratórios que desenvolviam pesquisas de interesse da ARPA. Rede robusta e relativamente confiável. Usuários: pesquisadores e não o público em geral. Arquitetura de Redes de Computadores (2013. 1)

Internet: Anos 70 4 Interconexão de redes com diferentes tecnologias (algumas proprietárias): � Rede

Internet: Anos 70 4 Interconexão de redes com diferentes tecnologias (algumas proprietárias): � Rede ALOHA � Ethernet � Arquiteturas proprietárias: DECnet, SNA, XNA � Definição da arquitetura para a interconexão de redes levou ao IP e, posteriormente, ao TCP Arquitetura de Redes de Computadores (2013. 1)

Internet: Anos 80 5 Implantação do TCP/IP Surgimento de novos aplicativos/serviços/protocolos: � SMTP para

Internet: Anos 80 5 Implantação do TCP/IP Surgimento de novos aplicativos/serviços/protocolos: � SMTP para correio eletrônico � DNS para tradução de nomes para endereços IP � Definição do Protocolo FTP Novas redes “nacionais”: � CSnet, BITnet, NSFnet, Minitel. Arquitetura de Redes de Computadores (2013. 1)

Internet: Anos 90 6 Surgimento da Web: � HTML, HTTP: Berners-Lee � Surgimentos dos

Internet: Anos 90 6 Surgimento da Web: � HTML, HTTP: Berners-Lee � Surgimentos dos navegadores Comercialização da Web (explosão do número de usuários) Novas aplicações: � Mensagens instantâneas � Compartilhamento de arquivos P 2 P Novos problemas: � Segurança � Direitos autorais Arquitetura de Redes de Computadores (2013. 1)

Internet: Anos 00 7 Multimídia (voz e vídeo) sobre IP Compartilhamento de vídeos, jogos

Internet: Anos 00 7 Multimídia (voz e vídeo) sobre IP Compartilhamento de vídeos, jogos Proliferação de redes sem fio: � Wi-Fi, redes celulares � Smartphones Web 2. 0 Redes Sociais Computação na nuvem Arquitetura de Redes de Computadores (2013. 1)

Internet: Anos 10 8 Virtualização Redes definidas por software (SDN – Software Defined Networking)

Internet: Anos 10 8 Virtualização Redes definidas por software (SDN – Software Defined Networking) Redes para experimentação (testbeds) Internet das Coisas (Io. T – Internet of Things) Redes Verdes ? Arquitetura de Redes de Computadores (2013. 1)

A Internet “Hoje” 9 1ª Revolução: “Longo Alvorecer” da Idade da Informação [Newman, 2007]

A Internet “Hoje” 9 1ª Revolução: “Longo Alvorecer” da Idade da Informação [Newman, 2007] � 2, 3 B Usuários da Internet (12/11); 300 M com Banda Larga (7/07) http: //internetworldstats. com � Surgimento da Web 2. 0: Bilhões de páginas Web, conteúdo rico, aplicações embutidas � Sinais da Web 3. 0: informação ubíqua, com conteúdo rico e streams persistentes Arquitetura de Redes de Computadores (2013. 1)

A Internet “Hoje” 10 r Locomotivas da 2ª Revolução [Newman, 2007]: Aplicações científicas com

A Internet “Hoje” 10 r Locomotivas da 2ª Revolução [Newman, 2007]: Aplicações científicas com grande quantidade de dados r r Física Nuclear e de Alta Energia, Astrofísica: Transferência de blocos de dados de Tbyte a Pbyte a 1 -10+ Gbps e. VLBI: Muitos fluxos de dados em tempo real a 1 -10 Gbps Bioinformática, Imagens Clínicas: imagens de GByte sob demanda Energia de Fusão: distribuição de dados em blocos em tempo crítico; Simulações, visualização e análise distribuída de plasma. u Desafio: Aproveitar os recursos globais de computação, armazenamento e Rede, para permitir que a comunidade global Arquitetura de Redes de Computadores (2013. 1) trabalhe colaborativamente a grandes distâncias

Internet: Requisitos Atuais 11 Mobilidade Variedade de tecnologias de acesso Computação em nuvem Aplicações

Internet: Requisitos Atuais 11 Mobilidade Variedade de tecnologias de acesso Computação em nuvem Aplicações industriais Aplicações médicas Aplicações pessoais Redes domésticas Entretenimento Etc. Arquitetura de Redes de Computadores (2013. 1)

12 Open. Flow/Software Defined Network (SDN) Virtualização dos Equipamentos de Redes www. openflow. org

12 Open. Flow/Software Defined Network (SDN) Virtualização dos Equipamentos de Redes www. openflow. org Arquitetura de Redes de Computadores (2013. 1)

Roteadores atuais 13 Roteador Software de Controle Datapath em Hardware Milhões de linhas 5389

Roteadores atuais 13 Roteador Software de Controle Datapath em Hardware Milhões de linhas 5389 RFCs Barreira para novos de código fonte fabricantes 500 M portas 10 Gbytes RAM Inchado Grande consumo de energia Muitas funções complexas integradas na infraestrutura OSPF, BGP, multicast, serviços diferenciados, Engenharia de Tráfego, NAT, firewalls, MPLS, camadas redundante Arquitetura de Redes de Computadores (2013. 1)

Passo 1: Separar a inteligência do datapath 14 Operadores, usuários, desevolvedores, pesquisadores, … Nova

Passo 1: Separar a inteligência do datapath 14 Operadores, usuários, desevolvedores, pesquisadores, … Nova função! Arquitetura de Redes de Computadores (2013. 1)

Passo 2: Armazena as decisões em tabelas mínimas de fluxo 15 “If header =

Passo 2: Armazena as decisões em tabelas mínimas de fluxo 15 “If header = x, send to port 4” “If header = y, overwrite header with z, send to ports 5, 6” “If header = ? , send to me” Tabel a de Fluxo s Arquitetura de Redes de Computadores (2013. 1)

16 Controlador Open. Flow Protocolo Open. Flow (SSL) Caminho de controle Open. Flow Caminho

16 Controlador Open. Flow Protocolo Open. Flow (SSL) Caminho de controle Open. Flow Caminho de Dados (Hardware) Arquitetura de Redes de Computadores (2013. 1)

Virtualizando o Switch Open. Flow 17 Controlador A Controlador B VLANs do Pesquisador A

Virtualizando o Switch Open. Flow 17 Controlador A Controlador B VLANs do Pesquisador A VLANs do Pesquisador B Tabela de Fluxos Controladorr C Tabela de Fluxos VLANs do Pesquisador C Tabela de Fluxos VLANs de Produção Processamento Normal L 2/L 3 Arquitetura de Redes de Computadores (2013. 1)

Virtualizando o Open. Flow 18 Controlador de Heidi de Craig Controlador De Aaron Protocol

Virtualizando o Open. Flow 18 Controlador de Heidi de Craig Controlador De Aaron Protocol o Open. Flow. Visor & Controle de Políticas Open. Flow Switch Protocolo Open. Flow Switch Arquitetura de Redes de Computadores (2013. 1)

Apl Apl Apl 19 Windows (OS) (SO) Linux Mac SO OS OS Mac Virtualização

Apl Apl Apl 19 Windows (OS) (SO) Linux Mac SO OS OS Mac Virtualização x 86 (Computador) Controller 11 Controlado Controller r 1 Controller Controlador 2 22 Virtualização (Flow. Visor) Open. Flow Substrato de hardware simples, comum, estável + Programabilidade + Modelo de isolamento forte + Competição acima Inovação mais rápida Arquitetura de Redes de Computadores (2013. 1)

Open Networking Foundation 20 Arquitetura de Redes de Computadores (2013. 1)

Open Networking Foundation 20 Arquitetura de Redes de Computadores (2013. 1)

Open Networking Foundation 21 http: //www. opennetworking. org/ Empresas membro: Arquitetura de Redes de

Open Networking Foundation 21 http: //www. opennetworking. org/ Empresas membro: Arquitetura de Redes de Computadores (2013. 1)

22 Software Defined Network (SDN) e Open. Flow Arquitetura de Redes de Computadores (2013.

22 Software Defined Network (SDN) e Open. Flow Arquitetura de Redes de Computadores (2013. 1)

Open. Flow @ Google 23 Arquitetura de Redes de Computadores (2013. 1)

Open. Flow @ Google 23 Arquitetura de Redes de Computadores (2013. 1)

Anúncio da Extreme 24 Arquitetura de Redes de Computadores (2013. 1)

Anúncio da Extreme 24 Arquitetura de Redes de Computadores (2013. 1)

25 Aquisição da Nicira pela VMware Arquitetura de Redes de Computadores (2013. 1)

25 Aquisição da Nicira pela VMware Arquitetura de Redes de Computadores (2013. 1)

26 Arquitetura da Internet Arquitetura de Redes de Computadores (2013. 1)

26 Arquitetura da Internet Arquitetura de Redes de Computadores (2013. 1)

27 Princípios da Arquitetura da Internet Conectividade Robustez Heterogeneidade Gerenciamento Custo Acessibilidade Responsabilização Arquitetura

27 Princípios da Arquitetura da Internet Conectividade Robustez Heterogeneidade Gerenciamento Custo Acessibilidade Responsabilização Arquitetura de Redes de Computadores (2013. 1)

28 Evolução através de “Remendos” Criação de subredes, sistemas autônomos e DNS CIDR –

28 Evolução através de “Remendos” Criação de subredes, sistemas autônomos e DNS CIDR – Classless Inter. Domain Routing Controle de Congestionamento no TCP Multicast IP IPv 6 NAT – Network Address Translation IPSec – IP Security IP Móvel Intserv e Diffserv (Serviços Integrados e Diferenciados) Caches Firewalls Arquitetura de Redes de Computadores (2013. 1)

Funcionalidades sob pressão 29 Processamento/manipulação dos dados Armazenamento dos dados Transmissão dos dados Controle

Funcionalidades sob pressão 29 Processamento/manipulação dos dados Armazenamento dos dados Transmissão dos dados Controle de processamento, armazenamento, transmissão de sistemas e funções Arquitetura de Redes de Computadores (2013. 1)

Problemas 30 Complexidade nas aplicações Novas aplicações com requisitos incompatíveis com a arquitetura atual

Problemas 30 Complexidade nas aplicações Novas aplicações com requisitos incompatíveis com a arquitetura atual Endereçamento: semântica sobrecarregada – localização e identificação Mobilidade Segurança Confiabilidade da rede e disponibilidade dos serviços Diagnóstico de problemas e gerenciamento da rede Qualidade de serviço Escalabilidade Modelo econômico e liberdade de inovação Arquitetura de Redes de Computadores (2013. 1)

31 Internet do Futuro Arquitetura de Redes de Computadores (2013. 1)

31 Internet do Futuro Arquitetura de Redes de Computadores (2013. 1)

Abordagem Radical 32 Baseado em slides de Scott Shenker (FCRC) Radical = não incremental

Abordagem Radical 32 Baseado em slides de Scott Shenker (FCRC) Radical = não incremental (Clean Slate) Projetos obtidos a partir da pergunta: “O que faríamos se pudéssemos reprojetar a Internet do zero? ” Questões: � Por que devemos considerar projetos radicais? � Quais são algumas destas idéias radicais? � Como podemos testar projetos radicais? Arquitetura de Redes de Computadores (2013. 1)

Três afirmações óbvias 33 Vivemos hoje num mundo conectado � Conectar é tão importante

Três afirmações óbvias 33 Vivemos hoje num mundo conectado � Conectar é tão importante quanto computar A Internet é um dos grandes triunfos da pesquisa �O projeto original foi produto de pesquisa e não da indústria A Internet é uma vítima do seu próprio sucesso � Alterou os padrões pelos quais é julgada. . . Arquitetura de Redes de Computadores (2013. 1)

34 Mudando o Contexto e as Expectativas A arquitetura da Internet foi um sucesso

34 Mudando o Contexto e as Expectativas A arquitetura da Internet foi um sucesso absoluto � � � Levou a requisitos não alcançados pela arquitetura original � � Cresceu muitas ordens de grandeza em dimensão e velocidade Acomodou uma diversidade de usos e tecnologias Mudou o contexto no qual opera Estes novos requisitos impõem profundos desafios intelectuais Não se trata de “remendar”, mas “como projetar do zero”. Compreender requer repensar o paradigma básico � Lidar pode (não) necessitar de mudanças arquiteturais Arquitetura de Redes de Computadores (2013. 1) significativas

35 Ambiente: Confiável Não confiável Requer uma Internet muito mais segura �O que entendemos

35 Ambiente: Confiável Não confiável Requer uma Internet muito mais segura �O que entendemos por segurança � Que aspectos são de responsabilidade da rede? Grandes desafios de projeto � Resiliência a ataques externos de grande escala (DDo. S) � Resiliência a roteadores comprometidos � Fácil autenticação de dados � Forense e auditoria � Prover tanto responsabilidade como privacidade �. . . Arquitetura de Redes de Computadores (2013. 1)

36 Usuários: Pesquisadores Usuários Os usuários demandam alta disponibilidade �O serviço quase nunca deveria

36 Usuários: Pesquisadores Usuários Os usuários demandam alta disponibilidade �O serviço quase nunca deveria ser interrompido A Internet foi projetada para grandes propriedades de recuperação � Recuperação de falhas graves Como a Internet pode prover disponibilidade de 5 9´s (99, 999%)? �. . . e fazer isto de forma econômica � A Internet hoje está na casa de 2 -3 9´s (99 a 99, 9%) Arquitetura de Redes de Computadores (2013. 1)

37 Operadores: Sem fins lucrativos Comercial Os operadores devem ser capazes de gerenciar suas

37 Operadores: Sem fins lucrativos Comercial Os operadores devem ser capazes de gerenciar suas redes � Configuração � Identificação de problemas � Caixas intermediárias (proxies, firewalls, NATs, etc. ) � Política (roteamento, controle de acesso) Quais são as abstrações corretas para o gerenciamento? � Quais os mecanismos que dá melhor suporte? Arquitetura de Redes de Computadores (2013. 1)

38 Uso: Orientação a host Orientada a dados A Internet foi projetada em torno

38 Uso: Orientação a host Orientada a dados A Internet foi projetada em torno de um modelo orientado ao host (sistema final) � O uso atual é mais voltado para os dados � � O usuário quer acessar dados ou serviços particulares Não se importa onde o serviço esteja localizado Desencontro hoje tratado por mecanismos ad hoc � O usuário diz ao cliente para contatar outro host (telnet, ftp) Akamai, P 2 P Quais são as abstrações corretas para uma Internet orientada a dados? Arquitetura de Redes de Computadores (2013. 1)

39 Conectividade: IP E 2 E X intermitente A arquitetura assume uma conectividade IP

39 Conectividade: IP E 2 E X intermitente A arquitetura assume uma conectividade IP fim a fim Em algumas configurações específicas, cada enlace é intermitente e uma conectividade fim a fim é rara � Espaço, submarino, economias em desenvolvimento � Levou a “redes tolerantes a atrasos” (DTN) De um modo geral quer isolar as aplicações dos detalhes da rede � Comunicação oportunista e dependente do contexto Qual é a API adequada para permitir esta generalização? Arquitetura de Redes de Computadores (2013. 1)

40 Redes para Experimentação (Testbeds) Usável por muitos experimentos simultaneamente Facilmente programável Pode realizar

40 Redes para Experimentação (Testbeds) Usável por muitos experimentos simultaneamente Facilmente programável Pode realizar experimentos em qualquer nível (do ótico até o de aplicações) Usuários podem se conectar mesmo de localizações remotas Escala razoavelmente grande Arquitetura de Redes de Computadores (2013. 1)

41 (Algumas) Redes para Experimentação no Mundo GENI (Estados Unidos) FIRE (Europa) AKARI (Japão)

41 (Algumas) Redes para Experimentação no Mundo GENI (Estados Unidos) FIRE (Europa) AKARI (Japão) FIBRE (Brasil e Europa) Arquitetura de Redes de Computadores (2013. 1)

42 Arquitetura de Redes de Computadores (2013. 1)

42 Arquitetura de Redes de Computadores (2013. 1)

Princípios Fundamentais 43 Motivação: identificar um pequeno número de princípios que possam levar a

Princípios Fundamentais 43 Motivação: identificar um pequeno número de princípios que possam levar a uma teoria unificada de redes! A diferença principal entre a Ciência da Computação e outros campos científicos é que: “Nós construímos aquilo que medimos”! Hipótese: � Princípios são independentes das implementações O Futuro da Internet (2012. 2)

O que é uma boa arquitetura? 44 Definição comum de dicionário: � Um conjunto

O que é uma boa arquitetura? 44 Definição comum de dicionário: � Um conjunto de regras e restrições que caracterizam um estilo particular de construção Houaiss (4ª. Definição): � Conjunto de princípios, normas, materiais e técnicas usadas para criar o espaço arquitetônico O Futuro da Internet (2012. 2)

45 Projeto e Especificação da Arquitetura da Rede Níveis de abstração: � Modelo �

45 Projeto e Especificação da Arquitetura da Rede Níveis de abstração: � Modelo � Serviço � Protocolo e interface � Implementação. O Futuro da Internet (2012. 2)

46 Propostas de Novas Arquitetura de Redes de Computadores (2013. 1)

46 Propostas de Novas Arquitetura de Redes de Computadores (2013. 1)

Arquiteturas Puristas 47 Redes Ativas Arquitetura Baseada em Papeis (RBA) Arquitetura Orientada a Dados

Arquiteturas Puristas 47 Redes Ativas Arquitetura Baseada em Papeis (RBA) Arquitetura Orientada a Dados (DONA) Redes Virtuais Espontâneas (Spo. VNet) Arquitetura Inter. Redes Recursiva – RINA Arquitetura de Redes de Computadores (2013. 1)

Arquiteturas Pluralistas 48 Plutarch Redes Autonômicas (ANA) Concurrent Architectures are Better than One (CABO)

Arquiteturas Pluralistas 48 Plutarch Redes Autonômicas (ANA) Concurrent Architectures are Better than One (CABO) Horizon Arquitetura de Redes de Computadores (2013. 1)

49 Arquiteturas que resolvem problemas específicos Infraestrutura de Indireção para a Internet (I 3)

49 Arquiteturas que resolvem problemas específicos Infraestrutura de Indireção para a Internet (I 3) Loc/ID split: LISP – Locator/Identifier Separation Protocol Arquitetura de Nomeação em Camadas Endereços Roteáveis e Alcançáveis (GDA/GRA) New Internet Routing Architecture (NIRA) Cache-a. Nd-Forward (CNF) Routing on Flat Labels (ROFL) e. Xplicit Control Protocol (XCP) Plano de Conhecimento Suporte a Qo. S através de Redes Sobrepostas (Over. Qo. S) Arquitetura de Redes de Computadores (2013. 1)

50 A Disciplina Arquitetura de Redes de Computadores (2013. 1)

50 A Disciplina Arquitetura de Redes de Computadores (2013. 1)

Organização da Disciplina 51 Princípios de Arquiteturas de Redes de Computadores (fundamentos e implementações

Organização da Disciplina 51 Princípios de Arquiteturas de Redes de Computadores (fundamentos e implementações existentes) Arquitetura Inter. Redes Recursiva – RINA � baseada em IPC – Inter. Process Communication Outras Arquiteturas Propostas Virtualização de Redes Definidas por Software (SDN – Software Defined Networks) e Open. Flow Redes para Experimentação Arquitetura de Redes de Computadores (2013. 1)