桂电-计算机网络实验4-TCPUDP协议分析

上传者: m0_61709053 | 上传时间: 2024-12-03 21:09:34 | 文件大小: 3.29MB | 文件类型: DOC
一. 实验目的 1、加深理解TCP报文结构 2、领会TCP协议通信机制 3、通过跟踪TCP应用通信,能结合报文对整个通信过程进行分析。 二. 实验环境 1、头歌基于Linux的虚拟机桌面系统 2、网络报文分析工具wireshark 3、浏览器firefox • 源端口( 16 位):通信发送方使用的端口号 • 目标端口( 16 位):通信接收方使用的端口号 • 序列号( 32 位):用来确保数据可靠传输的唯一值 • 确认号( 32 位):接收方在响应时发送的数值 • 数据偏移( 4 位):标志数据包开始的位置,TCP 头部的长度 • SYN:(同步)发起连接的数据包:同步 SYN=1 表示这是一个连接请求或连接接受报文。 • ACK:(确认)确认收到的数据包:只有当 ACK=1 时,确认号字段才有效;当 ACK=0 时,确认号无效。 • RST:(重置)之前尝试的连接被关闭,(信号差,信号拥挤):当 RST=1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。 • FIN:(结束)连接成功,传输完毕之后,连接正在断开: 计算机网络实验4主要聚焦于TCP和UDP协议的分析,旨在帮助学生深入理解TCP报文的结构和通信机制。实验中,学生将利用头歌Linux虚拟机桌面系统、网络报文分析工具Wireshark以及Firefox浏览器来追踪和分析TCP应用的通信过程。 TCP(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP报文头部包含多个关键字段,每个字段都有特定的作用: 1. **源端口和目标端口**:16位的源端口和目标端口分别标识发送和接收数据的进程。 2. **序列号**:32位的序列号用于确保数据的有序传输,每个字节的数据都有唯一的序列号。 3. **确认号**:接收方在响应时会发送一个32位的确认号,表示已接收的数据序列号。 4. **数据偏移**:4位的数据偏移指示TCP头部的长度,帮助定位数据部分的起始位置。 5. **标志字段**:包括SYN、ACK、RST、FIN等,用于控制TCP连接的状态和数据传输。 - SYN(同步):在建立连接时设置为1,表示连接请求或连接接受。 - ACK(确认):确认收到的数据,只有当ACK=1时,确认号才有效。 - RST(重置):用于表示连接错误,如主机崩溃,需要释放连接并重新建立。 - FIN(结束):表示数据传输完成,请求断开连接。 此外,TCP头部还有其他字段,如PSH(推送)、URG(紧急)、窗口大小、校验和和紧急指针等,分别用于数据的快速交付、紧急数据处理、流量控制和数据完整性检查。 TCP连接的建立是通过著名的“三次握手”过程: 1. 客户端发送带有SYN标志的TCP报文,初始化序列号。 2. 服务器响应,同时设置SYN和ACK标志,确认客户端的序列号,并分配自己的序列号。 3. 客户端再次回应,确认服务器的序列号,至此连接建立。 而TCP连接的关闭是“四次挥手”: 1. 主动关闭方发送FIN,表示不再发送数据。 2. 被动关闭方确认收到FIN,继续发送未完成的数据。 3. 被动关闭方发送FIN,表示数据传输完毕。 4. 主动关闭方确认收到FIN,连接完全关闭。 这个实验让学生亲手操作,通过Wireshark抓取和分析TCP报文,能够直观地理解TCP协议的工作原理,提高对网络通信的理解。

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明