gobackn协议实验报告
主要协议分析实验报告(3篇)

第1篇一、实验背景随着计算机网络技术的飞速发展,网络协议作为计算机网络通信的基础,扮演着至关重要的角色。
为了更好地理解网络协议的工作原理和功能,我们开展了主要协议分析实验。
本实验旨在通过分析常用网络协议的报文格式和工作机制,加深对网络协议的理解。
二、实验目的1. 熟悉常用网络协议的报文格式和工作机制。
2. 掌握网络协议分析工具的使用方法。
3. 培养网络故障排查和问题解决能力。
三、实验环境1. 实验设备:PC机、网线、Wireshark软件。
2. 实验网络:局域网环境,包括路由器、交换机、PC等设备。
四、实验内容本实验主要分析以下协议:1. IP协议2. TCP协议3. UDP协议4. HTTP协议5. FTP协议五、实验步骤1. IP协议分析(1)启动Wireshark软件,选择合适的抓包接口。
(2)观察并分析IP数据报的报文格式,包括版本、头部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、头部校验和、源IP地址、目的IP地址等字段。
(3)分析IP分片和重组过程,观察TTL值的变化。
2. TCP协议分析(1)观察TCP数据报的报文格式,包括源端口号、目的端口号、序号、确认号、数据偏移、标志、窗口、校验和、紧急指针等字段。
(2)分析TCP连接建立、数据传输、连接终止的过程。
(3)观察TCP的重传机制和流量控制机制。
3. UDP协议分析(1)观察UDP数据报的报文格式,包括源端口号、目的端口号、长度、校验和等字段。
(2)分析UDP的无连接特性,观察UDP报文的传输过程。
4. HTTP协议分析(1)观察HTTP请求报文和响应报文的格式,包括请求行、头部字段、实体等。
(2)分析HTTP协议的请求方法、状态码、缓存控制等特性。
(3)观察HTTPS协议的加密传输过程。
5. FTP协议分析(1)观察FTP数据报的报文格式,包括命令、响应等。
(2)分析FTP的文件传输过程,包括数据传输模式和端口映射。
协议分析实验报告

协议分析实验报告协议分析实验报告一、引言在现代信息社会中,网络通信已经成为人们生活中不可或缺的一部分。
而网络通信的基础是各种协议的运行与应用。
协议分析作为网络安全领域的一个重要研究方向,旨在对网络协议进行深入研究和分析,以发现其中的安全漏洞和潜在威胁。
本实验旨在通过对某一特定协议的分析,探索其安全性,并提出相应的改进措施。
二、实验目的本实验的主要目的是对XXX协议进行深入分析,发现其中可能存在的安全问题,并提出相应的解决方案。
通过实际的协议分析实验,加深对网络安全的认识和理解,提高分析和解决网络安全问题的能力。
三、实验方法1. 收集协议数据包:通过网络抓包工具,获取一定数量的XXX协议数据包,以便后续的分析和研究。
2. 数据包解析:使用专业的协议解析工具,对收集到的数据包进行解析,获取其中的各个字段和信息。
3. 协议分析:对解析得到的数据包进行分析,包括协议的结构、数据传输方式、安全机制等方面的研究,以发现其中的潜在问题。
4. 安全漏洞挖掘:通过对协议的深入分析,结合已知的安全漏洞和攻击手法,尝试发现协议中可能存在的安全漏洞,并进行漏洞挖掘。
5. 解决方案提出:针对发现的安全问题,提出相应的解决方案和改进措施,以提高协议的安全性和可靠性。
四、实验结果与讨论通过对XXX协议的深入分析,我们发现了其中存在的几个安全问题。
首先,协议中的身份验证机制较为薄弱,容易受到中间人攻击。
其次,协议中的数据传输方式存在明文传输的情况,容易被窃取或篡改。
此外,协议的加密算法使用较为简单,无法抵抗高级的密码攻击手法。
针对这些问题,我们提出了以下的解决方案和改进措施。
首先,加强协议中的身份验证机制,采用更安全可靠的身份验证方式,如公钥加密算法和数字证书。
其次,对数据传输进行加密处理,使用强大的加密算法,确保数据的机密性和完整性。
此外,还可以引入数字签名等机制,提高协议的抗攻击能力。
五、实验总结通过本次协议分析实验,我们对XXX协议进行了深入的研究和分析,发现了其中存在的安全问题,并提出了相应的解决方案和改进措施。
(完整版)计网协议5和协议6程序

