Eis o SONiC, o “novo” sistema operacional de rede baseado em Linux!

Há alguns anos, havia feito uma postagem sobre um webinar da Dell, no qual a empresa promovia a utilização do sistema operacional SONiC (Software for Open Networking in the Cloud) nos dispositivos da sua infraestrutura de redes. Na época, não sabia da sua existência e por isto, salvei a seção do Wikipédia para dar uma olhada com mais calma. E decidi não só fazer isto hoje, como também aproveitar a oportunidade para publicar mais uma coluna neste humilde site…

Acreditem, se quiser: o SONiC (não confundir com o famoso porco-espinho que se tornou o mascote da SEGA) foi desenvolvido pela Microsoft, em parceria com a Open Compute Project (OCP)! Inicialmente, a empresa o desenvolveu para prover suporte aos switches utilizados em seus datacenters (Azure). Posteriormente, ela cedeu o sistema para a Fundação Linux e desde então, esta última (juntamente com o OCP) promove o desenvolvimento do projeto através da SONiC Foundation, além de reunir vários membros e colaboradores que fazem parte da indústria de TI.

Para se ter uma idéia do seu alcance, a sua comunidade possui +850 membros e o sistema operacional é suportado por +100 plataformas de hardwares diferentes, segundo consta na Wikipedia! Por se tratar de um NOS (Network Operating System), ele é designado para prover suporte para os dispositivos de redes, destacando-se os routers & switches (e seus ASICs) de diferentes fabricantes. A arquitetura do sistema desacopla a parte lógica (software) da parte física (hardware), sendo este último acessado através de uma API que faz a abstração do hardware.

Dentre os recursos suportados, estão o protocolo de roteamento externo Border Gateway Protocol (BGP), o acesso remoto direto à memória (RDMA), os mecanismos de controle de tráfego designados para garantir a Qualidade de Serviço (QoS) e várias outras tecnologias compatíveis com os padrões Ethernet/IP. As bases de código que fornecem o suporte para os protocolos de roteamento, são obtiddas a partir da suíte FRRouting (um fork do Quagga), designada para os sistemas operacionais baseados em Unix (Linux, Solaris, OpenBSD, FreeBSD e NetBSD).

Por se tratar de um sistema de código aberto, as licenças adotadas são a General Public License (GNU GPL) e a Apache (até o momento, não encontrei informações mais detalhadas sobre as partes do sistema que adotam as respectivas licenças). Além disso, o GitHub não só hospeda o código-fonte do sistema, como também toda a documentação do projeto e oferece até mesmo uma seção Wiki com guias e manuais, para auxiliar na busca das informações desejadas. E a julgar pelo material que se encontra disponível, o desenvolvimento segue à todo vapor!

O que esperar do SONiC (e de outras iniciativas que fazem o uso de sistemas operacionais baseados em GNU/Linux e são baseadas nos princípios do código aberto)? Nem preciso dizer que, por ser um linuxer “de carteirinha”, entusiasta do Software Livre e especialista em infraestrutura de redes & segurança, torço muito para que este projeto não só “cresça e apareça”, como também traga uma série de melhorias para todos os projetos correlacionados, com destaque para o kernel Linux. E de quebra, consolidar (ainda mais) os sistemas GNU/Linux!

E se tudo der certo, também se destacar no segmento dos desktops… &;-D