最新东南大学仪科信网实验一-停等协议资料.docx

上传人:scccc 文档编号:12779197 上传时间:2021-12-06 格式:DOCX 页数:8 大小:106.15KB
返回 下载 相关 举报
最新东南大学仪科信网实验一-停等协议资料.docx_第1页
第1页 / 共8页
最新东南大学仪科信网实验一-停等协议资料.docx_第2页
第2页 / 共8页
最新东南大学仪科信网实验一-停等协议资料.docx_第3页
第3页 / 共8页
最新东南大学仪科信网实验一-停等协议资料.docx_第4页
第4页 / 共8页
最新东南大学仪科信网实验一-停等协议资料.docx_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《最新东南大学仪科信网实验一-停等协议资料.docx》由会员分享,可在线阅读,更多相关《最新东南大学仪科信网实验一-停等协议资料.docx(8页珍藏版)》请在三一文库上搜索。

1、精品文档信息网络概论实验报告实验一停等协议姓名:XX 学 号:220xxxxxxx一、实验目的1、掌握停等协议的工作流程;2、熟练应用循环冗余检验方法。二、实验条件和环境本实验基于MFC编程,在现有程序的基础上,将奇偶校验改成CRC校验实现通信过程。三、实验内容1、通过改变传输速率、数据包长度、模拟长线路等操作定性地观察停止等待协议的效率;2、将本实验的奇偶校验改为循环冗余校验,以提高检错率。四、实验原理1、停止等待协议停止等待协议(BSC是一种最简单(但效率较低的)差错和流量控制协议。其基本原 理为发送方发送完一数据包后,需要等待接收方的应答信息,发送方受到正确认信息ACK时标明接收方接收正

2、确,发送发可发送下一数据包;当发送方收到负确认信息NAK时,表明接收方接收错误,发送方应重发出错的数据包简化后的BSC使用STX ETX EOT ENQ ACK和 DLE六个控制字完成通信控制功能。2、CRC校验CRC校验是基于数据计算一组校验码,用于和对数据传输过程中是否被更改或传输错误。假设数据传输过程中需要发送15位的二进制信息 g=101001110100001,这串二进制码可表示为代数多项式 g(x) = xA14 + xA12 + xA9 + xA8 + xA7 + xA5 + 1,其中g中第k位的值,对应g(x) 中xAk的系数。将g(x)乘以xAm ,既将g后加m个0,然后除以

3、m阶多项式h(x),得到的(m-1) 阶余项r(x)对应的二进制码r就是CRC编码。h(x)可以自由选择或者使用国际通行标准,一般按照h(x)的阶数 m,将CRC算法称为CRC-m 比如 CRC-32 CRC-64等。g(x)和 h(x)的除运算,可以通过 g和h做xor (异或)运算。比如将 11001与10101做 xor运算:I1:1i0:0: 1!hioiiioH;:0i1:1;o: o:由实际运算规律得到调整算法:如下CD每次迭代,根据gk的首位决定b, b是与gk进行运算的二进制码。若 gk的首位是1,则 b=h;若gk的首位是0,则b=0 ,或者跳过此次迭代,上面的例子中就是碰到

4、0后直接跳到后面的非零位。g*首位是1b = h11111011000111010101r00010001100甌首位是01111011000b = 00r01111011000每次迭代,gk的首位将会被移出,所以只需考虑第2位后计算即可。这样就可以舍弃h的首位,将 b取h的后m位。比如 CRC-8的h是111010101,b只需是11010101。gk b4-1 111 01100011010101r0010001100每次迭代,受到影响的是 gk的前m位,所以构建一个 m位的寄存器S,此寄存器储存gk 的前m位。每次迭代计算前先将 S的首位抛弃,将寄存器左移一位,同时将g的后一位加入寄存器

5、。若使用此种方法,计算步骤如下:ss b|OL0011101001110110101011010011J 0100001000000001s sloonoii00L1O11I10100111010000100000000b110101011s s b111000101100010011010101£首闵1010011WW0001000000001s s btOOlOQOl001000)00sMU:101001110100001000000000ssb0D1OOO1G01000100QS首险L01001110100001000000000b根据S的首位选择0或者h。黄色是需(蓝色表示寄

6、存器 S的首位,是需要移出的, 要移入寄存器的位。 S是经过位移后的 So) 五、实验过程事件处理处理线程,对不同状态进行检测;-lUIN" Rz;3dChar(Prt)hVid)IJtscvEvprf (C, rKUi, U, 0)."岌送铀揍他丰件O'TEHLAPFET加rOY. 宣理(Xerlsimtl奋毘,显生宙行通肓charDiplayiiti 256J1 cmpSH r SOULI狮SdUn:don't】c加圧:加怙斤航山./7葫"盯钢衍的时旧手,廿至nenisel CiRecTi'iV, 0+ sizec*f (SecvOT)