程序设计报告(2011/2012学年第一学期)题目:数据链路层滑动窗口协议的设计与实现专业网络工程学生姓名朱瑞霖、李小明学生学号 09211517 、 09211524日期 2011-12-01一、实验内容和实验目的利用所学数据链路层原理,自己设计一个滑动窗口协议,在仿真环境下编程实现有噪音信道环境下两站点之间无差错双工通信。
信道模型为8000bps 全双工卫星信道,信道传播时延270毫秒,信道误码率为10-5,信道提供字节流传输服务,网络层分组长度固定为256字节。
通过该实验,进一步巩固和深刻理解数据链路层误码检测的CRC 校验技术,以及滑动窗口的工作机理。
滑动窗口机制的两个主要目标:(1) 实现有噪音信道环境下的无差错传输;(2)充分利用传输信道的带宽。
在程序能够稳定运行并成功实现第一个目标之后,运行程序并检查在信道没有误码和存在误码两种情况下的信道利用率。
为实现第二个目标,提高滑动窗口协议信道利用率,需要根据信道实际情况合理地为协议配置工作参数,包括滑动窗口的大小和重传定时器时限以及ACK 搭载定时器的时限。
这些参数的设计,需要充分理解滑动窗口协议的工作原理并利用所学的理论知识,经过认真的推算,计算出最优取值,并通过程序的运行进行验证。
通过该实验提高同学的编程能力和实践动手能力,体验协议软件在设计上各种问题和调试难度,设计在运行期可跟踪分析协议工作过程的协议软件,巩固和深刻理解理论知识并利用这些知识对系统进行优化,对实际系统中的协议分层和协议软件的设计与实现有基本的认识。
二、实验环境Window操作系统下,Microsoft Visual C++ 6.0 集成化开发环境。
三、实验分工协议5主要由李小明完成,协议6主要由朱瑞霖完成,两协议的测试以及部分参数的设定、测试由两人共同完成。
实验报告由李小明和朱瑞霖共同整理完成。
四、软件设计1、数据结构分析(a)协议五#define inc(k)if(k<MAX_SEQ)k++;else k=0inc宏定义了窗口更新函数,按循环式前进更新。
bgp实验报告总结

bgp实验报告总结
BGP实验报告总结
背景
BGP(Border Gateway Protocol)是用于在互联网中交换路由信息的协议。
它是一种路径矢量协议,用于确定最佳路径,并且能够适应网络拓扑的变化。
在本次实验中,我们对BGP进行了实验,并对实验结果进行了总结和分析。
实验过程
在实验中,我们使用了模拟器来模拟网络环境,并配置了多个路由器和主机。
我们通过配置BGP协议来模拟网络中的路由器之间的路由信息交换。
我们还模拟了网络中的故障情况,以观察BGP协议对网络拓扑变化的适应能力。
实验结果
通过实验,我们观察到BGP协议在网络拓扑变化时能够快速地重新计算最佳路径,并更新路由表。
当网络中发生故障时,BGP能够及时地发现并通知其他路由器,从而保证了网络的稳定性和可靠性。
此外,我们还观察到BGP协议在处理大规模网络时的效率和性能表现良好。
总结与分析
通过本次实验,我们对BGP协议的工作原理和性能有了更深入的了解。
BGP作为互联网中最重要的路由协议之一,具有很强的稳定性和可靠性。
它能够适应网络拓扑的变化,并且能够处理大规模网络的路由信息交换。
因此,BGP协议在互联网中扮演着至关重要的角色。
结论
通过本次实验,我们对BGP协议有了更深入的了解,并且验证了其在网络中的
稳定性和可靠性。
BGP协议的高效性和性能表现使其成为互联网中不可或缺的一部分,对于构建稳定和可靠的互联网具有重要意义。
我们将继续深入研究BGP协议,并将其应用于实际网络中,以提高网络的稳定性和可靠性。
计算机网络原理实验七传输层可靠传输协议GBN编程实验报告精编

