Você está na página 1de 55

A Clean Slate 4D Approach to Network Control and Management

Albert Greenberg, Gisli Hjalmtysson, David A. Maltz, Andy Myers, Jennifer Rexford, Geoffrey Xie, Hong Yan, Jibin Zhan, Hui Zhang http://www.cs.cmu.edu/~4D/

OpenFlow
The Stanford Clean Slate Program
Nick McKeown
nickm@stanford.edu

http://cleanslate.stanford.edu

IA-368: Tpicos em Engenharia de Computao V


Prof. Responsvel: Mauricio Ferreira Magalhes Maio 26, 2009 Apresentado por Carlos Macapuna

Agenda

A Clean Slate 4D Approach to Network Control and Management Motivao: controle e gerenciamento de hoje A arquitetura 4D OpenFlow Inovaes OpenFlow Switching Fundamentos OpenFlow Modelos de uso do OpenFlow e exemplos Comparativo evolutivo dos SOs Referncias Concluses e discusses
4D & OpenFlow -- IA-368 -- Unicamp 2/55

04/06/2009

A Clean Slate 4D Approach to Network Control and Management

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

3/55

Motivao Controle e gerenciamento de hoje

Data plane - Plano de dados Trabalha com pacotes individuas Control plane - Plano de Controle Implementa algoritmos de roteamento distribudo Management plane - Plano de gerenciamento Monitora a rede Configura o plano de dados/controle Muitas dependncias entre os estados No entanto, a maioria delas mantida manualmente
Management Plane
Sistemas de Suporte Operaco (OSS)

Control Plane Data Plane 04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 4/55

Problema fundamental: Abstraes incorretas


Shell scripts Eng Trfego Ferr. planejamento Base de dados Configs Mtricas Link OSPF BGP
SNMP

Management Plane

netflow modems Polticas Encamin. OSPF BGP

Descobre o que est acontecendo na rede Decide como alter-lo Mltiplos processos de roteamento em cada roteador Cada roteador com diferente programa de configurao Grande nmero de formas de controles: mtricas, ACLs, poltica Roteadores distribudos Encaminhamento,filtragem, enfileiramento Baseado no FIB ou labels

OSPF OSPF BGP

Control Plane

FIB

FIB

FIB
Filtro de pacotes

Data Plane

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

5/55

Perdemos a direo Roteador


Software Controle Hardware Datapath
Milhes de linhas de cdigo fonte 5389 RFCs Barreiras s entradas

500M gates 10Gbytes RAM

inchado

Alto consumo de energia

Muitas funes complexas inseridas dentro da infraestrutura


OSPF, BGP, multicast, servios diferenciados, engenharia de trfego, NAT, firewalls, MPLS, camadas redundantes,

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

6/55

Boas abstraes - Reduzir a complexidade


Management Plane Control Plane Data Plane
Configuraes

Decision Plane FIBs, ACLs Dissemination Data Plane

FIBs, ACLs

Todas as tomadas de deciso lgica so levantadas fora do plano de controle

Elimina lgicas duplicadas no plano de gerenciamento Dissemination plane fornece uma robusta comunicao de/para o data plane
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 7/55

A Internet hoje vs mtodo proposto por 4D

Hoje a Internet operada/mantida manualmente, ou seja, propensa a erro de configurao! Este estudo prope uma arquitetura 4D! Vamos comear a partir de um exemplo!
D D D D

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

8/55

Exemplo de alcanabilidade
R1 Data Center Belm (BEL) Campinas (CPS) R5 R2 Front Office

R3

R4

Dois locais, cada um com data center e front office Todos os roteadores trocam rotas sobre todos os links

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

9/55

Exemplo de alcanabilidade
R1 Data Center Belm (BEL) Campinas (CPS) R5 R2 Front Office

R3
BEL-DC BEL-FO CPS-DC CPS-FO
04/06/2009

DC -FO -DC -FO L- EL PS PS BE B C C

R4

4D & OpenFlow -- IA-368 -- Unicamp

10/55

Exemplo de alcanabilidade
R1 Data Center
Filtro de pacote: Drop CPS-FO -> * permitir * Filtro de pacote: Drop BEL-FO -> * permitir *

R2 R5

