专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

tcp是什么,tcp协议详解

来源:小易整编  作者:小易  发布时间:2023-03-24 02:05
摘要:tcp是什么,tcp协议详解计算机网络在IT行业的重要性IT即互联网技术,从事的工作和网络有很大的关系,前端要负责和后台(服务器)进行交互,其必然得经过网络,所以懂点网络知识有很大的帮助。网络模型数据处理过程传输层协议的作用提供了一种端到端...
  • PSH => 缓存区将满,接收方应尽快将此报文段交给应用层;

  • RST => 连接断了重建连接;

  • SYN => 同步序号为1,用来发起一个新连接;

  • FIN => 为1表示发端完成发送任务。

tcp是什么,tcp协议详解

16位窗口大小:TCP流量控制,字节数,说明本地可接收数据段的数目,这个值的大小是可变的。当网络通畅时将这个窗口值变大加快传输速度,当网络不稳定时减少这个值可以保证网络数据的可靠传输。它是来在TCP传输中进行流量控制的

16位检验和:包括计算TCP首部和数据综合的二进制反码和检验和。

16位紧急指针:URG为1时有效,正向的偏移量,加上序号字段值表示最后一个字节的序号。通常在暂时中断通信时使用(比如输入 Ctrl + C)。

三次握手和四次挥手

tcp是什么,tcp协议详解

三次握手:

  1. 第一次握手主机A通过一个标识为SYN标识位的数据段发送给主机B请求连接,通过该数据段告诉主机B希望建立连接,需要B应答,并告诉主机B传输的起始序列号

  2. 第二次握手是主机B用一个确认应答ACK和同步序列号SYNC标志位的数据段来响应主机A,一是发送ACK告诉主机A收到了数据段,二是通知主机A从哪个序列号做标记。

  3. 第三次握手是主机A确认收到了主机B的数据段并可以开始传输实际数据。

第一次握手主要是确定服务端确认客户端能够发送信号;第二次握手主要是客户端确认服务端能够接收和发送信号;第三次握手主要是服务端确认客户端能够接收信号

四次挥手:

  1. 主机A发送FIN控制位发出断开连接的请求

  2. 主机B进行响应,确认收到断开连接请求

  3. 主机B提出反方向的关闭要求

  4. 主机A确认收到的主机B的关闭连接请求

第一次挥手是服务端确认客户端需要断开连接;第二次挥手是客户端确认服务器接收断开请;第三次挥手是客户端确认服务器数据发完,断开连接;第四次挥手是服务端确认客户端断开连接,断开连接。所以如果服务端的数据全部发送完,是没有第三次挥手,直接进入第四次挥手。

TCP流量控制和TCP拥塞控制

窗口:

  1. 接收端窗口 rwnd:接收端缓冲区大小。接收端将此窗口值放在TCP报文的首部中的窗口字段,传送给发送端。

  2. 拥塞窗口 cwnd (congestion window):发送端缓冲区大小

  3. 发送窗口swnd:发送窗口的上限值 = Min [rwnd, cwnd],当 rwnd < cwnd 时,是接收端的接收能力限制发送窗口的最大值。当cwnd < rwnd时,则是网络的拥塞限制发送窗口的最大值

拥塞控制和流量控制的差别:

  • 拥塞问题是一个全局性的问题,涉及到所有的主机、所有的路由器、以及与降低网络传输性能有关的所有因素。流量控制往往指的是点对点通信量的控制,是个端到端的问题。

  • 流量控制所要做的就是控制发送端发送数据的速率,以便使接收端来得及接受。拥塞控制控制的是注入网络中的数据量。

  • 流量窗口是接收方控制的,拥塞窗口是发送方控制的

TCP流量控制

所谓的流量控制就是接收方让发送方的发送速率不要太快,让接收方来得及接受。利用滑动窗口机制可以很方便的在TCP连接上实现对发送方的流量控制。TCP的窗口单位是字节,不是报文段,发送方的发送窗口不能超过接收方给出的接收窗口的数值。

tcp是什么,tcp协议详解

假设主机A向主机B发送数据。双方确定的窗口值是400.再设每一个报文段为100字节长,序号的初始值为seq=1,图中的箭头上面大写ACK,表示首部中的却认为为ACK,小写ack表示确认字段的值。

tcp是什么,tcp协议详解

