Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
На рисунке ниже показана базовая архитектура трассировки сети в Windows 7.
Сетевая трассировка использует платформу трассировки событий Windows (ETW), доступную в Windows. Сетевые компоненты (например, Winsock, TCP/IP, NDIS, сбор пакетов и т. д.) регистрируются в качестве поставщиков трассировки ETW и выдают события, связанные с сетевой активностью. Любой регистрируемый значительный процесс может быть записан как событие в ETW. Трассировка этих сетевых компонентов и перехват пакетов могут быть включены с помощью контекста netsh trace, который действует в качестве контроллера ETW.
Созданные трассировки собираются в файле журнала трассировки событий (ETL). Затем эти файлы ETL можно анализировать с помощью нескольких средств, таких как сетевой монитор 3.2 и более поздние версии, средство просмотра событий, netsh trace convertили Tracerpt.exe.
Каждое событие ETW имеет общий заголовок, в котором ETW хранит такие сведения, как свойства события, метки времени и идентификатор действия. (Дополнительные сведения об идентификаторах действий см. в разделе "Написание связанных событий в сквозном сценарии"). Идентификатор действия используется для сопоставления событий. В пользовательском режиме идентификаторы действий хранятся в потоках, а все события, зарегистрированные в одном потоке, автоматически будут помечены одним и тем же идентификатором действия. В режиме ядра идентификатор действия должен быть явно передан при регистрации события. По умолчанию файлы ETL используются для группировки событий под определенными идентификаторами активности.
Дополнительные сведения о событиях Windows и трассировке событий Windows (ETW) см. в Windows Events.
Компоненты ETW в трассировке сети
Трассировка сети использует ETW в качестве основного механизма трассировки для предоставления сведений о том, что делают сетевые подсистемы. В ETW есть четыре основных компонента: Сеансы трассировки событий, Поставщики событий, Контроллеры событий и Потребители событий.
Буферизация и ведение журнала происходят в сеансах трассировки событий, которые принимают события от поставщиков и создают файлы трассировки.
Поставщик событий — это логическая сущность, которая записывает события в сеансы ETW. Поставщик событий может быть приложением пользовательского режима, управляемым приложением, драйвером или любой другой сущностью программного обеспечения. Поставщики событий регистрируются в ETW и записывают события из различных точек кода путем вызова API ведения журнала ETW. Из-за растущего инструментирования событий во многих компонентах операционной системы даже простое приложение или сценарий в Windows будет содержать несколько компонентов, которые являются поставщиками событий.
Контроллер событий запускает и останавливает сеансы трассировки событий и включает поставщиков. Если поставщик событий включен динамически приложением контроллера событий, поставщик отправляет события в определенный сеанс трассировки событий, назначенный контроллером событий. Каждое событие, отправленное поставщиком событий в сеанс трассировки событий, состоит из фиксированного заголовка, который включает метаданные события и любые дополнительные пользовательские данные, зарегистрированные поставщиком.
потребитель событий — это приложение, которое читает журнальные файлы или прослушивает сеанс трассировки событий для обработки событий в реальном времени. Одним из примеров потребителя событий является Microsoft Network Monitor 3.2, который включает возможность чтения и отображения файлов журналов, созданных трассировкой сети в Windows 7.
События передаются потребителям событий в хронологическом порядке, и существуют различные приложения-получатели событий, отображающие события в определенных форматах. Когда событие регистрируется в сеансе, ETW добавляет дополнительные сведения в заголовок события, включая метку времени, идентификатор процесса и потока, номер процессора и данные об использовании ЦП потока ведения журнала. Затем эти данные передаются потребителям событий вместе с любыми пользовательскими данными, включенными поставщиком.
Поставщики, использующие новые API ведения журнала событий , должны предоставлять XML-файл с именем манифеста событий . Этот файл предоставляет метаданные для определения всех пользовательских данных и сведений о макете событий, создаваемых поставщиком. Затем приложение-получатель общего назначения использует вспомогательные данных трассировки (TDH) API для получения метаданных события, декодирования событий и их отображения.
При трассировке сети в Windows 7 контроллер событий или потребитель включает сквозную поддержку трассировки на основе сценария, интегрированную с общими возможностями диагностики и поддержки Windows. Сценарий определяет коллекцию поставщиков событий, участвующих в сценарии. Сторона контроллера событий или потребителя определяет сценарии (контексты), где можно использовать трассировку, включая соответствующих поставщиков для заданных сценариев в сетевых компонентах. Сторона поставщика событий включает стандартизированные события трассировки сети из разных компонентов в сетевом стеке, которые можно сопоставить с помощью идентификаторов действий ETW. Поставщики используют общую сетевую схему, которая стандартизирует использование концепций ETW, таких как ключевые слова, уровни, задачи и коды опкодов. Схема также определяет события, которые являются общими для многих сетевых компонентов, таких как события ошибки, события удаления пакетов, события схемы и события перехода состояния.