实验六TCP报文段的格式及协议分析

实验六TCP报文段的格式及协议分析

【实验目的】

1、分析TCP报文段的格式;

2、了解TCP报文段首部结构以及各个字段的内容及其作用;

3、通过观察TCP协议的交互掌握TCP连接建立、数据传输、连接释放的过程。

【实验内容】

1、分析TCP报文段的结构,熟悉各个字段的内容、功能、格式和取值范围;

2、编辑TCP报文段首部各字段的内容;

3、单个或批量发送已经编辑好的TCP报文段;

4、分析TCP协议的交互过程。

【实验原理】

TCP

TCP

序号:占4

字段的值指的是本报文段所发送的数据的第一个字节的序号。

确认号:占4个字节,是期望收到对方下一个报文段的数据的第一个字节的序号。

数据偏移:占4 bit,它指出报文段的数据起始处距离TCP报文段的起始处有多远。实际上就是TCP报文段首部的长度。

保留:占6 bit,保留为今后使用。

紧急比特URG:当URG=1时,表明紧急指针有效。它告诉系统报文段中有紧急数据,应尽快传送。

确认比特ACK:ACK=1时确认号字段才有效,ACK=0时确认号字段无效。

推送比特PUSH:接收方接收到PUSH=1的报文段时会尽快的将其交付给接收应用进程,而不再等到整个接收缓存都填满后再向上交付。

复位比特RST:当RST=1时,表明TCP连接中出现严重差错,必须释放连接。复位比特还用来拒绝一个非法的报文段或拒绝打开一个连接。

同步比特SYN:在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文段。对方若同意建立连接,应在响应的报文段中使SYN=1和ACK=1。因此,SYN=1就表示这是一个连接请求或连接接收报文。

终止比特FIN:当FIN=1时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。

窗口:占2个字节,用来控制对方发送的数据量,单位是字节,指明对方发送窗口的上限。校验和:占2个字节,校验的范围包括首部和数据两个部分,计算校验和时需要在报文段前加上12字节的伪首部。

紧急指针:占2个字节,指出本报文段中紧急数据最后一个字节的序号。只有当紧急比特URG=1时才有效。

选项:长度可变。TCP只规定了一种选项,即最大报文段长度MSS (Maximum Segment Size)。

【实验步骤】

练习一:分析TCP报文段的格式

1、运行报文仿真编辑器;

2、单击工具栏上的“新建报文”按钮,在弹出的“新建报文”对话框中选择报文类型为“TCP”,

单击“确定”按钮,报文仿真编辑器自动构造一个TCP报文段;

3、也可以通过单击工具栏上“打开”按钮,选择安装目录下Data目录中报文仿真编辑器

存档文件:tcp.pef,报文仿真编辑器显示预存的TCP报文段;

4、选中报文列表框中的一条记录,报文仿真编辑器中间部分自动显示此条报文记录的协议

结构树;

5、选中协议结构树中的“TCP首部”结点,报文仿真编辑器右侧部分自动显示当前TCP报

文段首部各个字段的内容;

6、查看TCP报文段首部中各个字段的结构和内容,分析各个字段的含义。

练习二:编辑TCP报文段格式中的字段内容

1、在报文仿真编辑器的右侧修改TCP报文段的各个字段的内容;

2、单击“保存”按钮;

3、查看修改后的字段内容。

练习三:发送和接收TCP报文段序列

1、运行报文解析器;

2、单击报文解析器工具栏上的“开始捕获”按钮,报文解析器开始捕获数据报;

3、单击报文仿真编辑器工具栏上的“发送报文”按钮,报文仿真编辑器弹出“发送成功”

对话框;

4、单击报文解析器工具栏上的“停止捕获”按钮,在报文解析器左侧报文列表框中查看所

接收到的报文仿真编辑器发出的报文;

5、选中其中一条报文记录,报文解析器中间部分自动显示此条报文记录的协议结构树,比

较是否与发送的报文相同。

练习四:TCP协议分析

1、单击报文仿真编辑器工具栏上的“打开”按钮,选择安装目录下Data目录中报文仿真

编辑器存档文件:tcp.pef,报文仿真编辑器显示预存的TCP报文段;

2、单击报文解析器工具栏上的“开始捕获”按钮,报文解析器开始捕获数据报;

3、单击报文仿真编辑器工具栏上的“发送报文”按钮,报文仿真编辑器弹出“发送成功”

对话框,发送出报文列表框中的报文;

4、可以看到报文解析器接收到报文仿真编辑器发出的报文,单击报文解析器工具栏上的

“停止捕获

”按钮,停止捕获报文;

5、单击工具栏上的“协议分析”按钮,报文解析器弹出协议分析对话框。在“协议”下拉

列表中选择“TCP”,对话框下部的列表框中显示存在的TCP连接。选择一个TCP连接,单击“确定”按钮;

6、报文解析器左侧的报文列表中显示这一次TCP连接中所有的报文,右侧以图形的方式显

示该TCP连接的交互过程。选中左侧报文列表中的一条记录,报文解析器中部显示该报文的协议结构树,右侧的协议交互图中以蓝色突出显示该TCP报文段;

7、在左侧的报文列表中选择不同的TCP报文段,观察协议交互的进行过程,以及TCP首部

各个字段值的变化。

【实验报告要求】

1.记录实验数据

2.分析实验结果

例: MAC帧首部

目的地址:FF-FF-FF-FF-FF-FF

源地址:00-01-6C-E9-0D-2C

类型:ARP

ARP

硬件类型:以太网

协议类型:IP

硬件地址长度:6

协议地址长度:6

操作:ARP请求

源硬件地址:00-01-6C-E9-0D-2C

源协议地址:192.168.1.6

目的硬件地址:00-00-00-00-00-00

目的协议地址:192.168.1.2

