Назначение и применение Tracert на практике. Анализ результатов трассировки

11 декабря 2016 в 17:48

Маленькие секреты трассировки плат с операционными и инструментальными усилителями

  • Tutorial
При проектировании плат
Ничто не обходится так дёшево,
И не ценится так высоко,
Как правильная трассировка.


В век интернета вещей и доступности изготовления печатных плат, причём не только по ЛУТ технологии, их проектированием часто занимаются люди, вся деятельность которых связана с цифровой техникой.

Даже при трассировке простой цифровой платы существуют негласные правила, которым я всегда следую в своих проектах, а в случае разработки измерительных устройств с цифроаналоговыми участками схем это просто необходимо.

В данной статье я хочу обратить начинающих проектировщиков на ряд элементарных приёмов, которые следует соблюдать чтобы получить устойчиво работающую схему и снизить погрешность измерения или минимизировать коэффициент искажений звукового тракта. Для наглядности информация изложена в виде рассмотрения двух примеров.

Пример номер два. Трассировка простой схемы операционного усилителя



Рис. 1. Схема усилителя на ОУ


Рис. 2. Два варианта трассировки платы усилителя на ОУ

Небольшой оффтопик, прямо не относящейся к теме сегодняшней статьи

Настоятельно советую применять этот же приём при подаче питания и на другие типы микросхем, особенно АЦП, ЦАП и многочисленные выводы питания микроконтроллеров. Если вы используете встроенные аналоговые модули микроконтроллера - ADC, DAC, компараторы, источники опорного напряжен не поленитесь заглянуть в даташит и посмотреть какие блокировочные конденсаторы в каком количестве и куда необходимо ставить. Не помешает цепь развязки в виде фильтра или хотя бы сопротивления между основным цифровым питанием микроконтроллера и аналоговым. Аналоговую землю лучше размещать отдельным полигоном или экранным слоем, и соединять с основной землёй в одной точке, в некоторых случаях полезно через фильтр


Элементы цепи обратной связи должны быть расположены как можно ближе к неинвертирующему входу, что минимизирует возможность наводок на высокоомную входную цепь.

Переходим к более серьёзному и интересному случаю из области измерений, где трассировка бывает архи важна.

Пример номер один. Трассировка монитора тока потребления на инструментальном усилителе


Рис. 3. Схема монитора тока с использованием инструментального ОУ

На рисунке представлена схема измерителя потребляемого тока. Измерительным элементом служит сопротивление шунта включенное в цепь питания. Нагрузка на которой измеряется ток - R load. Измеряемое напряжение снимается с сопротивления R shunt и фильтруется с помощью симметричной цепи на элементах R1,R2,C1-C3. Микросхема U2 служит для подачи опорного напряжения. R4, C5 - выходной фильтр.

При трассировке разумеется необходимо соблюдать все рекомендации которые были даны выше.


Рис. 4. Два варианта трассировки платы усилителя на инструментальном ОУ

Разберём недочёты, которые имеет левая схема:

  • Поскольку мы имеем дифференциальный вход, необходимо выполнить две его сигнальные цепи как можно более симметричными. Проводники сигнальных линий должны иметь одинаковую длину и располагаться близко друг к другу. В идеале на одинаковом расстоянии друг от друга;
  • Микросхему повторителя опорного источника необходимо располагать как можно ближе к входу опорного напряжения инструментального усилителя.
Соблюдая очень простые правила вы облегчаете себе жизнь. В одних случаях они просто не приносят вреда, в других могут существенным образом улучшить как устойчивость работы схемы в целом, так и точность измерений.

Не держите на стене заряженное ружьё. Однажды оно обязательно выстрелит и выберет для этого самый неудобный момент.

В данной теме я хочу поговорить об очень полезном инструменте — SQL Server Profiler.

Как описано на MSDN, приложение SQL Server Profiler - это графический пользовательский интерфейс для трассировки SQL, с помощью которого можно наблюдать за экземпляром компонента Database Engine. Приложение позволяет собирать и сохранять данные о каждом событии в файле или в таблице для последующего анализа. Данное приложение представляет исключительную важность в задачах анализа производительности исполняемых запросов, а также при анализе проблем параллельности работы в базе данных.

