INTRODUÇÃO

A Internet surgiu como um conjunto de redes físicas separadas, com sistemas de gerenciamento de recursos de armazenamento e redes tratados de forma distinta das políticas de acesso, sistema e procedimentos por motivos de segurança. Esse modelo funcionou bem por muitos anos, mas começou a apresentar desafios à medida que a demanda por maior acessibilidade financeira a computadores potentes, espaço de armazenamento e redes centralizando informações cresceu.

Nesse contexto, a tecnologia de redes de computadores avançou drasticamente nos últimos anos, com velocidade das linhas, densidade de portas e razão entre desempenho e preço aumentando. No entanto, os mecanismos de controle para as redes não acompanharam esse ritmo. Levam-se anos para projetar e implementar um novo protocolo de controle de rede.

Para superar esses desafios, surgiu um novo paradigma de redes chamado Redes Definidas por Software (SDN). Em uma SDN, o plano de controle da rede é separado do plano de encaminhamento e construído como um sistema distribuído. Isso permite que a rede seja gerenciada de forma mais flexível e eficiente. O surgimento das SDNs está diretamente ligado ao desenvolvimento do protocolo OpenFlow. O OpenFlow é um protocolo que permite que aplicativos externos controlem o fluxo de dados em switches de rede. Com o OpenFlow, os switches de rede passam a ser "programáveis", o que abre um mundo de possibilidades para o gerenciamento de redes.

As SDNs são uma tecnologia promissora que tem o potencial de revolucionar a forma como gerenciamos redes. Nos próximos capítulos, vamos explorar em mais detalhes os conceitos e aplicações das SDNs.

CONCEITOS

O que é?

SDN é um novo paradigma de redes que separa o plano de controle do plano de encaminhamento. No modelo tradicional de redes, o plano de controle e o plano de encaminhamento estão integrados em um único dispositivo: o roteador. Isso torna difícil gerenciar e adaptar a rede às mudanças nas demandas de tráfego.

Em uma SDN, o plano de controle é executado em um controlador SDN, que é um software que gerencia a rede de forma centralizada. O plano de encaminhamento é executado em switches de rede, que são dispositivos que encaminham os pacotes de dados de acordo com as instruções do controlador SDN.

Como funciona?

O controlador SDN usa um protocolo de comunicação para enviar instruções aos switches de rede. O protocolo mais comumente usado é o OpenFlow. O OpenFlow permite que o controlador SDN controle o fluxo de dados em switches de rede programáveis.

Evolução da rede tradicional para SDN

As redes tradicionais foram projetadas para atender às necessidades de uma época em que a Internet era usada principalmente para transferência de arquivos e e-mail. Com o aumento do tráfego de dados, as redes tradicionais começaram a apresentar desafios, como:

  • Dificuldade de gerenciamento: As redes tradicionais são difíceis de gerenciar, pois as mudanças no plano de controle precisam ser feitas em cada dispositivo da rede;
  • Ineficiência: As redes tradicionais podem ser ineficientes, pois o tráfego pode ser direcionado de forma inadequada;
  • Falta de segurança: As redes tradicionais podem ser vulneráveis a ataques, pois o controle da rede está distribuído em vários dispositivos.

As SDNs foram desenvolvidas para superar esses desafios. As SDNs oferecem uma série de vantagens em relação às redes tradicionais, incluindo:

  • Flexibilidade: As SDNs permitem que a rede seja configurada e gerenciada de forma mais flexível. Isso torna possível atender às necessidades específicas de cada aplicação ou usuário;
  • Eficiência: As SDNs podem melhorar a eficiência da rede, pois permitem que o tráfego seja direcionado de forma mais inteligente;
  • Segurança: As SDNs podem melhorar a segurança da rede, pois permitem que o tráfego seja monitorado e controlado de forma mais centralizada.

ARQUITETURA