(16进制显示框)

00000000:FF FF FF FF FF FF 00 01 – 6C E9 0D 2C 08 06 00 01

00000010:08 00 06 04 00 01 00 01 – 6C E9 0D 2C C0 08 01 06

00000020:00 00 00 00 00 00 C0 A8 – 01 02

其中“类型:ARP”对应值为08 06

3.未知数据包的分析

本部分通过Sniffer软件捕获本机所在计算机网络中的未知数据包,要求对所捕获的数据包进行分析。

数据包一如下(下图截取了该数据包16进制表中的前10行):

未知数据包一的16进制值

根据以下举例,分析上述捕获的数据包为一个什么协议的请求报文。

未知数据包二如下:

未知数据包二的16进制值

分析如下:

第一行前12个字节为协议MAC帧首部中的目的硬件地址和源地址。

紧随其后的两个字节是MAC帧首部中的类型字段,标识从上层接收到什么类型的协议,“08 06”表示从上层收到的是类型的数据报。

则接下来的数据就代表该数据报的内容。

“00 01”表示硬件类型为以太网,

“08 00”表示采用的协议类型为IP类型,

“06 04”分别表示硬件地址长度为6字节及协议地址长度为4字节,

“00 01”表示执行ARP请求操作,

“00 13 d4 ae 44 26”“3b 4f 12 9b”表示了源硬件地址,源协议地址(59.79.18.155)“00 00 00 00 00 00”“3b 4f 12 fe”表示了目的硬件地址和目的协议地址(59.79.18.254)。

剩余的0均为填充数据。综上得出,该数据包为一个什么协议的请求报文。

. .

TCP协议分析实验报告

TCP协议分析实验报告 实验4传输层协议分析 一、实验目的 1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中:

-v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示 -d允许调试、显示客户机和服务器之间传递的全部ftp命令; -g不允许使用文件名通配符; -w:windowsize忽略默认的4096传输缓冲区。 使用FTP命令登录成功远程FTP服务器后进入FTP子环境,在这个子环境下,用户可以使用FTP的内部命令完成相应的文件传输操作。 FTP常用内部命令如下: open host[port]:建立指定ftp服务器连接,可指定连接端口。 user user-name[password][account]:向远程主机表明身份,需要口令时必须输入。 append local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。 cd remote-dir:进入远程主机目录。 cdup:进入远程主机目录的父目录。 cd[dir]:将本地工作目录切换至dir。 dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件。get remote-file[local-file]:将远程主机的文件remote-file传至本地硬盘的local-file。 ls[remote-dir][local-file]:显示远程目录remote-dir,并存入本地文件local-file。 put local-file[remote-file]:将本地文件local-file传送至远程主机。 mput local-file:将多个文件传输至远程主机。 nlist[remote-dir][local-file]:显示远程主机目录的文件清单,存入本地硬盘local-file。

TCP IP网络协议分析实验报告

TCP/IP网络协议分析实验 一、实验目的 1. 通过实验,学习和掌握TCP/IP协议分析的方法及其相关工具的使用; 2. 熟练掌握 TCP/IP体系结构; 3. 学会使用网络分析工具; 4. 网络层、传输层和应用层有关协议分析。 二、实验类型 分析类实验 三、实验课时 2学时 四、准备知识 1.Windows 2003 server 操作系统 2.TCP/IP 协议 3.Sniffer工具软件 五、实验步骤 1.要求掌握网络抓包软件Wireshark。内容包括: ●捕获网络流量进行详细分析 ●利用专家分析系统诊断问题 ●实时监控网络活动 ●收集网络利用率和错误等 2.协议分析(一):IP协议,内容包括: ●IP头的结构 ●IP数据报的数据结构分析 3.协议分析(二):TCP/UDP协议,内容包括: ●TCP协议的工作原理 ●TCP/UDP数据结构分析

六、实验结果 1.IP协议分析: (1)工作原理:IP协议数据报有首部和数据两部分组成,首部的前一部分是固定长度,共20字节,是IP数据报必须具有的。首部分为,版本、首部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、首部检验和、源地址、目的地址、可选字段和数据部分 (2)IPV4数据结构分析:

2.TCP协议分析: (1)工作原理:TCP连接是通过三次握手的三条报文来建立的。第一条报文是没有数据的TCP报文段,并将首部SYN位设置为1。因此,第一条报文常被称为SYN分组,这个报文段里的序号可以设置成任何值,表示后续报文设定的起始编号。连接时不能自动从1开始计数,选择一个随机数开始计数可避免将以前连接的分组错误地解释为当前连接的分组。

实验五、传输层协议分析

南华大学计算机学院 实验报告 课程名称计算机网络原理 姓名周宝 学号 20144330103 专业物联网 任课教师谭邦 日期 2016年5月21日 成绩 南华大学

实验五、传输层协议分析 5.1. 实验目的 理解TCP报文首部格式和字段的作用,TCP连接的建立和释放过程,TCP数据传输中编号与确认的作用。 5.2 实验内容 应用TCP应用程序传输文件,截取TCP报文,分析TCP报文首部信息,TCP连接的建立过程,TCP数据的编号和确认机制。 5.3 实验原理 TCP协议是传输控制协议的简称,工作在网络层协议之上,是面向连接的,可靠的,端到端的传输层协议。 1.TCP的报文格式 TCP报文段分为头部和数据两部分,如图1: 图1 TCP报文段的总体结构 TCP报文段首部又分为固定部分和选项部分,固定部分为20B,如图2所示,这些字段的组合实现了TCP的所有功能。 图2 TCP报文段的首部 TCP采用传输输连接的方式传送TCP报文,传输连接包括连接建立、数据传输和连接释放三个阶段。 2.TCP连接的建立 TCP连接建立采用“3次握手”方式。 首先,主机A的TCP向主机B的TCP发出连接请求报文段,其首部中的同步位SYN应置1,同时选择一个序号X,表明在后面传送数据时的第一个数据字节的序号是X+1,如图3所示:

