Windows10安装Spin模型检查与协议验证工具教程
教程背景
笔者最近学习网络协议相关内容,在寻找协议验证工具的过程中,了解到Spin这款工具,经过一晚的查找,终于安装完成并成功运行。
因为网上的相关教学偏少且老旧,工具官网的说明有不够清晰且未及时更新,故作此教程,希望让有需要的朋友少走弯路。
安装前准备
配置gcc(c编译环境)
确保电脑上已经配置好c语言编译环境,对于Windows10系统下也可理解为确保已安装Mingw-w64。检查方式,打开命令行,输入gcc -v
,出现如图反馈,则说明gcc配置无误。
配置Tcl开发环境
进入ActiveTcl官网,选择下载ActiveTcl 8.6。
之后会跳转到登陆界面,推荐选择Github账号直接登录。登录后选择下载Windows平台x64版本。
下载完成后,双击安装包根据提示即可完成软件安装,过程相对简单,就不放图片了。
Spin 安装
在Spin官网说明文档页中,根据2b.项中的描述,其实基本可以成功安装并运行Spin,但其中中存在措辞模糊,版本陈旧等问题。在老版本中,spin.exe可以直接从单独的下载页获取,xspin.tcl同样,但自Spin 6.50版本后,Spin的所有文件统一托管在Github代码仓库上,且未对使用方法作详细说明,给许多人造成了不小的困扰。
下载Spin源码
从Spin项目代码仓库下载源码到本地。将压缩包解压,路径尽量不含中文。
配置spin.exe
找到源码目录下的Bin目录,根据系统版本选择对应压缩包解压,此处我选择“spin651_windows64.exe.gz”。
解压后得到可执行文件“spin651_windows64.exe”,将其重命名为“spin.exe”
之后打开配置环境变量。依次点击“高级系统设置”、“系统变量”,点选用户变量下的Path,选择下方的编辑,将上文提及的Bin目录的路径加入其中,效果如图。
为验证spin.exe是否正确添加,可在命令行中输入spin --help
,如果出现如下信息,则说明系统变量以正确添加。
运行可视化交互界面ispin.tcl
在老版本中,Windows系统下的可视化交互界面使用的是xspin.tcl,而自6.50版本后,Windows系统下使用ispin.tcl进行可视化交互。
打开源码目录下的“optional_gui”目录,若上述gcc、ActiveTcl和spin.exe均已正确配置,则可双击目录下的“ispin.tcl”文件,打开如下可视化交互界面。
至此,安装完成,可以展开相关协议验证实验。
简单测试
点击Open,打开源码目录下的“Examples”目录,选择名为“abp.pml”的协议描述文件并打开
左侧为代码预览和编辑窗口,点击上方的“Syntax Check”可以进行语法检测。
选择上方“Simulate / Replay”栏,设置模式为随即执行,执行次数为200步后,点击“(Re)Run”开始模拟,结果如图所示。
右侧边栏以图形化展示了协议的执行过程。