Uma das principais diferenças entre a SDN e as redes tradicionais é a separação da lógica de controle do encaminhamento de pacote de dados. Nas redes tradicionais, a lógica de controle e o encaminhamento de pacotes de dados estão localizados no mesmo dispositivo, geralmente um roteador ou switch. Nas redes SDN, a lógica de controle está localizada em um controlador separado, enquanto o encaminhamento de pacotes de dados é realizado pelos dispositivos de infraestrutura (dados).

Figura 1: Arquitetura SDN - imagem retirada de https://mm.aueb.gr/master_theses/xylomenos/2016_Papidas.pdf

Camada de Aplicação

A camada de aplicação é responsável por fornecer serviços aos usuários da rede. Ela é o front-end da rede SDN e é responsável por interagir com os usuários e gerenciar a rede. A camada de aplicação pode ser implementada por meio de aplicações de software ou APIs (Interfaces de Programação de Aplicação).

Alguns exemplos de funções que podem ser implementadas na camada de aplicação incluem:

  • Otimização de desempenho: A camada de aplicação pode ser usada para otimizar o desempenho da rede, por exemplo, direcionando o tráfego de acordo com a carga ou garantindo a qualidade do serviço (QoS).
  • Segurança: A camada de aplicação pode ser usada para melhorar a segurança da rede, por exemplo, implementando firewalls ou sistemas de detecção de intrusão.
  • Gestão: A camada de aplicação pode ser usada para simplificar a gestão da rede, por exemplo, automatizando tarefas de configuração ou monitoramento.

Camada de Controle

A camada de controle é responsável por controlar e gerenciar toda a rede. Ela é o back-end da rede SDN e é responsável por gerenciar a topologia da rede e o estado dos dispositivos.

A camada de controle recebe as solicitações da camada de aplicação e envia instruções para os dispositivos de infraestrutura (dados).

A comunicação do controlador SDN com o switch é feita via API de limite sul, como o OpenFlow.

A camada de controle também é responsável por executar alguns protocolos de roteamento, como o (do inglês, Open Shortest Path First) e o BGP (do inglês, Border Gateway Protocol). Esses protocolos são usados para determinar o caminho mais eficiente para o tráfego de rede.

A fim de melhorar a disponibilidade e a escalabilidade dos recursos de rede, as implementações recentes da arquitetura SDN conseguem suportar múltiplos controladores distribuídos. Na arquitetura com vários controladores, cada controlador é responsável por uma parte da rede.

Os controladores individuais SDN comunicam-se entre si por meio de APIs com limite leste-oeste. Essas APIs são usadas para sincronizar o estado da rede e garantir que todas as decisões de encaminhamento sejam tomadas de forma consistente.

Camada de Dados

A camada de infraestrutura (dados) é responsável por encaminhar os pacotes de dados na rede. Ela é composta por dispositivos de rede, como switches e roteadores.

Os switches são dispositivos simples que encaminham pacotes de rede com base em regras armazenadas na tabela de encaminhamento. A tabela de encaminhamento é composta por itens que possuem três campos:

  • .Ação: A ação a ser executada quando um pacote de dados corresponde à regra;
  • .Contador: Um contador que é incrementado sempre que um pacote de dados corresponde à regra;
  • .Padrão: O padrão de fluxo composto pelo conjunto de valores do cabeçalho do pacote.

Quando um pacote de dados é recebido, o switch busca na sua tabela de fluxo uma regra correspondente aos campos do cabeçalho. Se o switch encontrar a regra certa, a ação é executada. Se o switch não encontrar a regra, ele irá notificar o controlador ou descartar o pacote.

É importante ressaltar que os itens da regra de encaminhamento são criados pelo controlador da camada de controle e enviados para o switch.

Componentes