主动打开被动打开连接请求 确认 确认 图3 TCP连接建立的3次握手过程 然后,主机B的TCP收到连接请求报文段后,若同意,则发回确认。在确认报文段中应将SYN和ACK都置1,确认号应为X+1,同时也为自己选择一个序号Y。 最后,主机A的TCP收到B的确认后,要向B发回确认,其ACK置1,确认号为Y+1,而自己的序号为X+1。TCP的标准规定,SYN置1的报文段都要消耗掉一个序号。 同时,运行客户进程的主机A的TCP通知上层应用进程,连接已经建立。当主机A向B发送第一个数据报文段时,其序号仍为X+1,因为前一个确认报文段并不消耗序号。 当运行服务器进程的主机B的TCP收到主机A的确认后,也通知其上层应用进程,连接已经建立。 另外,在TCP连接建立的过程中,还利用TCP报文段首部的选项字段进行双方最大报文段长度MSS协商,确定报文段的数据字段的最大长度。双方都将自己能够支持的MSS写入选项字段,比较之后,取较小的值赋给MSS,并应用于数据传送阶段。 3. TCP数据的传送 为了保证TCP传输的可靠性,TCP采用面向字节的方式,将报文段的数据部分进行编号,每个字节对应一个序号。并在连接建立时,双方商定初始序号。在报文段首部中,序号字段和数据部分长度可以确定发送方传送数据的每一个字节的序号,确认号字段则表示接收方希望下次收到的数据的第一个字节的序号,即表示这个序号之前的数据字节均已收到。这样既做到了可靠传输,又做到了全双工通信。 当然,数据传送阶段有许多复杂的问题和情况,如流量控制、拥塞控制、重传机制等,本次实验不探究。 4.TCP连接的释放 在数据传输结束后,通信的双方都可以发出释放连接的请求。TCP连接的释放采用“4次握手”。如图

实验六TCP报文段的格式及协议分析

实验六TCP报文段的格式及协议分析 【实验目的】 1、分析TCP报文段的格式; 2、了解TCP报文段首部结构以及各个字段的内容及其作用; 3、通过观察TCP协议的交互掌握TCP连接建立、数据传输、连接释放的过程。 【实验内容】 1、分析TCP报文段的结构,熟悉各个字段的内容、功能、格式和取值范围; 2、编辑TCP报文段首部各字段的内容; 3、单个或批量发送已经编辑好的TCP报文段; 4、分析TCP协议的交互过程。 【实验原理】 TCP TCP 序号:占4 字段的值指的是本报文段所发送的数据的第一个字节的序号。 确认号:占4个字节,是期望收到对方下一个报文段的数据的第一个字节的序号。 数据偏移:占4 bit,它指出报文段的数据起始处距离TCP报文段的起始处有多远。实际上就是TCP报文段首部的长度。 保留:占6 bit,保留为今后使用。 紧急比特URG:当URG=1时,表明紧急指针有效。它告诉系统报文段中有紧急数据,应尽快传送。

确认比特ACK:ACK=1时确认号字段才有效,ACK=0时确认号字段无效。 推送比特PUSH:接收方接收到PUSH=1的报文段时会尽快的将其交付给接收应用进程,而不再等到整个接收缓存都填满后再向上交付。 复位比特RST:当RST=1时,表明TCP连接中出现严重差错,必须释放连接。复位比特还用来拒绝一个非法的报文段或拒绝打开一个连接。 同步比特SYN:在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文段。对方若同意建立连接,应在响应的报文段中使SYN=1和ACK=1。因此,SYN=1就表示这是一个连接请求或连接接收报文。 终止比特FIN:当FIN=1时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。 窗口:占2个字节,用来控制对方发送的数据量,单位是字节,指明对方发送窗口的上限。校验和:占2个字节,校验的范围包括首部和数据两个部分,计算校验和时需要在报文段前加上12字节的伪首部。 紧急指针:占2个字节,指出本报文段中紧急数据最后一个字节的序号。只有当紧急比特URG=1时才有效。 选项:长度可变。TCP只规定了一种选项,即最大报文段长度MSS (Maximum Segment Size)。

网络协议分析软件的使用实验报告

实验报告 项目名称:网络协议分析工具的使用课程名称:计算机网络B 班级: 姓名: 学号: 教师: 信息工程学院测控系

一、实验目的 基于网络协议分析工具Wireshark(原为Ethereal),通过多种网络应用的实际操作,学习和掌握不同网络协议数据包的分析方法,提高TCP/IP协议的分析能力和应用技能。 二、实验前的准备 ● 二人一组,分组实验; ● 熟悉Ping、Tracert等命令,学习FTP、HTTP、SMTP和POP3协议; ● 安装软件工具Wireshark,并了解其功能、工作原理和使用方法; ● 安装任一种端口扫描工具; ● 阅读本实验的阅读文献; 三、实验内容、要求和步骤 3.1 学习Wireshark工具的基本操作 学习捕获选项的设置和使用,如考虑源主机和目的主机,正确设置Capture Filter;捕获后设置Display Filter。 3.2 PING命令的网络包捕获分析 PING命令是基于ICMP协议而工作的,发送4个包,正常返回4个包。以主机210.31.40.41为例,主要实验步骤为: (1)设置“捕获过滤”:在Capture Filter中填写host 210.31.38.94; (2)开始抓包; (3)在DOS下执行PING命令; (4)停止抓包。 (5)设置“显示过滤”: IP.Addr=210.31.38.94 (6)选择某数据包,重点分析其协议部分,特别是协议首部内容,点开所有带+号的内容。(7)针对重要内容截屏,并解析协议字段中的内容,一并写入WORD文档中。

