SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
Núcleo de Estudos em Redes Definidas por Software
Em Direção às Redes Programáveis
na Internet do Futuro
Prof. Magnos Martinello
Universidade Federal do Espírito Santo - UFES
Centro Tecnológico - CT
Departamento de Informática - DI
Laboratório de Pesquisas em Redes e Multimidia –
LPRM
Núcleo de Estudos em Redes Definidas por Software -
NERDS
2Núcleo de Estudos em Redes Definidas por Software
Agenda
●
Redes Definidas por Sofware (SDN) (30 min.)
●
Desafios para Inovação em Redes
●
Fundamentos
●
Visão geral do OpenFlow
●
Aplicações em SDN (15 min.)
●
Redes de DataCenter Programáveis
●
Roteamento
Núcleo de Estudos em Redes Definidas por Software
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
A
p
p
A
p
p
A
p
p
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
Operating
System
Operating
System
Operating
System
Operating
System
Operating
System
A
pp
A
pp
A
pp
3
Fechada
Internet atual
Fechada para Inovações na Infraestrutura
Núcleo de Estudos em Redes Definidas por Software
Milhões de
linhas de
código fonte
5400 RFCs
Barreira para entrar
Bilhões de Portas
Lógicas - ASIC
Muitas funções complexas desperdiçadas na
infraestrutura
OSPF, BGP, multicast, differentiated services,
Traffic Engineering, NAT, firewalls, MPLS, …
Rede Engessada “Ossificada”
Specialized
Packet
Forwarding
Hardware
Operating
System
Feature Feature
4
Núcleo de Estudos em Redes Definidas por Software
Estagnação na Inovação
●
Inovação em redes tem sido inferior à
outras áreas
●
Há inovação implantada em outras áreas
– OS: filesystems, schedulers, virtualização
– DS: DHTs, CDNs, MapReduce
●
Redes são basicamente as mesmas
– Ethernet, IP, WiFi
5
Núcleo de Estudos em Redes Definidas por Software
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
A
p
p
A
p
p
A
p
p
Specialized
Packet
Forwarding
Hardware
A
pp
A
pp
A
pp
Specialized
Packet
Forwarding
Hardware
Operating
System
Operating
System
Operating
System
Operating
System
Operating
System
A
pp
A
pp
A
pp
Network Operating System
App App App
Abrindo caixas fechadas
6
Núcleo de Estudos em Redes Definidas por Software
App
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
App App
Simple Packet
Forwarding
Hardware Simple Packet
Forwarding
Hardware
Network Operating System
1. Interface aberta para
o hardware
3. Uma API aberta e bem-definida 2. Ao menos um bom
Sistema Operacional extensível,
Preferencialmente de código aberto
Redes Definidas por Software
7
8Núcleo de Estudos em Redes Definidas por Software
Agenda
●
Redes Definidas por Sofware (SDN) (30 min.)
●
Desafios para Inovação em Redes
●
Fundamentos
●
Visão geral do OpenFlow
●
Aplicações em SDN (10 min.)
●
Redes de DataCenter
●
Roteamento
Núcleo de Estudos em Redes Definidas por Software
Créditos
●
Nick McKeown's SDN slides
– http://www.openflow.org/downloads/NickTalk_OFELIA_Feb2011
.ppt
●
Scott Shenker's talk on the “The Future of
Networking, and the Past of Protocols”
– http://www.slideshare.net/martin_casado/sdn-abstractions
●
Trabalhos dos Alunos da UFES:
●
Mestrado: Ramon Ramos
●
Doutorado: Gilmar Luiz Vassoler
Núcleo de Estudos em Redes Definidas por Software
Software-Defined Networking (SDN)
• Não é apenas um sonho acadêmico
• Muito mais do que a onda do “OpenFlow”
- Um novo paradigma no plano de controle das redes
• A primeira parte dessa apresentação trata SDN a
partir dos princípios
- Foco nas abstrações chaves para o controle da rede
• Papel das abstrações em redes
Núcleo de Estudos em Redes Definidas por Software
Fundações Intelectuais Fracas
•Redes atualmente construídas em fundações fracas
-Falta de abstrações fundamentais;
•Cursos de Redes ensinam um grande pacote de
protocolos ;
•Cursos de Sistema Operacionais ensinam princípios
fundamentais
-Exclusão mútua, princípios de sincronização;
-Arquivos, threads e outros blocos;
Núcleo de Estudos em Redes Definidas por Software
Por que as fundações são fracas ?
●
Redes projetadas para serem simples
- Básico Ethernet/IP é simples e gerenciável
• Novos requisitos de controle tem trazido complexidade
- ACLs, VLANs, DPI,…
• Apesar disso a infraestructura ainda funciona ...
- Somente por causa da nossa grande habilidade de dominar
a complexidade
• Tal habilidade é uma benção e uma maldição
Núcleo de Estudos em Redes Definidas por Software
Pontos de Vista
• A habilidade de dominar a complexidade não é a
mesma que a habilidade de extrair simplicidade
- Quando o sistema funciona, o foco está na primeira
- Quando o sistema é facil de usar, o foco está na
segunda
• De acordo com alguns pesquisadores:
- Redes nunca fez a transição !
Núcleo de Estudos em Redes Definidas por Software
Como a Programação fez a transição ?
• Linguagens de máquina : nenhuma abstração
- Tinha que tratar com detalhes de baixo nível
• Linguagens de mais alto nível : OS e outras abstrações
- Sistema de arquivo, memória virtual, tipos abstratos de dados, ...
• Linguagens modernas : ainda mais abstrações
- Orientação ao objeto, garbage collection,...
Abstrações simplificam a programação
Mais simples escrever, manter, pensar sobre programas
Núcleo de Estudos em Redes Definidas por Software
Camadas em Redes são a principal abstração
• Camadas provêem abstrações de serviço para o
plano de dados
- Camada de Rede (IP) provê um serviço de melhor esforço
- Camada de Transporte (TCP) provê um serviço de
entrega confiável de fluxo de bytes
• Não há abstrações para o plano de controle
- Não há um bloco de construção (building block)
sofisticado para controle/gerência
Núcleo de Estudos em Redes Definidas por Software
Abstrações Precisam Separar 3 Problemas
• Modelo de Encaminhamento (forwarding)
• Distribuição do Estado
• Configuração Detalhada
Núcleo de Estudos em Redes Definidas por Software
Abstração de Encaminhamento
• Plano de Controle precisa de um modelo de
encaminhamento flexível
- Comportamento especificado pelo programa de controle
• Isto abstrai o hardware de encaminhamento
- Crucial para evoluir além das soluções específicas dos fabricantes
(vendor-specific solutions)
• Flexibilidade e neutralidade do fabricante são valiosos
• Possibilidades:
- Programa geral na arquitetura x86, MPLS, OpenFlow,…..
- Diferentes compromissos flexibilidades/desempenho/implantação
Núcleo de Estudos em Redes Definidas por Software
Abstração da Distribuição de Estado
Abstração Proposta : visão centralizada da rede
• Programa de Controle não precisa tratar com
caprichos do estado distribuído
- Complicado, fonte de muitos erros
- Abstração deve esconder disseminação/coleção dos
estados
• Programa de Controle opera na visão da rede
- Entrada: visão centralizada da rede (grafo)
- Saída: configuração de cada dispositivo de rede
Núcleo de Estudos em Redes Definidas por Software
Sistema Operacional de Redes (NOS)
• NOS: sistema distribuído que cria uma visão da rede
- Roda nos servidores (controladores)
• Comunica-se com elementos de encaminhamento de rede
- Obtém informação do estado a partir dos elementos de encaminhamento
- Comunica as diretivas de controle para os elementos de encaminhamento
usando a abstração de encaminhamento
• Programa de Controle opera na visão da rede
- Programa de Controle não é um sistema distribuído
• NOS + Abstração de Encaminhamento = SDN (v1)
Núcleo de Estudos em Redes Definidas por Software
Global Network View
Protocols Protocols
Control Program
Network Operating System
Software-Defined Networking (v1)
Control via
forwarding
interface
Núcleo de Estudos em Redes Definidas por Software
Separação Clara das Preocupações
• Programa de Controle de Rede : especifica o
comportamento desejado na visão abstrata de redes
- Programa de Controle : mapea comportamento na visão
abstrata
• Virtualizador de rede: mapea o controle expresso na
visão abstrata em uma configuração
- Nypervisor: modelo abstrato da visão global
• NOS : distribui a configuração para os comutadores
físicos
- NOS: visão global dos comutadores físicos
24Núcleo de Estudos em Redes Definidas por Software
Agenda
●
Redes Definidas por Sofware (SDN) (30 min.)
●
Fundamentos
●
Desafios para Inovação em Redes
●
Visão geral do OpenFlow
●
Aplicações em SDN (30 min.)
●
Redes de DataCenter
●
Roteamento
Núcleo de Estudos em Redes Definidas por Software
O que é OpenFlow ?
• OF é uma API
– Permite controlar como pacotes são
encaminhados (e manipulados)
• Implementável em hardware de
prateleira (COTS)
• Permite implantar redes programáveis
– Não apenas redes configuráveis
– Independentes do fabricante (Vendor-
independent)
Núcleo de Estudos em Redes Definidas por Software
Objetivos do OpenFlow (OF)
• Pespectiva do experimentador
– Validar seus experimentos em hardware
com tráfego real (at full line speed)
●
Perspectiva da indústria
– Reduzir custos nos equipamentos através
da comoditização e competição nos
controladores e no espaço das aplicações
– Desenvolvimento de novas funções e
protocolos (customizados)
Núcleo de Estudos em Redes Definidas por Software
Ethernet Switch
27
Como funciona o OF ?
Núcleo de Estudos em Redes Definidas por Software
Data Path (Hardware)Data Path (Hardware)
ControlControl
PathPath
Control Path (Software)Control Path (Software)
28
Como funciona o OF ?
Núcleo de Estudos em Redes Definidas por Software
Data Path (Hardware)Data Path (Hardware)
ControlControl
PathPath
OpenFlowOpenFlow
OpenFlowOpenFlow
ControllerController
OpenFlow Protocol (SSL/TCP)
29
Núcleo de Estudos em Redes Definidas por Software
Controller
PC
Hardware
Layer
Software
Layer
Flow Table
MAC
src
MAC
dst
IP
Src
IP
Dst
TCP
sport
TCP
dport
Action
OpenFlow Client
**5.6.7.8*** port 1
port 4port 3port 2port 1
1.2.3.45.6.7.8
OpenFlowExample
30
Núcleo de Estudos em Redes Definidas por Software
OpenFlow Basics
Flow Table Entries
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
L4
sport
L4
dport
Rule Action Stats
1. Forward packet to zero or more ports
2. Encapsulate and forward to controller
3. Send to normal processing pipeline
4. Modify Fields
5. Any extensions you add!
+ mask what fields to match
Packet + byte counters
31
VLAN
pcp
IP
ToS
Núcleo de Estudos em Redes Definidas por Software
Exemplos
Switching
*
Switc
h
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* 00:1f:.. * * * * * * * port6
Flow Switching
port3
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
00:20.. 00:1f.. 0800 vlan11.2.3.4 5.6.7.8 4 1726 80 port6
Firewall
*
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* * * * * * * * 22 drop
32
33Núcleo de Estudos em Redes Definidas por Software
Agenda
●
Redes Definidas por Sofware (SDN) (30 min.)
●
Fundamentos
●
Desafios para Inovação em Redes
●
Visão geral do OpenFlow
●
Aplicações em SDN (15 min.)
●
Redes de DataCenter
●
Roteamento
Núcleo de Estudos em Redes Definidas por Software
Visão típica de um datacenter
Núcleo de Estudos em Redes Definidas por Software
Network-Centric
Datacenter
Núcleo de Estudos em Redes Definidas por Software
Server-Centric DataCenter
Network
Optical Cross-Braced
Hypercube
[3] H. Cui, D. Rasooly, M. R. N. Ribeiro, and L. Kazovsky, “Optically Cross-Braced
Hypercube : a Reconfigurable Physical Layer for Interconnects and Server-Centric 
Datacenters,” in OFC, 2012, vol. 1.
Our setup
Our setup
Núcleo de Estudos em Redes Definidas por Software
Perspectiva de Trabalhos e
Projetos
●
DataCenter Centrado em Servidores com
Roteamento em múltiplos caminhos
●
NFV (Funções de Redes Virtualizadas)
●
Projeto FUTEBOL: Federated Union of
Telecommunications Research Facilities
for an EU-Brasil Open Laboratory
KeyFlow: SDN in Core
Networks

