Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Gerenciamento e Interoperabilidade de Redes
SDN – Software Defined NetworksRedes Definidas por Software
Verticalização
Fechado, proprietário
Inovação lenta
AppAppAppAppAppAppAppAppAppAppApp
Horizontalização
Interfaces abertas
Inovação rápida
Plano de
Controle
Plano de
Controle
Plano de
Controle ou ou
Interface Aberta
Plano de
Controle
Especializado
Hardware
Especializado
Funcionalidades
especializadas
Chip Comercial
(commodity)
Interface Aberta
Black-Box Networking vs. Software Defined Networking
Windows
(OS)
Windows
(OS)
LinuxMac
OS
x86
(Computer)
Windows
(OS)
AppApp
LinuxLinux
Mac
OS
Mac
OS
Virtualization layer
App
Controller 1
AppApp
Controller
2
Virtualization or “Slicing”
App
OpenFlow
Controller 1NOX
(Network OS)
Controller
2Network OS
Tendência
Computer Industry Network Industry
Oportunidade para que se crie uma nova indústria
para software de (gerenciamento e controle) de rede.
“Mainframe”
Milhões de linhas de código!
5400 RFCs!
Muitas funções complexas na infraestruturaOSPF, BGP, multicast, serviços diferenciados,engenharia de tráfego, NAT, firewalls, MPLS, …
Indústria “relutante” a mudanças
Rede “Ossificada”
Specialized Packet Forwarding Hardware
OperatingSystem
Feature Feature
Roteamento, gerenciamento, gerenciamento de mobilidade, controle de acesso, VPNs, …
Problema de Controle de Redes
• Configuração de cada dispositivo físico
– Ex, tabelas de encaminhamento, ACLs,…
• Opera sem garantia de comunicação
• Opera dentro de determinado protocolo de rede
• Em conjunto, tarefas complexas!
• A área de redes está sendo transformada por um novo paradigma que transformou um mercado de 30 anos de switches e roteadores.
Indústria: Rede vs. Equipamentos de Computadores
Gerenciamento de Redes
• Complexa
• Muitos erros
• Configurações de rede mudam constantemente
• Configuração distribuída é uma má ideia
• Mudanças resultam em erros
• Redes de um câmpus ou empresa podem ter
– Milhões de linhas de configuração
– Milhares de dispositivos
– Centenas de mudanças todos os anos
Redes de Computadores Tradicionais
Como é hoje:
• Um dispositivo de rede é constituído por um plano de dadosque liga as várias portas de rede e um plano de controleque é o cérebro de um dispositivo (implementa umprotocolo).
• Como concebidos os equipamentos de rede, exigem quedeterminada função seja implementada de formadistribuída: o controle está em cada um dos equipamentos.Roteadores e switches são muito caros principalmentedevido aos componentes de controle;
• Ao mesmo tempo que cresce a computação elástica, o custoda potência computacional estava diminuindo ao ponto deter milhares de processadores à disposição.9
Redes de Computadores Tradicionais
Plano de dados:
Encaminhamento, filtragem, buffer,
marcação, etc
Controlar mudanças de topologia, calcular
rotas, etc
Plano de controle:
Algoritmos distribuídos
Redes de Computadores Tradicionais
Coletar medidas e configurar equipamentos
Plano de gerenciamento
Redes de Computadores Tradicionais
Rumo ao Software-Defined Network (SDN)Redes Definidas por Software
Open Network Foundation
ONF – Open Network Foundation – suporta comercialmente os esforços de SDN e é a autoridade de padronização (Criada em 2011).
Mercado de SDN:
SDN
Ideia: A potência de processamento pode ser aproveitada para executar um plano de controle logicamente centralizado e usar hardware de comutação barato:
SDN – Software Defined Networks ou Redes Definidas por Software
• Os propositores de SDN perceberam que os fornecedores de equipamentos de rede não atendiam suas necessidades, particularmente quanto a inovação e desenvolvimento.
• Se alguém quisesse experimentar um novo protocolo , como o firmware não suportava, fazia-se uma requisição ao fabricante e esperava-se todas as etapas do desenvolvimento (meses, anos…).
15
Definição SDN
• Software-defined networks (SDN)
Uma abordagem arquitetônica que otimiza e simplifica asoperações de redes ligando intimamente aplicações eserviços de rede reais ou virtuais. Para este objetivoemprega um ponto de controle central – o controlador SDN– que media e facilita a comunicação entre aplicações quepretendem interagir com os elementos de rede e oselementos de rede que querem transmitir informações aestas aplicações. O controlador expõe e abstrai funções derede e operações via uma interface programável,bidirecional, moderna e application-friendly.
(Derivada da ONF)
16
Como evoluir?
• Joga fora o que foi feito até hoje ? É mais provável uma abordagem híbrida:
– pelo qual uma parte das redes sejam operadas por um controlador logicamente centralizado;
– outras partes seria executadas pelo plano de controle distribuído mais tradicional.
Isso implica que esses dois mundos devem interagir uns com os outros.
Software Defined Networking (SDN)
API para o plano de dados
(e.g., OpenFlow)
Controle logicamente centralizado
Switches
Inteligente ,
+ lento
“Burro”,
rápido
Lógico x Literal
Nível Aplicação19
A centralização literal traz as dificuldades:
• Escalabilidade: como um ponto central daria conta de sessões com cada equipamento gerenciado?
• Alta disponibilidade: se um único ponto falhar, a rede toda falhará;
• Distância geográfica: Manter um ponto próximo facilita operação e minimiza atrasos.
Plano de controle centralizado logicamente faz mais sentido quecentralizado literalmente: algum protocolo deve sincronizar oscontroladores fisicamente distribuídos.
App
Simple Packet Forwarding
Hardware
Simple Packet Forwarding
Hardware
Simple Packet Forwarding
Hardware
App App
Simple Packet Forwarding
HardwareSimple Packet Forwarding
Hardware
Sistema Operacional de Rede
1. Interface aberta ao hardwareex, OpenFlow
3. APIs bem definidas2. Um sistema operacional, extensível,
possivelmente open-source
A “Rede Definida por Software”
Source: N. McKeown et al. http://www.openflow.org
Software Defined Network (SDN)
Global Network View
Network Virtualization
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Abstract Network View
Control
Programs
f View( )Control
Programs
f View( )Control
Programs
f View( )firewall.c
…
if( pkt->tcp->dport == 22)
dropPacket(pkt);
…
PacketForwarding
Network OS1. <Match, Action>2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …
1. <Match, Action>2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …
1. <Match, Action>2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …
1. <Match, Action>2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …1. <Match, Action>
2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …
Exemplos de uso
– Switch– Switch por fluxo– Controle de acesso a
rede/firewall– VLANs– Novos protocolos de
roteamentounicast, multicast, multipath
– Home network manager– Processamento de pacotes– IPvUser
– VM migration– Balanceamento de
carga– Gerenciamento de
mobilidade– Gerenciamento de
energia– Monitoramento de
redes e visualização– Debugging de rede– Fatiamento (slicing) de
rede
… e muito mais!
Ex: Controle de Acesso Dinâmico
• Inspeciona primeiro pacote de umaconexão
• Consulta a política de controle de acesso
• Instala regras para bloquear ou rotear o tráfego
Ex: Mobilidade/Migração
• Verifica host enviando tráfego em nova localidade
• Modifica regras para rotear o tráfego
Ex: Balanceamento de carga de servidores
• Política de balanceamento de carga pré-instalada
• Separa tráfego baseado no IP fonte
25
src=0*
src=1*
Virtualização de Redes
26
Particiona a rede
Controlador #1 Controlador #2 Controlador #3
Arquitetura SDN
OpenFlow
• Alguns engenheiros de Stanford criaram o protocolo – Openflow
• A motivação para SDN e OpenFlow foi a flexibilidade de comoprogramar o dispositivo de rede e não onde está a programação. 28
OpenFlow
• Primeiro protocolo padronizado para gerenciamento de SDN• Controla como pacotes são direcionados e manipulados• Torna as redes programáveis
– Não apenas configurável (ex., via CLI)– Independente de vendedor
• Torna inovação mais fácil
• Objetivo (pesquisa):– Validar experimentos em hardware instalado com tráfego real
• Objetivo (indústria):– Redução de custos (equipamentos) – Customização e desesenvolvimento de novas características de
rede (ex: protocolos).
Como Funciona o Open Flow?
Componentes OpenFlow
Controlador
Switch
Controlador
• Definição do próximo salto do pacote
- Atualiza o plano de dados
- Interface de programação
- Mais alto nível para os desenvolvedores
- Aplicações mais sofisticadas
• Visão global da rede
- Vários elementos encaminhadores -> Um controlador
- Melhor tomada de decisões
Separação de Planos
- Host1 envia um pacote
- Se não há regras para tratar este
pacote
Encaminha ao controlador
Controlador instala um fluxo
- Próximos pacotes deste fluxo
não passam pelo controlador
Controller
PC
Camada de Hardware
Camadade Software
Flow Table
MACsrc
MACdst
IPSrc
IPDst
TCPsport
TCPdport
Ação
Cliente OpenFlow
**5.6.7.8*** port 1
port 4port 3port 2port 1
1.2.3.45.6.7.8
Exemplo OpenFlow
Básico OpenFlowEntradas das tabelas de fluxo
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
L4sport
L4dport
Regra Ação Stats
1. Encaminhar pacotes para uma ou várias portas2. Encapsular e encaminhar ao controlador3. Modificar campos4. Qualquer outra extensão necessária!
+ quais campos comparar
Packet + contadores bytes
VLANpcp
IPToS
Exemplos
Switching
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* 00:1f:.. * * * * * * * port6
Flow Switching
port3
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
00:20.. 00:1f.. 0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6
Firewall
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * * * * * * * 22 drop
Exemplos
Roteamento
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * * * * 5.6.7.8 * * * port6
VLAN Switching
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * vlan1 * * * * *
port6, port7,port9
00:1f..
Controle Centralizado vs Distribuído
Controle Centralizado
OpenFlowSwitch
OpenFlowSwitch
OpenFlowSwitch
Controlador
Controle Distribuído
OpenFlowSwitch
OpenFlowSwitch
OpenFlowSwitch
Controlador
Controlador
Controlador
Roteamento por Fluxo vs. Agregação
Fluxo
• Cada fluxo é configuradoindividualmente pelocontrolador
• Tabela de fluxo contém umaentrada fluxo
• Bom para controle “fino”, ex. campus networks
Agregação
• Uma entrada de fluxo cobrevários grupos de fluxos• Tabela de fluxo contém umaentrada por categoria de fluxo
•Bom para alto número de fluxos, e.g. backbone
Reativo vs. Pró-ativo
Reativo
• Primeiro pacote do fluxoaciona o controlador parainserir entradas de fluxo
• Uso eficiente da tabela de fluxo
• Se há perda de conexão com o controlador , funcionalidade fica limitada
Pró-ativo
• Controlador pré-configuratabela de fluxo no switch• Tempo de configuração de novos fluxos é zero • Perda de controle de conexãonão interrompe o tráfego
Implementações OpenFlow(Switch e Controlador)
OpenFlow/SDN Timeline
Source: G. Appenzeller (BigSwitch)
OpenFlow
ControllerNOX/POX
SlicingSoftwareFlowVisor
FlowVisorConsole
45
ApplicationsLAVIENVI (GUI)
Expedientn-Casting
NetFPGASoftware
Ref. SwitchBroadcom Ref. Switch
OpenWRTPCEngineWiFi AP
Commercial Switches Stanford Provided
OpenFlowSwitches
Open Daylight
Stanford Provided
Monitoring/debugging toolsoflopsoftrace openseer
OpenVSwitch
HP, NEC, Pronto, Juniper.. and many
more
Beacon Floodlight Maestro Ryu
Ciena Coredirector
NEC IP8800UNIVERGE PF5240
OpenFlow hardwareJuniper MX-series
HP Procurve 5400
Pronto 3240/3290
WiMax (NEC)
PC EnginesNetgear 7324
Growing CommunityVendors and start-ups Providers and business-unit
More... More...
SDN
• Modularidade permite inovação independente
• Reinvenção das redes
• Momento significativo
– Academia e indústria
• Inovação é a proposição da SDN
– SDN não permite fazer o impossível
– SDN apenas permite fazer o possível de maneiramais fácil
Referências
• Slides elaborados a partir de:
• Christian Rothenberg - OpenFlow e redes definidas por software, CPqD
• Jennifer Rexford – Software Defined Networking.
• Dorgival Guedes, Luiz Filipe Menezes Vieira, Marcos Menezes Vieira, Henrique Rodrigues e Rogério Vinhal Nunes. Redes Definidas por Software: uma abordagem sistêmica para o desenvolvimento de pesquisas em Redes de Computadores. XXX Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos - SBRC 2012
Gerenciamento e Interoperabilidade de Redes
NFV – Network Function VirtualizationVirtualização de Funções de Rede
Fonte: Adaptado de D. Lopez Telefonica I+D, NFV
Entrando na era definida por software
Fonte: Adaptado de D. Lopez Telefonica I+D, NFV
v
▪ Funções de rede são baseadas em sotware sobre hardware
bem conhecido
▪ Várias funções em um mesmo hardware
ORCHESTRATION, AUTOMATION
& REMOTE INSTALL
DPIBRAS
GGSN/
SGSN
Firewall
CG-NAT
PE Router
VIRTUAL
APPLIANCES
STANDARD HIGH
VOLUME
SERVERS
Modelo de rede virtualizado: Abordagem VIRTUAL APPLIANCE v
▪ Funções de rede são baseadas em hardware e
software específico
▪ Um nó físico para cada função
DPI
BRASGGSN/SGSN
Session Border
ControllerFirewall CG-NAT
PE Router
Modelo de rede tradicional:Abordagem APPLIANCE
NFV• Tornar a rede mais flexível e simples minimizando a
dependência de limitações de hardware
NFV
Por que precisamos de NFV(/SDN)?
1. Virtualização: Usar recursos de rede sem se preocupar sobre onde estáfisicamente localizado, como está organizado, etc.
2. Orquestração: Gerenciar milhares de dispositivos
3. Programável: Deve ser capaz de mudar o comportamento “on the fly”.
4. Escala dinâmica: Deve ser capaz de mudar tamanho, quantidade
5. Automation
6. Visibilidade: Monitorar recursos e conectividade
7. Desempenho: Otimizar utilização de dispositivos de rede
8. Múltiplos tenants
9. Service Integration
10. Abertura: Livre escolha de plug-ins modulares
Source: Adapted from Raj Jain
Arquitetura de alto nível
Camadas NFV
Referências
• Slides elaborados a partir de:
• César Marcondes - Evoluções da Tecnologia NFV, sua Sinergia com SDNe Impactos e Oportunidades na Rede FIBRE. XXXII Simpósio Brasileirode Redes de Computadores e Sistemas Distribuídos, Florianópolis,Maio de 2014
• César Marcondes e Christian E. Rothenberg. Network FunctionsVirtualization NFV - Perspectives, Reality and Challenges. IFIP/IEEEInternation Symposium on Integrated Network Management – Ottawa,Canadá, Maio 2015.
• Abhilash Thottakath Chakkan e Nimmagadda M. Syamsundar – SDN and NFV - An overview of SDN and NFV Architecture and Use Cases –Unisys, Novembro 2016.