分析:从这个数据包的分析结果来看我们可以得知: 数据包的到达时间为2013年11月28日14:43:15 帧的序号为20411 帧的长度为74bytes(592bits),同时抓取的长度也是74bytes,说明没有丢失数据 目的MAC地址为00:25:11::4b:7a:6e 源MAC地址为00:25:11:4b:7d:6e 使用的协议为Ipv4 网络层的首部长度为20bytes 目的Ip地址为222.31.38.94 源Ip地址为222.31.38.93 数据没有分片说明数据大小没有超过最大传输单元MUT,其中用到了ICMP协议,数据包的生存周期为128 头部校验和为0x01正确 ICMP的校验和为0x01序列号为2304 数据有32bytes 3.3 TRACERT命令数据捕获 观察路由跳步过程。分别自行选择校内外2个目标主机。比如, (1)校内:tracert 210.31.32.8 (2)校外:tracert https://www.360docs.net/doc/1b2430719.html,

tcp协议分析报告

tcp协议分析报告 篇一:TCP协议分析报告 TCP/IP协议分析实验报告 一、本人承担的工作 在这次利用Wireshark 进行TCP/IP协议分析实验中,我负责协助使用Wireshark软件分析IP数据包、TCP数据结构,以及编写实验报告。 二、遇到的困难及解决方法 遇到的困难是我们在自己的电脑上ping本地一个IP地址时,出现了错误导致抓包进行不了, 后来在实验室里进行抓包就可以了。我觉得可能是在ping本地IP地址时无法与那个IP地址的主机连接,可以ping其他的本地网关,且让ping的次数增多让Wireshark抓包成功率加大即可。 三、体会与总结 通过这次利用Wireshark捕获数据包并且分析IP, TCP数据结构,结合课本第三章知识,我了解了数据结构包括版本,头部长度,区分服务,总长度,标识,标志,片偏移,生存时间,协议,检验和,源IP地址,目标IP地址,选项等, 1 而且知道ping(packet internet grope)是用于测试源主机到目的主机网络的连通性,Wireshark是用于尝试捕获网络包并显示包的尽可能详细的情况。 篇二:实验报告(TCP协议分析实验报告) 实验四传输层协议分析 一、实验目的

1、学习3CDaemon FTP服务器的配置和使用,分析TCP报文格式,理解TCP的连接建立、和连接释放的过程。 2、学习3CDaemon TFTP服务器的配置和使用,分析UDP报文格式,理解TCP 协议与UDP协议的区别。 二、实验工具软件3CDaemon软件简介 3CDaemon是3Com公司推出的功能强大的集FTP Server、TFTP Server、Syslog Server 和TFTP Client于一体的集成工具,界面简单,使用方便。 这里主要介绍实验中需要用到的FTP Server功能和TFTP Server功能。 1、FTP Server功能 (1)配置FTP Server功能:选中左窗格功能窗口,打开FTP Server按钮,单击窗格中的 Configure FTP Server按钮,打开3CDaemon Configuration配置窗口,配置FTP Server功能。 这里需要设置的就是“Upload/Download”路径,作为FTP Server的文件夹,其它选项可以使用系统缺省设置。设置完 2 成后,单击确认按钮,设置生效。 (2)在实验中,我们使用3CDaemon系统内置的匿名帐户“anonymous”登陆FTP 服务器, 客户端使用微软FTP客户端命令,关于Ftp命令的说明介绍如下。 (3) Ftp命令的说明 FTP的命令格式:ftp[-v][-d][-i][-n][-g][-w:windowsize][主机名/IP地址] 其中: -v不显示远程服务器的所有响应信息; -n限制ftp的自动登录; -i在多个文件传输期间关闭交互提示

网络协议分析实验报告

实 验 报 告 课程名称 计算机网络 实验名称 网络协议分析 系别 专业班级 指导教师 学号 姓名 实验日期 实验成绩 一、实验目的 掌握常用的抓包软件,了解ARP 、ICMP 、IP 、TCP 、UDP 协议的结构。 二、实验环境 1.虚拟机(VMWare 或Microsoft Virtual PC )、Windows 2003 Server 。 2.实验室局域网,WindowsXP 三、实验学时 2学时,必做实验。 四、实验内容 注意:若是实验环境1,则配置客户机A 的IP 地址:192.168.11.X/24,X 为学生座号;另一台客户机B 的IP 地址:192.168.11.(X+100)。在客户机A 上安装EtherPeek (或者sniffer pro )协议分析软件。若是实验环境2则根据当前主机A 的地址,找一台当前在线主机B 完成。 1、从客户机A ping 客户机B ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析ARP 协议; 2、从客户机A ping 客户机B ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析icmp 协议和ip 协议; 3、客户机A 上访问 https://www.360docs.net/doc/1b2430719.html, ,利用EtherPeek (或者sniffer pro )协议分析软件抓包,分析TCP 和UDP 协议; 五、实验步骤和截图(并填表) 1、分析arp 协议,填写下表 客户机B 客户机A

2、分析icmp协议和ip协议,分别填写下表 表一:ICMP报文分析

3、分析TCP和UDP 协议,分别填写下表

TCPIP协议格式