Dentro da Arquitetura e de cada camada de uma SDN, existem diversos componentes essenciais para o seu funcionamento, sendo eles divididos da seguinte forma:

  • Controladores: O controlador é a parte central da camada de controle de uma SDN. Ele recebe informações dos aplicativos e políticas de rede da camada de aplicação e traduz essas políticas em instruções compreensíveis pelos dispositivos de rede na camada de infraestrutura. O controlador SDN também se comunica com a camada de infraestrutura por meio de APIs no sentido sul;
  • Dispositivos Programáveis : Esses são os dispositivos (normalmente switches e roteadores) que recebem a informação do controlador através da Southbound para montar seu plano de dados. Após o recebimento das informações do controlador, as decisões do que será feito com os pacotes já pode ser tomada. A capacidade de programar e controlar esses dispositivos por meio de software é uma das principais vantagens da SDN, tornando a rede mais ágil, adaptável e eficiente;
  • Protocolos de Comunicação: Os protocolos de comunicação desempenham um papel essencial na SDN ao permitir a comunicação entre os diferentes componentes da SDN, como o controlador, os dispositivos de rede e os aplicativos. Existem muitos protocolos e padrões relacionados que podem ser utilizados em implementações de SDN, sendo o Openflow amplamente utilizado. A escolha do protocolo depende das necessidades específicas da implementação e da interoperabilidade com os dispositivos de rede.

FERRAMENTAS

Controladores

  • NOX

NOX foi o primeiro controlador OpenFlow criado, ele foi escrito em C++ e também fornece uma API para Python. Ele serviu de base para várias pesquisas e desenvolvimento de projetos no começo do conjunto OpenFlow e SDN.

Ele possui duas linhas de desenvolvimento, o NOX-Classic e o "new NOX". O primeiro apresenta suporte para as linguagens Python e C++ e possui diversas aplicações em redes, enquanto o segundo apresenta suporte apenas para C++ e apesar de ter menos aplicações em redes comparado ao NOX-Classic ele é muito mais rápido e apresenta uma linha de código mais limpa.

POX é uma versão do NOX que suporta apenas a linguagem Python, seu objetivo primário é o foco em pesquisas, pode ser considerado um controlador OpenFlow genérico de código aberto escrito em Python, sendo uma plataforma para rápido desenvolvimento de pesquisas na área de redes.

  • Beacon

Beacon é um controlador de código aberto que está em desenvolvimento desde 2010. Ele é um controlador rápido, multiplataforma, baseado em Java que suporta operações baseadas em eventos ou threads.

  • FloodLight

FloodLight é também um controlador OpenFlow de código aberto baseado em Java. Ele é um dos controladores mais populares utilizados em SDN inclusive obtendo suporte de uma grande comunidade de desenvolvedores, incluindo engenheiros de software de grandes empresas.

  • Open DayLight

O controlador OpenDaylight é um controlador com base em Java implementado somente em software e mantido em sua própria máquina virtual Java, com isso é possível ser implementado em hardwares e plataformas com suporte Java. Ele é um controlador modular multi-protocolo desenvolvido para a implantação de SDN em redes modernas heterogêneas de diversos fornecedores.

  • ONOS

Open Network Operating System, sigla ONOS, é um controlador SDN de código aberto que permite usabilidade em larga escala com um alto desempenho. ONOS suporta tanto configuração quanto controle em tempo real de uma rede, fornecendo seu próprio conjunto de abstrações e modelos de alto nível, com isso ele dispensa a necessidade de fazer um roteamento ou protocolos de controle através do comutador.

Open vSwitch

Open vSwitch é um comutador virtual com código aberto que implementa o protocolo OverFlow. Ao simular comutadores em ambientes virtuais, ele permite a comunicação de máquinas virtuais entre si ou com uma rede física. Como podemos ver na imagem a seguir, ele pode realizar a comunicação de múltiplas máquinas virtuais a um host físico, o caminho seguinte ao Open vSwitch é projetado para descarregar o processamento de pacotes para hardwares físicos, que podem estar alojados no comutador de um hardware clássico ou no terminal de um NIC (do inglês, Network Interface Card). Como também podemos ver na imagem abaixo, o Open vSwitch fornece ao usuário o controle de diversos recursos de segurança, monitoramento e qualidade de serviço (QoS).

