tcp/ip具体解释学习笔记--tcp的坚持和保活定时器

mfmdaoyou mfmdaoyou     2022-08-31     105

关键词:

TCP的坚持定时器

1.基本概念

TCP的接收方指名希望从发送方接收的数据字节(窗体大小)来进行流量控制,假设窗体大小为0。那么放送方就会阻止发送数据,直到接收方发来一个已跟新窗体大小的ACK为止,那么假设接收方发送的这个ACK中途丢失了呢(这样的可能性是有的)?此时发送方收不到信息,就默认窗体大小还为0,那它就继续堵塞在那,这样就造成了死锁。

那么怎样解决此类问题呢,解决方式就是我此片博文的题目。TCP的坚持定时器。为了防止上述死锁的发生。TCP的发送方使用了一个坚持定时器。来周期性的向接收方查询。以便发现窗体是否已增大

2.糊涂窗体综合症

假设大家曾经了解过TCP的话,那么相信大家也听说过糊涂窗体综合症吧。

它的大致意思是这样的,就是当接收方窗体大小变为0时,发送方就会堵塞。上文中有提到。当接收方窗体大小刚空出来一个非常小的空间然后就去通知发送方,发送方相同也会发一个非常小的数据,然后导致接收方窗体变为0,等接收方略微在腾出来点空间。。。

。如此往复。每次发送方和接收方都仅仅能弄到非常少的数据。严重减少了传输效率,这就是所谓的糊涂窗体综合症

我们能够使用例如以下方法来解决此类问题
(1)接收方不通告小窗体。除非窗体比MSS大或者比接收方缓存的一般空间小才通告发送方
(2)发送方避免糊涂窗体的措施是仅仅有下面条件才发送数据
.能够发送一个满长度的报文段
.能够发送至少是接收方缓存区一半的报文段(主要针对小缓存区的主机)
.能够发送手头全部数据,并不希望收到ACK(此算法可能禁止了Nagle算法)

TCP的保活定时器

当TCP的俩端建立连接后,而不发送不论什么数据。那么仅仅要这俩个主机不崩,不管经过多长时间,中间路由是否坏掉。电话线是否断掉,此连接会依旧存在
这样的现象表明俩个应用都没有自己去检測非活动状态的定时器

保活功能定时器

当TCP连接的俩端暂时出现问题时。保活功能就会产生一个非常好的连接终止效果
保活功能主要是为server程序提供的,server须要知道客户机是否已经崩溃

tcp/ip具体解释学习笔记--tcp数据流

1.TCP的交互数据流(1)基本概念所谓交互数据流,其对TCP而言,就是他们所产生的大多数的TCP报文段中所包括的数据不超过10个字节。比如聊天等telnet的软件的TCP数据流就属于TCP交互数据流(2)经受时延的确认TCP收到数据时并不会立... 查看详情

tcp/ip具体解释学习笔记——地址解析协议arp

一概述我们知道,IP协议是用来在不同的物理网络之间数据传输的。要在不同的网络之间数据传输,至少须要将IP协议所用的地址转换成特定网络所使用的物理地址。一般来说。就是将IPv4地址转换为mac地址。要想与一个特定的设... 查看详情

《tcp/ip具体解释》读书笔记(21章)-tcp的超时与重传

TCP提供可靠的运输层。它使用的方法之中的一个就是确认从还有一端收到的数据。但数据和确认都有可能会丢失。TCP通过在发送时设置一个定时器来解决这样的问题。假设当定时器溢出时还没有收到确认,它就重传该数据。对于... 查看详情

《tcp/ip具体解释卷2:实现》笔记--协议控制块

协议层使用协议控制块(PCB)存放各UDP和TCP插口所要求的多个信息片。Internet协议维护Internet协议控制块(internetprotocolcontrolblock)和TCP控制块(TCPcontrolblock)。由于UDP是无连接的。所以一个端结点须要的全部信息都在InternetPCB中... 查看详情

《tcp/ip具体解释》读书笔记(19章)-tcp的交互数据流

在TCP进行传输数据时。能够分为成块数据流和交互数据流两种。假设按字节计算。成块数据与交互数据的比例约为90%和10%,TCP须要同一时候处理这两类数据,且处理的算法不同。书籍本章中以Rlogin应用为例观察交互数据的传输过... 查看详情

《tcp/ip具体解释》读书笔记(20章)-tcp的成块数据流