通过连接实例解读TCP/IP协议 最近狂补基础,猛看TCP/IP协议。不过,书上的东西太抽象了,没有什么数据实例,看了不久就忘了。于是,搬来一个sniffer,抓了数据包来看,呵呵,结合书里面得讲解,理解得比较快。我就来灌点基础知识。 开始吧,先介绍IP协议。 IP协议(Internet Protocol)是网络层协议,用在因特网上,TCP,UDP,ICMP,IGMP数据都是按照IP数据格式发送得。IP协议提供的是不可靠无连接得服务。IP数据包由一个头部和一个正文部分构成。正文主要是传输的数据,我们主要来理解头部数据,可以从其理解到IP协议。 IP数据包头部格式(RFC791) Example Internet Datagram Header 上面的就是IP数据的头部格式,这里大概地介绍一下。 IP头部由20字节的固定长度和一个可选任意长度部分构成,以大段点机次序传送,从左到右。 TCP协议 TCP协议(TRANSMISSION CONTROL PROTOCOL)是传输层协议,为应用层提供服务,和UDP不同的是,TCP协议提供的可靠的面向连接的服务。在RFC793中是基本的TCP描述。关于TCP协议的头部格式内容的说明: TCP Header FORMat

TCP Header FORMat 跟IP头部差不多,基本的长度也是20字节。TCP数据包是包含在一个IP数据报文中的。 好了,简单介绍到此为止。来看看我捕获的例子吧。这是一次FTP的连接,呵呵,是cuteftp默认的cuteftp的FTP站点,IP地址是:216.3.226.21。我的IP地址假设为:192.168.1.1。下面的数据就是TCO/IP连接过程中的数据传输。我们可以分析TCP/IP协议数据格式以及TCP/IP连接的三次握手 (ThreeWay-Handshake)情况。下面的这些十六进制数据只是TCP/IP协议的数据,不是完整的网络通讯数据。 第一次,我向FTP站点发送连接请求(我把TCP数据的可选部分去掉了) 192.168.1.1->216.3.226.21 IP头部: 45 00 00 30 52 52 40 00 80 06 2c 23 c0 a8 01 01 d8 03 e2 15 TCP头部:0d 28 00 15 50 5f a9 06 00 00 00 00 70 02 40 00 c0 29 00 00 来看看IP头部的数据是些什么。 第一字节,“45”,其中“4”是IP协议的版本(Version),说明是IP4。“5”是IHL位,表示IP头部的长度,是一个4bit字段,最大就是1111了,值为12,IP头部的最大长度就是60字节。而这里为“5”,说明是20字节,这是标准的IP头部长度,头部报文中没有发送可选部分数据。 接下来的一个字节“00”是服务类型(Type of Service)。这个8bit字段由 3bit的优先权子字段(现在已经被忽略),4 bit的TOS子字段以及1 bit的未用字段(现在为0)构成.4 bit的TOS子字段包含:最小延时、最大吞吐量、最高可靠性以及最小费用构成,这四个1bit位最多只能有一个为1,本例中都为0,表示是一般服务。 接着的两个字节“00 30”是IP数据报文总长,包含头部以及数据,这里表示48字节。这48字节由20字节的IP头部以及28字节的TCP头构成(本来截取的TCP头应该是28字节的,其中8字节为可选部分,被我省去了)。因此目前最大的IP数据包长度是65535字节。 再是两个字节的标志位(Identification):“5252”,转换为十进制就是21074。这个是让目的主机来判断新来的分段属于哪个分组。 下一个字节“40”,转换为二进制就是“0100 0000”,其中第一位是IP协议目前没有用上的,为0。接着的是两个标志DF和MF。DF为1表示不要分段,MF

计算机网络实验 应用层协议详情与配置实验报告材料格式

昆明理工大学信息工程与自动化学院学生实验报告 (2010—2011 学年第 1 学期) 课程名称:计算机网络开课实验室:2315 2010年12 月25日年级、专业、班计科083学号200810405325 姓名杨绍宏成绩 实验项目名称应用层协议与配置指导教师缪祥华老师 教师评语该同学是否了解实验原理: A.了解□ B.基本了解□ C.不了解□ 该同学的实验能力: A.强□ B.中等□ C.差□ 该同学的实验是否达到要求: A.达到□ B.基本达到□ C.未达到□ 实验报告是否规范: A.规范□ B.基本规范□ C.不规范□ 实验过程是否详细记录: A.详细□ B.一般□ C.没有□ 教师签名: 年月日 一、实验目的及内容 通过本次实验,使学生学会在windows系统上搭建域名服务器;理解正向反向域名解析的原理。 二、实验原理及基本技术路线图(方框原理图或程序流程图) 学会安装DNS服务器,学会配置DNS服务器属性,掌握nslookup命令的使用;要求详细记录配置步骤,并对所有的域名使用nslookup进行测试,记录测试结果。 三、所用仪器、材料(设备名称、型号、规格等或使用软件) 参考环境为:PC 2台,可使用windows系统自带的DNS组件,也可以使用其他的DNS服务器版本; 四、实验方法、步骤(或:程序代码或操作过程) 1.安装DNS服务器; 2.添加DNS区域; 区域名为https://www.360docs.net/doc/1b2430719.html, 。xxx为学生的姓名拼音。 3.配置DNS属性;yy为学生学号的后两位 (1).客户可以通过 dns. https://www.360docs.net/doc/1b2430719.html, 域名访问 192.168.yy.53,支持反向域名解析 (2).客户可以通过 https://www.360docs.net/doc/1b2430719.html, 域名访问 192.168.yy.80,支持反向域名解析 (3).客户可以通过 https://www.360docs.net/doc/1b2430719.html, 域名访问 192.168.yy.25,支持反向域名解析 (4).客户可以通过 mail2. https://www.360docs.net/doc/1b2430719.html, 域名访问 192.168.yy.26 (5).客户可以通过 smtp. https://www.360docs.net/doc/1b2430719.html, 域名访问 192.168.yy.25,是https://www.360docs.net/doc/1b2430719.html,的别名

网络实验报告 TCP协议分析