BEL Front Office CPS

R3
BEL-DC BEL-FO CPS-DC CPS-FO
04/06/2009

DC -FO -DC -FO L- EL PS PS BE B C C

R4

4D & OpenFlow -- IA-368 -- Unicamp

11/55

Exemplo de alcanabilidade
R1 Data Center
Filtro de pacote: Drop CPS-FO -> * permitir * Filtro de pacote: Drop BEL-FO -> * permitir *

R2 R5

BEL Front Office CPS

R3

R4

Um novo link de atalho adicionado entre os data centers Com objetivo de realizar backup de trfego entre os data centers

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

12/55

Exemplo de alcanabilidade
R1 Data Center
Filtro de pacote: Drop CPS-FO -> * permitir * Filtro de pacote: Drop BEL-FO -> * permitir *

R2 R5

BEL Front Office CPS

R3

R4

Oops! Novo link permite aos pacotes violarem as polticas de segurana! Roteamento mudou, mas Filtro de pacotes no atualiza automaticamente
4D & OpenFlow -- IA-368 -- Unicamp 13/55

04/06/2009

Exemplo de alcanabilidade
Filtro de pacote: Drop CPS-FO -> * permitir * Filtro de pacote: Drop BEL-FO -> * permitir *

R1 Data Center

R2 R5

BEL Front Office CPS

R3

R4

Resposta tpica adicionar mais filtros de pacote para tampar os buracos nas polticas de segurana

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

14/55

Exemplo de alcanabilidade
R1 Data Center
Drop BEL-FO -> * Drop CPS-FO -> *

R2 R5

BEL Front Office CPS

R3

R4

Filtro de pacotes pode ter consequncias surpreendentes Considere a falha de um link BEL-FO e CPS-FO ainda conectado

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

15/55

Exemplo de alcanabilidade
R1 Data Center
Drop BEL-FO -> * Drop CPS-FO -> *

R2 R5

BEL Front Office CPS

R3

R4

Rede tem menos capacidade de sobrevivncia que a topologia sugere BEL-FO e CPS-FO ainda conectado Mas o filtro de pacote impede o fluxo de dados! Uma ao exploratria na rede no ir prever este problema
4D & OpenFlow -- IA-368 -- Unicamp 16/55

04/06/2009

A Arquitetura 4D

Prope um reparticionamento Clean-Slate das funcionalidades, em vez de explorar ampliaes incrementais Separa completamente a deciso lgica (problemas de rede) de protocolos subjacentes (problemas de sistemas distribudos) Dois tipos de dispositivos Decision Elements (DE) Elemento de deciso

Incorpora toda a deciso lgica Cria o estado de encaminhamento sobre os swicthes Utilizado principalmente/apenas para encaminhamento

Switches

Switches

DE

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

17/55

Trs Princpios para Controle e Gerenciamento de Rede


1. Network-level Objectives:

Expressa os objetivos explicitamente

Polticas de segurana, QoS, seleo de ponto de sada

No oculta os objetivos nas configuraes especficas dos boxes Objetivos de desempenho, confiabilidade, e poltica devem ser expressos separadamente dos elementos da rede Hoje: Objetivos de alto nvel devem ser expressos nas configuraes em baixo nvel nos roteadores individuais

Matriz de alcanabilidade Regras de engenharia de trfego

Gerenciamento lgico
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 18/55

Trs Princpios para Controle e Gerenciamento de Rede


2. Network-wide Views:

O Design da rede fornece informaes exatas em qualquer momento

Topologia, trfego, limitaes dos recursos

Prover as lgicas necessrias para as entradas e sadas Snapshot preciso de cada componente da rede (topologia, trfego, eventos, etc.) Hoje: No foi concebido para fornecer esses aspectos, forando readaptao substanciais para obt-los

Matriz de alcanabilidade Regras de engenharia de trfego

Gerenciamento lgico Ler informao do estado


04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 19/55

Trs Princpios para Controle e Gerenciamento de Rede


3. Direct Control:

Permite o controle lgico de todo o estado da rede que define o encaminhamento de pacotes

Entradas FIB, Filtro de pacotes, parmetros de filas