Más contenido relacionado

La actualidad más candente

Aula 03 - Analisando objetivos técnicos - Projeto de Redes de Computadores
Aula 03 - Analisando objetivos técnicos - Projeto de Redes de ComputadoresAula 03 - Analisando objetivos técnicos - Projeto de Redes de Computadores
Aula 03 - Analisando objetivos técnicos - Projeto de Redes de ComputadoresDalton Martins
 
Aula 08 - Revisão - Projeto de Redes de Computadores
Aula 08 - Revisão - Projeto de Redes de ComputadoresAula 08 - Revisão - Projeto de Redes de Computadores
Aula 08 - Revisão - Projeto de Redes de ComputadoresDalton Martins
 
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de ComputadoresAula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de ComputadoresDalton Martins
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de RedesFrederico Madeira
 
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Dalton Martins
 
Trabalho - Projeto redes
Trabalho - Projeto redesTrabalho - Projeto redes
Trabalho - Projeto redesValdir Junior
 
Projetos Estruturados de Redes - Parte 4
Projetos Estruturados de Redes - Parte 4Projetos Estruturados de Redes - Parte 4
Projetos Estruturados de Redes - Parte 4José Wagner Bungart
 
Sistemas Distribuídos - Grids Computacionais
Sistemas Distribuídos - Grids ComputacionaisSistemas Distribuídos - Grids Computacionais
Sistemas Distribuídos - Grids ComputacionaisAdriano Teixeira de Souza
 