下面这张接收窗口(rwnd)图和上面的数据不是对应的,但是能说明窗口大小调整的过程,可以自己将下面的图进行修改,用上面的数据分析:

  1. 刚开始的窗口值为400字节,每段报文100字节,经过发送2次请求后,此时已发送但未被确认的报文seq=201为100字节,主机B向主机A发送接收情况并调整窗口大小为300字节。

  2. 主机A向主机B发送301-500,并且重发201-300,主机B向主机A发送接收情况,并调整窗口大小为100字节

  3. 主机A向主机B发送501-600,主机B向主机A发送接收情况,并且调整窗口大小为0,让A暂停发送

假设B向A发送了rwnd=0的报文段后不久,B的接收缓存又有了一些存储空间。于是B向A发送了rwind=400的报文段,然而这个报文段在传送中丢失了。A一直等待收到B发送的非零窗口的通知,而B也一直等待A发送的数据。这样就死锁了。为了解决这种死锁状态,TCP为每个连接设有一个持续计时器。只要TCP连接的一方收到对方的零窗口通知,就启动持续计时器,若持续计时器设置的时间到期,就发送一个零窗口探测报文段(仅携带1字节的数据),而对方就在确认这个探测报文段时给出了现在的窗口值。

TCP拥塞控制

拥塞控制原理

发送方控制拥塞窗口的原则是:只要网络没有出现拥塞,拥塞窗口就增大一些,以便把更多的分组发送出去。但是只要网络出现拥塞,拥塞窗口就减小一些,以减少注入到网络的分组数。

拥塞控制设计


本文地址:百科问答频道 https://www.neebe.cn/wenda/938567_2.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 销售额是什么意思?

    销售额是什么意思?

    销售额是指商业企业的一项关键指标,代表企业在一定时期内的营业额,它实时反映企业经营活动的情况,是衡量企业经营能力和效益的重要指标。销售额可以有多种形式,如零售销售额、批发销售额和出口销售额等。销售额的计算方法很简单,即:销售额=销售数量...

  • iTools是什么意思?

    iTools是什么意思?

    iTools是一款功能强大的苹果设备管理工具。它为苹果设备用户提供了便捷的设备管理功能,包括文件传输、备份还原、应用程序管理、屏幕截图、屏幕录制、音乐管理、视频管理等多种功能,而且支持所有的i系列设备,例如iPod、iPhone和iPad...

  • 无损分区工具是什么意思?

    无损分区工具是什么意思?

    无损分区工具是一种硬盘分区方式,是指在分区时保持原有数据不受损坏的一种分区技术,这种分区技术称为“无损分区”。无损分区可以保护硬盘上的数据,在分区时不会破坏硬盘上的任何数据。而且,在数据安全性上也有一定的优势,因为它不会破坏的数据,因此可...

  • 消费凭证是什么意思?

    消费凭证是什么意思?

    消费凭证是指一种书面的证明凭证,当消费者购买商品或服务时,商家会向其提供消费凭证,凭此凭证可以证明消费者购买了特定的商品或服务,以及在这次购买中耗费的钱财数额。消费凭证是一种用于表示购买交易的依据,是为消费者提供全面鉴证的凭证。它可以表明...

  • DSM系统是什么意思?

    DSM系统是什么意思?

    DSM是一种新晋的分布式、可扩展的模块化系统。它是以无服务器、全节点一致性的系统架构为基础,采用多进程系统将服务、运维功能以模块化的方式集合到一起而不会配置服务的的系统设计模型。DSM的核心特点在于采用了一致性的分布式架构,模块化的结构,...

  • 裸金属是什么意思?

    裸金属是什么意思?

    简而言之,裸金属是指被提取出来,没有被添加任何基材的未加工金属。它是将矿石熔化下去后提炼出来的金属,用来做各种活动和企业的原材料。裸金属通常是一种切削或加工的未经热处理的金属。裸金属一般不经过任何表面处理,以自身属性状态出售。它不会涂以油...

  • CVSS是什么意思?

    CVSS是什么意思?

    CVSS(CommonVulnerabilityScoringSystem,中文译名“公共漏洞评分系统”)是一种漏洞分级和评分系统,是由美国国家信息安全标准研究所(NIST)推行的一套机制,它利用特定的参数来构建一个漏洞评级分类体系...

  • 键盘接口是什么意思?

    键盘接口是什么意思?

    键盘接口一般是用于挂接键盘的接口。它也称为键盘插座或键盘接头,它是一个连接键盘和计算机系统之间的重要硬件部件。键盘接口可以用来接收键盘上发出信号,以便在主板上发出完整的指令。键盘接口可以分为有线和无线两种,有线键盘接口是指采用插孔的连接方...

  • 周排行
  • 月排行
  • 年排行

精彩推荐