Apenas a sada da deciso lgica deve ser comunicada aos elementos de rede Deciso lgica no deve ser embutida nos protocolos Matriz de alcanabilidade distribudos entre os Regras de engenharia de trfego roteadores/switches

Escreve estado Gerenciamento lgico Ler informao do estado


04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 20/55

Camadas da Arquitetura 4D
Network-level objectives Decision Network-wide views Dissemination Discovery Data Direct control

Decision Plane: Todo o gerenciamento lgico implementado em servidores centralizados tomando todas as decises Elementos de deciso utiliza a viso da rede para calcular o estado do Data Plane que satisfaa os objetivos, e grava diretamente estes estados nos roteadores

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

21/55

Camadas da Arquitetura 4D
Network-level objectives Decision Network-wide views Dissemination Discovery Data Direct control

Dissemination Plane: Fornece um canal de comunicao eficaz para cada roteador, onde a robustez o nico objetivo! Pode utilizar o mesmo link de dados do usurio, mas logicamente separado e controlado independentemente

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

22/55

Camadas da Arquitetura 4D
Network-level objectives Decision Network-wide views Dissemination Discovery Data Direct control

Discovery Plane: Cada roteador descobre seus prprios recursos e seu ambiente local Por exemplo, a identidade de seus vizinhos imediatos O Decision Plane utiliza as informaes aprendidas a partir do Discovery Plane para a construo da Network-wide Views.

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

23/55

Camadas da Arquitetura 4D
Network-level objectives Decision Network-wide views Dissemination Discovery Data Direct control

Data Plane: Roteadores/swicthes distribudos espacialmente Pode ser implementado com as tecnologias atuais Lida com pacotes individuais baseado no estado que produzido pelo Decision Plane Tabela de encaminhamento, filtro de pacotes, gerenciamento de parmetros de fila
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 24/55

Vantagens da arquitetura 4D

Separa a lgica da rede dos problemas de sistemas distribudos Permite a utilizao das atuais tcnicas de sistemas e protocolos distribudos para resolver os problemas que no so inerentes da rede Alta robustez Eleva o nvel de abstrao para o gerenciamento de rede Permite aos operadores focalizarem nos ojetivos especficos do network-level Melhor segurana Reduz a probabilidade de erros de configurao Suporta heterogeneidade Pode ser aplicada em diferentes ambientes Permite inovaces Apenas o decision plane precisa ser alterado
4D & OpenFlow -- IA-368 -- Unicamp 25/55

04/06/2009

Desafios para a arquitetura 4D

Reduzir a complexidade Simplifica radicalmente todo o sistema? Ou trata-se apenas em mudanas na complexidade? Network-wide view possui Inevitveis atrasos. possvel ter uma network-wide view suficientemente precisa e estvel para gerenciar a rede? A lgica centralizada nos Decision Element (DE) possvel responder s falhas de rede e restabelecer o fluxo de dados dentro de um tempo aceitvel? DE pode ser um nico ponto de falha. Atacantes podem comprometer toda a rede, controlando o DE

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

26/55

OpenFlow
The Stanford Clean Slate Program

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

27/55

Switch Ethernet

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

28/55

Control Path (Software) Data Path (Hardware)


04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 29/55

Controlador OpenFlow
Protocolo OpenFlow (SSL)

Control Path OpenFlow Data Path (Hardware)


04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 30/55

OpenFlow Switching
Uma forma de executar experimentos nas redes que usamos todos os dias.

Um compromisso pragmtico
Permite aos pesquisadores executarem experimentos em suas redes sem exigir que os fornecedores exponham o funcionamento interno dos equipamentos.

Fundamentos
Um switch Ethernet (p.e. 128-portas de 1GE) Um protocolo aberto para remotamente adicionar/remover fluxo de entradas
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 31/55

Inovaes
Experimentos que gostaramos de fazer

Gerenciamento de mobilidade Gerenciamento de energia em grandes redes Novo esquema de identificador/localizador Controle de acesso Caminhos so fixados (pela rede) Apenas IP Endereo ditado pelo DNS, DHCP, etc No h meios de adicionar nosso prprio processamento

Problemas com a nossa rede


04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

32/55

Alm disso, queremos