Redes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesRedes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesMauro Tapajós
 
Analisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoAnalisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoJerônimo Medina Madruga
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1José Wagner Bungart
 
Apresentação4 final
Apresentação4   finalApresentação4   final
Apresentação4 finalrobinhogode
 

La actualidad más candente (12)

Aula 03 - Analisando objetivos técnicos - Projeto de Redes de Computadores
Aula 03 - Analisando objetivos técnicos - Projeto de Redes de ComputadoresAula 03 - Analisando objetivos técnicos - Projeto de Redes de Computadores
Aula 03 - Analisando objetivos técnicos - Projeto de Redes de Computadores
 
Aula 08 - Revisão - Projeto de Redes de Computadores
Aula 08 - Revisão - Projeto de Redes de ComputadoresAula 08 - Revisão - Projeto de Redes de Computadores
Aula 08 - Revisão - Projeto de Redes de Computadores
 
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de ComputadoresAula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
Aula 04 - Analisando tráfego entre redes - Projeto de Redes de Computadores
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
 
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
 
Trabalho - Projeto redes
Trabalho - Projeto redesTrabalho - Projeto redes
Trabalho - Projeto redes
 
Projetos Estruturados de Redes - Parte 4
Projetos Estruturados de Redes - Parte 4Projetos Estruturados de Redes - Parte 4
Projetos Estruturados de Redes - Parte 4
 
