SDN e OpenFlow Conceitos Básicos - Land

Transcrição

SDN e OpenFlow Conceitos Básicos - Land
SDN e OpenFlow
Conceitos Básicos
José Ferreira de Rezende
[email protected]
Programa de Engenharia de Sistemas e Computação
COPPE / UFRJ
© 2016 - Rezende
Agenda
• Definições
• Breve Histórico
• Motivação
• Modelo e Arquiteturas SDN
• Vantagens e Desvantagens
Definições para SDN
•
Open Networking Foundation
– “In the SDN architecture, the control and data plane are decoupled, network intelligence and
state are logically centralized, and the underlying network infrastructure is abstracted from
the applications”
– Software defined networking (SDN) is an emerging network architecture where network
control is decoupled from forwarding and is directly programmable. Network intelligence is
(logically) centralized in software-based SDN controllers, which maintain a global view of the
network.
•
HotSDN CFP
– “Software Defined Network (SDN) refactors the relationship between network devices and the
software that controls them. Open interfaces to network switches enable more flexible and
predictable network control, and they make it easier to extend network function.”
•
Brocade
– “Software-Defined Networking is a concept that proposes to disaggregate the traditional
vertically integrated networking stack in order to improve network flexibility and
manageability.”
Para que serve SDN?
•
•
•
•
•
•
•
•
•
Roteamento
Comutação
Segurança
Engenharia de tráfego
QoS
Monitoramento
Gerência
Balanceamento de carga
Virtualização
• e principalmente
• Inovações
Abstração, abstração...
• evolução de várias áreas da computação são baseadas em
abstrações
– forma de se obter simplicidade
• exemplos:
– programação
• linguagem de máquina: nenhuma abstração
• linguagens de alto nível: abstração de tipos de dados, sistemas de arquivos e
alocação de memória
• linguagens mais modernas: orientação a objeto, garbage collection
– bancos de dados
– sistemas operacionais
– em redes, a arquitetura TCP/IP oferece camadas de abstração
...
App3
App2
App1
Modelo Sistema Operacional
Sistema
Operacional (OS)
CPU
DISCO
MEMÓRIA
REDE
...
Net App3
Net App2
Net App1
Modelo SDN
Sistema
Operacional
de Rede (NOS)
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
Rede Tradicional x SDN
•
rede tradicional
– planos de controle e de dados
integrados no mesmo sistema físico
– sem acesso ao plano de dados
diretamente
– decisões e políticas implementadas e
tomadas localmente
– troca de informações de controle entre
os equipamentos
– configuração individual
Rede Tradicional x SDN
•
rede SDN
– separação dos planos de controle e de
dados
•
•
interface aberta entre eles
interface aberta para o plano de controle
– funcionalidades de controle e
gerenciamento em software
Aplicações de Rede e
Controlador SDN
– decisões centralizadas
– inclusão de novas políticas simplificada
– configuração em um único lugar
OpenFlow
OpenFlow
OpenFlow
OpenFlow
OpenFlow
Fluxo de um pacote
• pacote chega a um dispositivo da rede SDN (forwarding device)
• informações são analisadas:
– cabeçalhos Ethernet, cabeçalhos IP, protocolos, portas UDP/TCP, etc
• caso o dispositivo não tenha sido instruído como encaminhar este
tipo de pacote, envia essas informações para o Controlador
• as aplicações de rede (NetAPP) informam ao NOS que ação tomar
para cada pacote/fluxo
– encaminhar o pacote, encaminhar para diversas portas, modificar
cabeçalhos, descartar o pacote, etc.
• o Controlador envia essa informação para o dispositivo
• o dispositivo armazena essa instrução em cache e encaminha o
pacote
• o processo se repete para cada dispositivo até o pacote entrar em
uma rede tradicional ou outro ambiente SDN
• pacotes subsequentes passam direto até o cache expirar
...
Net App3
Net App2
Net App1
Fluxo de um pacote
Sistema
operacional
de Rede (NOS)
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
...
Net App3
Net App2
Net App1
Fluxo de um pacote
Sistema
operacional
de Rede (NOS)
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
caminho rápido
dispositivo
de rede
Vantagens do modelo SDN
• S.O. de Rede LOGICAMENTE centralizado
– também conhecido como Controlador SDN
– tem uma visão global de todos os dispositivos de rede que estão abaixo dela
• existe uma forma bem definida de comunicação com esses dispositivos
• permite criar uma abstração ou uma visão simplificada da rede
– as NetApps ficam mais simples na definição das políticas e ações de
tratamento dos pacotes
– por exemplo, para uma NetApp de segurança, não importa os diversos
caminhos possíveis que um pacote pode seguir
• o controlador pode portanto oferecer uma abstração/visão específica da
rede
– para a NetApp, é como se a rede fosse um único e grande switch
...
Net App3
Net App2
Net App1
Abstração SDN
Sistema
operacional
de Rede (NOS)
dispositivo
de rede
dispositivo
de rede
Dispositivo de Rede
dispositivo
de rede
dispositivo
de rede
dispositivo
de rede
Sistema
operacional
de Rede (NOS)
...
Net App3
Net App2
Net App1
...
Net App3
Net App2
Net App1
Outra vantagem do SDN
Sistema
operacional
de Rede (NOS)
dispositivo
de rede
Visões ou SLICES diferentes
da mesma rede física
...
Net App3
Net App2
Net App1
Arquitetura SDN
APLICAÇÕES DE REDE
INTERFACE DE APLICAÇÃO
Java API
RESTConf
NORTHBOUND
CONTROL PLANE / SDN CONTROLLER
Serviço de Topologia
Serviço de Inventário
Serviço de Estatística
Localização dos Equipamentos
Sistema
Operacional
de Rede (NOS)
SOUTHBOUND
dispositivo
de rede
dispositivo
de rede
INTERFACE COM DISPOSITIVOS
OpenFlow
OVSDB
NETCONF
SNMP
DATA PLANE / FORWARDING DEVICES
Redes Sobrepostas: Definição
• rede construída sobre uma outra rede pré-existente
• nós da rede sobreposta são conectados por enlaces lógicos (ou virtuais)
– cada enlace virtual corresponde a caminhos, possivelmente de múltiplos
saltos, na rede subjacente
• a topologia da rede sobreposta é mantida pelos os seus nós
• exemplos e usos
–
–
–
–
–
–
–
Internet sobre a rede pública de telefonia
VPNs
redes P2P sobreposta a Internet: busca de informação
roteamento multicast
distribuição de conteúdo (p. ex. CDNs)
serviço VoIP (p. ex. skype)
redes com alta resiliência (p. ex. MIT RON)
Construção de uma Rede Sobreposta
fonte: slides do livro do Tanembaum
Redes Sobrepostas (Overlay)
Problemas de Desempenho do TCP
• em redes de grande memória
– o TCP é incapaz de utilizar toda a banda disponível
• num caminho fim-a-fim envolvendo enlaces com
altas taxas de perda
– o TCP é lento na recuperação dos erros
• baixa utilização dos enlaces de alta velocidade
• aplicações que exigem a transferência confiável
de grandes volumes de dados são prejudicadas
Solução: Quebra da Semântica Fim-a-Fim
Serviço Travel
(Transporte de Alta Velocidade)
• construção de uma rede sobreposta
– estabelecimento do caminho do servidor ao cliente
– segmentação da conexão em quantas partes se fizer
necessário
– armazenamento temporário (em memória) para a
implementação de pipeline entre os segmentos.
• definição de uma interface com o usuário (API)
– baseada em HTTP
– clientes web com funcionalidade de redirecionamento
– transparência no uso do serviço: extensão para o
Firefox
Travel: Rede Sobreposta e o Uso do Serviço
• os nós da rede sobreposta
executam dois processos
– master – realiza a escolha
dos pontos de
segmentação
– depot – segmenta e
encadeia as conexões
• o uso do serviço se baseia
em
– requisição inicial do cliente
ao master
– sucessivos
redirecionamentos do
cliente aos diversos depots
Travel: Rede Sobreposta
Travel: Rede Sobreposta
Travel: Rede Sobreposta
Travel: Requisição Inicial e
Redirecionamentos
Testes de Desempenho
Testes de Desempenho
Pesquisa Experimental em Redes Sem Fio
J. F. de Rezende
[email protected]
Programa de Engenharia de Sistemas e Computação
COPPE / UFRJ
Motivação
crescimento vertiginoso do tráfego móvel
53% de crescimento a cada ano
30 ExaBytes por mês em 2020
crescimento do número de dispositivos móveis
8% de crescimento por ano
12 bilhões de dispositivos em 2020
escassez de espectro
maior eficiência espectral (bits/Hz)
Redes 5G
novas formas de onda
rádios cognitivos
adensamento (HetNets)
exploração de novas bandas (mmW)
redes cognitivas
consumo de energia
Avaliação de Desempenho
avaliar quantitativamente o serviço oferecido por
um sistema de computação ou comunicação
objetivos
comparação entre alternativas de projeto
dimensionamento do sistema
métodos de avaliação
medição do sistema real
simulação
métodos analíticos
Avaliação de Desempenho de Redes Sem Fio
grande parte dos trabalhos em simulação
ns-2, ns-3, OMNeT++, Simulink, OPNET
Simulação
por que?
alguns sistemas são altamente complexos
inviabiliza modelos analíticos
sistemas reais:
podem não existir (tecnologia ainda não amadurecida)
podem ser caros para serem construídos
podem ser perigosos (ainda sem conhecimento do seu comportamento)
o que é?
o processo de projetar um modelo de um sistema real e
conduzir experimentos com esse modelo com a finalidade de
entender o comportamento do sistema e avaliar o seu
desempenho em suas diferentes estratégias de operação” Robert E Shannon, 1975.
Avaliação de Desempenho de Redes Sem Fio
grande parte dos trabalhos em simulação
ns-2, ns-3, OMNeT++, Simulink, OPNET
positivo: reprodutibilidade, flexibilidade e escalabilidade
negativo: camada física simplificada (modelos de propagação
e modelos de erro), códigos pouco validados
uma das primeiras plataformas experimentais em
redes sem fio de acesso remoto
ORBIT (Winlab/Rutgers)
inicialmente, WiFi
LTE/4G e SDRs
Evolução das Plataformas de Rádio
Platform
Description
ASIC (Application-Specific customized IC for a specific purpose
Integrated Circuit)
ASIP (Application-Specific ASIP for specialized instruction + programmable
Instruction set Processor) processor core with application SW
Embedded SDR
standalone system with FPGA and embedded
processor with RT OS
Semi-embedded SDR
FPGA for all signal processing + host PC with RT OS
Host-controlled SDR
FPGA for part of signal processing + host PC
Projetos de Internet do Futuro
GENI (Global Environment for Network Innovations)
FIRE (Future Internet Research and Experimentation)
exemplos de testbeds SDR
ORBIT, CorteXlab (OneLab Platform), CREW
outros testbeds
FIBRE, NITOS, w-iLab.t
CorteXlab (OneLab Facility)