计算机网络基础课程设计方案_第1页
计算机网络基础课程设计方案_第2页
计算机网络基础课程设计方案_第3页
计算机网络基础课程设计方案_第4页
计算机网络基础课程设计方案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、叱注中称本上摩信息技术学院计算机网络基础课程设计方案目录课程设11说明错误!未定义书签。课程设方t选题错误!未定义书签。1. CRC算法模拟错误!未定义书签。2. 零比特填充模拟错误!未定义书签。3. 曼彻斯特编码模拟错误!未定义书签。4. 截断二进制指数退避算法错误!未定义书签。5. 透明网桥自学习与转发帧算法模拟错误!未定义书签。6. IP分片模拟错误!未定义书签。7. IP首部检验和算法模拟错误!未定义书签。8. IPv4数据报封装模拟错误!未定义书签。9. 使用子网时IP分组转发模拟错误!未定义书签。10. 距离向量算法模拟错误!未定义书签。11. UDP检验和算法模拟错误!未定义书签

2、。12. 利用滑动窗口实现流量控制模拟错误!未定义书签。13. 慢开始、拥塞避免算法模拟错误!未定义书签。课程设at示例错误!未定义书签。14. 节填充法解决透明传输模拟错误!未定义书签。课程设计选题1 .CRC算法模拟【分值】20分【页码】P68-69【描述】待传送的一组数据M以二进制字符存储在文件中,生成多项式P以二进制字符存储文件中。编写CRC算法,计算冗余码R并输出到output文件中。【提示】a、模2加减可以采用按位异或运算的方法计算。【举例】2 .零比特填充模拟【分值】10分【页码】P74【描述】待传送的原始数据以二进制字符存储在文件中,内含若干5个连续1的子串、6个连续1的子串。

3、编写零比特填充算法,并将结果保存至文件;并且编写算法还原数据,结果保存至文件。【提示】a、原始数据只要包含5个连续1的子串、6个连续1的子串即可,内容任意。【举例】3 .曼彻斯特编码模拟【分值】10分【页码】P80【描述】待传送的原始数据以二进制字符存储在文件中。编写曼彻斯特编码模拟算法,将编码的结果保证至;并且编写从电压高低到二进制数据的解码算法,结果保存至。【提示】a、用字符“HL”代表电压“前高后低”,表示码元1;用字符“LH”代表电压“前低后高”,表示码元0。【举例】11LHHLHLHLLHHLHLLHLHLH114 .截断二进制指数退避算法【分值】10分【页码】P82【描述】重传次数

4、存储在文件中。编写截断二进制指数退避算法,计算得到的重传推迟时间存入文件。【提示】a、以太网争用期为科s,最多重传次数为16这些可预定义为常量。b、若重传已经超过16次,则将重传推迟时间设置为-1s,表示应丢弃该帧。【举例】0(说明:或,随机选择;此括号内信息不是输出内容)5 .透明网桥自学习与转发帧算法模拟【分值】20分【页码】P94-96【描述】网络拓扑由文件给出,数据帧发送事件由文件给出。网桥初始转发表为空。试编写透明网桥自学习与转发帧算法,将网桥处理完每一发送事件后的网桥帧转发策略和当前转发表输出到文件。【提示】a、为简单起见,可以仅考虑单个两端口的网桥。b、文件的每行包括“主机”、“

