头图
  1. 什么是tcp/ip协议?

Tcp/ip协议是一个协议簇,是一系列协议的总称,其中最核心的就是ip协议和tcp协议,tcp/ip协议包括:ip、tcp、icmp(internet控制报文协议)、udp(用户数据报协议)、arp等,他们共同构成了一个复杂但是有层次的协议栈。Tcp/ip一共有四层,从上到下分别为:应用层、传输层、网络层、链接层。

IP协议:Internet Protocol的缩写,主要用于解决寻址和路由问题

Tcp协议:“Transmission Control P ro to co l”是传输协议,它位于IP协议之上,基于IP协议提供可靠的、字节流形式的通信。

  1. TCP协议和UDP协议的区别?

TCP协议是有连接状态的,udp是无连接状态的

Tcp传输的数据是以字节流的形式,udp是报文信息的形式

Tcp传递的信息是更安全,更有保证的,但是udp是尽量去送到

TCP传递的数据是有序性的,udp是无序的

Tcp是更消耗资源的

  1. TCP的三次握手,为什么需要三次握手

在tcp/ip协议中,tcp协议提供了可靠的连接服务,采用三次握手建立一次连接

TCP的第一次握手:建立连接时,客户端向服务器端发送SYN包(syn=1),进入syn_send状态,等待服务器确认。(syn=1,seq=x)

TCP的第二次握手:服务端收到SYN包,必须确认客户的syn包,同时自己也发送一个syn+ack给客户端,此时服务器进入syn_recv状态。(syn=1,ACK=1,seq=y,ack=k+1)

TCP的第三次握手:客户端收到服务器端的syn+ack包,向服务器发送确认包ack,此包发送完毕,客户包和服务器端进入established状态,三次握手完成。(ack=1,seq=x+1,ack=y+1)

Tcp flags:

Urg:紧急指针标志,为0表示无效,1表示有效

ACK:确认序号标志,为1表示确认号有效,为0表示报文中不含确认号信息,忽略

PSH:push标志,收到后尽快交给应用层序

RST:重置连接标志,

SYN:同步确认号,用于建立连接过程,如果syn=1,ack=0用户表示没有使用捎带的确认域,(syn=1,ack=1,表示捎带确认)

FIN:finish标志,用于释放连接

为什么三次握手:如果第一次握手后,

  1. TCP的滑动窗口作用

保证tcp的可靠性

保证tcp的流控特性

  1. Tcp的四次挥手

四次挥手的目的时为了关闭连接

第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,客户端进入FIN_WAIT_1状态

第二次挥手:Server收到Client的FIN后,发送一个ack给client,确认需要为收到序号+1,server进入close_wait状态

第三次挥手:server发送一个FIN给client,用来关闭server到client的数据传送,server进入last_ack状态

第四次挥手:client收到server的FIN后,client进入time_wait状态,接着发送一个ack给server,确认序号为收到序号+1,server进入close状态,完成四次挥手。


德迅云安全小钱
1 声望1 粉丝

我做高防产品,解决你的攻击困扰