Isolao: Produo do trfego regular intocvel Virtalizado e programvel: Processar diferentes fluxos de diferentes formas Equipamentos que podemos confiar em nosso wiring closet Ambiente de desenvolvimento aberto para todos os pesquisadores (e.g. Linux, Verilog, etc). Definies flexveis de um fluxo Aplicao individual de trfego

Fluxos agregados Alternativas para o IP ...

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

33/55

Switch idealizado
(Pesadelo dos fornecedores)

Fornecedores comerciais no vo abrir o software e o hardware

sw

Rede padro processamento

Definido pelo utilizador processamento

hw

Pesquisador escreve cdigos experimentais no switch/roteador

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

34/55

OpenFlow Switching
Especificao OpenFlow Switch

Controlador
PC

OpenFlow Switch
sw Canal Seguro hw Tabela de fluxo

lo toco ow Pro nFl Ope SSL

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

35/55

Canal Seguro (Secure Channel)


Conexo SSL Protocolo OpenFlow Encapsula pacotes para o controlador Envia estado do link/porta para o controlador
Controlador
lo toco ow Pro nFl Ope SSL
PC

OpenFlow

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

36/55

sala de servidores

OpenFlow

OpenFlow Ponto de acesso

Controlador
PC

OpenFlow

OpenFlow-enabled Switch Comercial


Normal Software Normal Datapath
Canal

OpenFlow

seguro Tabela de fluxo

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

37/55

Modelos de uso do OpenFlow


1. Experimentos no nvel de fluxo Protocolo de roteamento definido pelo usurio Controle de admisso Experimentos especficos Fluxo de entradas esttico ou dinmico Controle de acesso rede Gerenciamento de rede Gerenciamento de energia Mobilidade e handoff VOIP... 2. Experimentos no nvel de pacotes Lento: Controlador processa os pacotes Rpido: Redirecionar fluxos atravs de hardware programvel Modificar roteadores, firewalls, NAT, controle de congestionamento 3. Alternativas para IP p.e novo esquema de atribuio de nomes e endereo
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 38/55

Experimentos no nvel de pacote


OpenFlow-enabled Switch comercial
Software Normal Datapath Normal
Canal
Seguro

Controller
PC

Tabela de fluxo

Laboratrio

NetFPGA
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 39/55

Fundamentos OpenFlow
Explora a tabela de fluxo nos switches e roteadores
Fluxo 1. Fluxo 2. Fluxo 3. Regra Regra Regra Ao Ao Ao Estatsticas Estatsticas Estatsticas

Fluxo N.

Regra

Ao

Estatsticas

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

40/55

Entradas na Tabela de fluxo


Protocolo OpenFlow Verso 1.0

Regra

Ao

Estatstica
Pacote + contador de byte

1. 2. 3. 4.
Switch MAC Port src + mask
04/06/2009

Encaminhamento de pacote para porta(s) Encapsula e ecaminha para o controlador Descarta pacote Envia para o processamento normal em pipeline
Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport

MAC dst

4D & OpenFlow -- IA-368 -- Unicamp

41/55

Exemplos de fluxos
Switching
Switch MAC Port src * * Switch MAC Port src
port3

MAC Eth dst type 00:1f:.. * MAC Eth dst type

VLAN IP ID Src * * VLAN IP ID Src


vlan1

IP Dst * IP Dst

IP Prot * IP Prot

TCP sport * TCP sport

TCP dport * TCP dport

Ao porta Ao
porta

Switching Fluxo

00:2e.. 00:1f.. 0800

1.2.3.4 5.6.7.8 4

17264 80

Firewall

Switch MAC Port src

MAC Eth dst type

VLAN IP ID Src

IP Dst

IP Prot

TCP sport

TCP dport

Forward

* IP Dst IP Dst *

22

drop

Switch MAC MAC Eth dst type Roteamento Port src * * * *

VLAN IP ID Src * * VLAN IP ID Src vlan1 *

IP Prot 5.6.7.8 * IP Prot *

TCP TCP Ao sport dport porta * * TCP TCP Ao sport dport Porta 6, 7... * *
42/55

VLAN

Switch MAC Port src * * *

MAC Eth dst type *

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

Examplo de experimento de fluxo de mobilidade

