Il Random early detection (o RED), in italiano rilevazione casuale anticipata è un meccanismo utilizzato per prevedere e prevenire l'insorgere della congestione nelle reti informatiche a pacchetto.
Segue l'approccio di aggiungere ai router poche funzionalità che assistono il nodo terminale nella previsione della congestione. Ogni router viene programmato perché tenga sotto controllo le proprie code e, quando si accorge che una congestione è imminente, segnala alle sorgenti di modificare la propria finestra di congestione. L'approccio RED è stato inventato da Sally Floyd e Van Jacobson nei primi anni ottanta. RED viene realizzato in modo da segnalare implicitamente alla sorgente la congestione, eliminando uno dei suoi pacchetti. Il router elimina alcuni pacchetti prima di esaurire completamente il suo spazio di memorizzazione nei buffer, per rallentare la sorgente con la speranza di non dover eliminare un numero maggiore di pacchetti in seguito.
La probabilità con cui un pacchetto può essere scartato è definita dalla lunghezza media della coda del router e da due soglie. Quando il router riceve un pacchetto decide se inserirlo in coda o meno secondo i seguenti criteri:
- se "lunghezza media coda < soglia inferiore" allora accoda il pacchetto;
- se "soglia inferiore < lunghezza media coda < soglia superiore" elimina il pacchetto con una certa probabilità che cresce linearmente con la lunghezza media della coda;
- se "lunghezza media coda > soglia superiore" elimina il pacchetto.