На текущий момент Microsoft продвигает другой аналогичный инструмент — Extended Events и рекомендует пользоваться им, тем не менее я считаю полезным уметь работать и с инструментом Profiler.

Настройка приложения

В профайлере, начиная с версии 2005, в настройках приложения присутствует флажок «Показывать значения в столбце «Продолжительность» в микросекундах» (Show values in Duration column in microseconds). Данный флажок управляет как отображением значения в соответствующей колонке, так и значением, устанавливаемым для отбора по данной колонке. На мой взгляд, при работе с Profiler удобнее использовать микросекунды, поэтому советую данный флажок установить. Настройка находится в меню Сервис (Tools) → Параметры (Options).

Общие параметры

Запуск трассировки в Profiler

Для того чтобы запустить новую трассировку в Profiler необходимо:

  1. Открыть приложение SQL Server Profiler
  2. Выбрать пункт основного меню «Файл» (File), в нем «Создать трассировку» (New Trace)
  3. В открывшемся диалоге подключиться к нужному экземпляру SQL Server
  4. В открывшемся окне настроить трассировку
  5. Запустить трассировку

Настройка трассировки

Из вышеприведенного списка действий, самым сложным (а по своей сути — единственным) является настройка трассировки. Она имеет множество вариантов, попробуем разобрать основные из них.

Вкладка общие

Первым пунктом предлагается задать имя трассировки, имя можно оставить по умолчанию, но если будет открыто несколько трассировок, удобно именовать их чем-то осознанным.

Следующим пунктом предлагается выбрать шаблон трассировки из списка. В данном списке приводятся некоторые предопределенные шаблоны трассировок. Помимо этого, шаблоны можно дополнить своими, пользовательскими шаблонами. Данная возможность облегчит вам жизнь, поскольку каждый раз настраивать с нуля — не самое приятное занятие.

Вывод данных трассировки может происходить:

  1. На экран в новом окне — вывод происходит на экран, при этом в дальнейшем трассировку можно будет сохранить как в файл, так и в таблицу в СУБД (даже если опции записи в файл и/или таблицу не были включены)
  2. Записывать в файл на диске (опционально) — дополнительно к выбранным опциям, данные будут записываться в файл на диске. Далее этот файл можно открыть через профайлер. Эта опция удобна для сохранения и/или для передачи трассировки.
  3. Записывать в таблицу базы данных (опционально) — дополнительно к выбранным опциям, данные будут записываться в таблицу базы данных. Далее, посредством возможностей предоставляемых СУБД, можно произвести анализ данных, например, найти самые длительные события или просуммировать общую длительность.

Последним пунктом настройки предлагается установить время остановки трассировки, если это требуется.

Перед продолжением настройки установим шаблон «Пустой» (Blank), имя трассировки может быть произвольным, все остальные флажки могут быть сняты.


Основные свойства трассировки

Вкладка выбора событий

Событие - это действие экземпляра SQL Server Database Engine. Для анализа проблем, возникающих при работе с 1С, существуют определенные наборы событий, с которыми необходимо уметь работать.

Выбор событий — это основная часть настройки трассировки, он предполагает работу с матрицей: «Событие» — «Свойство события». Таким образом, в этой матрице надо установить флажки по тем событиям и их свойствам, которые мы хотим трассировать.

Помимо матрицы событий и их свойств, на форме присутствуют флажки: «Показать все события» (Show all events) и «Показать все столбцы» (Show all columns). При установленном флажке в матрице раскрываются все события/столбцы, при снятом остаются только выбранные. Помимо этого, флажок «Показать все столбцы» влияет на отображение данных в «Фильтры столбцов» — отображаемый список соответствует отображаемым столбцам в матрице. При этом, даже если столбец скрыт (не выбран в матрице и снят флаг «Показать все столбцы»), но отбор на него был установлен — отбор сработает.

«Фильтры столбцов» (Column Filters) — открывает список столбцов по которым можно установить отборы. Если значение события при трассировке не подходит под значение отбора в столбце, данное событие не будет отражено в трассировке. Таким образом, можно установить отбор на информационную базу, по которой необходимо произвести трассировку.

«Упорядочить столбцы» (Organize Columns) — используется для изменения (организации) порядка следования выводимых колонок.


Выбор событий трассировки

События для получения плана выполнения запроса

