实验4 TCP协议分析

1、实验目的

  • 了解运输层TCP协议基本概念、报文结构
  • 分析TCP报文头部
  • 分析TCP连接建立过程、TCP连接释放
  • 掌握利用tcpdump和wireshark进行tcp协议分析技术。

2、实验环境

  • 硬件要求:阿里云云主机ECS一台。
  • 软件要求:Linux/Windows 操作系统

3、实验内容

3.1 tcpdump 基本用法

​ TCP是面向连接的、在不可靠的互联网络上提供可靠的端到端通信。它是TCP/IP协议集的核心协议。TCP为了保证报文传输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。

​ 利用wget下载新疆大学主页www.xju.edu.cn,与此同时使用tcpdump抓包。使用wireshark分析TCP数据报文头部,分析建立连接三次握手和分析释放连接的四次挥手。

4、实验结果与分析

  • 利用wget下载新疆大学主页[www.xju.edu.cn],并使用tcpdump抓包

    image-20220511172339048

    image-20220511172349054

  • windows上wireshark分析包

image-20220511173138043

image-20220511173216667

4.1 填写表格

​ 根据捕获的数据包,分析TCP的报文结构,将TCP协议中个字段名,字段长度,字段值,字段含义填入下表:

字段名字段长度字段值字段表达信息
Source Port16bit0xb6a5源端口: 46757
Destination Port16bit0101目的端口: 22
Sequence Number32bit0x151b77ca序列号: 354121674
Acknowledgment Number32bit0x54046a12确认号: 1409575442
Header Length4bit0x50首部长度: 20字节
Flags12bit0x010功能位
Window16bit0x03fc准备收到的每个TCP数据的大小: 1020字节
Checksum16bit0xf72eTCP头首部校验和
Urgent Pointer16bit0x0000紧急指针,URG取值为1时有效
Options长度可变-选项
Padding长度可变-TCP首部小于20字节时填充
Data长度可变1-TCP封装进去的数据
  • 4.2 分析建立连接三次握手

    下图为建立连接的三次握手:

image-20220511175903943

​ 第一次握手数据包:客户端发送一个TCP,标志位为SYN,序列号为0,代表客户端请求建立连接,如下图所示:

image-20220511180310047

​ 第二次握手的数据包:服务器发回确认包,标志位为 SYN, ACK。将确认序号(Acknowledgement Number)设置为客户的seq加1,即0+1=1,如下图所示:

image-20220511180539976

​ 第三次握手的数据包:客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1。并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方。在进过三次握手后和服务器建立了TCP连接,如下图所示:

image-20220511180745237

  • 4.3 分析释放连接的四次挥手

    下图为释放连接的四次挥手:

    image-20220511181232001

    ​ 第一次挥手数据包:客户端发送一个TCP,标志位为FIN,ACK,代表客户端请求释放连接,并对上一个报文数据确认,如下图所示:

    image-20220511181821491

    ​ 第二次挥手数据包:服务器发回确认包,标志位为ACK,代表服务器收到客户端的释放连接请求报文:

    image-20220511182011905

    ​ 第三次挥手数据包:服务器发送一个TCP,标志位为FIN,ACK,代表服务器也请求释放连接,并对上一个报文数据确认:

    image-20220511182159841

    ​ 第四次挥手数据包:客户端发回确认包,标志位为ACK,代表客户端收到服务器的释放连接请求报文,连接断开:

    image-20220511182430594

5、实验小结(包括遇到的特定问题和解决办法、心得体会、意见与建议等)

问题与解决办法:

​ 遇到问题:服务器无法下载wireshark的抓包。

​ 解决办法:使用一台自己的云服务器做实验。

心得体会:

​ 针对此次UDP和TCP的抓包实验,我更加深刻的理解了tcpdump和wireshark的使用方法。在更加深刻地理解UDP以及TCP协议之余,还对日常生活中我们使用到的软件有了些许了解,比如说QQ所使用地QCIQ协议就是基于UDP协议的,同时其信息在传输过程中不是我们课上所讲解的那种明文传输,其内容还要经过加密,才能在网上传输,这是为了防止信息的泄露。总体来说,我们学习时确实不能仅仅只局限于一个知识,还要开阔自己的视野,看到各种知识间的联系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值