Я пытаюсь получить больше информации о том, что происходит, когда я подключаюсь к веб-сайту на более низком уровне, чем это дает мне HttpWebRequest и HttpWebResponse. Я использую C#.Получить базовое соединение tcp из HttpWebRequest/Response
Я хотел был бы иметь возможность увидеть информацию о поиске dns и времени, необходимое для установления соединения (если было установлено новое соединение). HttpWebRequest и HttpWebResponse работают на более высоком уровне, чем это, и я хочу спросить, есть ли способ получить базовый объект TcpClient (или любой другой объект низкого уровня, который они используют).
Если это невозможно, то есть способ захватить и управлять списком соединений, которые поддерживает .net, не получая его через HttpWebRequest или HttpWebResponse?
Я не могу изменить приложение, над которым я работаю, использовать TcpClient, потому что было бы слишком трудоемким, чтобы надежно реализовать весь HTTP-файл.
Не уверен насчет «TcpClient», но я уверен, что они используют класс «Socket», поэтому ищите его. Кроме того, когда вы прерываете и отлаживаете, вы указываете объекты и видите даже их частные члены. Это должно дать вам какое-то направление. – Poni
Я не думал оглядываться на частных членов, спасибо. К сожалению, я не мог найти много. Я видел, что ServicePoint имеет непубличную переменную, называемую LastDnsResolve, которая, как я полагаю, занимает время последнего разрешения DNS. Я могу использовать это для небольшой части моей проблемы. – Zane