- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络协议分析
姓名
学号:
班级
一、实验题目
考证数据链路层协议的安全性
(2)AB协议
(3)GO-BACK-N协议
二、实验环境搭载
在windows下安装spin,将spin.exe的路径增加到环境变量path中,若电脑有gcc,则直接将其路径写入path,若无则安装Dev-c++,将其内所包括的gcc写入path。而后运转xspin525.tcl,即可启动spin达成实验。
三、实验目的
学习PROMELA语言,并用它描绘常有协议并考证。
练习协议工具spin的使用,并对协议的履行进行模拟。
四、编程实现
数据链路层的协议正确性考证
协议条件分为报文应答会犯错且抛弃,所以信道共有五中形式的
信号,即发送的数据信号、ACK信号、NAK信号,抛弃信号和犯错信
号;定义两个信道,用在发送方实体和接收方实体进行数据传递;定
义两个进度,分别是发送方进度和接受进度,发送方在接遇到错误的
信号或ACK序列号不般配时,进行重传。接收方,收到错误信息时,
发送Err,NAK,Mis信号,正确时返回ACK信号。详细程序以下:
proctypeSENDER(chanInCh,OutCh)
{
byteSendData;
byteSendSeq;
byteReceivedSeq;
SendData=5-1;
do
::SendData=(SendData+1)%5;
again:if
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Msg(SendData,SendSeq)
::OutCh!Err(0,0)
::OutCh!Mis(0,0)
fi;
if
::timeout-gotoagain
::InCh?Mis(0,0)-gotoagain
::InCh?Err(0,0)-gotoagain
::InCh?Nak(ReceivedSeq,0)-gotoagain
::InCh?Ack(ReceivedSeq,0)-
if
::(ReceivedSeq==SendSeq)-gotoprogress
::(ReceivedSeq!=SendSeq)-end2:gotoagain
fi
fi;
progress:SendSeq=1-SendSeq;od;}
proctypeRECEIVER(chanInCh,OutCh)
{
byteReceivedData;
byteReceivedSeq;
byteExpectedData;
byteExpectedSeq;
do
::InCh?Msg(ReceivedData,ReceivedSeq)-
if
::(ReceivedSeq==ExpectedSeq)-
assert(ReceivedData==ExpectedData);
progress:ExpectedSeq=1-ExpectedSeq;
ExpectedData=(ExpectedData+1)%5;
if
::OutCh!Mis(0,0)
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Ack(ReceivedSeq,0);
::OutCh!Err(0,0);
ExpectedSeq=1-ExpectedSeq;
ExpectedData=(ExpectedData+4)%5;
fi
::(ReceivedSeq!=ExpectedSeq)-
if
::OutCh!Mis(0,0);
::Out
您可能关注的文档
- 缺血中风护理路径表.doc
- 缺血性肠病临床路径.doc
- 缺货商品登记表.doc
- 缺铁性贫血血液病诊疗指南.doc
- 缺陷月度分析报告.doc
- 罐区岗位应急处置卡.doc
- 网上写作文的快乐日记.doc
- 网上教学活动方案.doc
- 网吧员工守则内容介绍.doc
- 网吧设备整体转让合同协议书范本模板.doc
- 2026年刑法知识考试题库200道及答案【最新】.docx
- 2026年刑法知识考试题库200道及答案【夺冠系列】.docx
- 2026年刑法知识考试题库200道含答案(培优).docx
- 2026年马原考试题库300道及参考答案【考试直接用】.docx
- 2026年马原考试题库300道及答案【夺冠】.docx
- 2026年刑法知识考试题库200道及参考答案(实用).docx
- 2026年期货从业资格之期货法律法规考试题库500道及完整答案1套.docx
- 2026年刑法知识考试题库200道带答案(夺分金卷).docx
- 2026年二级造价师考试题库500道附答案(研优卷).docx
- 2026年投资项目管理师考试题库500道含完整答案(典优).docx
文档评论(0)