一、实习的基本概况
时间:20_年_月_日—20_年_月_日
地点:E607
(一)理论指导
1. IEEE802标准和以太网:
㈠ OSI模型和TCP/IP协议:OSI模型中包括物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。㈡ IEEE802参考模型:物理层被分为上下两个子层:对电缆介质的说明;介质访问单元(MAU)。数据链路层也被分为两个子层:媒体访问控制子层(MAC);逻辑链路控制子层(LLC)。㈢ 以太网简介:①以太网的物理地址可分为三类:单播地址、广播地址和多播地址。② 以太网访问模式:CSMA/CD③ 以太网的MAC帧格式:一种是DI_ Ethernet V2标准,另一种是IEEE的802.3标准。两种帧格式可以在同一以太网络共存。两种帧格式都具有7个域:前导码、帧首定界符、目的MAC地址、源MAC地址、协议类型或数据长度、数据、帧校验序列。
2. 地址解析协议(ARP)
㈠ 物理地址与逻辑地址 ㈡ ARP协议简介 ㈢ ARP报文格式 ㈣ ARP封装 ㈤ ARP的运行过程 ㈥ ARP高速缓存 ㈦ 代理ARP ㈧ 协议栈实现代码解析 ㈨ 各模块推荐流程:(1) ARP请求发送流程(2)输入ARP数据包处理流程
3. 网络协议(IP)
㈠ IP协议简介
㈡ ①IP地址:地址空间 。②IP地址的表示方法 :IP地址有三种常用的表示方法:二进制表示方法、点分十进制表示方法和十六进制表示方法。③IP地址的分类: IP地址分成5类:A类,B类,C类,D类和E类。其中A类、B类和C类地址是基本的Internet地址,是用户使用的地址,D类地址用于广播,E类地址为保留地址。④网络号和主机 :在分类编址的A类,B类和C类地址中,IP地址可划分为网络号(net-id)和主机号(host-id)。这两部分长度都是可变的,取决于地址的类型。⑤地址类和地址块:A类地址共分为128个地址块,每个地址块都包含有16777216个地址。这表明要使用这类地址的机构一定是一个非常庞大的机构。B类地址共划分为16384个地址块,每个地址块都包含有65536个地址。 C类地址共划分为2097152个地址块,每个地址块都包含有256个地址。D类地址只有一个地址块。它用来进行多播。E类地址只有一个地址块。
它是保留地址。
㈢ 特殊的IP地址:1) 网络地址:主机号为全“0”的IP地址不分配给任何主机,而是作为网络本身的标识。2) 直接广播地址:主机号为全“1”的IP地址不分配给任何主机,用作广播地址。3) 有限广播地址:32位为全“1”的IP地址(255.255.255.255)称为有限广播地址。 4) 主机本身地址:32位全“0”的IP地址(0.0.0.0)称为主机本身地址。5) 回环地址:127.0.0.1称为回环地址,常用于本机上软件测试和本机上网络应用程序之间的通信地址。 ㈣子网划分 ㈤IP报文格式 ㈥IP封装 ㈦IP数据报分片㈧IP数据报校验和
4. 用户数据报协议(UDP)
UDP协议简介:UDP(用户数据报协议),主要用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。UDP报文格式:每个UDP报文称为一个用户数据报(User Datagram),用户数据报分为两个部分:UDP首部和UDP数据。首部被分为四个16位的字段,分别代表源端口号﹑目的端口号﹑报文的长度以及UDP校验和。UDP应用:1)UDP适用于这样的进程,它需要简单的请求——响应通信,而较少考虑流量控制和差错控制。对于需要传送成块数据的进程,如FTP,则通常不使用UDP;2)UDP适用于具有内部流量控制和差错控制机制的进程;3)对多播和广播来说,UDP是个比较合适的传输层协议;4)UDP可用于管理进程,如SNMP协议;5)UDP可用于某些路由选择更新协议。
5.传输控制协议(TCP)
TCP(传输控制协议)协议是TCP/IP协议族中的面向连接的、可靠的传输层协议。
6.域名服务(DNS)
DNS(域名服务)是一种能够完成从域名到地址或从地址到域名的映射系统。使用DNS,计算机用户可以间接的通过域名来完成通信。
7.超文本传输协议(HTTP)
HTTP(超文本传输协议)主要用于访问万维网上的数据。HTTP在熟知端口80上使用TCP服务。
8.远程登录与文件传输协议(TELNET与FTP )
FTP(文件传输协议)提供了一种通过TCP传送文件的方法,可以将一个文件从一个系统复制到另一个系统中。
(二)实习过程或步骤
1.领略真实的MAC帧:
将主机A和B作为一组,主机B启动协议分析器,新建捕获窗口进行数据捕获并设置过滤条件(提取ICMP协议);主机A ping 主机B,察看主机B协议
分析器捕获的数据包,分析MAC帧格式。然后将主机B的过滤器恢复为默认状态。实验结果为: MAC帧格式:
其中目的MAC地址:00142A—503336 ;源MAC地址:00142A—522C15 ;型或数据长度:0800
2.ARP报文
将主机A、B、C、D、E、F作为一组进行实验。①主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。②主机A、B、C、D、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。③机A、B、C、D、E、F重新启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP、ICMP)。④主机A ping 主机E(172.16.0.2)。⑤主机A、B、C、D、E、F停止数据捕获,察看协议分析器中采集到的ARP报文。通过实验了解到:单一ARP请求报文不能跨越子网进行地址解析,ARP报文的存活空间只限在子网内。因为ARP报文的请求是在网关下的数据请求,脱离子网ARP报文也就自动失效,并且ARP请求是以广播的方式进行,而广播报文不能跨越子网。ARP地址解析在跨越子网的通信中所起到的作用:作用是解析网关的MAC地址,ARP本身无法跨跃不同网段。当数据要发往外部网络时,通常是首先使用ARP请求网关路由器的MAC地址,之后将数据发往网关路由器,由网关路由器进行转发。
3. 编辑并发送IP数据报:
将主机A、B、C、D、E、F作为一组进行实验。①主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。②主机A启动协议编辑器,编辑一个IP数据报,其中:MAC层:目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC) 源MAC地址:主机A的MAC地址。协议类型或数据长度:0800。IP层:总长度:IP层长度。生存时间:128。源IP地址:主机A的IP地址(172.16.1.2)。目的IP地址:主机E的IP地址(172.16.0.2)。校验和:在其它所有字段填充完毕后计算并填充。自定义字段:数据:填入大于1字节的用户数据。③在主机B(两块网卡分别打开两个捕获窗口)、E上启动协议分析器,设置过滤条件(提取IP协议),开始捕获数据。④主机A发送第1步中编辑好的报文。⑤主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据报。⑥将第1步中主机A所编辑的报文的“生存时间”设置为1,重新计算校验和。⑦主机B、E重新开始捕获数据。⑧主机A发送第5步中编辑好的报文。⑨主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据报。观察实验过程得:在实验过程中主机A所编辑的报文,经过主机B到达主机E后,报文数据发生变化,变化的原因是:他们不在一个子网上。主机B能接受到A发送的报文,主机E不能,因为此报文的生存时间太短,致使主机E无法捕获此报文。
4.UDP单播通信
将主机A、B、C、D、E、F作为一组进行实验。①主机B、C、D、E、F上启动“实验平台工具栏中的UDP工具”,作为服务器端,监听端口设置为2483,“创建”成功。②主机C、E上启动协议分析器开始捕获数据,并设置过滤条件(提取UDP协议)。③主机A上启动“实验平台工具栏中的UDP工具”,作为客户端,以主机C的IP为目的IP地址,以2483为端口,填写数据并发送。④察看主机B、C、D、E、F上的“UDP工具”接收的信息。⑤察看主机C协议分析器上的UDP报文⑥主机A上使用协议编辑器向主机E发送UDP报文,其中: 目的MAC地址:E的MAC地址;目的IP地址:主机E的IP地址;目的端口:2483; 校验和:0发送此报文 ⑦主机B、C、D、E、F关闭服务端,主机A关闭客户端。从实验中得出结论:UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。(2) 由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
5.页面访问
①将主机A和B作为一组 ② 主机A清空IE缓存。③主机B启动协议分析器开始捕获数据,并设置过滤条件(提取HTTP协议)。④主机A启动IE浏览器,在“地址”框中输入http://服务器的ip/e_periment,并连接,服务器IP默认为172.16.0.253。主机B停止捕获数据,分析捕获到的数据。分析实验可知,实验中使用http的get方法 (从服务器请求一个文档)。作用:请求获取Request-URI所标识的资源。
6. 使用TCP连接工具与服务器进行命令交互
将主机A和B作为一组;1.主机B启动协议分析器开始捕获数据并设置过滤条件(提取TCP协议)。2.主机A启动TCP工具连接FTP服务器。(1)主机A启动“实验平台工具栏中的TCP工具”。①选中“客户端”单选框。②在“地址”文本框中填入FTP服务器的IP地址。③在“端口”文本框中填入主机FTP服务器进程的端口号21。④点击“连接”按钮,建立与FTP服务器的TCP连接。(2)连接成功(将该次连接记为w_cmd),在接收窗口会显示成功连接的信息。然后在发送窗口发送数据,观察服务器回复的信息。由实验总结出FTP服务器是使用什么方式创建数据连接的。
二、实习感受
(一)成绩与收获
经过为期几周的网络工程实习我对IPV4协议中的各个协议有了更深入的了解。在实验一中掌握了什么是IEEE802标准和以太网、太网的报文格式;掌握MAC地址的作用;MAC广播地址的作用;LLC帧报文格式;协议编辑器和协议分析器的使用方法;协议栈发送和接收以太网数据帧的过程。通过动手实验捕获数据包分析出MAC帧格式。同时学会了编写LLC帧,更加明白LLC帧是由目的MAC地址、源MAC地址、协议类型和数据长度、用户定义数据/数据字段等组成。在实验三中熟练掌握了IP校验和计算方法,可手动计算也可使用协议编辑器的“自动计算”校验和。同时还懂得受限广播地址的作用:受限的广播地址是255.255.255.255。该地址用于主机配置过程中IP数据报的目的地址,此时,主机可能还不知道它所在网络的网络掩码,甚至连它的IP地址也不知道。在任何情况下,路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网络中。最重要的是,在学习的过程中组内成员互相帮助,遇到困难大家共同解决,真正认识到团结协作精神的重要,同时我们积极利用网络搜集大量资料并从中摘取与自己课题相关的内容,这样在研究过程中又增加了不少课外知识,对大一学过的网络原理是个很好的复习和回顾。另外,通过实习我发现自己目前掌握的东西还是少,在今后的学习中要不断学习不断总结,必须拓宽自己的知识面、开阔自己的视野。
(二)问题与不足
实践过程中遇到了很多的问题,当然也发现了自己的不足。起初,刚刚接触网络实验平台,不知道如何下手做实验,经常是没有目的性的打开几个窗口。在验证网络的拓扑结构时经常是连接失败,但不能找到原因。打开协议编辑器后不知道怎样编写一个帧,更不了解怎样计算校验和;不熟悉如何正确分析捕获到的数据包。这样虽然掌握了各个协议的原理和组成,但是脱离了实践的操作,因此在做完一个实验后并没有得到很大的提升。由其是在计算IP协议总长度的时候,
总是出现计算值违反约束条件的提示。期间我非常苦恼。另外,自己遇到问题时非常急躁,不能心平气和的解决问题。这是在今后学习和实验中必须要避免和改正的地方。