Intel sviluppa uno stack di rete Linux ottimizzato per i sistemi SoC

Di - 8 May 2014 - in
Post image for Intel sviluppa uno stack di rete Linux ottimizzato per i sistemi SoC

Intel sta sviluppando una versione del protocollo di rete Linux specificatamente ottimizzata per i sistemi hardware embedded come, in particolare, Intel Quark.

I sistemi SoC (System on a Chip) sono sempre più popolari soprattutto per il fatto di garantire tutte le funzionalità di un personal computer racchiuse in una piattaforma di piccole dimensioni, più precisamente un singolo chip.

Il motivo della crescente popolarità delle piattaforme SoC è legata a stretto giro con il concetto di internet of things, un movimento incentrato sull’estensione delle funzionalità di internet agli oggetti e ai luoghi fisici. Un esempio di internet of things è la branca del wearable computing che si propone di innestare apparati “intelligenti” all’interno di capi o accessori d’abbigliamento.

Vi è tuttavia una problematica importante quando si parla di far girare sistemi operativi Linux su piattaforme Intel Quark o similari.

Questi sistemi hanno una disponibilità di memoria RAM limitata, pari a circa 2-4 MB. L’implementazione del protocollo di rete IPv4 in Linux occupa attualmente circa 400 KByte di solo testo, cosa assolutamente proibitiva per sistemi con 2 MB di RAM e molto onerosa per quelli a 4 MB.

Per questo motivo Intel e più precisamente un suo sviluppatore di nome Andi Kleen, ha annunciato di essere al lavoro per rilasciare un subset del protocollo TCP/IP di Linux più leggero e quindi adatto ai sistemi SoC molto piccoli.

Il problema dello stack di rete nativo del kernel Linux, non è secondo Andi Kleen tanto quello di essere pesante, quanto quello di essere molto ricco di funzionalità. Fortunatamente diverse di queste funzionalità non sono necessarie ai sistemi micro SoC di Intel ed inoltre lo stack nativo risulta essere molto ben costruito in quanto a modularità.

Attualmente il lavoro è suddiviso in tre configurazioni principali:

  • sistema completo come attualmente implementato dal kernel
  • versione rivista ed ottimizzata per i SoC ma che funziona anche con le distribuzioni standard di Linux. Questa versione rimuove di alcune funzionalità oscure come fastopen, riduce la dimensione delle tabelle, usa una mappa di routing semplificata, rimuove alcune funzioni di networking ad alta velocità come RPX, XPS, GRO offload, disabilita le metriche legate a SNMP, TCP.
  • versione minimale per i sistemi integrati più spinti

Per chi fosse interessato ad analizzare il codice proposto da Andi Kleen di Intel, o volesse confrontare le ottimizzazioni fatte nelle versioni modificate del protocollo di rete, di seguito i repository Git del progetto.

Main tree: git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc net/debloat

3.14 based tree: git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc net/debloat-3.14

Fonte | Linux Kernel Archive

Leave a Reply

Gabriele Visconti Articolo scritto da

Editor in Chief per Engeene. Appassionato di Linux, FOSS, videogame e, da poco, di cucina. Parla quattro lingue ed ama leggere libri in lingua inglese.

Contatta l'autore

Previous post:

Next post: