欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    云南大学软件学院计算机网络原理实验六实验报告.docx

    • 资源ID:1201679       资源大小:78.12KB        全文页数:50页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    云南大学软件学院计算机网络原理实验六实验报告.docx

    试验六、传输层牢靠传输协议GBN编程试验报告序号:一姓名:_学号:成果一指导老师:一、试验目的;1、通过编写实现一个简洁牢旅的数据传输协议GBN的发送和接收代码,模拟牢靠数据传输2、理解TCP协议牢轮传输的差错检测、重传、累计确认、定时器的牢拳传输策略。二、试验指导:参考教材。动画演示:三、试验要求:编程实现一个GBN传输协议的发送方和接收方两程序,采纳编程语言不限,要求能将发送一一接收流程以与处理方法表现出来.1.试验流程图如下:O''X选择由传2.试验截图与代码如下:截图:'GUtrfQiuD*cktopitHfi6GBN001DbugGBN001xe-StopandVaitNetworkSitnj1.atorVersion1.1Snterthenumberofmessagestosinu1.ate:56Enterpacket1.ossprobabi1.ityenterO.Oforno1.oss:3Enterpacketcorruptionprobabi1ityO.O£ornocorruption:OSnteraveragetimebetweenEfiSSaEeSfromsender's1.ayer5>O.0:1interTRACE:3A:IfeWJ119ssagarrives,sendWindWisfu1.1.,buffernewmessage!entity:0aaaaaaaaaaaaaaaaaaaafu1.1.buffernewmessage!entity:0bbbbbbbbbbbbbbbbbbbbfu1.1.,buffernewmessage!entity:0CeCCCCCCCCCCCCCCCCCCfu1.1.,buffernewmessage!WEbrrtime:O.000870,type:1,frondayer5MAIN1.COP:datagiventostudent:A:Kew11essagearrives,sendMdndoWisVENTticDio:0.000891,typo:1.£rondayer5BAIN1.COP:datagiventostudent:A:Kewmessagearrives,sendwindowis1.VEOTtime:0.000909.type:I1frondayer5三AIN1.CX)P:datagiventostudent:A:New11ssagearrives,sendWiCdWis:VENrti:0.000913,type:1,frondayer5entity:0MAIN1.COP:datagiventostudent:dddddddddddddddddddd,A:New11essagearrives,sendWindOWisfu1.1.,buffernew11essage!WENrtime:0.000928,type:I,fro11dayer5entity:0Siwj1.atorterminatedattime0.000928aftersending56®sgsfromIayer5correct1.ysentpkts:9resentpkts:0青按任意道继续代码与注样:一、GBN.hpragmaonceinc1.ude<stdio.h>基础功能模块的数据结构声明#defineBIDIRECTIONA1.1*changeto1ifyouredoingextracreditandwritearoutineca1.1.edB_output/a*msg*isthedataunitpassedfro三1.ayer5(teacherscode)to1.ayer4(students'code).Itcontainsthedata(characters)tobede1.iveredto1.ayer5viathestudentstransport1.eve1.protoco1.entities.*/structmsgchardata20;;/apacketisthedataunitpassedfrom1.ayer4(studentscode)to1.ayer3(teacherscode).Notethepre-definedpacketstructure,whicha1.1.studentsmustfo1.1.ow./structpkt(intseqnus;intacknun;intchecksum;charpay1.oad20;);#defineWINDOfSIZE8#defineMAXBUFSIZE50defineRTT15.0WefineNOTUSED0ffdefineNACK-1MefineTRUE1defineFA1.SE0#defineB1网络仿真部分数据结构声明structeventf1.oatevtine;*eventtine/intevtype;/eventtypecode*/inteventity;/entitywhereeventoccurs*/structpkt*pktptr;/ptrtopacket(ifany)assocw/thisevent/structevent*prev;structevent*nxt;);/possib1.eevents:/#defineT1.ME1.1.1.NTERRUpT0ffdefineFROi1.1.AYER51#defineFRoi1.1.AYER32defineOFF0基础功能模块的函数声明voidCoaDputeChecksuin(structpkt*packet);计算校殴和intCheckCorrupted(structpktPaCket);检查数据是否出错voidA_output(structmsgDeSSage);A蟠向外发送数据voidA_input(structpktPaCket);A嵋接收数据voidAjinerinterruptO;/A计时器超时voidA-i11itO;/A端初始化voidB_output(structmsgmessage);voidB_input(structpktpacket);voidB-tinerinterruptO;voidB_initO;网络仿真部分的函数声明voidinit;初始化仿真器f1.oatJiBSrandO;随机数发生器0,1处理事务列表部分的函数声明voidgenerate_next_arriva1.O;产生下一个到达的分组voidinsertevent(structevent*p);向事务列表中插入一条新的事务voidPrinteV1.iSt();打印事务列表/a«Vb/9K«91«Vkajj1.jK2Bb1.jjKj2BJf1.1.scjK2BZZB1.S1.jjKjKH1.?B1.SCJK3K2HjU1.2f1.1.MCJKjKZB1.B1.jBCjKKZ0ZB2H1.IHCjkjKZf1.31.Jf1.JKK*计时器模块voidStoPtimer(int);停止计时器voidStarttiBer(int,f1.oat);启动计时器/aaT"j1.jK2KS1.Jb1.jKijB1.k2HS1.jHjkjKjKJk1.BcjKjKjK2K2S1.jKjKJf1.1.XCJKjKjKJkB1.jCjKAIH网络各层之间传送模块voidto1.ayer3(intAorB,structpktPaCket);向第3层发送信voidto1.ayer5(intAorB,chardatasent20);向第5层发送信息二、GBN.cinc1.ude*GBN.h*ffinc1.ude<stdio.h>tfinc1.ude<string.h>inc1.ude<std1.ib.h>externintTRACE=1;/formydebugging/为我的调试externintnsin=0;/nunberofmessagesfro三5to4sofar*/目前为止信息的数字是从5到4externintnsinnax=0;/numberofmsgstogenerate,thenstop*/假如信息产生的数字为0,然后就停止externf1.oattime=0.000;f1.oatIossprob;*probabi1.itythatapacketisdropped*/数据包可能会丢失f1.oatcorruptprob;/probabi1.itythatonebitispacketisf1.ipped*/这一点的数据包可能会被弹出去f1.oat1.ambda:/arriva1.rateofnessagesfrom1.ayer5/第五层到达的信息的次序intnto1.ayer3;*numbersentinto1.ayer3/被传送到第三层的数据staticintn1.ost=0;*nunber1.ostinmedia*/在媒介中数据丢失staticintncorrupt=0;/nu)rcorruptedbymedia*/被媒介毁坏的数据staticintexpectedseqnun=O;*expectedsequencenumberatreceiverside/.在接收者这边接收到Bi期的序列数据staticintnextseqnum;*nextsequencenumbertouseinsenderside/.下一个序列数据运用在发送者这边staticintbase;*theheadofsenderwindow/发送者的头窗口structpktwinbufWINDOWSIZE;*windowpacketsbuffer/.数据包缓冲区窗口staticintwinfront,winrear;/frontandrearpointsofwindowbuffer/窗口缓冲区的前方点和后方点staticintPktnuI;/packetnumberofwindowbuffer/窗口缓冲区的数据包个数structmsgbufferMAXBUFSIZE;/senderessagebuffer/.发送消息缓冲区intbuffront,bufrear;/frontandrearpointersofbuffer/.缓冲区的前指针与后指针staticintmsgnum;*I1.eSSagenu三berofbuffer/信息数量的缓冲intpacket_1.ost=0;intpacket_corrupt=0;intpacket-sent=0:externintpacket_correct=0;externintpackt-resent=0;in

    注意事项

    本文(云南大学软件学院计算机网络原理实验六实验报告.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开