7、;"祖拾化砂门 2pppP克 §Ru二就 V. hEvcnt =Ee cvEver.1 /i* H!岀行 H 捋瞳电| 対埶诵vhils CTree)W只宾袋墟运行就益覆隔星習吐到场屈if (CcnnSt貳*r=KK¥SAIS)n_nluner=?Dlg-?Srt7in*t' Jf 3+TlKEliLI,HULL)"袴生企阿需EoadFilc(nt_hlCoKiirc ri. fcFccTBcf RcotFTRJ, KccdLcn, RccvOVJ : 读宇百GsTQytrlappedKeuJi (KO'TunFgrj fcEtTiOV,

8、RflacLen, IFTE) ;&养诗试护态耳成 垃阿 T弄脊就耳杆件EecvEvent. FesetEuem 0 ;/F行宰匸孜呈:轲忙自疔宰件 当处于空闲状态时,对收到的询问信息 ENQ回复确认信息 ACK并进入接受状态; 当处于发送状态时,需要判断发送的数据类型,如果此时发送的是最后一包数据, 则下一个信息就要发送EOT用于表示送毕,break :cask 3EHL3LATE;"发產技恵if (ACKF1 .e=+rne)(if (Re cvBuf I'Fe cvP TR =S e qu en: e)CoEt联弓=U)LESIATE "务品录Js-K

9、的茫喘TH壮舟设为卒闲朮蕊Scnrf订gCIobuG,“壘后一包,关诃文件3sntEuf H =EOT; 2endBuf 仃二EOT. 5endLen2;/ll 扣按收方幵曲发运SendHsg: GOT*)pDlg-zn_ListLo Insert5-tring(- J,"返回主闲我忘");同时,在停等协议中最少可用两个标识0, 1来完成数据的传输,为了避免传输过程的信息丢失,需要在传输过程中设置定时器,以满足在丢失信号时重传的需要FarmiPacket ():S«LdKicC£i£:信息冷;Sequence = (Se|quence=O) ?

10、 1:0;"变换Sequencein_rLTimer=pDlg->SetTimer (1j TIMEOUTj 0) :/isS时器发送数据包FormPacket ()函数将数据信息按下图数据报格式实现打包的功能,SOEfiraETBZETlt'BCC其中第一位用于存放 STX文始,第二位用于存放序列号,倒数第二位用于存放校验和, 最后一位存放ETX文终,精品文档精品文档精品文档六、int lcnj ij n,JeinlDuf 0?-S7( 3EELiIDuf l'-Setuei.ct.*r=5#ndFilt.R*nc|iPljFarlfstLeri) /iMSp

11、ji MCRC-OkH :耳安唸和toi (n=O .n<len.n-t+) chr iftnp=Sftnrtliiif 1+2'CEJC=CEC tenpfor (i=D i<8 ;i+) iffCRC & OxQl) CEOH1;CRC=CRCJ0i8c:1elselCRC»=1jendDur 2*lejn-CEjC ./ / CRCiljl 在回麹章二佢 endffu-f l2*ltrL*.=E7M.检验和的实现即可按照原理中的调整算法实现,同时,在实验过程中发现, 校验和的计算位数不能过多,否则会出现传输超时的现象。当处于接收状态时根据控制字:ET

12、X EOT STX等做出相应反应,同时对于接收端,也需要对数据进行校核。一般可采用比较的方法,即对接收到的数据进行同样的CRC计算,比较接收端和发送端获得的CRC结果是否相同,若相同,说明数据传输正确。七、实验结果当波特率为9600,数据包长度为1500,发送前延迟为0时,传输效率是100%注豐:宦收信息荊煤存于"receive btffF出i耒文并視岗pC om m逍人卷送妝态一按収:ACKD埠 ftM - .括吨:4CK1剖弄:FOT12回至耐态一-统计13息工倉本淫罕的传輛时间只能植确到秽=勤提連军,影oo鼻丙种*豹18包氏:1閒0字节延迟:乜世种振长度:】字节WSH:品W悻裔

13、效率:««強入皴狀感誉低;FW鶴曲:ACKfl岌送:倍息一接帳:ACK1 磁:LOT返冋空可取态-统计信鼠(注童祜稈序节借输时间只能梧诵到秽*齡摇谏幸:颗0字节出F ?mK;巧00字节J趺路楚迟;叩貳种!§W£ 353宇节停输样吋:胛打谱输皴率:xraoog设置波特率为9600,数据包长度为 3000,发送前延迟为1000时,曲九接桂状盍一-揍收ENQ%S: ACK 0接收;1S.fr握送:ACK1捂收:凳咸返回空匪横态StfftA(注書本建序的传输时詢只自晞确到静)!麹理速率:船JU事节滞* MS&K: 3000字和 側延迟:too励 旳$氏短

14、;五舞节I传输兀旳:毎I停输社率l 8 27343B%a聂入蜩燔 不庐I 第噸; 爱宦: ttl : 发血EK2ACKG怡息.ACK1 EOT串杼口;捷送前延迟1000V谨祷率|9600*数据包长度3000砥涓效率较低到不到10%StopWaitComm 弗行口 = COM r 建率= 9600 , SKfe-JOOO ,疑踏延迟+1000注蓿=按呼匡思忡虫右昶eivejrt件噫目八、纯计信耳匕干答辛持坪的传循时冋只龍皓蛹劉种;:速率:9600亨节咸;班惟廿氓二3000字岂 纯踣延迟:+-止做利IHHF"99nZUE»i 7FT ME昱屛林西九、 心得体会后来我经过查找资实验开始时, 由于没有选对校验方法, 总是会造成传输延时的结果, 料,对CRC进行了更细致的了解,完成了本次实验内容。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


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