欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    计算机网路课程设计报告——鲁瑞彬.doc

    • 资源ID:2402139       资源大小:1.50MB        全文页数:51页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    计算机网路课程设计报告——鲁瑞彬.doc

    课程设计报告书课 程: 计算机网络 指导老师: * 专业班级: 网络工程193081班 姓 名: 鲁瑞彬 学 号: * 电 话: 15072434416 实验日期: 2010年6月27日 目录1第一部分:实验环境认知及实验准备31.1 课程设计简介3 1.2实验室平台架构 3 1.3实验要求 4 1.4所用软件介绍 4 1.5实验目的 42第二本部分:wireshark实验部分4 2.1实验一:用wireshark作三次握手实验4 2.2实验二:用wireshark软件做拥塞流量控制实验8 2.3实验三:用wireshark软件作DHCP实验12 2.4实验四:注释linux内核启动项 15 3第三部分:tcl语言实验部分19 3.1实验一:ns网络模拟19 3.2实验二:模拟吞吐量和时延23 3.3实验三:随即丢弃28 3.4实验四:慢启动344第四部分:编程实验部分(Checksum、CRC、滑动窗口编程)41 4.1实验一:CRC编程41 4.2实验二:滑动窗口编程43 4.3实验三:Checksum编程50 5第五部分:心得体会52 第一部分 实验环境认知及实验准备1.1 课程设计简介教学实验与理论教学是相辅相承的,具有同等重要的地位。它是在开放教育的基础上,为配合理论教学、培养学生分析问题和解决问题的能力以及加强训练学生专业实践能力而设置的教学环节;对于完成教学计划、落实教学大纲,确保教学质量,培养学生实际操作技能具有特别重要的意义。同时,实践教学也是培养应用型人才的重要途径,实践教学的好坏,实际上也决定了应用型人才培养质量的高低。因此,加强实践教学环节,提高整体教学质量,对培养高质量应用型人才至关重要。计算机网络课程设计是在我们网络课结束之后又一个学习网络锻炼自己动手能力的机会。因此我们网工专业的两个班进行了这课程设计来提高我们的实践能力。1.2实验室平台架构1.2.1实验室地点: 中国地质大学(武汉)西区信息楼8101.2.2实验时间: 2010年6月13日2010年6月28日1.2.3实验指导老师: 网络老师:陈喆老师及相关实验室人员1.2.4实验室的物理格局1.3实验要求: 1.爱护公共财物,保持机房清洁干净 2.不迟到,不早退,不旷课,做到有事请假 3.离开机房时关闭机房电源1.4所用软件介绍: 1.wireshark软件:Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。网络封包分析软件的功能可想像成 "电工技师使用电表来量测电流、电压、电阻" 的工作 - 只是将场景移植到网络上,并将电线替换成网络线。 Wireshark使用目的以下是一些使用Wireshark目的的例子: 网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark来学习网络协定的相关知识当然,有的人也会“居心叵测”的用它来寻找一些敏感信息 2ns-2软件:NS-2是面向对象的,基于离散事件驱动的网络环境模拟器。它实现了多种网络协议的模拟,如网络协议TCP、UDP,流量源行为,如FTP、Telnet、Web、CBR、VBR;实现了DropTail、RED、CBQ等几种路由器队列管理机制以及Dijkstra,动态路由、静态路由、组播路由等路由算法。此外,NS-2还支持组播协议SRM及部分MAC层协议。    NS-2用C+和Otcl语言编写而成。它是免费的,开放源代码的,可以很方便地扩展NS-2的功能,将自己开发的新协议模块集成到NS-2环境中。1.5实验目的: 通过此次课程设计希望我们网络工程的学生对计算机网络有更一步的了解,让我们具体熟悉wireshark软件以及ns-2软件的使用和。通过这两个软件的使用,让我们对网络更加熟悉,提高同学们的动手能力。第二部分:wireshark实验部分2.1实验一:用wireshark作三次握手实验:2.1.1实验条件:硬件设备:整个实验室的局域网,电脑软件环境:Windows XP、wireshark 2.1.2实验目的: 1熟练掌握常用网络工具的功能及其使用方法2熟练应用wireshark软件3认识三次握手的原理过程 2.1.3实验内容: 1启动wireshark; 2打开浏览器进入 3.开始抓包 4结果分析 Wireshark抓包结果Time为发送的时间;Source为源目的地址;Detisation为目的地址;Protocal Info为消息类型;(1) 调出三次握手: 方式:从工具栏选择StatisticsàFlow Graph如图选择 即可得三次握手图如下: 三次握手图其中前三行为三次握手,第一行:主机发送请求给服务器,序列号为0,Ack随即选取; 第二行:服务器回复Ack给主机,序列号为0,Ack=1; 第三行:主机回复Ack给服务器,Seq=1,Ack=1; 下面开始发送报文段;(2) 数据分析 上图为物理层的数据帧概况具体分析Frame 1 :118 bytes on wire(944bits), 118 bytes captured(944bits)  1号帧,线路118字节,实际捕获118字节Arrival Time: jun 26, 2010 17:15:51.198027000      捕获日期和时间Time delta from previous packet:0.00000000 seconds 此包与前一包的时间间隔Time since reference or first frame: 0.00000000 seconds 此包与第1帧的间隔时间Frame Number: 1                                    帧序号Packet Length: 118 bytes(944bits)                       帧长度Capture Length: 118 bytes(944bits)                      捕获长度Frame is marked: False                           此帧是否做了标记:否Protocols in frame: eth:ip:udp:data                   帧内封装的协议层次结构Coloring Rule Name:udp             用不同颜色染色标记的协议名称:udpColoring Rule String: udp      染色显示规则的字符串: 上图为数据链路层以太网帧头部信息Ethernet II, Src: complain_9a:75:df (00:23:5a:9a:75:df), Dst: 00:b0:2c:2f:7f:5e (00:b0:2c:2f:7f:5e)以太网协议版本II,源地址:厂名_序号(网卡地址),目的:厂名_序号(网卡地址)Destination: 00:b0:2c:2f:7f:5e (00:b0:2c:2f:7f:5e) 目的:厂名_序号(网卡地址)Source: complain_9a:75:df (00:23:5a:9a:75:df)  源:厂名_序号(网卡地址)Type: IP (0x0800) 帧内封装的上层协议类型为IP 上图为互联网层IP包头部信息 Internet Protocol, Src: 192.168.0.3 (192.168.0.3), Dst: 61.155.106.169 (61.155.106.169)                           互联网协议,源IP地址,目的IP地址Version: 4   互联网协议IPv4(此部分参看教材119页图4.15的IPv4数据报字段结构)Header length: 20 bytes                             IP包头部长度Differentiated Services Field:0x00(DSCP 0x00:Default;ECN:0x00) 差分服务字段Total Length: 104                                          IP包的总长度Identification:0xc83f (51263)                            标志字段Fragment offset: 0    分段偏移量(将一个IP包分段后传输时,本段的标识)Time to live: 64                                          生存期TTLProtocol: udp (17)                          此包内封装的上层协议为udpHeader checksum: 0x4956 correct                   头部数据的校验和Source: 192.168.0.3 (192.168.0.3)                   源IP地址Destination: 61.155.106.169 (61.155.106.169)               目的IP地址 总结:通过三次握手实验,使我们对wireshark有了一定的认识,熟悉了其中的一些基本操作,对以后的实验打下了坚实的基础! 2.2实验二:用wireshark软件做拥塞流量控制实验: 2.2.1实验条件:硬件设备:整个实验室的局域网,电脑软件环境:Windows XP、wireshark 2.2.2实验目的: 1熟练掌握常用网络工具的功能及其使用方法2熟悉wireshark软件3认识拥塞发生时主机和服务器发送分组的关系 2.2.3实验内容:1启动wireshark; 2打开浏览器进入 3.开始抓包 4结果分析 Wireshark抓包结果(此图包括发生拥塞的和未发生拥塞的)输入选择条件:tcp.analysis.duplicate_ack_num>=3(发生重复ACK个数大于等于3的)得图如下 输入选择条件后的图具体分析:(1)我们拿实际抓获的分组和显示的分组相比较:选择工具栏Statisticsàsummary的图如下其中有图可得实际抓获的分组2874显示的分组为19(即发生拥塞的分组)第一个分组和最后一个分组相差的时间分别为211.695S和154.285S平均分组大小分别为569.624bits和63.47.bits以及每秒发送分组个数等信息 实际抓获的分组和显示的分组相比较图(2)具体流量图形分析如下图:其中图中仅一根黑线表示总的流量数据,此图的横轴表示时间,以及没一小格的大小,纵轴表示大小,可以通过修改其单位,如改为分组,字节等等; 我们可以在此图中加入ip.src=192.168.0.3 和ip.dst=216.246.122.81即可得到显示我发送到服务器和服务器接收到的流量,它们总体加起来时相等的。如下图。(其中我的IP地址为192.168.0.3网页IP地址为216.246.122.81) 只用一根线表示总流量的流量图 加入ip.src=192.168.0.3 和ip.dst=216.246.122.81后的图我们可以通过加入ip.src=192.168.0.3; ip.dst=216.246.122.81;ip.src=216.246.122.81; ip.dst=192.168.0.3来把我发送的以及我接收到的和服务器发送的及接收的全部显示出来,如图 四条曲线全部显示的图其中红色表示服务器接收的分组,绿色表示我发送的分组,蓝色表示服务器发送的分组,粉红色表示我收到的分组。总结:通过拥塞实验,我更加了解和熟悉wireshark软件,同时我对拥塞产生的原因以及发生拥塞时分组的变化更加清晰,使我对课本的这节内容有了更深一层次的理解。2.3实验三:用wireshark软件作DHCP实验 2.3.1实验条件:硬件设备:整个实验室的局域网,电脑软件环境:Windows XP、wireshark 2.3.2实验目的: 1熟练掌握常用网络工具的功能及其使用方法2熟悉wireshark软件3模拟DHCP协议,并熟悉IPConfig命令 2.3.3实验内容: 一:实验前准备 1DHCP协议(Dynamic Host Configuration Protocol):动态主机配置协议。一种当主机自举时使用的协议,用来获得各种网络信息,如它的IP地址。 2此次实验要用到IPConfig命令中的ipconfig /release和ipconfig /renew命令,这是两个附加选项,只能在向DHCP服务器租用其IP地址的计算机上起作用。如果你输入ipconfig /release,那么所有接口的租用IP地址便重新交付给DHCP服务器(归还IP地址)。如果你输入ipconfig /renew,那么本地计算机便设法与DHCP服务器取得联系,并租用一个IP地址。请注意,大多数情况下网卡将被重新赋予和以前所赋予的相同的IP地址。 二:实验 1 cmd启动dos,输入ipconfig /release将所有接口的租用IP地址便重新交付给DHCP服务器(归还IP地址)如图: 2启动wireshark得图如下: 有前几行课看出,主机开始广播到路由接口,同时接在我们路由器上的三台电脑均接到了主机的广播,3 cmd启动dos,输入ipconfig /release,那么本地计算机便设法与DHCP服务器取得联系,并租用一个IP地址。请注意,大多数情况下网卡将被重新赋予和以前所赋予的相同的IP地址。如图:此时,主机重新获得原IP地址。4 再次启动wireshark得图如下: 有图我们看到了主机重新获得原IP地址的全过程。总结:通过DHCP协议实验,我更加了解和熟悉wireshark软件,同时我对DHCP协议有了进一步的了解,使我对课本的这节内容有了更深一层次的理解。自此我们给予wireshark软件的实验已经将近结束,为我们后面的实验垫定了基础!2.4实验四:注释linux内核启动项 2.4.1实验条件:Linux下grub.cfg内核文件 2.4.2实验目的: 1熟练linux平台,及实验环境2了解内核启动项,下面实验作准备 2.4.3实验内容:具体注释linux下grub.cfg文件其程序和注释如下# #其中加#的均为注释项# DO NOT EDIT THIS FILE # 不能编辑的程序文档(说明此文档涉及启动项,为系统文件,不能随意编译)# It is automatically generated by /usr/sbin/grub-mkconfig using templates#它会自动通过/ usr / sbin / grub-mkconfig使用生成的模板# from /etc/grub.d and settings from /etc/default/grub#从/ etc / grub.d和从/ etc /defaule/grub设置# BEGIN /etc/grub.d/00_header #从etc/grub.d/00_heade目录下开始if -s /boot/grub/grubenv ; then #配置开机启动项 have_grubenv=true load_envfiset default="6" #默认为6(已经修改,即默认启动项为windowsXP)if $prev_saved_entry ; then saved_entry=$prev_saved_entry save_env saved_entry prev_saved_entry= save_env prev_saved_entryfiinsmod ext2 #除了用作启动的分区外,其他分区格式可在menu底下再添加set root=(hd0,8) #设定root分区search -no-floppy -fs-uuid -set a60b11f3-d477-4121-8914-d1e1e0159851#设定uuid=*的分区为rootif loadfont /usr/share/grub/unicode.pf2 ; then #设置终端字体,unicode.pf2支持中文显示 set gfxmode=640x480 #设置分辨率,默认为 640x480 insmod gfxterm #插入模块 gfxterm,支持中文显示 insmod vbe #插入 vbe 模块 if terminal_output gfxterm ; then true ; else #设置 GRUB 2 终端为 gfxterm # For backward compatibility with versions of terminal.mod that don't # understand terminal_output terminal gfxterm fifiif $recordfail = 1 ; then set timeout=-1 #设置超时时间为1Selse set timeout=10 #设置超时时间为10Sfi# END /etc/grub.d/00_header # # BEGIN /etc/grub.d/05_debian_theme #set menu_color_normal=white/blackset menu_color_highlight=black/white #这两行设置Debian 下的菜单颜色# END /etc/grub.d/05_debian_theme # 10_linux 为自动添加的当前root分区linux引导项# BEGIN /etc/grub.d/10_linux #菜单项,要包括 menuentry 双引号" " 和大括号 才完整,否则不显示菜单menuentry "Ubuntu, Linux 2.6.31-14-generic" recordfail=1 if -n $have_grubenv ; then save_env recordfail; fiset quiet=1insmod ext2set root=(hd0,8)search -no-floppy -fs-uuid -set a60b11f3-d477-4121-8914-d1e1e0159851 #这句与set root=(hd0,7)重复,课删除linux/boot/vmlinuz-2.6.31-14-generic root=UUID=a60b11f3-d477-4121-8914-d1e1e0159851 ro quiet splash initrd/boot/initrd.img-2.6.31-14-genericmenuentry "Ubuntu, Linux 2.6.31-14-generic (recovery mode)" recordfail=1 if -n $have_grubenv ; then save_env recordfail;fi insmod ext2 set root=(hd0,8) search -no-floppy -fs-uuid -set a 60b11f3-d477-4121-8914-d1e1e0159851linux/boot/vmlinuz-2.6.31-14-generic root=UUID=a60b11f3-d477-4121-8914-d1e1e0159851 ro single initrd/boot/initrd.img-2.6.31-14-generic# END /etc/grub.d/10_linux # # 自动添加存在于其他分区的系统引导项# BEGIN /etc/grub.d/20_memtest86+ # #linux 启动菜单menuentry "Memory test (memtest86+)" linux16/boot/memtest86+.binmenuentry "Memory test (memtest86+, serial console 115200)" linux16/boot/memtest86+.bin console=ttyS0,115200n8# END /etc/grub.d/20_memtest86+ # #结束标志# BEGIN /etc/grub.d/30_os-prober # #下面为Windows 启动菜单menuentry "Windows XP (on /dev/sda1)" insmod fatset root=(hd0,1)search -no-floppy -fs-uuid -set 487a-e45ddrivemap -s (hd0) $rootchainloader +1# END /etc/grub.d/30_os-prober # BEGIN /etc/grub.d/40_custom # # 以下为手动添加的菜单项 entries. Simply type the# menu entries you want to add after this comment. Be careful not to change# the 'exec tail' line above.# END /etc/grub.d/40_custom #linux内核启动项总结(根据自己的操作实践谈谈grub.cfg的使用):这个文件最使用的就是在装有双系统时可以修改自己的默认系统,即开机时默认的启动系统,通过修改set default="6"的值可以修改,在修改前其默认为0;即默认为linux启动,修改后即改为了默认系统为windows系统。 第三部分:tcl语言实验部分Tcl语言简介:Tcl (最早称为“工具命令语言”"Tool Command Language", 但是目前已经不是这个含义,不过我们仍然称呼它为TCL)是一种 脚本语言。 由John Ousterhout创建。 TCL很好学,功能很强大。TCL经常被用于 快速原型开发,脚本编程, GUI和测试等方面。 TCL本身不提供面向对象的支持。但是语言本身很容易扩展到支持面向对象。许多C语言扩展都提供面向对象能力,包括XOTcl, Incr Tcl 等。另外SNIT扩展本身就是用TCL写的。3.1实验一:网络ns模拟 3.1.1实验条件:硬件设备:整个实验室的局域网,电脑软件环境:linux系统、ns-2软件 3.1.2实验目的: 1熟练linux平台,及实验环境2熟悉ns-2中tcl脚本的编写 3.1.3实验内容: 一:程序及其注释如下:#一个 2 节点的场景,使用 UDP 的 CBR 流量发生器(其中加#为注释部分)set ns new Simulator#打开并关联一个 Trace 跟踪文件 out.tr,其文件描述字为 tfdset tfd open out.tr w$ns trace-all $tfd#打开并关联一个 NAM 跟踪文件 out.nam,其文件描述字为 nfdset nfd open out.nam w$ns namtrace-all $nfd#定义一个"finish"过程proc finish global ns tfd nfd $ns flush-trace close $tfd close $nfd exec nam out.nam & exit 0#创建两个节点set n0 $ns nodeset n1 $ns node#在节点 n0 和 n1 间创建一个带宽 2Mb、时延 10ms、队列类型为 DropTail 的双向链路$ns duplex-link $n0 $n1 2Mb 10ms DropTail#设置 n0 和 n1 间链路队列大小为 10$ns queue-limit $n0 $n1 10#设置节点相对位置(指定在 NAM 中显示的相对方位)$ns duplex-link-op $n0 $n1 orient right#监测 n0 和 n1 间的队列 (用于 NAM 显示)$ns duplex-link-op $n0 $n1 queuePos 0.5#创建一个 UDP 连接set udp_ new Agent/UDP$udp_ set fid_ 1$ns color 1 blue$ns attach-agent $n0 $udp_set null_ new Agent/Null$ns attach-agent $n1 $null_$ns connect $udp_ $null_#在 UDP 连接上创建一个 CBR 流量发生器set cbr_ new Application/Traffic/CBR$cbr_ set packetSize_ 100$cbr_ set rate_ 300kb$cbr_ attach-agent $udp_#事件调度器设置 CBR 流的起停时间$ns at 0.1 "$cbr_ start"$ns at 4.0 "$cbr_ stop"#撤除两节点上的代理$ns at 4.0 "$ns detach-agent $n0 $udp_; $ns detach-agent $n1 $null_"#调用 finish 过程$ns at 5.0 "finish"#运行模拟器$ns run二:程序运行结果:调出终端用ns打开程序运行,结果如图: 3.2实验二:模拟吞吐量和时延 3.2.1实验条件:硬件设备:整个实验室的局域网,电脑软件环境:linux系统、ns-2软件 3.2.2实验目的: 1熟练linux平台,及实验环境2熟悉ns-2中tcl脚本的编写

    注意事项

    本文(计算机网路课程设计报告——鲁瑞彬.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开