Инструмент для построения диаграмм последовательности протоколов
Я ищу инструмент для рисования последовательности пакетов, отправляемых по протоколу скользящего окна. Существует много инструментов для рисования диаграмм последовательности сообщений с горизонтальными линиями, но я хочу иметь возможность рисовать линии по диагонали, как в нижней части этого изображения:
![SYN,SYN+ACK,ACK example]()
Пожалуйста, предложите подходящие инструменты. Скорее всего, меня интересуют только бесплатные, но если у вас есть действительно хорошее предложение для рекламы, вы также можете включить его.
Ответы
Ответ 1
mscgen может сделать это, используя параметр arcgradient. Этот фрагмент будет отображать вторую часть вашего примера:
msc {
arcgradient=20;
client, server;
client => server [label="SYN"];
server => client [label="SYN + ACK"];
client => server [label="ACK"];
}
Если вы скопируете этот фрагмент в mscgen_js в демонстрационном режиме, вы увидите.
Ответ 2
Я использовал websequencediagrams. По сути, это версия webapp mscgen с несколькими отличными рендерингами.
![enter image description here]()
websequencediagrams также отображает их рендеринг в виде API script. Теперь я храню свои диаграммы в виде HTML файлов, передаю их в git, показываю приятные различия и т.д. I.e.,
<html>
<body>
<div class="wsd" wsd_style="rose"><pre>
App->set_state PAUSE
<!-- your wsd diagram commands, etc... -->
</pre></div>
<script type="text/javascript" src="http://www.websequencediagrams.com/service.js"></script>
</body>
</html>
Ответ 3
Для всех, кто в этом нуждается, есть классный инструмент командной строки mscgen.
Ответ 4
Вы можете попробовать umlet.com
Доброта,
Dan
Ответ 5
Я нахожу RFFlow очень быстро запускать, быстро учиться и прост в использовании. Он выполняет диагностические линии и текст на склонах и хорош для блок-диаграмм всех видов. Он сохраняет как EMF и WMF, так и GIF и его родной тип, и копирует в Word очень хорошо.
Ответ 6
Для полноты, вот еще один бесплатный вариант на основе веб-браузера: https://sequencediagram.org/
Вот их шаг (из "О"):
SequenceDiagram.org - это онлайн инструмент/программное обеспечение для создания UML Диаграммы последовательности.
Вся обработка парсинга и покраска диаграммы производится на стороне клиента в браузере пользователя. Это не только делает его быстрым, но это также означает, что ваши данные не передаются через Интернет с помощью инструмента, как и во многих других инструментах диаграммы последовательности. Так как нет Бэкэнд-сервер используется, также возможно использовать инструмент в автономном режиме.
Есть много инструментов диаграммы последовательности, но это единственный тот, который позволяет вам:
∙Script using a simple text notation when it is most convenient to do so, and
∙Draw the sequence diagram using your mouse at the same time when that is most convenient
Другими словами, принося лучшее из обоих миров. Это делает это очень легко работать с большими диаграммами, где другие подобные инструменты борются. Там также нет рекламы или ненужных отвлекающих элементов.
Инструмент разработан, поддерживается и используется людьми, которые создают много диаграмм последовательности в их повседневной работе и с точки зрения эффективности просмотр не был удовлетворен на 100% существующими инструментами.
Если у вас есть какие-либо вопросы/комментарии/предложения/ошибки, пожалуйста, свяжитесь с [email protected] Чем больше отзывов мы получаем, тем лучше можем расставлять приоритеты.
Ответ 7
ZenUML бесплатный и онлайн. Он имеет странную функцию, которая позволяет стилизовать диаграмму с помощью любого кода CSS.
![enter image description here]()
Чтобы получить приведенную выше диаграмму, просто в редакторе DSL поставьте
Client->Server:SYN
и сотвори волшебство в редакторе CSS, поставив
div[signature="SYN"]>div.message {
transform: rotate(10deg)
}