《计算机网络(II)》实验报告 实验名称:TCP协议分析 班级:100341C 姓名:汪何媛学号:100341324 任课教师:顾兆军 完成日期:2012.12.14 实验环境:网络结构一 一、实验目的 1)查看TCP连接的建立和释放 2)编辑并发送TCP报文段 3)TCP的重传机制 二、实验内容 练习一:察看TCP连接的建立和释放 1. 主机B、C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。 2. 主机C打开TCP工具,类型选择“服务器”,端口填写大于1024的值; 点击“创建”,如果端口被占用则选择其它。主机A打开TCP工具,类型选择“客户端”,地址填入主机C的IP地址;在端口填入主机C的TCP工具监听的端口;点击[连接]按钮进行连接。

3.察看主机B、C、D捕获的数据,填写下表。

TCP 连接建立时,前两个报文的首部都有一个“maximum segment size”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。 maximum segment size=1460 4. 主机A 断开与主机C 的TCP 连接。 5. 察看主机B 、C 、D 捕获的数据,填写下表。 字段名称 报文1 报文2 报文3 序列号 2532372657 1948328206 2532372658 确认号 0 2532372658 1948328207 ACK 0 1 1 SYN 1 1

字段名称 报文4 报文5 报文6 报文7 序列号 3013278418 1558034120 1558034120 3013278419 确认号 1558034120 3013278419 3013278419 1558034121 ACK 1 1 1 1 FIN 1 1 练习二:利用仿真编辑器编辑并发送TCP 数据包 ? 本练习将主机A 和B 作为一组,主机C 和D 作为一组,主机E 和F 作为一组,现仅以主机A 和B 为例,说明实验步骤。 ? 在本实验中由于TCP 连接有超时时间的限制,故仿真编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP 校验和)要求熟练、迅速。 ? 为了实现TCP 三次握手过程的仿真,发送第一个连接请求帧之前,仿真端主机应该使用“仿真编辑器/工具菜单/TCP 屏蔽/启动屏蔽”功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。 ? 通过手工编辑TCP 数据包实验,要求理解实现TCP 连接建立、数据传输以及断开连接的全过程。在编辑的过程中注意体会TCP 首部中的序列号和标志位的作用。

实验八协议分析器程序的设计和实现

实验八协议分析器程序的设计和实现 1.实验目的: (1)掌握对网络上传输数据包的捕获方法。 (2)解析Ethernet网数据帧头部的全部信息。 (3)解析IP、ICMP数据包 (4) 解析传输层和应用层相关协议的头部信息 (5)设置过滤规则,能过滤相应协议的数据包。 (6)要求有良好的编程规范与注释信息,要求有详细的说明文档,包括程序的设计思想、活动图、关键问题以及解决方法。 2实验环境: (1)VC6.0 (2)局域网能连接Internet。 3.程序设计的关键问题以及解决方法有哪些? 当应用程序通过IP网络传送数据时,数据被送入TCP/IP协议栈中,然后从上至下逐一通过每一层,直到最后被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息,这个过程被称作封装。通过以太网传输的比特流称作帧。在传输的另一端,当目的主机收到一个以太网数据帧时,数据就开始从协议栈由底向上逐层解析,去掉各层协议所加上的报文头部。每层协议均要检查报文头部中的协议标识字段,以确定要接收数据的上层协议,最终从报文中解析出应用层数据后交给应用程序处理。 本次要编写的协议分析器,就是从网络中捕获数据包并对其进行解析的过程。因此,我们需要了解每层协议所规定的报文格式,然后由底向上逐层对数据包进行解码,最后将分析的结果显示出来。 4.描述程序设计过程,并画出程序活动图。 协议分析器总体结构: 协议分析器的整体结构按功能应分为三个部分,自底向上分别是数据捕获模块、协议解析模块和用户显示模块。

数据包捕获流程: 捕获数据包的算法一般分为以下几步: (1)获取并列出当前网络设备列表。 (2)由用户选择并打开指定网卡。 (3)根据过滤规则设置过滤器。 捕获数据包并进行解析处理: 协议解析模块: 对捕获的数据包按照数据链路层(MAC)、网络层(IP、ARP/RARP)、传输层(TCP、UDP、ICMP)和应用层(HTTP等)的层次结构自底向上进行解析,最后将解析结果显示输出。

实验二 利用分组嗅探器(ethereal)分析协议HTTP

实验二利用分组嗅探器(ethereal)分析协议HTTP 一、实验目的 分析HTTP协议 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为windows;Ethereal、IE等软件。 三、实验步骤 1、HTTP GET/response交互 首先通过下载一个非常简单的HTML文件(该文件非常短,并且不嵌入任何对象)。 (1)启动Web browser。 (2)启动Ethereal分组嗅探器。在窗口的显示过滤说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。 (3)一分钟以后,开始Ethereal分组俘获。 (4)在打开的Web browser窗口中输入一下地址(浏览器中将显示一个只有一行文字的非常简单的HTML文件): https://www.360docs.net/doc/1b2430719.html,/ethereal-labs/HTTP-ethereal-file1.html (5)停止分组俘获。 窗口如图1所示。根据俘获窗口内容,回答“四、实验报告内容”中的1-6题。 图1分组俘获窗口 2、HTTP 条件GET/response交互 (1)启动浏览器,清空浏览器的缓存(在浏览器中,选择“工具”菜单中的“Internet 选项”命令,在出现的对话框中,选择“删除文件”)。 (2)启动Ethereal分组俘获器。开始Ethereal分组俘获。

