Passa al contenuto principale

18.3 Split Paths (Percorsi divisi)

18.3 Split Paths (Percorsi divisi)

Ci sono situazioni in cui un router malevolo o corrotto potrebbe avere accesso solo a una parte dei pacchetti in un flusso. La domanda è: quel router può causare maggiore danno al flusso modificando il campo ECN in quel sottoinsieme di pacchetti di quanto potrebbe causare semplicemente scartando quel set di pacchetti?

Classificheremo i pacchetti nel flusso come pacchetti A e pacchetti B, e assumeremo che l'avversario ha accesso solo ai pacchetti A. Supponiamo che l'avversario sovverta il controllo di congestione end-to-end lungo il percorso di trasporto dei pacchetti A solo indicando falsamente la capacità ECN a monte di dove si verifica la congestione sul percorso dei pacchetti A, o cancellando le indicazioni di congestione a valle. Consideriamo anche che esista un dispositivo di monitoraggio che vede sia i pacchetti A che B, e che "penalizzerà" i pacchetti A e B se determina che il flusso complessivo non sta rispondendo correttamente alle indicazioni di congestione. Un'altra caratteristica chiave che riteniamo possa essere vera è che il dispositivo di monitoraggio, prima di "penalizzare" il flusso A&B, prima sca

rterà i pacchetti invece di impostare il codepoint CE, e sca rterà i pacchetti in arrivo da quel flusso che hanno già il codepoint CE impostato. Se i nodi finali stanno effettivamente utilizzando il controllo di congestione end-to-end, vedranno tutte le indicazioni di congestione viste dal dispositivo di monitoraggio e inizieranno a rispondere a tali indicazioni di congestione. Pertanto, il dispositivo di monitoraggio riesce a fornire indicazioni al flusso in una fase iniziale.

In effetti, un avversario con accesso solo ai pacchetti A potrebbe essere in grado, sovvertendo il controllo di congestione basato su ECN, di negare i benefici di ECN agli altri pacchetti nell'aggregato A&B. Anche se questo è indesiderabile, questa non è una ragione per disabilitare ECN.

Una variante della segnalazione falsa di congestione è avere due avversari sul percorso, dove il primo avversario segnala falsamente congestione e il secondo avversario "cancella" quei rapporti. (A differenza della perdita di pacchetti, i rapporti di congestione ECN possono essere successivamente "annullati" nella rete da un router malevolo o corrotto. Tuttavia, l'uso del nonce ECN può aiutare il trasporto a rilevare questo comportamento.) Sebbene questo sia trasparente ai nodi finali, un dispositivo di monitoraggio tra il primo e il secondo avversario potrebbe vedere le indicazioni di congestione false. Si ricordi la raccomandazione in questo documento che prima di "penalizzare" un flusso per non rispondere adeguatamente alla congestione, un router passerà prima a scartare i pacchetti invece di contrassegnarli. In questo caso, i nodi finali riceveranno di nuovo indicazioni di congestione, anche se il secondo avversario riesce a cancellare i rapporti di congestione falsi avviati dal primo avversario.