眼下建立在TCP协议上的网络协议特别多,有telnet。ssh,有ftp。有http等等。这些协议又能够依据数据吞吐量来大致分成两大类:(1)交互数据类型,比如telnet,ssh。这样的类型的协议在大多数情况下仅仅是做小流量的数据交换,比... 查看详情

《tcp/ip具体解释卷2:实现》笔记--接口层

接口层包含在本地网上发送和接收分组的硬件与软件。我们用设备驱动程序来表示与硬件及网络接口通信的软件,网络接口是指在一个特定网络上硬件与设备驱动器之间的接口。Net/3接口层试图在网络协议和连接到一个系统的网... 查看详情

tcp/ip具体解释--tcp的分段和ip的分片

写在前面:   分组能够发生在运输层和网络层。运输层中的TCP会分段,网络层中的IP会分片。IP层的分片很多其它的是为运输层的UDP服务的,因为TCP自己会避免IP的分片,所以使用TCP传输在IP层都不会发生分片的现象。... 查看详情

《tcp/ip具体解释卷2:实现》笔记--选路请求和选路消息

内核的各种协议并不直接使用前面提供的函数来訪问选路树,而是调用几个函数:rtalloc和rtallocl是完毕路由表查询的两个函数;rtrequest函数用于加入和删除路由表项;另外大多数接口在接口连接或断开时都会调用函数rtinit。选路... 查看详情

tcp/ip协议组学习笔记

TCP/IP协议族学习笔记:一、基础概念:(1)TCP(TransmissionControlProtocol)传输控制协议。(2)IP(InternetProtocol)网际协议。IP是一种不可靠的无连接数据协议。一种尽最大努力交付的服务。(3)ISP(InternetServiceProvider)因特网服... 查看详情

tcp长连接短连接和保活机制

当server和client进行TCP通信时,发送数据之前,需要先建立连接。数据发送完毕时,需要选择是否断开。这里就需要先认识下TCP的三次握手和四次分手机制。3次握手时 第一次握手:client端向server端发送连接请求信息:SYN=1,seq... 查看详情

tcp协议学习笔记(代码片段)

TCP(TransmissionControlProtocol传输控制协议)协议是基于IP协议,面向连接的、可靠的、基于字节流的传输层通信协议。基于IP协议:在TCP/IP协议栈中,TCP协议是基于IP协议之上传输的,TCP协议报文中的源端口... 查看详情

tcp/ip具体解释--icmp报文分析

一.概述:1.   ICMP同意主机或路由报告差错情况和提供有关异常情况。ICMP是因特网的标准协议,但ICMP不是高层协议,而是IP层的协议。通常ICMP报文被IP层或更高层协议(TCP或UDP)使用。一些ICMP报文把差错报文返回给用... 查看详情

tcp/ip协议族——ip工作原理及实例具体解释(上)

??IP协议具体解释       本文主要介绍了IP服务特点,头部结构,IP分片知识,并用tcpdump抓取数据包。来观察IP数据报传送过程中IP的格式,以及分片的过程。IP头部信息:IP头部信息出如今每一个IP数据报... 查看详情

tcp/ip协议学习笔记 章一

一、tcp/ip包含:tcp/ip协议集包含四层:链路层、网络层、传输层、应用层二、协议举例:应用层:http、telnet、ssh....传输层:TCP、UDP网络层:IP,ICMP,IGMP链路层:ARP,RARP注:不是所有的程序都有这四层。有些基于IP,但是非tcpand... 查看详情

osi七层协议模型tcp/ip四层模型学习笔记

1.OSI七层和TCP/IP四层的关系1.1 OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。1.2 OSI先有模型,后有协议,先有标准,后进行实践;而TCP/IP则相反,先有协议和应用再提出了模型,且是... 查看详情

osi七层协议模型tcp/ip四层模型学习笔记

1.OSI七层和TCP/IP四层的关系1.1 OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。1.2 OSI先有模型,后有协议,先有标准,后进行实践;而TCP/IP则相反,先有协议和应用再提出了模型,且是... 查看详情

(学习笔记)tcp与udp的区别

TCP/IP协议是一个协议簇。里面包括很多协议的,TCP,UDP只是其中的协议,之所以命名为TCP/IP协议,是因为TCP,IP协议是两个重要的协议,就用他两命名了。TCP协议与UDP协议的区别(重点)TCP(TransmissonControlProtocol,传... 查看详情