Scheduler di rete

Abbozzo telematica
Questa voce sugli argomenti algoritmi e telematica è solo un abbozzo.
Contribuisci a migliorarla secondo le convenzioni di Wikipedia.
Packets queuing in a FIFO data structure.

Uno scheduler di rete (in inglese network scheduler o packet scheduler), è un programma che gestisce la sequenza di pacchetti di rete in una coda di trasmissione/ricezione di una scheda di rete. Esistono più scheduler disponibili per differenti kernel e che implementano differenti algoritmi di scheduling.

Funzionamento

Sezione vuotaQuesta sezione sull'argomento informatica è ancora vuota. Aiutaci a scriverla!

Algoritmi di scheduling

Col passare del tempo, sono stati ideati e sviluppati diversi algoritmi di scheduling di rete. Molti di questi sono stati implementati come Loadable Kernel Module[1] e sono disponibili gratuitamente:

  • AVQ (Adaptive Virtual Queue)[2]
  • CBQ (Class-based queueing)
  • CHOKe (CHOose and Keep for responsive flows, CHOose and Kill for unresponsive flows) variante dell'algoritmo RED (vedi sotto)
  • CoDel (Controlled Delay) e Fair Queue CoDel
  • Credit-based fair queueing
  • DRR (Deficit round robin) e DWRR, scritto da Patrick McHardy per il kernel Linux[3] e rilasciato sotto GNU General Public License
  • HFSC (Hierarchical Fair Service Curve)
  • NETEM Network emulator[4]
  • HTB (Hierarchy Token Bucket)[5]
  • QFQ (Quick Fair Queueing)[6]
  • FQ (Fair queueing) and WFQ (Weighted fair queueing)
  • pkt_sched: fq: Fair Queue packet scheduler[7]
  • RED (Random early detection) e le varianti ARED, GRED, RRED (Robust random early detection) WRED (Weighted random early detection)
  • SFB (Stochastic Fair Blue) e la variante Resilient SFB
  • SFQ (Stochastic Fairness Queueing)[8]
  • TBF (Token Bucket Filter)[9]
  • TEQL (Trivial Link Equalizer)
  • RR (Round-robin) e WRR (Weighted round robin)
  • PIE (Proportional integral controller enhanced)[10]
  • HFF (Heavy-hitter filter)[11]

Note

  1. ^ The Linux kernel network scheduler, su git.kernel.org, kernel.org, 26 dicembre 2012. URL consultato il 7 settembre 2013.
  2. ^ http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.108.4477&rep=rep1&type=pdf
  3. ^ DRR Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  4. ^ Network emulator Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  5. ^ HTB Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  6. ^ QFQ Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  7. ^ Fair Queue packet scheduler committed to Linux kernel 3.12, su git.kernel.org.
  8. ^ SFQ Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  9. ^ TBF Linux kernel network scheduler module, su git.kernel.org, kernel.org. URL consultato il 7 settembre 2013.
  10. ^ Proportional Integral controller Enhanced (PIE), su git.kernel.org, kernel.org.
  11. ^ Heavy-Hitter Filter qdisc, su git.kernel.org, kernel.org.

Bibliografia

  • James F. Kurose, Keith W. Ross, Internet e reti di calcolatori, 2ª ed., Milano, McGraw-Hill, 2003, pp. 545-552, ISBN 88-386-6109-X.

Voci correlate

  • Controllo della congestione
  • Traffic shaping
  • Type of Service
  • Coda (informatica)
    • Teoria delle code
    • Commutazione di pacchetto
    • FIFO
    • LIFO

Collegamenti esterni

  • (EN) Devavrat Shah, Network scheduling and message-passing (PDF), su web.mit.edu, Massachusetts Institute of Technology, p. 39. URL consultato il 10 settembre 2014 (archiviato dall'url originale il 2 gennaio 2016).
  Portale Informatica
  Portale Telematica