实验3 TCP和UDP数据报分析
一、实验目的
1、学习Wireshark工具的使用。
2、学习TCP协议及其TCP头部结构。
3、利用Wireshark分析TCP数据包内容。
二、实验环境
与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE等软件。
三、实验步骤
(一)、TCP报文分析
TCP/IP是一个协议集,它包含了IP、TCP、UDP一系列协议,TCP协议意为Transmission Control Protocol传输控制协议,它是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,由IETF的RFC 793说明(specified)。在简化的计算机网络OSI模型中,它完成第3层传输层所指定的功能,如下图所示:
图6
TCP协议头最少20个字节,包括若干个区域头部,结构如图所示:
源端口和目的端口字段——各占 2 字节。端口是运输层与应用层的服务接口。运输层的复用和分用功能都要通过端口才能实现。
序号字段——占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。
ACK字段——占 4 字节,是期望收到对方下一个报文段数据第一个字节的序号。
HLEN字段——占 4 bit,首部长度,单位为:32 bit 字(4 字节)。正常的TCP首部长度是20字节。
码元控制字段——占 6 bit。紧急比特 URG:当 URG = 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。 确认比特 ACK:只有当 ACK =1 时确认号字段才有效。当 ACK = 0 时,确认号无效。 推送比特 PSH (PuSH):接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。复位比特 RST (ReSeT):当 RST =1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。 同步比特 SYN :同步比特 SYN 置为 1,就表示这是一个连接请求或连接接受报文。 终止比特 FIN (FINal):用来释放一个连接。当FIN = 1 时,表明此报文段的发送端的数据已发送完毕