Sistemas Distribuídos - Grids Computacionais
Sistemas Distribuídos - Grids ComputacionaisSistemas Distribuídos - Grids Computacionais
Sistemas Distribuídos - Grids Computacionais
 
Redes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de RedesRedes Avançadas - 3.Noções de Projeto de Redes
Redes Avançadas - 3.Noções de Projeto de Redes
 
Analisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoAnalisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e uso
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1
 
Apresentação4 final
Apresentação4   finalApresentação4   final
Apresentação4 final
 

Similar a Em Direção às Redes Programáveis na Internet do Futuro

Enucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationEnucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationNathan Saraiva
 
ReVir – Programabilidade em Redes Virtualizadas
ReVir – Programabilidade em Redes VirtualizadasReVir – Programabilidade em Redes Virtualizadas
ReVir – Programabilidade em Redes VirtualizadasWanderson Paim
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIDalton Martins
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREFIBRE Testbed
 
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...Alex Casañas
 
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...Alex Casañas
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadoresJakson Silva
 
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais DistribuídosSistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais DistribuídosArthur Emanuel
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídosluanrjesus
 
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e Desafios
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e DesafiosSoftware-Defined Networking (SDN) - Conceitos Básicos, Programação e Desafios
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e DesafiosFelipe Alencar
 
