Calcolo della rete

3

Sono abbastanza sicuro che qualcuno ci abbia già pensato e lo abbia studiato a lungo, ma ho difficoltà a trovare materiali o parole chiave da cercare, per l'idea a cui stavo pensando recentemente.

Ho pensato a questo concetto, in cui nei sistemi distribuiti, il calcolo e l'elaborazione effettivi si sarebbero verificati sulla rete, piuttosto che sui nodi (server o client) sulla loro strada dall'origine alla destinazione. Laddove i router di rete oltre a instradare i pacchetti di rete sul nodo successivo fino alla consegna alla destinazione, eseguono anche alcune istruzioni incorporate in quei pacchetti.

Quindi, ad esempio, un pacchetto di rete verrebbe diviso in due aree: dati e istruzioni (+ alcune intestazioni) e quando un router instrada un pacchetto sul router successivo, invierebbe un pacchetto trasformato secondo le istruzioni incorporate:

+----------------------+
|Network Packet Headers|
+----------------------+
| DATA SLOT 1          |
| DATA SLOT 2          |
| ..........           |
| DATA SLOT N          |
+----------------------+
| Increment slot1      |
| SLOT3 = SLOT1 + SLOT2|
+----------------------+
| instruction ptr      |
+----------------------+

In modo che quando quei pacchetti di rete arrivassero alla loro destinazione, una parte di esso (a seconda di quanti cerchi doveva passare) sarebbe già stata calcolata (ad esempio audio decodificata, ecc.) scaricando entrambi gli endpoint.

I router sono tecnicamente in grado di farlo. Elaborano i dati in base ai valori del pacchetto di rete, ad esempio scegliendo dove inviare il pacchetto successivamente in base all'intestazione IP. Non c'è nulla che impedisca loro di essere utilizzati come "la vera nuvola", giusto? Ogni router eseguirà un pacchetto o un paio di istruzioni da quel pacchetto (e aggiornerà il puntatore dell'istruzione) a seconda delle sue risorse e capacità HW. Quindi un pacchetto di rete sarebbe uno stack frame anziché solo un pacchetto di rete.

Naturalmente, esiste un'intera classe di problemi associati a questo modello, come i dati di partizionamento (o anche la possibilità di farlo), ma è tutto basato su vecchi concetti di calcolo eterogeneo e programmazione funzionale.

Qualcuno potrebbe indicarmi una ricerca, materiali o progetti che trattano concetti simili?

Grazie!

    
posta Karim Agha 22.12.2012 - 06:44
fonte

1 risposta

2

I router sono molto specializzati e ottimizzati per fare proprio quello che fanno molto bene. Perché dovresti caricarli di compiti estranei e perché i fornitori di infrastrutture di rete dovrebbero essere interessati ad aggiungerli al loro onere?

Non riesco a pensare ad alcun compito computazionale generale che possa essere utile per questo tipo di metodologia, ma forse potrebbe essere preso in considerazione un qualche tipo di attività specifica della rete, ad esempio una sorta di routing "a cipolla", per nascondere l'origine del traffico di rete o, al contrario, aggiungendo alcune informazioni di tracciamento sulle condizioni lungo il percorso.

    
risposta data 23.12.2012 - 07:47
fonte

Leggi altre domande sui tag