一. 实验目的 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协议的工作原理,提高对网络通信的理解。
2024-12-03 21:09:34 3.29MB 网络 网络 网络协议
1
PyProxy-非常简单的TCP / UDP代理 关于 PyProxy是一个非常简单的TCP / UDP纯Python代理。 它可以很容易地扩展为自定义数据处理逻辑。 用法 > pyproxy.py -h usage: pyproxy.py [-h] (--tcp | --udp) -s SRC -d DST [-q | -v] TCP/UPD proxy. optional arguments: -h, --help show this help message and exit --tcp TCP proxy --udp UDP proxy -s SRC, --src SRC Source IP and port, i.e.: 127.0.0.1:8000 -d DST, --dst DST
2023-08-31 21:23:34 7KB python tcp-proxy udp-proxy Python
1
socket,tcp、udp接收工具;作为接收端;不能作为发送端;小工具;
2023-06-19 19:45:37 35KB tcp udp
1
TCP/UDP调试助手是一个辅助调试UDP/TCP的工具软件,支持TCP Server、TCP Client、UDP等通信模式,为网络调试提供极大的方便
2023-03-03 15:15:03 21KB 网络调试
1
Windows系统下的TCP/UDP调试工具,功能如其名。支持TCP/UDP的收发、TCP的服务端和客户端模式、UDP的组播
2023-02-07 22:35:51 1.77MB tcp udp 调试 工具
1
TCP/UDP测试工具是运行于Windows操作系统上的一种网络协议及数据包测试和调试工具。该工具可发送和接收TCP,UDP数据。主要用于在网络通讯程序开发时,测试TCP或UDP通讯连接和测试数据的接收和发送情况。该工具通过直观友好的界面实时展示发送和接收的数据。   TCP/UDP测试工具特点: 1.支持TCP协议发送和接收数据。支持服务器模式和客户端模式。服务器模式主要用于测试TCP接收。客户端主要用于TCP主动请求。  2.支持UDP和UDP广播方式发送和接收。  3.支持多连接,可同时对多路网络连接进行操作。  4.支持发送汉字。  5.支持十六进制发送和接收方式。
2022-08-06 09:15:44 209KB 应用软件-编程开发
1
★ 全面集成 TCP服务器/客户端; UDP服务器/客户端; UDP广播/组播 功能 ★ 支持多Socket并行测试, 采用树状Socket可视化界面,所有Socket句柄一目了然 ★ 在一个程序内可进行多句柄/多类型的Socket的创建/删除/以及数据收发等操作 ★ 支持16进制的发送和16进制接收显示,支持汉字以及文本发送 ★ 用户可以方便的把接收到的数据保存下来 ★ 支持发送、接收字节数统计 ★ 支持数据循环发送,同一内容可自动发送1次至10000次
2022-05-16 17:56:20 931KB TCP 服务器 客户端
1
用C语言实现的TCP协议和UDP协议在两台主机之间实现通信功能,代码在VC6.0++里可以实现,代码的各个模块已经做好了注释,轻松易懂
2022-04-27 16:50:25 6.93MB TCP UDP
1
QT-Monitor QT嵌入式实现监控,曲线绘制,视频图像显示,tcp/udp通信,Share内存通信等
2022-04-21 10:03:35 2.82MB C++
1
win_usagewatch 许可证: (MIT) 版权所有 (C) 2014 win_usagewatch 作者 Phil Chen 一个 PowerShell 脚本,包含在 Windows 上查找使用统计信息的方法,例如 CPU、磁盘、TCP/UDP 连接、负载、带宽、磁盘 I/O 和内存 入门 Run example.ps1 in PowerShell PS C: \U sers \n ethacker \D esktop > . \e xample.ps1 CPU USED 11 % MEMORY USED 31 % DISK USED 63.41 TCP CONNECTIONS 35 UDP CONNECTIONS 28 BANDWIDTH SENT / SEC 0.00 BANDWIDTH REC / SEC 0.65 DISK I/O 6 DISK READS / SEC
2022-03-03 12:09:17 2KB PowerShell
1