计算机网络原理实验七传输层可靠传输协议GBN编程实验报告精编实验七:传输层可靠传输协议-GBN编程实验报告一、实验目的1. 理解传输层的可靠传输协议GBN(Go-Back-N)的工作原理;2. 利用Python编程实现GBN协议;3.通过实验验证GBN协议的可靠性。
二、实验环境1. 操作系统:Windows 10;2. 开发工具:Python3.9;3. Python库:socket, threading。
三、实验原理GBN(Go-Back-N)协议是一种滑动窗口协议,用于实现可靠的传输。
在GBN协议中,发送方可以连续发送一批数据包,每个数据包都有一个序号。
接收方会按照相同的序号顺序接收并确认收到的数据包,若一些数据包丢失,则接收方会等待一定时间,然后要求发送方重传从丢失的数据包开始之后的所有数据包。
在本实验中,我们将通过编程实现一个简化的GBN协议。
发送方和接收方将通过socket进行通信。
发送方将发送一定数量的数据包,接收方将模拟数据包丢失,并且在一段时间后要求发送方重传。
四、实验过程1. 建立发送方和接收方的socket连接,并互相绑定IP地址和端口号;2.发送方将一定数量的数据包发送给接收方;3.接收方按照GBN协议的规定接收数据包,并发送确认信息给发送方;4.发送方接收到确认信息后,继续发送下一批数据包;5.当接收方丢失数据包时,等待一段时间之后要求发送方重传;6.发送方收到重传请求后,重新发送从丢失的数据包开始之后的所有数据包;7.重复步骤2-6,直到所有数据包都被成功接收。
五、实验结果经过多次实验,数据包的发送与接收均顺利进行。
发送方能够根据接收方的确认信息进行滑动窗口的滑动,并实现重传功能。
接收方也能够检测到丢失的数据包,并要求发送方进行重传。
整个传输过程基本完成了GBN协议可靠性传输的要求。
六、实验总结通过本次实验,我深入理解了传输层的可靠传输协议GBN的工作原理,并通过编程实现了一个简化的GBN协议。
网络协议原理实验报告

网络协议原理实验报告1. 实验目的本实验旨在通过实际操作,理解和掌握网络协议的基本原理,包括数据传输过程中的分段、封装和解封装等关键步骤,以及网络协议的工作方式和作用。
2. 实验环境- 操作系统:Windows 10- 软件工具:Wireshark、Tera Term3. 实验内容3.1 数据传输过程的分段和封装首先,我们需要进行数据传输过程的分段和封装操作。
为了简化实验,我们选取一个简单的应用场景:从计算机A向计算机B发送一段文字信息。
步骤如下:1. 打开Tera Term,分别在计算机A和计算机B上运行。
2. 在计算机A上输入文字信息,例如:“Hello World!”。
3. 在计算机A上使用Wireshark进行抓包操作,监听计算机A与计算机B之间的数据传输过程。
4. 在计算机A上点击发送按钮,将文字信息发送给计算机B。
3.2 网络协议的工作方式和作用在数据传输过程中,网络协议起到了关键的作用。
具体来说,网络协议分为多个层次,每个层次都有自己的功能和任务。
其中,最为常见的是TCP/IP协议。
步骤如下:1. 在Wireshark抓包工具中,我们可以看到整个数据传输过程中的分段、封装以及网络协议的工作方式。
2. 在Wireshark中,我们可以看到每个数据包的详细信息,包括源IP地址、目的IP地址、数据长度等。
3. 在Wireshark中,我们还可以追踪每个数据包的传输路径,以及每个路由器的IP地址和工作状态。
4. 实验结果与分析根据实验步骤,我们可以得出如下实验结果与分析:- 在计算机A上输入文字信息并发送后,Wireshark抓包工具会显示对应的发送数据包。
- 在Wireshark中,我们可以看到每个数据包的详细信息,包括源IP地址、目的IP地址、数据长度等。
- 在Wireshark中,我们还可以追踪每个数据包的传输路径,以及每个路由器的IP地址和工作状态。
通过实验结果与分析,我们可以得出以下结论:- 在数据传输过程中,数据被分成多个较小的分段,分别进行封装。
7go-back-n协议

