HCIP——第一次作业(三次握手四次断开)

1、什么是TCP协议

传输控制协议(TCP),向应用提供了可靠的、面向连接的服务;换句话说,TCP提供了一个类似于点到点的连接。


2、点到点连接特点

  1. 仅存在一条到达目的地的路径。进入连接的数据包不会丢失,因为数据包惟一可去的地方就是连接的另一端。
  2. 数据包到达的顺序与发送顺序相同。

TCP提供了一条看似点到点的连接,虽然实际上这条连接并不存在。TCP利用的Internet层可以提供无连接的、尽力而为转发的服务。

同样的,Internet层不保证所有的数据包使用相同的路径,因而也不保证数据包到达时仍旧保持发送时的顺序和间隔或者全部到达。
另一方面,电话呼叫是一个面向连接的服务。数据必须顺序、可靠地到达,否则数据就会作废。像电话呼叫一样,TCP首先必须建立连接,然后是传送数据,当数据传送完成后要拆除连接。

3、tcp报头

 源端口(Source Port )和目的端口(Destination Port )——字段长度各为16位,它们为封装的数据指定了源和目的应用程序。应用程序的端口号加上应用程序所在主机的IP地址统称为套接字(socket)。在网络上套接字惟一地标识了每一个应用程序。


序列号(Sequence Number)一一字段长度为32位,序列号确定了发送方发送的数
据流中被封装的数据所在位置。

确认号(Acknowledgment Number)—一—字段长度为32位,确认号确定了源点下
一次希望从目标接收的序列号。如果主机收到的确认号与它下一次打算发送(或已发送)的序列号不符,那么主机将获悉丢失的数据包。

报头长度(Header Length)——又叫数据偏移量,长度为4位,报头长度指定了
以32位字为单位的报头长度。
保留(Reserved) —---字段长度为6位,通常设置为0。
标记(Flag)一--包括8个1位的标记,用于流和连接控制。

它们从左到右分别是:
拥塞窗口减少(CWR) ——主要用于流控制

ECN-Echo(ECE)

紧急(URG) —— 指明紧急数据的结束

确认(ACK)

弹出(PSH)

复位(RST)

同步(SYN)

结束(FIN)

窗口大小( Wlndow Stze)——字段长度为16位,主要用于流控制。窗口大小指明
了自确认号指定的八位组开始,接收方在必须停止传输并等待确认之前发送方可以接收的数据段的八位组长度。
校验和(Checksum)---字段长度为16位,它包括报头和被封装的数据,校验和
允许错误检测。
紧急指针(Urgent Pointer)-—字段仅当URG标记置位时才被使用。这个16位
数被添加到序列号上用于指明紧急数据的结束。
可选项(Options)———字段用于指明TCP的发送进程要求的选项。最常用的可选
项是最大段长度,最大段长度通知接收者发送者愿意接收的最大段长度。为了保证报头的长度是32个八位组的倍数,所以使用0填充该字段的剩余部分。
 

4、三次握手详解

 

握手过程:

第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 Seq。此时客户端处于 SYN_Send状态。

第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,并且也是指定了自己的初始化序列号Seq,同时会把客户端的 Seq + 1 作为 ACK Number 的值,表示自己已经收到了客户端的 SYN,此时服务器处于 SYN_REVD的状态

第三次握手:客户端收到 SYN 报文之后,会发送一个 ACK 报文,当然,也是一样把服务器的 Seq + 1 作为回复 ACK Number的值,表示已经收到了服务端的 SYN 报文,此时客户端处于 establised状态。

服务器收到 ACK 报文之后,也处于 establised 状态,此时,双方以建立起了链接。

传输层结束

这些数据通过传输层发送(tcp)。数据会被送到传输层处理,在这里报文打上了传输头的包头,主要包含端口号,以及tcp的各种制信息。然后把待发送的数据段发送到网络层。

5、四次挥手

 

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

第2次挥手:服务端收到FIN后,发送一个ACK给客户端,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),服务端进入CLOSE_WAIT状态;

第3次挥手:服务端发送一个FIN,用来关闭服务端到客户端的数据传送,服务端进入LAST_ACK状态;

第4次挥手:客户端收到FIN后,客户端t进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,服务端进入CLOSED状态,完成四次挥手。

其中:FIN标志位数置1,表示断开TCP连接。
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值