首页 > 其他分享 >【Android面试八股文】谈谈你对TCP 流量控制与拥塞控制的理解

【Android面试八股文】谈谈你对TCP 流量控制与拥塞控制的理解

时间:2024-06-18 23:31:38浏览次数:27  
标签:控制 接收端 流量 发送 拥塞 TCP Android 接收

文章目录


TCP的拥塞控制和流量控制虽然采取的动作很相似,但 拥塞控制与网络的拥堵情况相关联,而 流量控制与接收方的缓存状态相关联,是针对完全不同的问题而采取的措施 。

拥塞控制流量控制从不同的方面保证TCP协议可靠性。

一、流量控制

1.1 流量控制的概念

双方在通信的时候,发送方的速率接收方的速率不一定相等,如果发送方的发送速率太快,会导致接收方处理不过来,这时候接收方只能把处理不过来的数据存在缓存区里。

如果缓存区存满了发送方还在疯狂着发送数据,接收方只能把收到的数据包丢掉

流量控制就是控制发送者的发送速度从而使接收者来得及接收,防止丢失数据包的。

假设没有流量控制,发送端根据自己的实际情况发送数据,如果发送的速度太快,导致接收端的接收缓冲区很快填满了,此时发送端如果继续发送数据,接收端处理不过来,这时接收端就会把本来应该接收的数据丢弃,这会触发发送端的重发机制,从而导致网络流量的无端浪费。

1.2 滑动窗口

在TCP头中有一个Window字段,这个字段代表了接收端告诉发送端自己**缓冲区还有多少剩余空间可以接收数据。

<

标签:控制,接收端,流量,发送,拥塞,TCP,Android,接收
From: https://blog.csdn.net/qq446282412/article/details/139778597

相关文章

  • 【Android面试八股文】你说一说什么是双亲委托机制?为什么需要双亲委托机制?
    一、双亲委托机制1.1双亲委托机制概述双亲委托机制是指当一个类加载器收到一个类加载请求时,该类加载器首先会把请求委派给父类加载器。如果父类加载器还存在父类加载器,则会一直向上委派,直至最终交由顶层的启动类加载器完成类加载,每个类加载器都是如此,只有在所......
  • Android 配置蓝牙遥控器键值
    文章目录篇头一、规格书二、红外按键配置三、蓝牙按键配置3.1查看设备号3.1.1方式一:dumpsysinput3.1.2方式二:cat/proc/bus/input/devices3.2配置kl文件3.2.1方案商原始配置3.2.2Generic.kl文件3.2.3重映射蓝牙按键3.2.4完成Vendor\_568a\_Product\_9869.kl......
  • 浅谈配置元件之TCP取样器配置/TCP取样器
    浅谈配置元件之TCP取样器配置/TCP取样器1.引言在进行网络性能测试时,TCP取样器配置和TCP取样器(TCPSampler)是两个重要的组件,他们允许用户直接发送和接收TCP数据包,这对于测试服务器的TCP连接处理能力、模拟特定的TCP交互场景非常有用。本文档将详细介绍如何在JMeter中配......
  • tcp/ip 每层的协议
    TCP/IP网络通常是由上到下分成4层,分别是应用层,传输层,网络层和网络接口层。 网络接口层的传输单位是帧(frame),IP层的传输单位是包(packet),TCP层的传输单位是段(segment),HTTP的传输单位则是消息或报文(message) 一般说来,数据链路层发出的数据包称为frame,地址是链路层的地址,如mac地......
  • tcp 连接
    前言看到这个标题你可能会说,TCP连接的建立与断开,这个我熟,不就是三次握手与四次挥手嘛。且慢,脑海中可以先尝试回答这几个问题:四次挥手是谁发起的?如果断电/断网了连接会断开吗?什么情况下没有四次挥手连接也会断开?这不是面试,而是遇到了实际问题,至于是什么问题,容我先卖个关子,......
  • android studio manifest结构关系
    <manifest><uses-permission/><permission/><permission-tree/><permission-group/><instrumentation/><uses-sdk/><uses-configuration/><uses-feature/>&......
  • 八路DI八路DO开关量输入输出 远程IO模块 Modbus TCP数据采集模块 YL90
    特点:●八路开关量输入,八路开关量输出● DI状态变化自动发送状态数据,可以捕获脉冲● 采用Socket自由协议编程简单、轻松应用● 开关量毫秒级响应速度适应多种场合● 内置网页功能,可以通过网页查询与控制● 同时也支持ModbusTCP通讯协议● 宽电源供电范围:8~32......
  • TCP_CONNECTION_ESTAB_02:验证DUT打开多个被动套接字并将它们连接到远程套接字
    测试目的:本测试用例的目的是验证DUT(被测试设备)是否能够同时打开多个TCP被动套接字,并能够对通过这些套接字接收到的TCP连接请求进行响应。当DUT接收到多个带有SYN标志位设置为1的TCP段时,DUT应该能够为每个请求打开一个TCP被动套接字,并向每个请求源发送一个同时包含SYN和ACK......
  • go tcp 同步 请求
      客户端服务端典型的同步请求-响应模型简单的Go示例,展示了如何实现您描述的同步请求-响应模型。客户端会发送一个包,然后等待接收服务器的响应。服务器接收包后处理数据,然后发送处理完成的消息。客户端接收到响应后,再次发送下一个包 服务端:packagemainimport(......
  • 53.收官 Android四大组件之一服务
    服务一个长期运行在后台的用户组件不依赖于Activity只有当系统必须回收内存资源时才会被销毁首先是创建服务当写好后会自动在清单文件中注册服务的生命周期和启动方式先简单介绍一下然后用两个小案例来日志打印验证第一种启动方式startService()启动服务的组......