Я думаю, что мощный инструмент socat может быть полезен здесь, он может перенаправить запрос на реальную конечную точку и, таким образом, вы можете иметь полный контроль над самим процессом socat для имитации того, что вы хотите (например, приостановка)процесс на определенном этапе с помощью kill -stop или около того)
один из моих вариантов использования состоит в том, что я просто хочу, чтобы мое клиентское приложение завершило рукопожатие с удаленной службой, но не считал больше данных:
socat -d -d -d TCP-LISTEN:22181,fork SYSTEM:'socat - "TCP:the-remote-host:2181" \| dd bs=1 count=50' &
вышеприведенный пример отправляет обратно только первые 50 байтов ответа.