Introdução
A necessidade de redes programáveis
Redes são parte crítica da vida humana. Devido à enorme quantidade de equipamentos instalados, e ao número de protocolos existentes, estas são de tal modo ossificadas que tornou-se difícil testar novas ideias, como, por exemplo, novos protocolos. Como resultado, a maioria das novas ideias da comunidade de pesquisa acaba não sendo devidamente testada, nunca adquirindo a confiança necessária para sua propagação.
Então, o conceito de redes programáveis emergiu. Estas exigem comutadores e roteadores programáveis, que podem processar pacotes para múltiplas redes experimentais simultaneamente, através da virtualização.
A maioria dos equipamentos de rede são proprietários (havendo pouca padronização) e, em geral, os vendedores não se interessam por disponibilizar uma plataforma aberta e programável para seus comutadores e roteadores, de modo que pesquisadores possam implantar novos protocolos.
A intenção é resolver estes problemas através da flexibilidade, possuindo 4 objetivos principais, sendo a rede:
- passível de alto desempenho com baixos custos de implementação
- capaz de suportar uma ampla gama de pesquisa
- capaz de separar o tráfego de experimentos do de produção
- consistente com a necessidade de vendedores para plataformas fechadas