用于绘制协议序列图的工具

问题描述 投票:25回答:5

我正在寻找一种工具来绘制为滑动窗口协议发送的一系列数据包。有许多工具用于绘制带有水平线的消息序列图,但我希望能够对角线绘制线条,就像这个图像的底部一样:

SYN,SYN+ACK,ACK example

请建议合适的工具。我很可能只对免费版本感兴趣,但如果你对商业广告有一个非常好的建议,你也可以包括它。

protocols sequence-diagram
5个回答
29
投票

mscgen可以使用arcgradient选项执行此操作。这段代码将完全呈现您示例的第二部分:

msc {
  arcgradient=20;

  client, server;
  client => server [label="SYN"];
  server => client [label="SYN + ACK"];
  client => server [label="ACK"];
}

如果你复制粘贴这个片段在mscgen_js在线演示,你会看到。


13
投票

我一直在使用websequencediagrams。基本上是mscgen的webapp版本,带有一些不同的花式渲染器。

Websequencediagrams还将其图表呈现暴露为脚本API。现在我将我的图表存储为HTML文件,将它们提交给git,显示不错的差异等等。即,

<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>

6
投票

对于其他有需要的人来说,有一个很酷的命令行工具mscgen


3
投票

你可以试试umlet.com

善良,

Dan


2
投票

我发现RFFlow启动非常快,学习快速且易于使用。它在斜坡上做诊断线和文本,适用于各种方块图。它保存为EMF和WMF以及GIF及其原生类型,并且非常好地复制到Word中。

© www.soinside.com 2019 - 2024. All rights reserved.