Predição de Fluxos em Redes de Computadores
Predição de Fluxos em Redes de ComputadoresPredição de Fluxos em Redes de Computadores
Predição de Fluxos em Redes de ComputadoresOrlando Junior
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdfRoberto Aragy
 

Similar a Em Direção às Redes Programáveis na Internet do Futuro (20)

Enucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarizationEnucomp2017 - Tutorial about network softwarization
Enucomp2017 - Tutorial about network softwarization
 
ReVir – Programabilidade em Redes Virtualizadas
ReVir – Programabilidade em Redes VirtualizadasReVir – Programabilidade em Redes Virtualizadas
ReVir – Programabilidade em Redes Virtualizadas
 
Programabilidade em Redes Virtualizadas
Programabilidade em Redes VirtualizadasProgramabilidade em Redes Virtualizadas
Programabilidade em Redes Virtualizadas
 
Redes2 aula02
Redes2 aula02Redes2 aula02
Redes2 aula02
 
Aula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte IIAula 07 - Projeto de Topologia e Exercícios - Parte II
Aula 07 - Projeto de Topologia e Exercícios - Parte II
 
Eripi2018 p4 tutorial
Eripi2018 p4 tutorialEripi2018 p4 tutorial
Eripi2018 p4 tutorial
 
Sdn
SdnSdn
Sdn
 
WPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBREWPEIF 2019 - Evolução do testbed FIBRE
WPEIF 2019 - Evolução do testbed FIBRE
 
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
 
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...Unidade 05   introdução a computação - redes de computadores - 15-03-03 - 47 ...
Unidade 05 introdução a computação - redes de computadores - 15-03-03 - 47 ...
 
Introdução à sistemas distribuídos
Introdução à sistemas distribuídosIntrodução à sistemas distribuídos
Introdução à sistemas distribuídos
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais DistribuídosSistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
 
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e Desafios
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e DesafiosSoftware-Defined Networking (SDN) - Conceitos Básicos, Programação e Desafios
Software-Defined Networking (SDN) - Conceitos Básicos, Programação e Desafios
 
estrategia-ddos-gustavo
estrategia-ddos-gustavoestrategia-ddos-gustavo
estrategia-ddos-gustavo
 
03 estrategia-ddos
03 estrategia-ddos03 estrategia-ddos
03 estrategia-ddos
 
Predição de Fluxos em Redes de Computadores
Predição de Fluxos em Redes de ComputadoresPredição de Fluxos em Redes de Computadores
Predição de Fluxos em Redes de Computadores
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdf
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 

Último

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

Último (8)

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