Figura 2: Open vSwitch - imagem retirada do livro: Software Defined Networking por Patricia A. Morreale e James M. Anderson

FlowVisor

FlowVisor é um controlador proxy que pode ser utilizado para adicionar uma camada de virtualização em uma rede OpenFlow. Ele permite que múltiplos controladores controlem simultaneamente grupos de comutadores sobrepostos.

Ele facilita a implementação de novos serviços em ambientes SDN além de garantir um isolamento entre os controladores, fazendo com que cada um seja responsável pelo seu pedaço de rede. Segue um exemplo retirado do livro Software Defined Networking por Patricia A. Morreale e James M. Anderson demonstrando como é sua atuação em uma rede SDN.

Figura 3: FlowVisor - imagem retirada do livro: Software Defined Networking por Patricia A. Morreale e James M. Anderson

RouteFlow

Routeflow é um projeto de código aberto que oferece uma virtualização do roteamento IP utilizando o protocolo OverFlow. Ele é composto por uma aplicação do controlador OverFlow, um servidor independente e um ambiente de rede virtual que reproduz a conectividade de uma infraestrutura física e executa mecanismos de roteamento IP. Os componentes principais do Routeflow são o Routeflow Client (RF-Client) , Routeflow Server e Routeflow Proxy (RF-Proxy), o último também conhecido originalmente como RF-Controller (RF-C).

O objetivo principal do RouteFlow é desenvolver uma estrutura de código aberto para soluções de um roteamento IP virtual utilizando hardwares comuns que implementam um API OverFlow, a imagem a seguir retirada do livro Software Defined Networking por Patricia A. Morreale e James M. Anderson exemplifica bem o funcionamento da aplicação RouteFlow em uma SDN.

Figura 4: RouteFlow - imagem retirada do livro: Software Defined Networking por Patricia A. Morreale e James M. Anderson

OpenFlow

Na arquitetura SDN, Openflow é a primeira interface de comunicação entre o controlador e as camadas seguintes. Ele permite acesso direto e manipulação dos dispositivos de redes como comutadores e roteadores, tanto fisicamente quanto virtualmente. Com isso ele garante que haja uma separação do plano de controle do plano de dados em uma rede.

Figura 5: OpenFlow - imagem retirada do livro: Software Defined Networking por Patricia A. Morreale e James M. Anderson

  • Comutador OpenFlow

Em um comutador OpenFlow, o cabeçalho de pacotes é comparado a dados que estão armazenados na tabela de fluxo. Assim sendo, todo comutador OpenFlow deve conter ao menos uma tabela de fluxo, podendo possuir múltiplas tabelas. A entrada de cada tabela de fluxo do comutador contém as seguintes três informações:

  • Os dados que são usados para corresponder aos campos nos pacotes recebidos;
  • Contadores usados para acompanhar o número de correspondências que foram feitas até então;
  • Por fim, as instruções a serem executadas em caso de uma correspondência bem sucedida.
  • Protocolo OpenFlow

O comutador Openflow está conectado a um controlador externo através de um canal Openflow. É através desta interface que o controlador consegue configurar e administrar o comutador, recebe eventos e envia pacotes para fora dele. Há três tipos de trocas de mensagem entre o comutador e o controlador: controlador para comutador, assíncrona e simétrica.

Mensagens do tipo controlador para comutador são usadas para gerenciamento direto ou para inspecionar o estado do comutador e elas são inicializadas pelo controlador, além disso, elas não necessariamente precisam de uma resposta do comutador. As mensagens assíncronas são usadas para atualizar o controlador com eventos da rede e mudanças no estado do comutador, elas são inicializadas pelo comutador. As mensagens simétricas são enviadas sem que haja uma solicitação e podem ser inicializadas tanto pelo controlador quanto pelo comutador.

