2024年3月25日发(作者:)
一、实验目的:
1、通过wireshark进行TCP报文抓包,分析TCP连接的三次握手以及关闭TCP
2、利用wireshark分析ICMP报文
3、利用ping测试网络联通性:1)ping 本机回环地址
2)ping本机ip地址
3)ping 网关ip
4)ping 远程ip
通过这几项可以检查网络是不是通的,以及如果不通,网络的问题出在哪
熟悉ping的参数的使用;
4、traceroute测试,同理(3)
二、实验原理
1、TCP握手协议
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个
连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入
SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自
己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV
状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包
ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完
成三次握手。
还要再发送一次确认是为了,防止已失效的连接请求报文段突然又传到了B,因
而产生错误。
已失效的报文段:正常情况下:A发出连接请求,但因为丢失了,故而不能收到
B的确认。于是A重新发出请求,然后收到确认,建立连接,数据传输完毕后,
释放连接,A发了2个,一个丢掉,一个到达,没有“已失效的报文段”
但是,某种情况下,A的第一个在某个节点滞留了,延误到达,本来这是一个早
已失效的报文段,但是在A发送第二个,并且得到B的回应,建立了连接以后,
这个报文段竟然到达了,于是B就认为,A又发送了一个新的请求,于是发送
确认报文段,同意建立连接,假若没有三次的握手,那么这个连接就建立起来了
(有一个请求和一个回应),此时,A收到B的确认,但A知道自己并没有发送
建立连接的请求,因为不会理睬B的这个确认,于是呢,A也不会发送任何数
据,而B呢却以为新的连接建立了起来,一直等待A发送数据给自己,此时B
的资源就被白白浪费了。但是采用三次握手的话,A就不发送确认,那么B由
于收不到确认,也就知道并没有要求建立连接。
三、实验过程
1、TCP连接
发布评论