Для того чтобы получить план запроса в Profiler следует добавить следующие события:

Помимо вышеприведенных событий, для получения полной картины происходящего полезно добавить события:

Среди столбцов, выводимых в трассировке, рекомендуется включить: TextData, BinaryData, Reads, Writes, CPU, Duration, SPID.


События для получения плана выполнения запроса

Также полезно установить фильтры по длительности и базе данных. Как это сделать описано ниже в статье.

Другие способы получения плана запроса (без использования Profiler) описаны в статье «Методы получения плана запроса в СУБД MS SQL Server»

События для получения графа взаимоблокировки

Для получения графа взаимоблокировки достаточно добавить одноименное событие Locks: Deadlock graph.

Событие Deadlock graph возникает одновременно с классом событий Lock: Deadlock. Класс событий Deadlock graph предоставляет XML-описание взаимоблокировки.

Среди столбцов, выводимых в трассировке, рекомендуется включить: EventSequence, SPID, StartTime, TextData.


События для получения графа взаимоблокировки

События для получения информации об эскалации

Для получения информации об эскалации достаточно добавить событие Locks: Escalation.

Событие Escalation возникает при эскалации блокировки, т.е. когда блокировка более мелких фрагментов преобразуется в блокировку более крупных фрагментов.

Также можно ограничить набор выводимых колонок теми данными, которые требуются для анализа.


События для получения информации об эскалации

Установка фильтров столбцов

Установить фильтры можно нажав на кнопку «Фильтры столбцов».


Установка отборов по столбцам

Важно понимать, не все события содержат те или иные колонки. Если событие не содержит колонку по которой установлен фильтр, данное событие отфильтровано не будет.

Очень полезным фильтром является отбор по имени базы или ее идентификатору (если в экземпляре находится несколько баз, а трассировать необходимо какую-то определенную). Для установки фильтра по имени базы необходимо для колонки DatabaseName установить значение «Похоже на» или «Не похоже на». Стоит отметить: если установленному значению будут отвечать несколько баз, тогда события будут собираться по каждой из них. Второй вариант фильтрации событий по определенной базе — установка отбора по колонке DatabaseID. Узнать идентификатор базы данных можно выполнив запрос в SQL Server Management Studio:

SELECT DB_ID("MyBase")

SELECT DB_ID ("MyBase" )

где MyBase — имя базы, для которой необходимо получить идентификатор.

Еще одним одним полезным фильтром является отбор по SPID (идентификатору серверного процесса). Он помогает произвести трассировку событий по определенному пользователю в то время когда в базе работают другие пользователи. Получить SPID пользователя, работающего в 1С, можно при помощи консоли кластера серверов. Получение данной информации в этой статье не рассматривается.

Обычно задача получения плана выполнения запроса связана с тем что запрос выполняется достаточно долго и для его оптимизации необходимо разобраться с планом выполнения. При этом настройка для получения плана выполнения собирает большое количество коротких по длительности событий. И именно для того чтобы отсечь ненужные короткие события можно применить отбор по длительности. Для установки фильтра по длительности необходимо установить значение отбора для колонки Duration. Отмечу что значение используемое для отбора может быть выражено в миллисекундах или микросекундах. То, какое значение используется, устанавливается в «Общих параметрах» профайлера (см. раздел «Настройка приложения»).

Работа с трассировкой

После запуска, в окно трассировки начнут выводиться события.

Если трассировка запущена, ее можно приостановить (дальнейшее возобновление трассировки оставит в окне накопленные события) или остановить (после возобновления накопленные события будут очищены).

Если трассировка приостановлена или остановлена, тогда ее можно возобновить.

Помимо этого, в любой момент существует возможность очистить окно трассировки.

Для всех вышеприведенных действий на панели инструментов присутствуют необходимы кнопки.

Панель инструментов

Для изменения настройки уже созданной трассировки необходимо ее приостановить (или остановить) и перейти в пункт меню Файл (File) → Свойства (Properties). Выполнив изменения в трассировке, ее можно запустить вновь.

Работа с шаблонами трассировки

Наличие готовых шаблонов трассировки экономит время на настройке новой трассировки, поэтому я рекомендую сохранять необходимые для работы шаблоны. Шаблоны можно создавать, изменять, экспортировать и импортировать; для данных действий предназначен раздел меню «Файл» (File) → «Шаблоны» (Templates).