APLICAÇÕES

Globalmente, as aplicações SDN estão desempenhando um papel importante na transformação da infraestrutura de rede para atender às crescentes demandas de aplicações e serviços, tornando as redes mais flexíveis, adaptáveis e eficientes. Elas podem proporcionar interfaces de programação de aplicativos em um nível superior, permitindo que outras aplicações ou sistemas interajam com o controle de rede abstraído fornecido pelo SDN. Sendo assim, falaremos a seguir de algumas aplicações que estão surgindo e atraindo cada vez mais o investimento de empresas.

SDMN (A Rede Móvel Definida por Software)

A Rede Móvel Definida por Software (SDMN) baseia-se nos princípios da SDN, que envolvem a separação do plano de controle da rede do plano de dados, mas é aplicada especificamente a ambientes de redes móveis. Ela representa uma evolução significativa no campo das redes móveis, à medida que as operadoras buscam maneiras de melhorar a flexibilidade e a eficiência de suas redes para atender às crescentes demandas dos usuários e às complexas necessidades de serviços móveis, como 5G e IoT (Internet das Coisas). Ela oferece a possibilidade de redes móveis mais ágeis e adaptáveis, capazes de atender às necessidades em constante mudança do mercado.

Esse tipo de rede visa virtualizar e programar a infraestrutura de rede móvel, permitindo que os operadores de rede controlem e configurem recursos de rede de forma flexível, adaptando-se às necessidades específicas de aplicativos e serviços. Além disso, as características específicas dos protocolos, que normalmente estariam incorporadas em hardware especializado, são implementadas em software, fazendo com que a funcionalidade da rede possa ser alterada, atualizada e adaptada mais facilmente, sem a necessidade de hardware personalizado.

Entretanto, a implementação da SDMN em redes móveis enfrenta desafios, como a necessidade de atualizar infraestruturas legadas, questões de segurança e escalabilidade. Além disso, a adoção da SDMN pode variar de acordo com a região e o operador de rede.

SD-(WAN/LAN)

O SD-WAN (Software Defined Wide Area Network) é uma aplicação específica de SDN que se concentra na otimização e gerenciamento de redes em áreas geograficamente distribuídas. Ela simplifica o gerenciamento das redes através do conceito de separação da camada de controle da camada de dados. A simplicidade na implementação, o gerenciamento centralizado e os custos reduzidos fazem do SD-WAN uma escolha atrativa para muitas empresas, sendo mais econômica do que uma arquitetura WAN (Wide Area Network) tradicional. Na ilustração abaixo, podemos comparar ambas arquiteturas.

Figura 6: WAN vs SD-WAN - imagem retirada de https://www.voipconsult.com.br/fortigate-sd-wan-fortinet/

Já no caso do SD-LAN (Software Defined Local Area Network) é uma abordagem que aplica os princípios da SDN para redes locais, como aquelas encontradas em ambientes corporativos, campi universitários ou instalações industriais, buscando trazer inovação e eficiência para esse tipo de rede e representando uma evolução na forma como as redes locais são projetadas e gerenciadas. Ele permite que as configurações de rede sejam adaptadas dinamicamente, atendendo às mudanças nas necessidades de dispositivos e aplicações.

Ambos têm pontos positivos em comum, tais como a centralização do controle, a redução da dependência de hardware proprietário e a simplificação da gestão, consequentemente resultando em economias significativas.

SDN em datacenter

A SDN em datacenters é uma abordagem que reestrutura o gerenciamento de redes ao centralizar o controle, possibilitando uma gestão mais eficiente e flexível dos recursos de rede. Caracterizada pela programabilidade, virtualização e alocação dinâmica de recursos, a SDN em datacenters ajuda a realizar o cálculo de rotas do datacenter dentro do software, otimizando operações, melhorando desempenho e segurança, além de integrar-se a sistemas de orquestração de nuvem. Essa abordagem promove uma infraestrutura mais ágil e adaptável às demandas de aplicativos e serviços.

