`
moor212
  • 浏览: 174118 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

偶尔丢包的解释

 
阅读更多
偶尔丢包的解释:
TCP是基于流传输的,假设你的发送包的大小为6k,你的一个文件大小为42k,(一共7个包)我们把接收文件的缓冲区设置为42k以上,现在如果你采用TCP协议,那么一次就可以把所有的包都传输到了接受文件一端,这个时候很多人都只解析了第一个包,忽略了其他6个包,于是就认为是丢包现象。但是如果你的接收文件的缓冲区设置为40的话,那么貌似没有丢包现象,事实上,你只解析了第一个和第七个包,你丢掉了中间的2~6号包。
你的丢包现象偶尔出现与你的文件大小以及你的接收文件的缓冲区的大小设置有关。为什

陷入阻塞的解释:
socket有两种套接字模式:锁定和非锁定。当使用锁定套接字的时候,使用的很多函数,例如accpet、send、receive等等,如果没有数据需要处理,这些函数都不会返回,也就是说,你的应用程序山阻塞在那些函数的调用处。而如果使用非阻塞模式,调用这些函数,不管你有没有数据到达,他都会返回。所以有可能我们在非阻塞模式里,调用这些函数大部分的情况下会返回失败。就上面的例子来说,你的7个包都已经一次性的发出去了,你只解析了第一个包,而第二个(可能已经是n个了)包已经发送到你那里,你却没有解析。所以你会陷入阻塞。这时候只有只有你的接收缓存区小于42k的时候才可以收到ACK。

分享到:
评论

相关推荐

    论文研究-无线Ad hoc网络中的丢包分析模型研究.pdf

    针对无线Ad hoc网络中的丢包现象,假设网络中节点的丢包率是与归一化吞吐量有关的,并且在此假设的基础上提出一种分析丢包率的数学模型,利用这种模型可以一定程度的解释无线Ad hoc网络中的丢包。仿真结果表明利用该...

    QTcpSocket readyread不触发或者只触发几次,readAll()丢数据,收不全数据的原因及解决办法

    QT开发经常发生socket的readyread只触发几次,怍不全数据,丢包丢数据的现象,网上有一堆解释和解决方案,比如waitForReadyRead()就好了,设置接收缓冲区SndBuf就好了之类的,但是却不管用,仍然是收不全数据. 本人的解决...

    网络诊断工具WinMTR(分析/排查网络延迟与掉包)

    该软件可以帮助用户直接查看各个节点的响应时间及丢包率,非常适合windows下客户做路由追踪及PING进行测试。 WinMTR 名词解释: Hostname:到目的服务器要经过的每个节点主机IP或名称 Nr:经过节点的数量 Loss%:...

    路由器上ping解释

    在路由器的故障分析中,Ping命令是一个常见而实用的网络管理工具,用这种工具...我们经常让Ping一次发一定数量的包,然后检查收到相应的包的数量,则可统计出端到端网络的丢包率,而丢包率是检验网络质量的重要参数。

    网络工程师必懂的专业术语

    路由器问题: 1、什么时候使用多路由协议? 2、什么是访问表? 3、什么时候使用路由再分配? ……

    用于网络路径规划中寻找端到端(点到点)最短路径的蚁群算法.rar

    这个算法是用于网络拓扑矩阵中端到端寻址的蚁群算法。 ...在KSP-algorithm文件夹中,打开并运行gen_k_shortest_path.m,输出结果保存在ouput_1.txt中,注释已经写了……自己看吧……不想一个个解释

    Sqlserver测试网络端口速度(1433端口延迟情况)

    Sqlserver测试网络速度:通过常用的ping网络包正常,不丢包,但是系统应用还是表现出来卡顿现象。然后通过psping测试数据库的端口,发现存在延迟情况。故分析出:网络端口延迟导致系统卡慢。 解释说明:用于psping...

    论文研究-WSN中基于被动端到端的故障链路集推断算法.pdf

    使用端到端的数据计算各条路径的丢包率,通过与阈值的比较对路由矩阵进行简化,目的是去掉根据端到端的数据可以判定为好的路径。由于该推理模型需要各条链路的故障概率,通过简化矩阵的方式优化算法LIPM(loss ...

    东北大学软件学院计算机网络第一章自制课件

    这份PPT文档是关于计算机网络的第一章介绍,涵盖了互联网的基本概念、历史、网络结构、接入方式、延迟与丢包问题、协议层与服务模型等多个方面。文档详细解释了互联网的工作原理,包括网络边缘、网络核心、接入网和...

    python抓取zabbix-screen 线路中当天及7天前图并发html邮件.docx

    python抓取两个数据中心zabbix-screen图中所有线路----当天及7天前丢包延时流量等指标图-----并发html邮件。 本人亲自编写的提取当做互联网日报脚本。 运行环境Python3.6 运行:python zabbix-screen.py 解释: 1....

    语音MOS影响因素分析

    2、完成了丢包率、抖动对MOS分的影响分析 3、确认在高清语音下,低丢包及低抖动MOS分较低的原因 4、证实poqla算法对真实语音感知反映存在缺陷,对时延不敏感 5、合理解释华为拟合MOS与路测差异较大的原因

    ADSL宽带-故障处理

    ping 外网服务器丢包大,影响用户使用,一方面与是外网服务器的自身原因,负载大,响应慢,一方面与出口带宽等因素有关;建议仔细分析网络的瓶颈,检查线路,增加出口带宽,同时对用户进行解释;

    分布式无线电网络:使用 dijkstra 算法找到的最佳路线-matlab开发

    丢包率取决于节点之间的距离。 任务是找到将第一个节点与每个其余节点连接的最佳路由。 节点可以重新发送数据包。 test1_random_nodes.m - 主脚本,运行以显示路由 dijkstra.m - 辅助函数,使用 dijkstra 算法找到...

    马可夫链matlab源代码-remote-estimation-with-Bernoulli-erasure-channel:该存储库包含通过

    Mahajan,“带丢包的远程状态估计”,在 IFAC 网络系统分布式估计和控制研讨会的会议记录中,日本东京,2016 年。 模型 B:具有 zer-mean Gaussian 创新的一阶标量自回归过程。 我们使用基于模拟的方法(我们称之为...

    通信与网络中的自组织QoS保证技术

    所谓QoS就是网络为用户传送端到端数据时必须满足的一套可测量的预先定义的基于端到端性能的服务质量,指标包括时延、时延抖动、可用带宽和分组丢包率等。由于自组织网具有多跳性、动态拓扑、分布式、临时性、链路...

    sigfox-toolbox:用于SIGFOX LP-WAN的实验工具箱(eWINE项目)

    尝试运行丢包Node-RED流。 安装说明 这些说明假定已经安装了Python 3.x解释器的,相当最新Linux系统。 尽管软件包的确切版本无关紧要,但该工具箱最近一次被选中可以与以下工具一起使用: Debian GNU / Linux 8.7...

    基于javatcpsocket通信的拆包和装包源码-network_and_protocol:网络协议与Netty

    知乎优秀解释 第一个包,即A发给B的SYN 中途被丢,没有到达B A会周期性超时重传,直到收到B的确认 第二个包,即B发给A的SYN +ACK 中途被丢,没有到达A B会周期性超时重传,直到收到A的确认 第三个包,即A发给B的ACK ...

    封包截取器

    快速(不会出现丢包现象) <br>5、即时注入,方便快捷 <br>6、无安装文件,解压缩即可使用 <br>7、体积小巧(压缩包300KB) <br>8、支持算法导入,并且接口公开 <br> <br>四、使用方法: <br>1...

    计算机网络(因特网)是什么?

    今天是周末,位于深圳南山区荔湾小区 28 栋 801 房间的云计算专家正在通过计算机和北京海淀区学院路文山花园 30 栋 2802 房间的做服装生意的朋友解释什么叫“云计算”,双方你一句我一句地在计算机上互传信息。...

    计算机网络安全概述.docx

    当前,运行于互联网上的协议〔如TCP/IP〕等,能够确保信息在数据包级别的完整性,即做到了传输过程中不丢信息包,不重复接收信息包,但却无法制止未授权第三方对信息包内部的修改。网络信息的可用性包括对静态信息的...

Global site tag (gtag.js) - Google Analytics