Xon / Xoff (a volte scritto "X-on / X-off" o "XON / XOFF" e pronunciato eks-AWN eks-AWF) è un protocollo per controllare il flusso di dati tra computer e altri dispositivi su una connessione seriale asincrona . Ad esempio, un computer in genere invia i dati a una stampante più velocemente di quanto la stampante possa stampare. La stampante contiene un buffer in cui vengono memorizzati i dati finché la stampante non raggiunge il computer. Se il buffer si riempie prima che la stampante lo raggiunga, un piccolo microprocessore nella stampante invia un segnale X / off per interrompere l'invio dei dati. Quando viene stampato un numero sufficiente di dati e la memoria buffer diventa libera, la stampante invia un segnale X / on dicendo al computer di riprendere l'invio dei dati.
La "X" sta per "trasmettitore", quindi X / on e X / off sono segnali per accendere o spegnere un trasmettitore. Il segnale effettivo per X / on è la stessa configurazione di bit della combinazione di tasti Ctrl-Q ASCII. Il segnale X / off è il carattere Ctrl-S.
Quando si definisce il modem per il sistema operativo del computer, potrebbe essere necessario specificare l'uso del controllo di flusso con X / on / Xoff o con CTS / RTS (Clear to Send / Ready to Send). Quando si inviano dati binari, Xon / Xoff potrebbe non essere riconosciuto perché è codificato in caratteri.