SDN em QoS

Ao fornecer uma gestão centralizada e flexível, a SDN em QoS contribui para uma distribuição eficaz de recursos de rede e adaptação dinâmica às demandas variáveis, promovendo uma melhor qualidade de serviço em ambientes de rede. Como a programabilidade da SDN, é possível ajustar dinamicamente as prioridades de diferentes tipos de tráfego na rede e a alocação dinâmica de largura de banda com base nas necessidades em tempo real. Por exemplo, em momentos de alta demanda, a SDN pode priorizar o tráfego de vídeo para garantir uma transmissão contínua, assim como em aplicações críticas, como videoconferências ou transmissões ao vivo, a SDN pode obter mais largura de banda quando necessário.

Ademais, utilizando a segmentação da rede, a SDN pode isolar diferentes tipos de tráfego para garantir que aplicações sensíveis ao atraso não sejam impactadas por outros tipos de tráfego. Pode também monitorar ativamente a rede e responder ao congestionamento ajustando dinamicamente as rotas de tráfego para evitar gargalos, garantindo uma melhor QoS. E se houver mudanças nas condições da rede, como falhas de enlace ou picos repentinos no tráfego, ela pode ajustar automaticamente as políticas de QoS para manter um desempenho otimizado.

SEGURANÇA

Desafios

À medida que a Internet foi se expandindo, novas soluções de segurança foram criadas para proteger a camada de rede, como o IPSec (Protocolo de Segurança IP). No entanto, novas ameaças também surgiram, e a Internet ainda apresenta problemas de segurança. Redes tradicionais, como a Internet de hoje, são baseadas em software fechado sobre hardware proprietário. Isso dificulta a implantação de novas soluções de segurança, pois leva tempo para que o software da rede seja atualizado.

As redes definidas por software (SDNs) eliminam essa limitação ao separar os planos de dados e de controle. O controle, que é feito por software, não depende mais de hardware proprietário e pode ser atualizado imediatamente com novas soluções de segurança através da interface programável aberta das SDNs. A segurança em SDNs apresenta desafios e oportunidades únicas em relação às redes tradicionais.

Vantagens

  • Visibilidade e controle centralizados: O controlador SDN pode monitorar e controlar toda a rede, o que facilita a detecção e o tratamento de ameaças;
  • Atuação rápida: Novas soluções de segurança podem ser implementadas rapidamente nas SDNs por meio de atualizações de software.

Desvantagens

  • Ponto único de falha: O controlador SDN é um ponto único de falha, o que significa que um ataque bem-sucedido pode afetar toda a rede;
  • Arquitetura aberta: A arquitetura aberta das SDNs torna mais fácil para os atacantes descobrirem vulnerabilidades e incorporarem código malicioso na rede;
  • Mais pontos de ataque: A arquitetura SDN é dividida em três camadas, o que cria mais pontos de ataque do que nas redes tradicionais.

Ameaças

  • DoS eDDoS no controlador

Ataques de negação de serviço (DoS) e ataques distribuídos de negação de serviço (DDoS) são ataques que visam sobrecarregar uma rede com uma quantidade enorme de pacotes. O objetivo é tornar os recursos da rede indisponíveis para os usuários legítimos.

A principal diferença entre os dois tipos de ataque é o número de máquinas envolvidas. No ataque DoS, apenas uma máquina é utilizada para enviar os pacotes. No ataque DDoS, várias máquinas zumbis, controladas pelo atacante, são utilizadas para enviar os pacotes.

Com o OpenFlow habilitado, quando um pacote chega a um comutador e este não sabe como lidar com ele, o pacote é encaminhado ao controlador. Isso pode sobrecarregar o controlador, pois ele terá que lidar com uma quantidade enorme de pacotes.

A imagem abaixo ilustra um ataque de negação de serviço:

