У вас недоразумение.Окно TCP предназначено для контроля количества данных в полете.Чтения приложений не всегда вызывают изменения окна TCP.Таким образом, запрашиваемая вами информация недоступна в том месте, где вы ищете.
Рассмотрим, например, если окно имеет размер 128 КБ и было отправлено восемь байтов.Принимающий стек TCP должен подтверждать эти восемь байтов независимо от того, считывает ли их приложение или нет, в противном случае для соединения TCP истечет время ожидания.Теперь представьте, что приложение читает один байт.Для стека TCP было бы бессмысленно увеличивать окно на один байт - и если используется масштабирование окна, он не может сделать это, даже если захочет.
Итогда что?Если через четыре секунды приложение считывает еще один байт, снова настроить окно?Какой смысл в этом?
Цель окна - контролировать поток данных между двумя стеками TCP, предотвращать бесконечный рост буферов и контролировать объем данных «в полете».Это только косвенно отражает то, что приложение прочитало из стека TCP.
Странно, что вы даже захотите этого.Даже если бы вы могли сказать, что было прочитано приложением, какое это может быть использование для вас?