Questes interessantes
Gerenciamento de fluxo Controle dos switches Controle de acesso dos usurios e dispositivos Monitoramento de localizao e movimento de usurio

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

43/55

Uso de OpenFlow Rede OpenFlow dedicada


Controlador
Cdigo do Juca

OpenFlow Regra Switch Estatsticas Ao

PC

Protocolo OpenFlow

Regra

OpenFlow Ao Estatsticas Switch

Regra

OpenFlow Ao Estatsticas Switch


Pacote

Juca
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 44/55

Examplos de uso
Cdigo do Juca:

VLANs estticas Seu prprio novo protocolo de roteamentol: unicast, multicast, multipath, balanciamento de carga Controle de acesso rede Gerenciamento de redes home Gerenciamento de mobilidade Gerenciamento de energia Processador de pacotes (no controlador) IPvJuca Virtualizao de rede

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

45/55

VLANs separadas do trfego de produo e pesquisa


Controlador VLANs de pesquisa Tabela de fluxo VLANs de produoProcessamento normal L2/L3

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

46/55

Virtualizao de Switch OpenFlow


Controlador A

VLANs pesquisador A
Tabela de fluxo

Controlador B Controlador C Tabela de fluxo

VLANs pesquisador B VLANs pesquisador C


Tabela de fluxo

VLANs de produo

Processamento normal L2/L3

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

47/55

Comparativo evolutivo dos SOs

Aplicao Aplicao SO

Aplicao

Computador

Computador

SO: abstrao do hardware Inovaes nas aplicaes


04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 48/55

Comparativo evolutivo dos SOs

Aplicao

Aplicao

Aplicao

Aplicao

(OS)

Windows

or Linux or

Mac

x86 Computador

x86 Computador

Simples, comun, estvel, hardware abaixo das abstraes + Programabilidade + Concorrncia Inovaes nos SOs e aplicaes
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 49/55

Comparativo evolutivo dos SOs


Aplic. Aplicao Aplicao Aplic. Aplic. Mac Mac OS Mac OS

Windows Windows (OS) Windows (OS)

Linux Linux Linux

Windows

or Linux

or

Mac

Virtualizao
x86 Computador

x86 Computador

Simples, comun, estvel, hardware abaixo das abstraes + Programabilidade + Modelo de isolamento forte + Concorrncia acima Inovao na infraestrutura
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 50/55

Aplic.
Windows Windows (OS) Windows (OS)

Ap.

Ap.
Mac Mac OS Mac OS

Aplic.

Ap.

Ap.

Linux Linux Linux

Controller Controlador 1 Controller 1 1

Controller Controller Controlador 2 22

Virtualizao
x86 (Computador)

Virtualizao
(Visor de Fluxo)
OpenFlow

Simples, comun, estvel, hardware abaixo das abstraes + Programabilidade + Modelo de isolamento forte + Concorrncia acima Inovaes mais rpidas
04/06/2009 4D & OpenFlow -- IA-368 -- Unicamp 51/55

Consideraes finais

4D defende uma nova abordagem quanto ao plano de gerenciamento e controle; Baseada na separao das decises lgicas dos protocolos de roteamento; Tornando a rede mais simples, mais robusta, mais envolvente e menos propensa falhas de segurana; Nesta linha de concepo, o OpenFlow um compromisso pragmtico, que permite pesquisadores executarem os experimentos reais em redes de produo; OpenFlow proporciona uma oportunidade para novas tecnologias surgirem, principalmente de software de gerenciamento e controle.

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

52/55

Proposta de projeto
Controlador
lo toco ow Pro nFl Ope
SSL
OpenFlow OpenFlow PC

OpenFlow

NOX

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

53/55

Referncias

OpenFlow OpenFlow: Enabling Innovation in Campus Networks


ACM SIGCOMM 2008 Volume 38, Number 2, April 2008

www.openflowswitch.org/

Clean Slate 4D A Clean Slate 4D Approach to Network Control and Management


ACM SIGCOMM 2005 Volume 35, Number 5, October 2005

http://www.cs.cmu.edu/~4D/

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

54/55

Obrigado! ??

04/06/2009

4D & OpenFlow -- IA-368 -- Unicamp

55/55

Você também pode gostar