Разница между программным и аппаратным управлением потоком данных заключается в использовании различных протоколов для приостановки передачи данных, если приёмник не готов к их приёму. 19
Аппаратное управление потоком (RTS/CTS, Hardware Flow Control) использует два дополнительных управляющих сигнала: RTS (запрос на отправку) и CTS (разрешение на отправку). 58 Сигнал CTS (от приёмника к передатчику) позволяет приостановить передачу данных, если приёмник не готов к их приёму. 1 Передатчик «выпускает» очередной байт только при наличии активного сигнала на линии CTS. 1 Аппаратный протокол обеспечивает самую быструю реакцию передатчика на состояние приёмника. 1
Программное управление потоком (XON/XOFF, Software Flow Control) предполагает наличие двунаправленного канала передачи данных. 12 Если устройство, принимающее данные, обнаруживает причины, по которым оно не может их дальше принимать, оно по обратному последовательному каналу посылает байт-символ XOFF (13h). 12 Противоположное устройство (передатчик), приняв этот символ, приостанавливает передачу. 1 Когда принимающее устройство снова становится готово к приёму данных, оно посылает символ XON (11h), приняв который передатчик возобновляет передачу. 1 Преимущество программного протокола заключается в отсутствии необходимости передачи управляющих сигналов (уменьшение количества проводов в кабеле). 1