Em Direção às Redes Programáveis na Internet do Futuro

  • 1. Núcleo de Estudos em Redes Definidas por Software Em Direção às Redes Programáveis na Internet do Futuro Prof. Magnos Martinello Universidade Federal do Espírito Santo - UFES Centro Tecnológico - CT Departamento de Informática - DI Laboratório de Pesquisas em Redes e Multimidia – LPRM Núcleo de Estudos em Redes Definidas por Software - NERDS
  • 2. 2Núcleo de Estudos em Redes Definidas por Software Agenda ● Redes Definidas por Sofware (SDN) (30 min.) ● Desafios para Inovação em Redes ● Fundamentos ● Visão geral do OpenFlow ● Aplicações em SDN (15 min.) ● Redes de DataCenter Programáveis ● Roteamento
  • 3. Núcleo de Estudos em Redes Definidas por Software Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware A p p A p p A p p Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware Operating System Operating System Operating System Operating System Operating System A pp A pp A pp 3 Fechada Internet atual Fechada para Inovações na Infraestrutura
  • 4. Núcleo de Estudos em Redes Definidas por Software Milhões de linhas de código fonte 5400 RFCs Barreira para entrar Bilhões de Portas Lógicas - ASIC Muitas funções complexas desperdiçadas na infraestrutura OSPF, BGP, multicast, differentiated services, Traffic Engineering, NAT, firewalls, MPLS, … Rede Engessada “Ossificada” Specialized Packet Forwarding Hardware Operating System Feature Feature 4
  • 5. Núcleo de Estudos em Redes Definidas por Software Estagnação na Inovação ● Inovação em redes tem sido inferior à outras áreas ● Há inovação implantada em outras áreas – OS: filesystems, schedulers, virtualização – DS: DHTs, CDNs, MapReduce ● Redes são basicamente as mesmas – Ethernet, IP, WiFi 5
  • 6. Núcleo de Estudos em Redes Definidas por Software Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware A p p A p p A p p Specialized Packet Forwarding Hardware A pp A pp A pp Specialized Packet Forwarding Hardware Operating System Operating System Operating System Operating System Operating System A pp A pp A pp Network Operating System App App App Abrindo caixas fechadas 6
  • 7. Núcleo de Estudos em Redes Definidas por Software App Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware App App Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Network Operating System 1. Interface aberta para o hardware 3. Uma API aberta e bem-definida 2. Ao menos um bom Sistema Operacional extensível, Preferencialmente de código aberto Redes Definidas por Software 7
  • 8. 8Núcleo de Estudos em Redes Definidas por Software Agenda ● Redes Definidas por Sofware (SDN) (30 min.) ● Desafios para Inovação em Redes ● Fundamentos ● Visão geral do OpenFlow ● Aplicações em SDN (10 min.) ● Redes de DataCenter ● Roteamento
  • 9. Núcleo de Estudos em Redes Definidas por Software Créditos ● Nick McKeown's SDN slides – http://www.openflow.org/downloads/NickTalk_OFELIA_Feb2011 .ppt ● Scott Shenker's talk on the “The Future of Networking, and the Past of Protocols” – http://www.slideshare.net/martin_casado/sdn-abstractions ● Trabalhos dos Alunos da UFES: ● Mestrado: Ramon Ramos ● Doutorado: Gilmar Luiz Vassoler
  • 10. Núcleo de Estudos em Redes Definidas por Software Software-Defined Networking (SDN) • Não é apenas um sonho acadêmico • Muito mais do que a onda do “OpenFlow” - Um novo paradigma no plano de controle das redes • A primeira parte dessa apresentação trata SDN a partir dos princípios - Foco nas abstrações chaves para o controle da rede • Papel das abstrações em redes
  • 11. Núcleo de Estudos em Redes Definidas por Software Fundações Intelectuais Fracas •Redes atualmente construídas em fundações fracas -Falta de abstrações fundamentais; •Cursos de Redes ensinam um grande pacote de protocolos ; •Cursos de Sistema Operacionais ensinam princípios fundamentais -Exclusão mútua, princípios de sincronização; -Arquivos, threads e outros blocos;
  • 12. Núcleo de Estudos em Redes Definidas por Software Por que as fundações são fracas ? ● Redes projetadas para serem simples - Básico Ethernet/IP é simples e gerenciável • Novos requisitos de controle tem trazido complexidade - ACLs, VLANs, DPI,… • Apesar disso a infraestructura ainda funciona ... - Somente por causa da nossa grande habilidade de dominar a complexidade • Tal habilidade é uma benção e uma maldição
  • 13. Núcleo de Estudos em Redes Definidas por Software Pontos de Vista • A habilidade de dominar a complexidade não é a mesma que a habilidade de extrair simplicidade - Quando o sistema funciona, o foco está na primeira - Quando o sistema é facil de usar, o foco está na segunda • De acordo com alguns pesquisadores: - Redes nunca fez a transição !
  • 14. Núcleo de Estudos em Redes Definidas por Software Como a Programação fez a transição ? • Linguagens de máquina : nenhuma abstração - Tinha que tratar com detalhes de baixo nível • Linguagens de mais alto nível : OS e outras abstrações - Sistema de arquivo, memória virtual, tipos abstratos de dados, ... • Linguagens modernas : ainda mais abstrações - Orientação ao objeto, garbage collection,... Abstrações simplificam a programação Mais simples escrever, manter, pensar sobre programas
  • 15. Núcleo de Estudos em Redes Definidas por Software Camadas em Redes são a principal abstração • Camadas provêem abstrações de serviço para o plano de dados - Camada de Rede (IP) provê um serviço de melhor esforço - Camada de Transporte (TCP) provê um serviço de entrega confiável de fluxo de bytes • Não há abstrações para o plano de controle - Não há um bloco de construção (building block) sofisticado para controle/gerência
  • 16. Núcleo de Estudos em Redes Definidas por Software Abstrações Precisam Separar 3 Problemas • Modelo de Encaminhamento (forwarding) • Distribuição do Estado • Configuração Detalhada
  • 17. Núcleo de Estudos em Redes Definidas por Software Abstração de Encaminhamento • Plano de Controle precisa de um modelo de encaminhamento flexível - Comportamento especificado pelo programa de controle • Isto abstrai o hardware de encaminhamento - Crucial para evoluir além das soluções específicas dos fabricantes (vendor-specific solutions) • Flexibilidade e neutralidade do fabricante são valiosos • Possibilidades: - Programa geral na arquitetura x86, MPLS, OpenFlow,….. - Diferentes compromissos flexibilidades/desempenho/implantação
  • 18. Núcleo de Estudos em Redes Definidas por Software Abstração da Distribuição de Estado Abstração Proposta : visão centralizada da rede • Programa de Controle não precisa tratar com caprichos do estado distribuído - Complicado, fonte de muitos erros - Abstração deve esconder disseminação/coleção dos estados • Programa de Controle opera na visão da rede - Entrada: visão centralizada da rede (grafo) - Saída: configuração de cada dispositivo de rede
  • 19. Núcleo de Estudos em Redes Definidas por Software Sistema Operacional de Redes (NOS) • NOS: sistema distribuído que cria uma visão da rede - Roda nos servidores (controladores) • Comunica-se com elementos de encaminhamento de rede - Obtém informação do estado a partir dos elementos de encaminhamento - Comunica as diretivas de controle para os elementos de encaminhamento usando a abstração de encaminhamento • Programa de Controle opera na visão da rede - Programa de Controle não é um sistema distribuído • NOS + Abstração de Encaminhamento = SDN (v1)
  • 20. Núcleo de Estudos em Redes Definidas por Software Global Network View Protocols Protocols Control Program Network Operating System Software-Defined Networking (v1) Control via forwarding interface
  • 21. Núcleo de Estudos em Redes Definidas por Software Separação Clara das Preocupações • Programa de Controle de Rede : especifica o comportamento desejado na visão abstrata de redes - Programa de Controle : mapea comportamento na visão abstrata • Virtualizador de rede: mapea o controle expresso na visão abstrata em uma configuração - Nypervisor: modelo abstrato da visão global • NOS : distribui a configuração para os comutadores físicos - NOS: visão global dos comutadores físicos
  • 22. 24Núcleo de Estudos em Redes Definidas por Software Agenda ● Redes Definidas por Sofware (SDN) (30 min.) ● Fundamentos ● Desafios para Inovação em Redes ● Visão geral do OpenFlow ● Aplicações em SDN (30 min.) ● Redes de DataCenter ● Roteamento
  • 23. Núcleo de Estudos em Redes Definidas por Software O que é OpenFlow ? • OF é uma API – Permite controlar como pacotes são encaminhados (e manipulados) • Implementável em hardware de prateleira (COTS) • Permite implantar redes programáveis – Não apenas redes configuráveis – Independentes do fabricante (Vendor- independent)
  • 24. Núcleo de Estudos em Redes Definidas por Software Objetivos do OpenFlow (OF) • Pespectiva do experimentador – Validar seus experimentos em hardware com tráfego real (at full line speed) ● Perspectiva da indústria – Reduzir custos nos equipamentos através da comoditização e competição nos controladores e no espaço das aplicações – Desenvolvimento de novas funções e protocolos (customizados)
  • 25. Núcleo de Estudos em Redes Definidas por Software Ethernet Switch 27 Como funciona o OF ?
  • 26. Núcleo de Estudos em Redes Definidas por Software Data Path (Hardware)Data Path (Hardware) ControlControl PathPath Control Path (Software)Control Path (Software) 28 Como funciona o OF ?
  • 27. Núcleo de Estudos em Redes Definidas por Software Data Path (Hardware)Data Path (Hardware) ControlControl PathPath OpenFlowOpenFlow OpenFlowOpenFlow ControllerController OpenFlow Protocol (SSL/TCP) 29
  • 28. Núcleo de Estudos em Redes Definidas por Software Controller PC Hardware Layer Software Layer Flow Table MAC src MAC dst IP Src IP Dst TCP sport TCP dport Action OpenFlow Client **5.6.7.8*** port 1 port 4port 3port 2port 1 1.2.3.45.6.7.8 OpenFlowExample 30
  • 29. Núcleo de Estudos em Redes Definidas por Software OpenFlow Basics Flow Table Entries Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot L4 sport L4 dport Rule Action Stats 1. Forward packet to zero or more ports 2. Encapsulate and forward to controller 3. Send to normal processing pipeline 4. Modify Fields 5. Any extensions you add! + mask what fields to match Packet + byte counters 31 VLAN pcp IP ToS
  • 30. Núcleo de Estudos em Redes Definidas por Software Exemplos Switching * Switc h Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * 00:1f:.. * * * * * * * port6 Flow Switching port3 Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action 00:20.. 00:1f.. 0800 vlan11.2.3.4 5.6.7.8 4 1726 80 port6 Firewall * Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * * * * * * * * 22 drop 32
  • 31. 33Núcleo de Estudos em Redes Definidas por Software Agenda ● Redes Definidas por Sofware (SDN) (30 min.) ● Fundamentos ● Desafios para Inovação em Redes ● Visão geral do OpenFlow ● Aplicações em SDN (15 min.) ● Redes de DataCenter ● Roteamento
  • 32. Núcleo de Estudos em Redes Definidas por Software Visão típica de um datacenter
  • 33. Núcleo de Estudos em Redes Definidas por Software Network-Centric Datacenter
  • 34. Núcleo de Estudos em Redes Definidas por Software Server-Centric DataCenter Network
  • 35. Optical Cross-Braced Hypercube [3] H. Cui, D. Rasooly, M. R. N. Ribeiro, and L. Kazovsky, “Optically Cross-Braced Hypercube : a Reconfigurable Physical Layer for Interconnects and Server-Centric  Datacenters,” in OFC, 2012, vol. 1.
  • 38. Núcleo de Estudos em Redes Definidas por Software Perspectiva de Trabalhos e Projetos ● DataCenter Centrado em Servidores com Roteamento em múltiplos caminhos ● NFV (Funções de Redes Virtualizadas) ● Projeto FUTEBOL: Federated Union of Telecommunications Research Facilities for an EU-Brasil Open Laboratory
  • 39. KeyFlow: SDN in Core Networks