Figura 7: Ataque DDoS - imagem retirada de https://servermedia.com.br/blog/?p=849

  • Acesso Ilegal

As SDNs são uma nova arquitetura de rede que centraliza o controle da rede em um controlador. Isso permite uma maior flexibilidade e controle, mas também apresenta algumas vulnerabilidades de segurança. Uma das principais vulnerabilidades das redes SDN é o acesso privilegiado das aplicações que são executadas no controlador. Essas aplicações têm acesso a todos os recursos e ao controle da rede, o que as torna um alvo atraente para ataques. Outra vulnerabilidade é o fato de que a maioria das aplicações SDN não são desenvolvidas pelos fabricantes dos comutadores. Isso significa que não existe um mecanismo padrão de segurança para essas aplicações, o que pode levar a vulnerabilidades adicionais.

Apesar dessas vulnerabilidades, existem diversas propostas de soluções para mitigar esses riscos. Uma dessas propostas é o sistema PermOF, que busca eliminar a ameaça através da minimização dos privilégios das aplicações executadas no controlador. O surgimento de tantas propostas foi facilitado pelo fato de as redes SDN serem programáveis. Isso permite que os desenvolvedores criem novas aplicações e mecanismos de segurança de acordo com as necessidades específicas de cada rede.

Portanto, embora as redes SDN apresentem algumas vulnerabilidades, é possível mitigar esses riscos através de medidas de segurança adequadas. Com isso, as redes SDN podem ser uma solução segura e eficiente para as redes de computadores do futuro.

CONCLUSÃO

Por um longo período, as redes tradicionais desempenharam um papel dominante no cenário tecnológico, impulsionando significativos avanços nesta área. Contudo, ao longo do tempo, tornou-se evidente que essas redes não estavam mais alinhadas com as demandas da era tecnológica, incapazes de se adaptar prontamente às mudanças nas regras de negócios dos clientes, entre outros desafios. As redes definidas por software emergiram como uma solução para essas questões, permitindo que os switches respondessem de maneira ágil e escalável às instruções provenientes da camada de controle. Todas as suas vantagens tornam a SDN uma abordagem atraente para modernizar infraestruturas de rede, especialmente em ambientes onde a agilidade, a eficiência operacional e a capacidade de adaptação são cruciais.

Referências

[1] MORREALE, Patricia A. e ANDERSON, James M. Software Defined Networking. 2014. Acesso em: 17/10/2023

[2] GORANSSON, Paul, BLACK, Chuck e CULVER, Timothy. Software Defined Networks: A Comprehensive Approach. 2017. Disponível em: https://books.google.com.br . Acesso em: 17/10/2023

[3] GUEDES, Dorgival, VIEIRA, Luiz Filipe Menezes, VIEIRA, Marcos Menezes, RODRIGUES, Henrique e NUNES, Rogério Vinhal. Redes Definidas por Software: uma abordagem sistêmica para o desenvolvimento das pesquisas em Redes de Computadores. 2017. Disponível em: https://homepages.dcc.ufmg.br . Acesso em: 16/10/2023

[4] Autor desconhecido. O que é SDN? Entenda o conceito de software defined network. Disponível em: https://stefanini.com/ . Acesso em: 17/10/2023

[5] Autor desconhecido. What is Software-Defined Networking (SDN). Disponível em: https://www.vmware.com . Acesso em: 17/10/2023

[6] Autor desconhecido. Software-Defined Networking. Disponível em: https://www.cisco.com . Acesso em: 17/10/2023

[7] Peterson, Cascone, O'Connor, Vachuska, e Davie. Software-Defined Networks: A Systems Approach. Disponível em: https://sdn.systemsapproach.org . Acesso em: 19/10/2023

[8] Autor desconhecido. Software defined Networking(SDN). Disponível em: https://www.geeksforgeeks.org . Acesso em: 19/10/2023