(3)在浏览器的地址栏中输入以下URL: https://www.360docs.net/doc/1b2430719.html,/ethereal-labs/HTTP-ethereal-file2.html,你的浏览 器中将显示一个具有五行的非常简单的HTML文件。 (4)在你的浏览器中重新输入相同的URL或单击浏览器中的“刷新”按钮。 (5)停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。 根据操作回答“四、实验报告内容”中的7-10题。 3、获取长文件 (1)启动浏览器,将浏览器的缓存清空。 (2)启动Ethereal分组俘获器。开始Ethereal分组俘获。 (3)在浏览器的地址栏中输入以下URL: https://www.360docs.net/doc/1b2430719.html,/ethereal-labs/HTTP-ethereal-file3.html,浏览器将 显示一个相当大的美国权力法案。 (4)停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。 根据操作回答“四、实验报告内容”中的11-13题。 4、嵌有对象的HTML文档 (1)启动浏览器,将浏览器的缓存清空。 (2)启动Ethereal分组俘获器。开始Ethereal分组俘获。 (3)在浏览器的地址栏中输入以下URL: https://www.360docs.net/doc/1b2430719.html,/ethereal-labs/HTTP-ethereal-file4.html,浏览器将 显示一个具有两个图片的短HTTP文件 (4)停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。 根据操作回答“四、实验报告内容”中的15-16题。 5、HTTP认证 (1)启动浏览器,将浏览器的缓存清空。 (2)启动Ethereal分组俘获器。开始Ethereal分组俘获。 (3)在浏览器的地址栏中输入以下URL: https://www.360docs.net/doc/1b2430719.html,/ethereal-labs/protected_pages/HTTP-ethereal-fil e5.html,浏览器将显示一个HTTP文件,输入所需要的用户名和密码(用户名: eth-students,密码:networks)。 (4)停止Ethereal分组俘获,在显示过滤筛选说明处输入“http”,分组列表子窗口中将只显示所俘获到的HTTP报文。 根据操作回答“四、实验报告内容”中的17-18题。 四、实验报告内容 在实验的基础上,回答以下问题: (1)你的浏览器运行的是HTTP1.0,还是HTTP1.1?你所访问的服务器所运行的HTTP版本号是多少?147.10250 192.168.01 239.255.255.250 ssdp NOTIFY HTTP/1.1 (2)你的浏览器向服务器指出它能接收何种语言版本的对象?英文 (3)你的计算机的IP地址是多少?服务器https://www.360docs.net/doc/1b2430719.html,的IP地址是多少? 192.168.0.136,当在web broswer中输入https://www.360docs.net/doc/1b2430719.html,时,在抓取得到: 15.556518 192.168.01 239.255.255.250 ssdp NOTIFY HTTP/1.1

《TCPIP协议分析》课程设计

成绩: 《TCP/IP协议分析》课程设计 题目: ICMP协议分析 院(系): 专业班级: 姓名: 学号: 任课教师: 2013年6月10日

精品文档 。 1欢迎下载 目 录 1协议概述 (1) 1.1协议名称 (1) 1.2协议主要功能 (1) 1.3协议来源 (1) 1.4协议版本发展历程 (2) 2协议工作原理及流程 (2) 2.1协议工作原理 (2) 2.2协议工作流程分析 (3) 3协议格式分析 (5) 4协议应用 (10) 4.1 ICMP FLOOD 攻击 (10) 4.1.1 ICMP 洪水的成因 (10) 4.1.2 实现ICMP 洪水的前提 (10) 4.1.3 洪水——两败俱伤的攻击方式 (10) 4.1.4 不同方式的ICMP 洪水 (11) 4.2 ICMP 防御 (12) 5结术语 (14) 参考文献 (14)

《TCP/IP协议分析》课程设计 1协议概述 1.1协议名称 ICMP是Internet Control Message Protocol的简称,即Internet控制报文协议。ICMP协议是一种面向连接的协议,属于网络层协议,用来测试网络是否畅通。 1.2协议主要功能 ICMP是Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。 ICMP协议是一种面向连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。[1] 主要功能是: 1.侦测远端主机是否存在? 2.建立及维护路由资料? 3.重导资料传送路径。 4.资料流量控制? 1.3协议来源 在IP通信中,经常有数据包不能到达对方的情况,原因是在通信途中的某处的一个路由器由于不能处理所有的数据包,就将数据包一个一个的丢弃。或者因为搞错了端口号,因而服务器软件不能接受它,所以作为IP不可缺少的功能来规定了ICMP网络传输协议。 1

实验三传输层TCP协议的讲解

沈阳工程学院 学生实验报告 实验室名称:信息学院网络实验室 实验课程名称:计算机网络 实验项目名称:实验三传输层TCP协议的分析 班级:姓名:学号: 实验日期:2015 年11月24日实验台编号:指导教师:批阅教师(签字):成绩:

一.实验目的 ●掌握传输层TCP协议分析方法,了解传输层TCP协议内容 二.实验内容 ●捕获传输层TCP协议数据 ●并分析传输协议原理 三.实验前的准备 ●了解传输层TCP协议的数据单元格式 ●了解传输层TCP协议规程 ●熟悉至少一种网络抓包软件的使用方法。 四.实验要求及实验软硬件环境 【基本要求】 ●按实验内容进行知识准备 ●按照预订实验步骤操作,并记录实验结果 ●分析实验记录,并得出结论 ●完成此项实验,完成实验报告。 【实验组织方式】 ●个人实验 【实验条件】 ●微机与网络环境。 五.实验步骤 1.建立网络模型: 2.连接以后进行三次握手建立连接,传输数据和释放连接,并且截下各个部分所捕获的数据 3.利用PC0向SERVERO获取数据,捕捉在由PCO传向SERVERO的TCP协议报文以及反向的TCP协议报文。 4.分析捕捉的TCP协议报文的格式。

六.实验结果记录 1.由PCO向SERVERO的TCP协议报文。 图2 PCO向SERVERO的TCP协议报文。 2. 由SERVERO向PCO的TCP协议报文。

图3 SERVERO向PCO的TCP协议报文