Создание шаблона

Для создания шаблона трассировки можно воспользоваться пунктом меню «Файл» (File) → «Шаблоны» (Templates) → «Новый шаблон» (New template).

Вторым (и на мой взгляд наиболее удобным) вариантом создания шаблона является сохранение настройки текущей трассировки в виде шаблона. Для этого требуется воспользоваться пунктом меню «Файл» (File) → «Сохранить как» (Save as) → «Шаблон трассировки» (Trace template)

Сохранение трассировки

Как было сказано ранее, трассировка может быть сохранена в файл на диске и/или в таблицу базы данных. Эти действия можно произвести даже если при настройке трассировки не были установлены соответствующие флажки.

Для того чтобы сохранить трассировку в файл, в меню присутствует пункт «Файл» (File) → «Сохранить как» (Save as) → «Файл трассировки» (Trace File). Для сохранения трассировки в таблицу существует аналогичный пункт меню: «Файл» (File) → «Сохранить как» (Save as) → «Таблица трассировки» (Trace Table)

Программы трассировки маршрута используются для определения пути в интернете или локальной сети, а так же времени, необходимого для связи между компьютером и удаленным сервером. Обычно, трассировка используется техническими специалистами для выявления проблем производительности в сети. Но, иногда и обычные пользователи используют их, чтобы определить местонахождение удаленного сайта и весь пройденный между ними путь.

Обычно, операционная система включает консольный вариант такой программы в стандартный пакет системы. Например, Windows имеет специальную утилиту tracert. Чтобы ее запустить, вам надо открыть консоль и ввести команду "tracert". При запуске без указания параметров, на экран выведется небольшой мануал по работе с программой. Но, функциональность таких утилит, обычно, близка к базовой, и не предусматривает дополнительных полезных возможностей, которые могут сильно сэкономить время при частом построении маршрутов.

Обзор бесплатных программ трассировки маршрута

Программа трассировки маршрута 3D Traceroute отличный пример качественного продукта

VisualRoute Lite Edition

Локальная и онлайн версии. Информативный график маршрута.
Отображение маршрута на карте мира, а так же в виде списка, доступны только в коммерческой версии.

Alien IP

Отображение на карте.
Иногда выдает сомнительные результаты. Иногда не может определить IP-адрес по dns-имени.
К сожалению, стала триальной. Возможно, ранние версии еще можно найти в интернете
armcode(.)com
16.37 MB 2.40 Feature limited freeware Win 98 - Win 7

Е сли вы когда-либо обращались к своему Интернет-провайдеру или на технические форумы с жалобами на нестабильную связь, наверняка, команда «tracert» вам уже знакома. Специалисты поддержки нередко просят пользователей выполнить ее в командной строке и сообщить результат. Это помогает им определить источник неполадки.

Может быть, вас даже удивило, как непонятный набор символов способен помочь в решении сетевых проблем? Что означают эти числа, колонки и строки? Если желаете научиться применять и понимать tracert не хуже профессионалов, эта статья – для вас.

Назначение и применение Tracert на практике

T racert – не просто некая абстрактная команда, которую понимает командная строка, а полноценная программа. Точнее, служебное консольное (не имеющее оконного интерфейса) Windows-приложение, предназначенное для определения пути, по которому направляются сетевые пакеты от одного узла к другому. Имя приложения образовано от «trace route», что означает «трассировка маршрута».

Программа Tracert является собственным компонентом Windows (устанавливается на компьютер вместе с ОС), ее исполняемый файл – TRACERT.exe, постоянно находится в папке %windir%/system32.

Для простоты понимания работы трассировщика представим сетевой пакет как обычную посылку, которую вы отправили по почте в соседний город. На пути следования к адресату (конечному узлу), посылка делает несколько остановок на сортировочных пунктах (промежуточных узлах), где ее регистрируют и отсылают дальше. Вы, как отправитель, зная почтовый трек-номер посылки, можете следить за ее передвижением на специальных сайтах. Если отправление вовремя не доставлено, вы легко узнаете, на каком этапе пути оно потерялось.

Подобным образом работает и Tracert. Только он предоставляет информацию о не почтовых, а о сетевых отправлениях.

Обратите внимание на сходство этих записей:

Трассировка применяется как один из инструментов комплексной диагностики сетевых сбоев. Так, с ее помощью можно определить:

  • На каком уровне происходит блокировка недоступного веб-ресурса: на уровне домашней сети (пакеты не отсылаются дальше шлюза), в сети провайдера или за ее пределами.
  • Где пакеты сбиваются с правильного маршрута. Например, причиной того, что вместо запрашиваемого , может быть и вредоносная программа на компьютере пользователя, и перенаправление с какого-либо сетевого узла.
  • Является ли веб-ресурс тем, за что себя выдает.

Как работает трассировка

К ак вы знаете, приложение запускается и выполняется в командной строке Windows. Чаще всего оно используется без дополнительных параметров. Команда трассировки маршрута к нужному веб-ресурсу выглядит так:

tracert URL_сайта или IP_сайта. Например, tracert Mts.ru , tracert 91.216.147.50

Ответом на нее будет примерно следующее:

Ниже я поясню, что означают эти числа и записи, а сначала, чтобы было понятно, рассмотрим принцип работы трассировщика.

Как только вы введете вышеуказанную инструкцию в командную сроку и нажмете Enter, приложение отправит заданному веб-ресурсу серию из трех ICMP-пакетов. В одном из служебных полей каждого пакета указано значение TTL – количество допустимых передач между узлами сети или, как говорят,«время жизни» запроса. При переходе отправления от роутера к роутеру значение TTL уменьшается на единицу. Когда оно достигает нуля, пересылка прекращается, пакет отбрасывается, а компьютер-отправитель получает об этом ICMP-уведомление.

Значение TTL первой партии ICMP-запросов равно 1. Первый же узел, на который она поступит, вычтет из этого значения единицу. Так как «время жизни» пакетов станет равным нулю, они будут выброшены «на свалку истории», а отправитель получит ответное «письмо» с указанием имени и IP-адреса этого узла.

Значение TTL второй партии будет равно двум (ответ будет получен от второго узла), третьей – трем и т. д. Отправка с увеличением TTL на 1 будет продолжаться до тех пор, пока данные не получит адресат.

Как читать результат трассировки

В ернемся к анализу вывода Tracert. Мой запрос к сайту Yandex.ru совершил 16 прыжков – прошел через 15 «перевалочных пунктов» и шестнадцатым шагом достиг конечной цели. Порядковые номера прыжков отображены в столбце, обведенном красной рамкой. По умолчанию их максимальное число составляет 30.

Второй, третий и четвертый столбцы содержат значения RTT – времени, прошедшего от момента отправки запроса до получения ответа (как вы помните, партия состоит из трех пакетов). Чем оно меньше, тем быстрее осуществляется передача. Если оно больше 4 секунд, интервал ожидания считается превышенным.

Последний столбец – это имена и адреса промежуточных и конечного узлов.

Звездочки вместо значений не всегда указывают на недоступность или неисправность сетевого устройства (как пишут в некоторых источниках). Чаще всего это просто настройка, не позволяющая отправлять ответные ICMP-сообщения (меры по защите веб-узла от DDoS-атак). Если ваш запрос благополучно достиг конечной точки за приемлемое время, беспокоиться не о чем.

Причиной сбоя доставки ICMP-пакетов (если запрос так и не дошел до адресата) может быть неработоспособность (отключение или неисправность) сетевого устройства или политика безопасности (блокировка данного действия администратором сети).

Параметры Tracert

Е сли выполнить команду tracert без указания веб-ресурса, в консоли отобразится справочная информация о параметрах запуска или, как их называют, ключах приложения.

Ключи пишутся через пробел после команды перед именем веб-узла, если в стандартных настройках нужно что-то изменить. Например:

Tracert – w 1000 yandex. ru , что означает: провести трассировку маршрута к yandex.ru с таймаутом ответов в 1000 ms.

Ниже приведен список параметров с их значениями.

Вот видите, всё оказалось проще, чем казалось. Кстати, в закромах Windows еще немало таких полезных штуковин. О них я тоже обязательно расскажу как-нибудь в следующий раз. Надеюсь, будет полезно.

Ещё на сайте:

Какие секреты поможет узнать команда Tracert обновлено: Декабрь 5, 2016 автором: Johnny Mnemonic



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: