Когда вы отправляете данные в TCP, вам не нужно беспокоиться об управлении потоком, потому что TCP делает это за вас - вы можете отправлять данные так быстро, как вам нравится, и метод записи будет блокироваться, если вы отправляете его слишком быстро.
Это не относится к UDP, запись вашего пакета будет выполнена и немедленно возвращена, но если вы отправляете слишком много пакетов слишком быстро, он просто отбрасывается. Это может произойти в любом месте на линии от вашей ОС, через все маршрутизаторы и сетевые устройства до другой машины.
Поэтому вам нужно иметь какую-то схему, которая ограничивает поток пакетов самостоятельно. Чтобы проверить, является ли это проблемой, просто вставьте сон между каждой отправкой. Если вы обнаружите, что отправляете 1 пакет в секунду или 10 в секунду, все они проходят, затем, когда вы удаляете режим сна, вы возвращаетесь к 20 секундам, и ничего, и вы ничего не знаете в течение нескольких минут, потому что ваш контроль потока недостаточен.