Переполнение буфера можно избежать только своевременно вычитывая данные.Если используется протокол raw, то каждый write сформирует свой кадр HDLC. Если используется протокол packet, то мелкие порции данных могут объединяться.