Software Defined Networks

EEL879 - Redes II - UFRJ 2016.2

SDN(Software-defined networking), ou Redes definidas por software, é a separação física do plano de controle de rede do plano de encaminhamento, e também onde o plano de controle controla vários dispositivos.

Seu objetivo é permitir que engenheiros e administradores de nuvem e rede respondam rapidamente às mudanças nos requisitos de negócios por meio de um console de controle centralizado. O SDN engloba vários tipos de tecnologias de rede projetadas para tornar a rede mais flexível e ágil para suportar o servidor virtualizado e a infra-estrutura de armazenamento do moderno data center. A rede definida por software foi originalmente definida como uma abordagem para projetar, construir e gerenciar redes que separa a rede do plano de controle (cérebro) do de encaminhamento(músculo), permitindo que o controle de rede torne-se diretamente programável e a infraestrutura subjacente a ser abstraído para aplicações e serviços de rede.

    estrutra SDN

    Figura 1: Divisão das camadas

Como funciona:

Os provedores de rede definidos por software oferecem uma ampla seleção de arquiteturas concorrentes, mas no seu mais simples, o método Software Defined Networking centraliza o controle da rede separando a lógica de controle dos recursos de computador fora do dispositivo. Todos os modelos SDN têm alguma versão de um controlador SDN, bem como APIs southbound e APIs northbound:

  • Controladores: Os "cérebros" da rede, os Controladores SDN oferecem uma visão centralizada da rede global e permitem que os administradores de rede ditem aos sistemas subjacentes (como switches e roteadores) como o plano de encaminhamento deve lidar com o tráfego da rede.

  • APIs Southbound: usa APIs southbound para retransmitir informações para os switches e roteadores "abaixo". O OpenFlow, considerado o primeiro padrão do SDN, era a API original do lado sul e permanece como um dos protocolos mais comuns. Apesar de alguns considerarem OpenFlow e SDN a mesma coisa, OpenFlow é apenas uma peça do enorme panorama SDN.

  • APIs Northbound: usa APIs northbound para se comunicar com os aplicativos e lógica de negócios "acima". Estes ajudam os administradores de rede a configurar o tráfego e implantar serviços de forma programática.

Essa tecnologia aprimora os benefícios da virtualização do data center, aumentando a flexibilidade, a utilização de recursos e reduzindo custos e sobrecargas de infraestrutura.

O protocolo OpenFlow é um elemento fundamental para a construção de soluções SDN. A arquitetura SDN é:

  • Diretamente programável: pois o controle de rede é dissociado das funções de encaminhamento.

  • Ágil: abstrair o controle do encaminhamento permite que os administradores ajustem dinamicamente o fluxo do tráfego em toda a rede, atendendo às necessidades em constante mudança.

  • Logicamente centralizada: uma das principais características dessas redes. Essa centralização se dá em controladores SDN, dispositivos que mantêm uma visão global da rede servindo de interface central entre as camadas de Aplicação e de dados, facilitando o gerenciamento dos nós da rede como um todo.

  • Programaticamente configurada: permite que os gerentes de rede configurem, gerenciem, protejam e otimizem os recursos de rede rapidamente através de programas dinâmicos e automatizados, que podem ser escritos sozinhos, porque os programas não dependem do software proprietário.

  • Segue um padrão comum: Quando implementado por meio de padrões abertos, ela simplifica o design e a operação da rede, pois as instruções são fornecidas pelos controladores SDN em vez de vários dispositivos e protocolos específicos do fornecedor.

Tendências:

A SDN aborda o fato de que a arquitetura estática de redes convencionais é mal adequada para as necessidades de computação e armazenamento dinâmicos dos dias de hoje, como os data centers. A chave das tendências de computação que impulsiona a necessidade de um novo paradigma de rede incluem:

  • A mudança dos padrões de tráfego: Aplicações que comumente acessam bancos de dados e servidores distribuídos geograficamente através das nuvens públicas e privadas exigem uma gestão do tráfego extremamente flexível, e acesso a um tamanho de banda sob demanda.

  • O "consumerização de TI": o fato de funcionários levarem seus próprios dispositivos móveis para o trabalho, e os usarem para compartilhar arquivos ou dados dentro e fora do escritório, tende a exigir redes flexíveis e seguras.

  • O aumento de serviços em nuvem: Os usuários esperam ter acesso sob demanda para aplicações, infraestrutura e outros recursos de TI.

  • "Big Data": A manipulação de mega conjuntos de dados hoje em dia, que requer processamento paralelo massivo, está alimentando uma demanda por constante capacidade adicional e conectividade any-to-any.

Como os designers de rede se sentem prejudicados pelas limitações das redes atuais, na tentativa de satisfazer os requisitos de rede colocados pela evolução das tendências de computação:

  • Complexidade leva a um período de inatividade: A adição ou a movimentação de dispositivos e a implementação de políticas de rede são complexas, demoradas e, principalmente, manuais, que correm o risco de interromper o serviço, desestimulando as mudanças na rede.

  • Incapacidade de escalar: a abordagem tradicional de super-subscrição de links para fornecer escalabilidade não é eficaz com os padrões de tráfego dinâmico em redes virtualizadas - um problema ainda mais acentuado nas redes de provedores de serviços com algoritmos de processamento em paralelo de grande escala e conjuntos de dados associados.

  • Dependência do fornecedor: os longos ciclos de produtos de equipamentos de fornecedores e a falta de interfaces padrão e abertas limitam a capacidade dos operadores de rede de adaptar a rede aos seus ambientes individuais.

ONF - Open Networking Foundation:

É uma organização orientada e dedicada à promoção e adoção da SDN, e vem implementando SDN por meio de padrões abertos, tais quais são necessários para avançar a indústria de redes. O OpenFlow Standard é o primeiro e único fornecedor de interface de comunicação padrão definido entre as camadas de controle e de encaminhamento de uma arquitetura SDN.