[9] SOMA, Renato Yoshio e DE SOUZA, Wilson Rodolfo. Introdução a SDN e OpenFlow. Disponível em: https://www.ic.unicamp.br . Acesso em: 01/11/2023

[10] Autor desconhecido. ONOS: Open Network Operating System. Disponível em: https://opennetworking.org . Acesso em: 07/11/2023

[11] Autor desconhecido. Software-Defined Local Area Network (SD-LAN). Disponível em: https://opennetworking.org . Acesso em: 07/11/2023

[12] Autor desconhecido. O que é uma SD-WAN?. Disponível em: https://www.cloudflare.com . Acesso em: 08/11/2023

[13] Autor Desconhecido. Software-defined networking. Disponível em: https://en.wikipedia.org . Acesso em: 08/11/2023

Perguntas

1. O que é SDN?

SDN, ou Software Defined Networking, é uma arquitetura de rede que separa o controle da rede da sua infraestrutura física. Isso permite que os administradores de rede configurem e gerenciem a rede de forma mais centralizada e eficiente.

2. Cite e explique um dos principais componentes da arquitetura SDN.

  • Controlador SDN: O controlador SDN é responsável pelo controle da rede. Ele recebe informações sobre o estado da rede e usa essas informações para tomar decisões sobre como rotear o tráfego.
  • Switches SDN: Os switches SDN são os dispositivos de rede que implementam os protocolos SDN. Eles enviam informações sobre o seu estado para o controlador SDN.
  • APIs SDN: As APIs SDN permitem que os administradores de rede interajam com o controlador SDN.

3. O que é o protocolo OpenFlow?

Na arquitetura SDN, Openflow é a primeira interface de comunicação entre o controlador e as camadas seguintes. Ele permite acesso direto e manipulação dos dispositivos de redes como comutadores e roteadores, tanto fisicamente quanto virtualmente. Com isso ele garante que haja uma separação do plano de controle do plano de dados em uma rede.

4. Explique o funcionamento básico e a sua principal diferença entre os ataques DoS e DDoS.

Com o OpenFlow habilitado, quando um pacote chega a um comutador e este não sabe como lidar com ele, o pacote é encaminhado ao controlador. Isso em larga escala pode sobrecarregar o controlador, pois ele terá que lidar com uma quantidade enorme de pacotes. A principal diferença entre os dois tipos de ataque é o número de máquinas envolvidas. No ataque DoS, apenas uma máquina é utilizada para enviar os pacotes. No ataque DDoS, várias máquinas zumbis, controladas pelo atacante, são utilizadas para enviar os pacotes.

5. Como a arquitetura SDN pode auxiliar no QoS?

Ao fornecer uma gestão centralizada e flexível, a SDN em QoS contribui para uma distribuição eficaz de recursos de rede e adaptação dinâmica às demandas variáveis, promovendo uma melhor qualidade de serviço em ambientes de rede. Como a programabilidade da SDN, é possível ajustar dinamicamente as prioridades de diferentes tipos de tráfego na rede e a alocação dinâmica de largura de banda com base nas necessidades em tempo real.

Declaração de autoria

"Este trabalho foi totalmente produzido pelos autores que declaram não terem violado os direitos autorais de terceiros, sejam eles pessoas físicas ou jurídicas. Havendo textos, tabelas e figuras transcritos de obras de terceiros com direitos autorais protegidos ou de domínio público tal como idéias e conceitos de terceiros, mesmo que sejam encontrados na Internet, os mesmos estão com os devidos créditos aos autores originais e estão incluídas apenas com o intuito de deixar o trabalho autocontido. O(s) autor(es) tem(êm) ciência dos Artigos 297 a 299 do Código Penal Brasileiro e também que o uso do artifício de copiar/colar texto de outras fontes e outras formas de plágio é um ato ilícito, condenável e passível de punição severa. No contexto da Universidade a punição não precisa se restringir à reprovação na disciplina e pode gerar um processo disciplinar que pode levar o(s) aluno(s) à suspensão;"