por uma nova disciplina de redes - dca.fee.unicamp.br filepor uma nova disciplina de redes ......

Post on 08-Nov-2018

216 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Por uma Nova Disciplina de Redes

Grandes Desafios de Pesquisa em Redes de Computadores e Sistemas Distribuídos

2013 – 2023

Marcos Rogério Salvador

Christian Esteve Rothenberg

Maio de 2013

Livros mais usados

• Arquitetura de Redes:

• Camadas

• SDUs

• Protocolos

• PDUs

• Abordagem Sistêmica

• Foco em Funções

• Abordagem Top-down

• Foco em Aplicações e nas camadas, funções e protocolos necessários para implementá-la

Camadas e Protocolos

Falta de Abstração

• Addition of a new function to the network

• Highly complex distributed system problem

• Networks too difficult to program and to reason about

• no good abstractions and interfaces

Sopa de Protocolos

Campos e Bits de Cabeçalhos

7

Acoplamento forte com protocolos!

Milhões de linhas de código(6000 RFCs)

Bilhões de portas lógicasAlto consumo

• Acoplamento forte entre planos de controle e de encaminhamento• Complexo, desorganizado, custoso

Implementação

Roteamento, gerência, controle de acesso, VPNs, …

Sistema OperacionalSistema Operacional

AppApp Ap

pApp

AppApp

HW Especializado de Encaminhamento de

Pacotes

HW Especializado de Encaminhamento de

Pacotes

5

Complexidade x Robustez

Vai piorar

• Teoria de redes foi definida quando uma rede consistia de um conjunto de elementos comunicantes

• Uma rede hoje é MUITO mais complexa que isto!– M2M, IoT

– Convergência de recursos

– Físico x virtual

– ...

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

Copiando a Computação

Computer Industry Network Industry

“Mainframe”

Visão atual de SDN: Programabilidade e Virtualização

Visão Global da Rede

Virtualização da RedeVirtualização da Rede

Comutação de Pacotes

Comutação de Pacotes

Comutação de Pacotes

Comutação de Pacotes

Comutaçãode PacotesComutaçãode Pacotes

Comutaçãode PacotesComutaçãode Pacotes

Comutaçãode PacotesComutaçãode Pacotes

SO de RedeSO de Rede

Visão Abstrata da Rede

Programa de Controle

f View( )Programa

de Controle

f View( )Programa

de Controle

f View( )

Exemplo: Roteamento Traditional x SDN

OSPF = DijkstraOSPF = Dijkstra IS-ISIS-IS

SO de RedeSO de Rede

HardwareHardware

HardwareHardware

HardwareHardware

HardwareHardware

Sistema DistribuídoSistema Distribuído

HardwareHardware

SOSO

OSPFOSPF IS-ISIS-IS

Sistema Distribuído

Sistema Distribuído

Sistema Distribuído

Sistema Distribuído

RFC do OSPF contém 244 páginas, das quais somente 4 tratam do algoritmo de roteamento (Dijkstra)

Mudança de Paradigma: entendimento

• Pensar em Redes como uma coleção de protocolos é insustentável!

• Temos que pensar em Redes como um sistema complexo

– Definir requisitos e princípios de projeto

– Definir arquitetura, abstrações e interfaces do sistema como um todo e não só das suas comunicações entre camadas

Desafios no Ensino de Redes

• Ensinar os alunos a pensar em redes sob esta perspectiva e não mais sob a dos protocolos– Professores estão viciados nos protocolos

• Definir uma disciplina de redes correspondente que seja capaz de capturar o interesse dos alunos e de ser absorvida por eles.

• Esta disciplina deve ensinar princípios, abstrações e modelos de forma teórica e prática, formando alunos capazes de pensar e de produzir a inovação e de criar uma indústria pujante de redes de que o país tanto precisa.

Sistema Operacional

Especializado

Sistema Operacional

Especializado

Hardware Especializado

Hardware Especializado

AppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppAppApp

Aplicações Especializadas

Aplicações Especializadas

HorizontalInterfaces abertas

Inovação aceleradaIndustria enorme

MicroprocessadorMicroprocessador

Interface Aberta

LinuxLinuxMacOSMacOS

Windows(OS)

Windows(OS)

ou ou

Interface Aberta

A Solução da Industria da Computação

Verticalmente integradoFechado, proprietário

Inovação lentaIndustria pequena

6

HardwareHardware

HardwareHardware

HardwareHardware

HardwareHardware

HardwareHardware

SOSO

SOSO

SOSO

SOSO

SOSO

Sistema Operacional de RedeSistema Operacional de Rede

AppApp AppApp

Rede Definida por Software (SDN)

App App

App App

App App

App App

App App

7

AppApp

HW simples de encaminhamentoHW simples de

encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

AppApp AppApp

HW simples de encaminhamento

HW simples de encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

Sistema Operacional de Rede – ex: NOXSistema Operacional de Rede – ex: NOX

Interface aberta do HW (Southbound API) – ex: OpenFlow

Interface aberta do SO de Rede (Northbound API)SDN

2

HardwareHardware

HardwareHardware

HardwareHardware

HardwareHardware

HardwareHardware

SOSO

SOSO

SOSO

SOSO

SOSO

Sistema Operacional de RedeSistema Operacional de Rede

AppApp AppApp

App App

App App

App App

App App

App App

7

Rede Tradicional de PactotesRede Definida por Software

(SDN)

AppApp

HW simples de encaminhamentoHW simples de

encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

AppApp AppApp

HW simples de encaminhamento

HW simples de encaminhamento

HW simples de encaminhamentoHW simples de

encaminhamento

Sistema Operacional de Rede Sistema Operacional de Rede

Interface aberta do HW (Southbound API) – ex: OpenFlow

Interface aberta do SO de Rede (Northbound API)Arquitetura SDN

2

OpenFlow

Controlador

PC

Hardware

Software

Tabela de Fluxos

MACsrc

MACdst

IPSrc

IPDst

TCPsport

TCPdport

Ação

Firmware OpenFlow

**5.6.7.8*** port 1

porta 4porta 3porta 2porta 1

1.2.3.45.6.7.8

OpenFlow: Interface de Programção do Hardware

Software Defined Network (SDN)

Global Network View

Network VirtualizationNetwork Virtualization

PacketForwarding

PacketForwarding

PacketForwarding

PacketForwarding

PacketForwarding

PacketForwarding

PacketForwarding

PacketForwarding

Abstract Network View

ControlPrograms

f View( )Control

Programs

f View( )Control

Programs

f View( )firewall.c

if( pkt->tcp->dport == 22)dropPacket(pkt);

PacketForwarding

PacketForwarding

Network OSNetwork 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. …

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. …

1. <Match, Action>2. <Match, Action>3. <Match, Action>4. <Match, Action>5. <Match, Action>6. …7. …

Repensando a Internet...

Evolução ou Revolução?

4

SoftwareControl

Router

HardwareDatapath

HELLO

OSPF-TE

RSVP-TE

HELLOHELLO

Firewall

IPSec

Many complex functions baked into the infrastructureOSPF, BGP, multicast, differentiated services,Traffic Engineering, NAT, firewalls, MPLS, redundant layers, …

An industry with a “mainframe-mentality”

top related