计算机网络设计实验报告
09012211 孙磊
实验七:Go-Back-N协议
实验目的
加深理解出错重传机制中的Go-Back-N协议
实验步骤
1.理解:Go-Back_N协议:发送方在发完一个数据帧后,不停下来等待应答帧,而是连续发送若干个数据帧,即使在连续发送过程中收到了接收方发来的应答帧,也可以继续发送。
且发送方在每发送完一个数据帧时都要设置超时定时器。
只要在所设置的超时时间内仍收到确认帧,就要重发相应的数据帧。
2、了解实验环境,这个程序模拟了Go-Back-N协议,在该程序中,窗口限制了发送端最多为5个分组而不需等待确认。
多次点击“发送新分组”六次至多次,观察现象。
一般情况下:如图所示,点击“Send New”9次,实验现象如下图所示:
出现报文丢失的情况下,如图所示,点击发“送新的分组”9次,实验现象如下图所示:
实验结果分析
当有应答信号传回时,窗口前进(如图现象一)。
若一定时间内未收到应答信号,N 个包同时重发(如图现象二)。
计算机网络--滑动窗口实验报告

计算机网络--滑动窗口实验报告计算机网络滑动窗口协议实验报告目录一、实验内容和实验环境描述(2)1.实验内容(2)2.实验目的(2)3.实验环境(2)二、协议设计(3)三、软件设计(4)Part A 选择重传协议1.数据结构(4)2.模块结构(6)3.算法流程(7)Part B gobackn协议 1.数据结构(8)2.模块结构(9)3.算法流程(10)四、实验结果分析(11)五、探究问题(13)六、实验总结与心得体会(14)一、实验内容和实验环境描述1.实验内容利用所学数据链路层原理,自己设计一个滑动窗口协议,在仿真环境下编程实现有噪音信道环境下两站点之间无差错双工通信。
信道模型为8000bps全双工卫星信道,信道传播时延270毫秒,信道误码率为10?5,信道提供字节流传输服务,网络层分组长度固定为 256 字节。
2.实验目的通过该实验,进一步巩固和深刻理解数据链路层误码检测的CRC校验技术,以及滑动窗口的工作机理。
滑动窗口机制的两个主要目的:(1)实现有噪音信道环境下的无差错传输;(2)充分利用传输信道的带宽。
在程序能够稳定运行并成功实现第一个目标之后,运行程序并检查在信道没有误码和存在误码两种情况下的信道利用率。
为实现第二个目标,提高滑动窗口协议信道利用率,需要根据信道实际情况合理地为协议配置工作参数,包括滑动窗口的大小和重传定时器时限以及 ACK 搭载定时器的时限。
3.实验环境Windows10环境PC机Microsoft Visual Studio 2017集成开发环境二、协议设计本次试验主要设计数据链路层,实验中分别设计了gobackn协议与选择重传协议。
主要涉及到的层次结构是物理层、数据链路层、网络层。
物理层:为数据链路层提供的服务为8000bps,270ms传播延时,10?5误码率的字节流传输通道。
数据链路层利用接口函数send_frame()和 recv_frame()从物理层发送和接收一帧。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一个数据帧如图所示:其中有效数据和校验码可能含有转义字符。
(3) 帧中各个字段的定义和编码,计算CRC校验和的多项式定义帧的定义编码:帧中的第一比特为开头FLAG,第二比特是帧的类型,共定义了{data,ack,nak} frame_kind三种类型,用枚举常量表述,第三比特是顺序编码,用于确定到达帧的顺序,第四比特是ACK捎带确认讯息,记录了当前已收到帧的确认情况,这是数据帧的头部。
若为数据帧,从第五比特开始为网路层的数据,到网路层包裹信息结束后,接上4比特的CRC校验讯息,后有一结束字符FLAG表明该帧结束。
CRC校验数:CRC校验数据由函数crc32()产生,函数crc32()返回一个32位整数为数据生成CRC-32校验和,并且把这 32比特校验和附在数据字节之后。
多项式定义:采用的CRC校验方案为CRC-32,生成多项式为:x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x1+1校验和附加在数据帧尾部,接受方用带校验和的数据来逻辑除以生成多项式,余数为零则数据无误码,反之有误码等待发送方重传。
(4) 协议工作时两个站点之间信息交换的过程控制,尤其是发生误码条件下的控制方案协议工作时,两个站点通过互发数据包交换数据,而控制讯息则稍带在数据讯息中传递,当遇到超时情况时,则主动发送空数据包以提供讯息。
当出现帧丢失时,如收到帧的序号有跳跃,或者出现CRC校验出错丢弃了某帧,会主动发送NAK否定帧,提示重传,接收方丢弃所有的后续帧。
若长期未产生放送消息,则出现ACK超时事件,主动发送ACK帧提示确认,对方收到确认后,滑动窗口继续发送,若一直未收到确认讯息,则出现数据帧超时事件,发送方会自动重发未确认帧。
11.3 软件设计给出程序的数据结构,模块之间的调用关系和功能,程序流程。
(1)数据结构:数据结构是整个程序的要点之一,程序维护者充分了解数据结构就可以对主要算法和处理流程有个基本的理解。
描述程序中自定义结构体中各成员的用途,定义的全局变量和主函数中的变量的变量名和变量所起的作用。
采用字符数组结构来存放数据帧:typedef unsigned char seq_nr;typedef unsigned char packet[PKT_LEN];typedef unsigned char frame_kind;typedef struct FRAME {frame_kind kind; /* FRAME_DATA */seq_nr ack;seq_nr seq;packet info;unsigned int padding;} frame;其中:frame kind 是帧的类型。
Ack 捎带确认数据帧是否正确传到Seq 是数据帧传输的序号info是帧传输的内容Padding是帧经过CRC校验之后所添加的内容定义的全局变量:static int phl_ready 表示物理层的状态int out_buffer_len[MAX_SEQ + 1] 从网络层得到的数据包的长度主函数中的变量的变量名和变量:int event 接收方等待的发生事件int arg 物理层到达的字数packet buffer[MAX_SEQ+1]; 发送方的数据包缓存区seq_nr nbuffered 当前帧号seq_nr next_frame_to_send 下一个要发送的帧的序号seq_nr ack_expected 期望收到的确认seq_nr frame_expected; 期望接收到对方的帧的编号frame r; 变量帧(2)模块结构:给出程序中所设计的子程序所完成的功能,子程序每个参数的意义。
给出子程序之间的程序调用关系图。
函数between(seq_nr a,seq_nr b,seq_nr c)用于判断收到的ACK序号是否在发送窗口内。
a 为下限,b为ack序号,c为上限。
函数send_to_physical(unsigned char *out_buf, int slen)用字符填充方式将帧发送到物理层函数recv_from_physical(unsigned char *in_buf, int arg)用于从物理层接收一个字节并做处理函数send_data_frame(frame_kind fk, seq_nr frame_nr, seq_nr frame_expected, packet buffer) 用于发送从网络层得到的数据函数调用图为:主函数mainbetween send_to_phys recv_from_ph send_data_fram(3) 算法流程:画出流程图,描述算法的主要流程。
11.4 实验结果分析(1)描述所实现的协议软件是否实现了有误码信道环境中无差错传输功能。
能实现协议软件是否实现了有误码信道环境中无差错传输功能,采用了CRC校验和重传技术是错误得以被发现和纠正。
(2) 程序的健壮性如何,能否可靠地长时间运行。
程序健壮性较好,在高负荷和高误码率等条件下均能工作。
在较低误码率的信道条件下,该程序运行平稳,没有出现任何差错,健壮性良好,在高误码率的信道条件下,程序运行有时会出现中断,但大多数时候运行时间较长,故本程序健壮性良好。
(3) 协议参数的选取:滑动窗口的大小,重传定时器的时限, ACK 搭载定时器的时限,这些参数是怎样确定的?根据信道特性数据,分组层分组的大小,以及你的滑动窗口机制,给出定量分析,详细列举出选择这些参数值的具体原因。
本次实验中物理层提供了一种字节流传输服务,为了成帧,使用了字节填充技术。
分组长度为240~256字节。
滑动窗口的大小:该参数的选择直接涉及到信道利用率和数据拥塞的问题;若太小,会导致信道利用率很低,信道中长时间没有数据传送;若太大,数据发送过快,会造成接受方数据链路层来不及处理,数据物理层及信道发生拥塞现象导致数据丢失,出错率增大。
在go_back_n协议中(假设接受方一直有数据发送,即无ack定时器超时现象),滑动窗口的大小M,信道传输时延a,发送速率c,帧大小f在满足如下关系时信道利用率(M*(f/c)/[2a+2(f/c)])接近100%:M>=[2a+2*(f/c)]/(f/c);由于实际数据传送很可能在某段时间类接受方无数据反送,涉及ack帧单独传送问题,故一般信道利用率不可能达到100%,但M的选择至少要满足公式。
至于防止M过大的问题,可通过实际测试的结果分析来得到合适的M值。
最终,我们选择M值为31,效果较好。
重传定时器的时限:该参数的选择涉及到重传的相应时间,若改时间选择过大,则会导致重传等待的时间过久,若时间选择过小,则将导致较为频繁的重传,这两种情况均将导致信道利用率的下降,经过实际检测,当wait_time设为1700ms时,效果较好。
Ack搭载定时器的时限:若该值选择较小,则将导致频繁重传ack帧,虽然我们在程序中将ack帧的长度设定为8(最小长度),但频繁的重传仍将降低信道利用率;若将该值设置过大,则发送方将长时间得不到ack确认信号,严重时将导致重传,降低利用率。
经过实际测试,ack_time选择为240-300ms内,效果较好。
(5) 理论分析:根据所设计的滑动窗口工作机制(Go-Back-N),推导出在无差错信道环境下分组层能获得的最大信道利用率;推导出在有误码条件下重传操作及时发生等理想情况下分组层能获得的最大信道利用率。
给出理论推导过程。
理论推导的目的是得到信道利用率的极限数据。
为了简化有误码条件下的最大利用率推导过程,可以对问题模型进行简化,比如:假定超时重传的数据帧的回馈ACK 帧可以100%正确传输,但是简化问题分析的这些假设必须不会对整个结论产生较大的误差。
由于需要携带帧讯息,因此最大的信息利用率为约为96.2%,由于信道的最大比特率为8000bps,可得出每传输一个字节耗时1ms,每帧的附加讯息固定为10,耗时10ms,若出现转义字符,则可能增加时间,在ESC/FLAG模式中传输的平均250个字符需要两倍的传输空间即极限值500,此时的信道利用率的极限值是49%,若平均每个错帧重传10次,利用率将下降为40%。
(6) 实验结果分析:你的程序运行实际达到了什么样的效率,比对理论推导给出的结论,有没有差距?给出原因。
有没有改进的办法?如果没有时间把这些方法付诸编程实施,介绍你的方案。
实验所得的结果是无差错条件下分组层能获得的最大信道利用率对于A是50%,对于B是100%。
(7) 存在的问题:在“表3 性能测试记录表”中给出了7 种测试方案,在测试中你的程序有没有失败,或者,虽未失败,但表现出来的性能仍有差距,你的程序中还存在哪些问题?在误码率不同的情况下所执行程序的结果截图如下:当参数为u的运行结果:无参数时运行结果为:参数为fu的运行结果:参数为f的的运行结果如下:当参数为fs时的运行结果如下:该图参数为afs:该图参数为bfs:当参数为fle的运行结果:该图的参数为afle该图的参数为bfle当参数为fl时的运行效果如下:当参数为f –ber 1e-7时的运行效果:当参数为f –ber 5e-5时程序运行效果如下:该程序存在的主要问题就在于会反复重传未被确认的帧,造成了信道资源的浪费,这可以在实验的结果中看出,在进行较长时间的运行后,信道流量水平趋于平稳,此时的数据和理论之大致相当,说明所确认的问题确实是症结所在。
只要能限制其反复重传,就能提高信道利用率。
11.5 研究和探索的问题前面列出的“可研究和探索的问题”,有哪些问题你有了答案或者自己的见解?给出你的结论,并详细阐述你的理由或见解。
1. CRC 校验能力CRC校验码的检错能力很强,它除了能检查出离散错外,还能检查出突发错,CRC校验码具有以下检错能力:CRC校验码能检查出全部单个错;CRC校验码能检查出全部离散的二位错;CRC校验码能检查出全部奇数个错;CRC校验码能检查出全部长度小于或等于K位的突发错;CRC校验码能以[1-(1/2)K-1]的概率检查出长度为(K+1)位的突发错。
2. 软件测试方面的问题(1)验证所完成的程序能否在各种情况下都能够正确工作,是软件测试环节的主要目的。
(2)表3 中列出了七种测试方案,设计这么多种测试方案的目的是检测此程序在不同信道条件下的传输性能。
-u是测试成帧方案的效率。
无参数时模拟在实际线路中,不连续的收发时的传输性能。
-f 用于测试信道满负荷时的传输性能。
-l,-e,-s用于测试在特殊情境下传输性能。
-ber可以改变误码率,从而检验无差错传输的健壮性及性能。
11.6 实验总结和心得体会如果一切100%顺利,编辑的程序一次编译就通过,运行一次就正确,那么完成本次实验的代码编写和调试工作大约需要4~6 个小时。