5、连接的网桥端口号”等拓扑信息,主机用字母(除字母"Z”)编号,网络端口用数字编号。c、文件的每行给出“源主机”、“目的主机”等信息,其中用目的主机为“Z”表示广播帧。d、网桥帧转发策略的可能结果有“丢弃”、“向端口x转发“、”泛洪e、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】ADBACZBC事件1:AtoD;网桥帧转发策略:泛洪;转发表:A1事件2:BtoA;网桥帧转发策略:丢弃;转发表:A1B1事件3:CtoZ;网桥帧转发策略:泛洪;转发表:A1B1C2事件4:BtoC;网桥帧转发策略:向端口2转发;转发表:A1B1C26 .IP分片模拟【分值】10分【页码】P1

6、23-124【描述】IP数据包原始长度、分片最大长度存储在文件中。编写一算法计算分片结果,将每分片的总长度、MF、DF、片偏移存入。【提示】a、设该IP首部无选项,IP固定首部长度为20字节。b、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】(注:两字段分别是IP数据包原始长度、分片最大长度)38201420:(注:每行信息分别是分片总长度、MF、DF、片偏移)14201001420101751020003507 .IP首部检验和算法模拟【分值】10分【页码】P125【描述】20个字节的某IP首部以十六进制字符存储在文件中一一每行8个字符(即4个字节),其中首部检验和字段为0。编

7、写IP首部检验和算法,检验和计算结果以4个十六进制字符形式存入。【提示】a、首部检验和的计算涉及每个字(16位)间的反码算术运算求和一一计算规则见课本P125的脚注。b、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】450000864C3740007F060000C0A842D4C0A863CB874A8 .IPv4数据报封装模拟【分值】20分【页码】P122-125【描述】文件的第一行以点分十进制给出了某IP数据报的源IP地址、第二行以点分十进制给出了目的IP地址,第三行给出了待封装的TCP数据报长度。整个TCP数据报的数据用字母“A”代替(ASCII为0x41)。定义IP数据

8、报固定首部数据结构,并编写封装算法,结果以每行8个的十六进制字符(即4个字节)存入文件。【提示】a、IP数据报首部的“区分服务字段填0、标识字段可随意设置、生存时间可随意设置(比如127),不考虑可选字段。b、可以不考虑IP分片的问题,但应实现首部检验和的计算。c、点分十进制地址到二进制地址的转换可以使用WinsockAPI(名词解释参见,头文件为<>)中的inet_addr函数,其函数原型如下:unsignedlonginet_addr(constchar*cp)入口参数cp:点分十进制形式的IP地址返回值:网络字节顺序的IP地址,是无符号的长整数d、一行中的多个字段自行决定分隔

9、符,比如空格或制表符等。【举例】45000050037040007F06D066C0A842B5C0A863CB4141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141419 .使用子网时IP分组转发模拟【分值】20分【页码】P133-135【描述】文件给出了某路由器的路由表,文件由若干行组成,每行给出了目的网络地址、子网掩码、下一跳地址等信息(地址均以点分十进制表示);文件给出了该路由器收到的一系列IP数据报点分十

10、进制表示的目的IP地址。编写使用子网时IP分组转发算法,将每一个IP数据报的处理结果输出到文件。【提示】a、点分十进制地址到二进制地址的转换可以使用WinsockAPI中的inet_addr函数。b、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】:(注:每行包括目的网络地址、子网掩码、下一跳地址等信息;最后一行给出了默认路由)Interface。Interface1Router20.0.0.0Router3(注:每行包括目的IP地址、处理结果)Interface。Interface1Router2Router310 .距离向量算法模拟【分值】20分【页码】P148-149【描述】

11、文件给出了某路由器Rx的当前路由表信息,文件由若干行组成,第一行为路由器名,后续每行给出了目的网络(以网络名称表示)、距离、下一跳路由器等信息;文件给出了路由器Rx刚接收到的来自相邻路由器Ry的RIP路由更新信息,文件由若干行组成,第一行为路由器名,后续每行给出了目的网络、距离、下一跳路由器等信息。编写距离向量更新算法,将路由器Rx更新后的路由表写入。【提示】a、可参照课本P149例4-5,以网络名称表示目的网络、以路由器名称或“直接交付”给出下一跳路由器信息。b、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】R6Net23R4Net34R5R4Net13R1Net24R2Net

12、31直接交付R6Net14R4Net25R4Net32R411 .UDP检验和算法模拟【分值】10分【页码】P185-187【描述】文件的第一、二行分别以点分十进制给出某即将传输的UDP数据报的源IP地址和目的IP地址,后续每行8个十六进制字符(即4个字节)给出整个UDP数据报的数据(其中检验和字段为0,最后一行可能少于4个字节)。编写UDP检验和算法,检验和计算结果以4个十六进制字符形式存入。【提示】a、点分十进制地址到二进制地址的转换可以使用WinsockAPI中的inet_addr函数。b、UDP的检验和计算包括伪首部、UDP首部和UDP数据部分,其中数据部分字节数为奇数时需在末尾填入一

13、个全零字节参与计算。c、一行中的多个字段自行决定分隔符,比如空格或制表符等。【举例】691212 .利用滑动窗口实现流量控制模拟【分值】20分【页码】P203-204【描述】文件的第一行给出主机A发送给主机B的TCP报文段的大小(单位:字节),第二行给出了主机A发送的起始序号seq,第三行给出了主机B设置的初始接收窗口rwnd的大小(单位:字节),后续若干行描述了报文段传输事件一一每行的第一个字段是方向(“A->B”或“B->A”),若方向为“A->B”则该行后续字段包括标志(“新发”或“重发”)、结果(“成功”或“丢失”),若方向为“A->B”则该行后续字段为新的接收

14、窗口rwnd。编写利用滑动窗口实现流量控制模拟算法,将处理结果写入一一每行为一次传输事件的信息,包括方向、序号(若方向为“A->B”则为发送序号seq,若方向为“B->A”则为确认序号ack)、A主机实际还可发送的字节数(即减去已发字节数)、A主机实际还可发送的序号范围(若前一字段为0则不写此项)。【提示】a、设置两全局变量分别记录发送序号seq和确认序号ack,在处理每一事件时及时更新seq、ack的值。b、确认序号ack是期望收到对方下一个报文段的第一个数据字节的序号。c、设置一数组记录传输丢失的报文段序号,以便重传。d、若一行有多个字段,自行决定分隔符,比如空格或制表符等。【

15、举例】1001400A->B新发成功A->B新发成功A->B新发丢失B->A300A->B新发成功A->B新发成功A->B重发成功B->A100A->B新发成功B->A0A->Bseq=1300101-400A->Bseq=101200201-400A->Bseq=201100301-400B->Aack=201200301-500A->Bseq=301100401-500A->Bseq=4010A->Bseq=2010B->Aack=501100501-600A->Bseq=50

16、10B->Aack=601013 .慢开始、拥塞避免算法模拟【分值】20分【页码】P208-210【描述】文件给出了慢开始门限ssthresh状态变量的初始值;文件给出了若干个出现网络拥塞的传输轮次(取值在1-30之间)。编写慢开始、拥塞避免模拟算法,计算并输出前30个传输轮次的拥塞窗口cwnd等信息,结果存入每行包含轮次、cwnd、ssthresh现用算法等信息。【提示】a、此模拟中的窗口单位不使用字节而使用报文段的个数。b、拥塞窗口cwnd的初值为1,即第1传输轮次允许传输一个报文段,传输成功后cwnd即按照指数规律增长为2。c、若一行有多个字段,自行决定分隔符,比如空格或制表符等。

17、【举例】1612231216慢开始2416慢开始3816慢开始41616拥塞避免51716拥塞避免61816拥塞避免71916拥塞避免82016拥塞避免92116拥塞避免102216拥塞避免112316拥塞避免122416拥塞避免13112慢开始14212慢开始15412慢开始16812慢开始171212拥塞避免181312拥塞避免191412拥塞避免201512拥塞避免211612拥塞避免221712拥塞避免231812拥塞避免2419慢开始2529慢开始2649慢开始2789慢开始2899拥塞避免29109拥塞避免30119拥塞避免课程设计示例1.字节填充法解决透明传输模拟【分值】10分【

18、页码】P67【描述】待传送的原始数据以十六进制字符存储在文件中,内含SOH(0x01)、EOT(0x04)、ESC(0x1B)等字符。编写字节填充算法,并将结果保存至文件;并且编写算法还原数据,结果保存至文件。【提示】a、原始数据只要包含3种特殊字符即可,内容任意。b、存储原始数据的文件中只可能出现十六进制字符,且长度为偶数。【举例】AC00013c5604201B76AC001B013C561B04201B1B76AC00013c5604201B76【程序清单】01#include""0203typedefintstatus;04#defineTRUE105#define

19、FALSE00607#defineMAX_BUF_LEN15000809#defineSOH0x0110 #defineEOT0x0411 #defineESC0x1B1213 typedefstructStuffingString14 15 unsignedcharbufMAX_BUF_LEN;16 unsignedintlen;17 *PStuffingString;1819 statusbyte_stuffing(PStuffingStringpsin,PStuffingStringpsf)20 21 unsignedinti=0;22 psf->len=0;23242526272

20、82930313233343536373839404142434445464748495051525354555657585960616263646566while(i<psin->len)if(psin->bufi=SOH|psin->bufi=EOT|psin->bufi=ESC)psf->bufpsf->len+=ESC;psf->bufpsf->len+=psin->bufi+;returnTRUE;statusbyte_unstuffing(PStuffingStringpsf,PStuffingStringpsd)unsi

21、gnedinti=0;psd->len=0;while(i<psf->len)if(psf->bufi=ESC)i+;if(psf->bufi!=SOH&&psf->bufi!=EOT&&psf->bufi!=ESC)returnFALSE;psd->bufpsd->len+=psf->bufi+;returnTRUE;statusinput(charf,PStuffingStringpsin)FILE*fp;psin->len=0;if(fp=fopen(f,"r")=NULL)returnFALSE;while(fsc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论