这次网络协议抓包分析作业主要是需要我们结合这个几个月所学的知识,通过网络抓包的方式让自己有更加深刻的认识。我们在上几个月中主要学习了osi模型 以及其中各个层的详细内容,以及相关协议。
osi协议主要由几个七个层组成,分别为 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层组成。下图为osi协议各层的关系。
本次作业就是要求我们利用抓包软件 分别将 应用层 传输层 网络层 数据链路层 的一些协议抓取出来。
我在这里重点整理一下我认为比较重要的三次握手及其释放 以及ip报文分析。
先是应用层:
应用层
应用层
捕获www数据包
HTTP协议是运行在TCP协议之上的。在抓取的数据中选择一个HTTP报文进行分析。
我在浏览器中输入 www.baidu.com的地址以后可以抓取出 客户端向ip地址发出请求。
http的请求报文。
http的回应报文
下一个涉及的重要知识点就是 传输层 tcp协议建立过程中的三次握手。
传输层
三次握手
所谓的“三次握手”:为了对每次发送的数据量进行跟踪与协商,确保数据段的发送和接收同步,根据所接收到的数据量而确认数据发送、接收完毕后何时撤消联系,并建立虚连接。
第一次
第二次
第三次
除了三次握手以外 这次试验还涉及了四次释放的过程
连接已经建立。服务器的TCP收到确认后,也通知其上层进程:TCP连接已经建立。
释放连接:
第一次释放:A的应用程序先向其TCP发出连接释放报文文段,并停止再发送数据,主动关闭tcp连接。
此时 A把连接释放报文段首部的FIN=1,其序号seq=u,等待B的确认
第二次释放:
通过B发出确认,确认号ack=u+1,这个报文段序号seq=v。TCP服务器进程通知高层应用进程。从A到B的连接就释放了。
第三次释放:若B已经没有要向A发送的数据,其应用进程就通知TCP释放链接。
第四次释放:A收到连接释放报文段后,必须发出确认。
在确认报文段中ACK=1
确认号
Ack=w+1, seq=u.
接下来 还涉及到了ip报文的分析,
由图中可以得知:
Ip报文版本号为:ipv4
首部长度为:20bytes
数据报长度为:40
标识符:0xrca5
寿命:116
上层协议:TCP
首部校验和:0x7bb0
源ip地址为:202.89.233.100
目的ip地址为:192.168.43.19
下面我想用两张图总结一下wire shark的报文分析
这是wireshark报文对应的各层关系。
这是wireshark下面参数对应的各tcp报文格式
这次试验过程中 对于wireshark的使用 是我完全从0开始去网上查找视频自学的。我学会了如何使用wireshark的过滤器进行分析。总得来说 通过一次作业 不单单熟悉了网络相关的协议知识,而且还自学了一个软件,也可以说是收益匪浅了。