七.结果分析 通过分析在试验结果的TCP协议报文的知道了TCP协议报文的格式,TCP 协议报文由TCP首部和数据部分组成。并且TCP首部报文的前二十字节是固定的,如图4所示。 图4 TCP前20字节的固定报文 1.分析上图的TCP协议的报文得到如下结论: 源端口号( 16位):它(连同源主机 IP地址)标识源主机的一个应用进程。图片中的来源端口地址为 80。 目的端口号( 16位):它(连同目的主机 IP地址)标识目的主机的一个应用进程。这两个值加上 IP报头中的源主机 IP地址和目的主机 IP地址唯一确定一个 TCP连接。图片中的目的端口为1025。 顺序号( 32位):用来标识从 TCP源端向 TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号。如果将字节流看作在两个应用程序间的单向流动,则 TCP用顺序号对每个字节进行计数。序号是 32bit的无符号数,序号到达 2 32- 1后又从 0开始。当建立一个新的连接时, SYN标志变 1,顺序号字段包含由这个主机选择的该连接的初始顺序号 ISN( Initial Sequence Number)。图片中的序号为0。 确认号( 32位):包含发送确认的一端所期望收到的下一个顺序号。因此,确认序号应当是上次已成功收到数据字节顺序号加 1。只有 ACK标志为 1时确认序号字段才有效。 TCP为应用层提供全双工服务,这意味数据能在两个方向上独立地进行传输。因此,连接的每一端必须保持每个方向上的传输数据顺序号。上图的确认号为1。 TCP报头长度( 4位):给出报头中 32bit字的数目,它实际上指明数据

基于tcpip协议的Modbus

基于tcp/ip协议的modbus 业以太网与Modbus TCP/IP 一以太网的标准 以太网是一种局域网。早期标准为IEEE802.3,数据链路层使用CSMA/CD,10Mb/s 速度物理层有: (1)10Base5粗同轴电缆,RG-8,一段最长为500m; (2)10Base2细同轴电缆,RG-58,一段最长为185m; (3)10Base T双绞线,UTP或STP,一段最长为100m。 快速以太网为100Mb/s,标准为802.3a,介质为100Base Tx双绞线、100Base Fx光纤。 目前10/100M以太网使用最为普遍,很多企事业用户已实现100M到以太网桌面,确实体验到高速“冲浪”的快感,另外从距离而言,非屏蔽双绞线(UTP)为100m,多模光纤可达2~3km,单模光纤可大于100km。千兆以太网1000Mb/s为802.3z/802.3ab,万兆以太网10Gb/s 为802.3ae,将为新一轮以太网的发展带来新的机遇与冲击。 二工业以太网与商用以太网的区别 什么是工业以太网?技术上,它与IEEE802.3兼容,故从逻辑上可把商用网和工业网看成是一个以太网,而用户可根据现场情况,灵活装配自己的网络部件,但从工业环境的恶劣和抗干扰的要求,设计者希望采用市场上可找到的以太网芯片和媒介,兼顾考虑下述工业现场的特殊要求:首先要考虑高温、潮湿、振动;二是对工业抗电磁干扰和抗辐射有一定要求,如满足EN50081-2、EN50082-2标准,而办公室级别的产品未经这些工业标准测试,表1列出了一些常用工业标准。为改善抗干扰性和降低辐射,工业以太网产品多使用多层线路板或双面电路板,且外壳采用金属如铸铝屏蔽干扰;三是电源要求,因集线器、交换机、收发器多为有源部件,而现场电源的品质又较差,故常采用双路直流电或交流电为其供电,另外考虑方便安装,工业以太网产品多数使用DIN导轨或面板安装;四是通信介质选择,在办公室环境下多数配线使用UTP,而在工业环境下推荐用户使用STP(带屏蔽双绞线)和光纤。

实验一应用协议与数据包分析实验使用

《计算机网络》 实验报告 信息安全1201 吴淑珍 2015年4月1日 1.实验报告内容包括:实验目的、实验内容、实验程序和程序流程图、实验步骤、记录中间结果和最终结果。 实验一应用协议与数据包分析实验(使用Wireshark) 一、实验目的 通过本实验,熟练掌握Wireshark的操作和使用,学习对HTTP协议进行分析。 二、实验内容 学习HTTP 协议,了解HTTP 的工作原理和HTTP 报文格式。运行Wireshark,截获在浏览器访问web 界面的报文,并根据截获的报文分析其格式与内容,进一步学习HTTP 协议工作过程。 三、实验步骤 步骤1:在PC 机上运行Wireshark,开始截获报文; 步骤2:从浏览器上访问Web 界面,如.。打开网页,待浏览器的状态栏出现“完毕”信息后关闭网页。 步骤3:停止截获报文,将截获的报文命名为http-学号保存。 步骤4:分析截获的报文。 四、实验结果 分析截获的报文,回答以下几个问题: 1)综合分析截获的报文,查看有几种HTTP 报文? 答:两种,一种是请求报文,请求行方法为GET(有一个截去顶端的GET);另一种是响应报文。 2)在截获的HTTP 报文中,任选一个HTTP 请求报文和对应的HTTP 应答报文,仔细 分析它们的格式,填写表和表。

*GET方法首部行后面没有实体主体。 *实体主体部分为服务器发送给客户的对象。 ***查找的资料 Content-Length用于描述HTTP消息实体的传输长度。在HTTP协议中,消息实体长度和消息实体的传输长度是有区别,比如说gzip压缩下,消息实体长度是压缩前的长度,消息实体的传输长度是gzip压缩后的长度。 在具体的HTTP交互中,客户端是如何获取消息长度的呢,主要基于以下几个规则: 响应为1xx,204,304相应或者head请求,则直接忽视掉消息实体内容。 如果有Transfer-Encoding,则优先采用Transfer-Encoding里面的方法来找到对应的长度。比如说Chunked模式。

相关文档
最新文档