tcp/ip协议

TCP/IP协议是什么?
TCP/IP传输协议,即传输控制/网络协议,也叫作网络通讯协议。它是在网络的使用中的最基本的通信协议。
TCP/IP传输协议对互联网中各部分进行通信的标准和方法进行了规定。TCP/IP协议被组织成四个概念层,
其中有三层对应于ISO参考模型中的相应层。ICP/IP协议族并不包含物理层和数据链路层,因此它不能独立完成整个计算机网络系统的功能,
必须与许多其他的协议协同工作。
TCP/IP分层模型的四个协议层分别完成以下的功能:
    第一层:网络接口层(物理层)
包括用于协作IP数据在已有网络介质上传输的协议。实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。
相反,它定义像地址解析协议(Address Resolution Protocol,ARP)这样的协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。
  第二层:网络层
对应于OSI七层参考模型的网络层。本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。
同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。
  第三层:传输层
对应于OSI七层参考模型的传输层,它提供两种端到端的通信服务。其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,
UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。
  第四层:应用层
对应于OSI七层参考模型的应用层和表达层。因特网的应用层协议包括Finger、Whois、FTP(文件传输协议)、Gopher、
HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等,这也是本书将要讨论的重点。



10 packets captured
tcp/ip协议的标识
SYN:建立连接
ACK:回应标识
FIN:断开连接
PSH:数据包
URG:紧急指针
RST:重置(重传)
tcp/ip协议的三次握手和四次挥手(这里用大白话讲解)
1、第一次握手:建立连接,一个男生向一个女生求婚(发送SYN请求为x),男生等待女生回答(进入SYN_SENT状态)
2、第二次握手:女生知道了男生的求婚(ack为x+1),并说我答应你(seq),并且发送信息给男生(进入SYN_RECV)。
3、第三次握手:男生收到信息(ack为y+1)

1、第一次挥手:双十一女生买了很多东西,男生看到了就对女生说我已经样不起你了我们分手把
(主机A(可以使客户端,可以是服务器端),设置Sequence Number和Acknowledgment Number,向主机B发送一个FIN报文段;此时,主机A进入FIN_WAIT_1状态)
2、第二次挥手:女生听到了男生说的话,很生气就对男生说:分就分
(主机B收到了主机A发送的FIN报文段,向主机A回一个ACK报文段,Acknowledgment Number为Sequence Number加1;主机A进入FIN_WAIT_2状态;主机B告诉主机A,我“同意”你的关闭请求)
3、第三次挥手:男生看到了女生的反应才看到自己和她不合适;
(主机B向主机A发送FIN报文段,请求关闭连接,同时主机B进入LAST_ACK状态)
4、第四次挥手:女生看到男生的反应,更加生气,过了一段时间看到男生没有来哄女生,自此一个爱情破裂。
(主机A收到主机B发送的FIN报文段,向主机B发送ACK报文段,然后主机A进入TIME_WAIT状态;主机B收到主机A的ACK报文段以后,
就关闭连接;此时,主机A等待2MSL后依然没有收到回复,则证明Server端已正常关闭,那好,主机A也可以关闭连接)

下面是我抓的一个包抓的80端口访问的是百度
[root@localhost html]# tcpdump  -i  ens33   port 80  and  host   10.0.0.33   -nn  -S    -c 10
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
三次握手:
listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes
00:09:36.524410 IP 10.0.0.33.34798 > 183.232.231.172.80: Flags [S], seq 526141110, win 29200, options [mss 1460,sackOK,TS val 171704358 ecr 0,nop,wscale 7], length 0
00:09:36.566743 IP 183.232.231.172.80 > 10.0.0.33.34798: Flags [S.], seq 205324948, ack 526141111, win 64240, options [mss 1460], length 0
00:09:36.566796 IP 10.0.0.33.34798 > 183.232.231.172.80: Flags [.], ack 205324949, win 29200, length 0
四次挥手
00:59:46.431818 IP 10.0.0.33.34802 > 183.232.231.172.80: Flags [F.], seq 825194006, ack 1001999397, win 33580, length 0
00:59:46.432131 IP 183.232.231.172.80 > 10.0.0.33.34802: Flags [.], ack 825194007, win 64239, length 0
00:59:46.471676 IP 183.232.231.172.80 > 10.0.0.33.34802: Flags [FP.], seq 1001999397, ack 825194007, win 64239, length 0
00:59:46.471698 IP 10.0.0.33.34802 > 183.232.231.172.80: Flags [.], ack 1001999398, win 33580, length 0




原文地址:https://www.cnblogs.com/DB-MYSQL/p/11595422.html