当前位置: 首页 > news >正文 如何做二维码跳转到网站iis 网站名 news 2025/10/28 15:37:23 如何做二维码跳转到网站,iis 网站名,杭州最专业的seo公司,网站横幅背景图片#x1f490;个人主页#xff1a;初晴~ #x1f4da;相关专栏#xff1a;计算机网络那些事 前几篇文章#xff0c;博主带大家梳理了一下TCP协议的几个核心机制#xff0c;比如保证可靠性的 确认应答、超时重传 机制#xff0c;和提高传输效率的 滑动窗口及其相关优化机… 个人主页初晴~ 相关专栏计算机网络那些事 前几篇文章博主带大家梳理了一下TCP协议的几个核心机制比如保证可靠性的 确认应答、超时重传 机制和提高传输效率的 滑动窗口及其相关优化机制。除此之外TCP还有一些非常重要的核心机制就让博主在本篇文章带着大家学习一下吧 一、延迟应答 TCP协议中的延时应答Delayed Acknowledgment机制是一种优化技术旨在减少网络中的确认ACK消息数量从而提高网络带宽利用率和减少网络拥塞。 试想一下如果接收端在收到数据时就立马返回ACK应答可能会出现什么问题 这时返回的窗口可能会比较小 假设接收端缓冲区为1M⼀次收到了500K的数据如果⽴刻应答返回的窗⼝就是500K但实际上可能处理端处理的速度很快10ms之内就把500K数据从缓冲区消费掉了在这种情况下接收端处理还远没有达到⾃⼰的极限即使窗⼝再放⼤⼀些, 也能处理过来如果接收端稍微等⼀会再应答⽐如等待200ms再应答那么这个时候返回的窗⼝⼤⼩就是1M 主要原理是接收端在接收数据的时候应用程序也在源源不断地消费接受缓冲区内的数据。 在收到数据时先等一小会儿缓冲区内的数据可能就会被消费而少掉很多此时再返回给发送端 ACK时返回的窗口大小就大概率会比立即返回更大。 而窗口越大网络吞吐量就越大传输效率也越高。因此延迟应答在一定程度上就能提高网络传输的效率。 但难道能一直延迟下去吗延迟的时间过久也是会导致接受缓冲区爆满引发丢包等一系列问题的。因此TCP会对延迟时间做出一些限制 数量限制每隔N个包就应答⼀次时间限制超过最⼤延迟时间就应答⼀次 具体的数量和超时时间依操作系统不同也有差异。⼀般N取2超时时间取200ms 这样就能很好地控制应答报文的返回密度在不影响传输可靠性的条件下尽可能提高网络传输的效率 二、捎带应答 在 延迟应答 的基础上我们发现实际网络通信中大多数情况下都是“一问一答”的形式 ack 是系统内核返回的在收到请求后就立即返回ack响应是应用程序返回的在代码中根据请求计算得到响应然后再返回给发送端 正常情况下ack与响应 返回的时机不同无法进行合并。 但别忘了ack涉及“延时应答”机制会让ack返回时间推迟。这一推迟ack 就有机会等到 响应 报文生成的时候了于是就可以再发送响应的时候捎带上ack数据。 就好比说 客⼾端 给服务器说了 How are you服务器也会给客⼾端回⼀个 Fine, thank you而这个时候ack就等了一会儿搭上顺风车和服务器回应的 Fine, thank you 一起返回给客户端 还记得之前在 TCP协议“三次握手四次挥手” 一文中我们研究过的四次挥手吗 当时我们介绍过ack是系统内核返回的fin是应用程序返回的理论上来说这俩发送时机并不同是无法合并的。这也是“四次挥手”说法的由来。 但是在延时应答的机制下ack的返回时间可能会推迟就有可能会和 FIN 合并一起返回了。这时“四次挥手” 就变成 “三次挥手” 了。 之所以ack可以和响应报文合并是因为 ack 报文本身不需要载荷只需在报头中将 ack字段设为“1”接着设置好窗口大小、确认序号即可。这并不会与正常的响应报文产生冲突 三、面向字节流 创建⼀个TCP的socket, 同时在内核中创建⼀个 发送缓冲区 和⼀个 接收缓冲区; 调⽤write时数据会先写⼊发送缓冲区中如果发送的字节数太⻓会被拆分成多个TCP的数据包发出如果发送的字节数太短就会先在发送缓冲区⾥等待等到缓冲区⻓度差不多了或者其他合适的时机发送出去接收数据的时候数据也是从⽹卡驱动程序到达内核的接收缓冲区然后应⽤程序可以调⽤read从接收缓冲区拿数据另⼀⽅⾯TCP的⼀个连接既有发送缓冲区也有接收缓冲区 对于这⼀个连接既可以读数据也可以写数据。这个概念叫做 全双⼯ 由于缓冲区的存在TCP程序的读和写不需要⼀一匹配例如: 读写100个字节的数据时 1、可以一次读写一个字节分 100 次读写 2、可以一次读写十个字节分 10 次读写 3、可以一次读写50个字节分 2 次读写 4、可以一次读写100个字节一次读写完 …… 这样读写虽然十分自由但也会带来一些问题。相比于面向数据报的传输方式通过面向字节流的方式每次传输的界限没有那么分明了。容易导致粘包问题 即应用层数据包在TCP的接收缓冲区内连成一片粘在一起 站在应⽤层的⻆度, 看到的只是⼀串连续的字节数据。当应用程序需要读取接收缓冲区内的数据时由于TCP是面向字节流的因此缓冲区内数据怎么读都有可能。 可能会读出 aaabbbccc 也可能读出 aaabbbccc 还可能读出 aaabbbccc …… 这样肯定是不利于正确读取数据包意义的。想要解决粘包问题关键就是要明确“包之间的边界” 方案一指定分隔符 比如我们可以约定请求响应都以 “\n” 结尾。这样在发送读取的时候都用 “\n” 作为分隔符每当读写到 “\n” 时就意味着一个数据包已经结束了应用端就可以正常对这个数据包进行解析了。 不过采用这种方案时一定要注意避免数据内容的正文中也会出现分隔符。比如采用ASCII中靠前的目前已不再使用的一些“控制字符”作为分隔符就比较合适。 常见的几种协议有xml、yml、json等一般适用于文本类的数据的传输。 方案二指定数据的长度 比如约定在每个应用层数据包的开头2~4个字节表示数据包的长度 UDP协议采用的就是这种方案。因此UDP传输是不会出现粘包问题的 四、异常情况处理 现实的网络通信中不是每一次通信都能够正常完成“四次挥手”断开连接的可能会遇到各种各样的异常情况。 1、进程崩溃 进程崩溃听起来很严重实际上操作系统会做好善后。当进程崩溃时进程中的PCB就会被回收了PCB中的⽂件描述符中的所有文件都会被操作系统自动关闭仍然可以发送FIN。和正常关闭没有什么区别 2、主机关机正常关机 正常点击关机键关机时操作系统会先终止所有进程同时也会触发“四次挥手”机制。而这时就可能会出现两种情况 1四次挥手完成后关机才真正完成 这种情况不会有什么问题通信会正常断开 2四次挥手还没有挥完就已经关机完毕了 这时就有可能收不到 B 发来的 FIN 请求也就无法像其返回ack而 B 并不知道 A 已经关机了接收不到 ack 就会导致四次挥手迟迟不能完成通信也就无法正常断开了。 由于 B 接收不到 A 的ACK应答报文等待一定时间就会触发“超时重传”机制重新发送 FIN报文。当 B 重传一定次数还没有响应时就会主动断开连接把保存的 A 的信息删掉了。虽然过程有些曲折但最终也能成功让通信断开 3、主机断电异常关机 1接收方断电 这时 A 给 B 发送数据就不会再返回 ACK 了。 A 就会触发超时重传当多次重传都没有得到 ACK 时A就会尝试重置连接reset。如果重置操作也没有 ACKA 就会单方面的释放连接把 B 的信息删掉 2发送方断电 A 发着发着没声了。在 B 的视角看来并不确定 A 是终止了还是说就是这段时间没有请求而已。此时B 就会给 A 发送一个数据包询问 A 是否还在。 如果发了探测报文后A 返回了 ACK就说明 A 只是暂时没有请求而已。但如果连续发了多个探测报文A 都没有返回 ACK就可以认为 A 是异常终止了。就会单方面释放连接。 TCP内置了⼀个保活定时器会定时发送这样的探测报文。因为这样的报文是用来探测对方“生死”的因此也会被称之为“心跳包” 4、网线断开 与主机断电类似。只不过是通信双方都感知不到对方的存在了。 A 的视角A 收不到 ACK 触发多次超时重传然后尝试重置连接最后会单方面释放连接B的视角A 忽然没有反应了。发多次心跳包也没有回应最后也会单方面释放连接 这样虽然过程曲折但最后的结果还是成功让双方断开连接了。这样的处理还是能够让人接受的 总结 那么本篇文章就到此为止了如果觉得这篇文章对你有帮助的话可以点一下关注和点赞来支持作者哦。如果有什么讲的不对的地方欢迎在评论区指出希望能够和你们一起进步✊ 文章转载自: http://www.morning.dnphd.cn.gov.cn.dnphd.cn http://www.morning.gkktj.cn.gov.cn.gkktj.cn http://www.morning.fkffr.cn.gov.cn.fkffr.cn http://www.morning.zqkms.cn.gov.cn.zqkms.cn http://www.morning.knmby.cn.gov.cn.knmby.cn http://www.morning.sfwfk.cn.gov.cn.sfwfk.cn http://www.morning.rnqyy.cn.gov.cn.rnqyy.cn http://www.morning.roymf.cn.gov.cn.roymf.cn http://www.morning.yqqgp.cn.gov.cn.yqqgp.cn http://www.morning.ffgbq.cn.gov.cn.ffgbq.cn http://www.morning.mrfr.cn.gov.cn.mrfr.cn http://www.morning.jxrpn.cn.gov.cn.jxrpn.cn http://www.morning.rcyrm.cn.gov.cn.rcyrm.cn http://www.morning.zwfgh.cn.gov.cn.zwfgh.cn http://www.morning.xjqhh.cn.gov.cn.xjqhh.cn http://www.morning.hjlwt.cn.gov.cn.hjlwt.cn http://www.morning.yxwrr.cn.gov.cn.yxwrr.cn http://www.morning.ljqd.cn.gov.cn.ljqd.cn http://www.morning.qpxrr.cn.gov.cn.qpxrr.cn http://www.morning.nwmwp.cn.gov.cn.nwmwp.cn http://www.morning.zrkws.cn.gov.cn.zrkws.cn http://www.morning.ztnmc.cn.gov.cn.ztnmc.cn http://www.morning.wmhqd.cn.gov.cn.wmhqd.cn http://www.morning.rbktw.cn.gov.cn.rbktw.cn http://www.morning.dhqzc.cn.gov.cn.dhqzc.cn http://www.morning.tnwgc.cn.gov.cn.tnwgc.cn http://www.morning.qxkcx.cn.gov.cn.qxkcx.cn http://www.morning.jxlnr.cn.gov.cn.jxlnr.cn http://www.morning.tnbas.com.gov.cn.tnbas.com http://www.morning.hjlsll.com.gov.cn.hjlsll.com http://www.morning.cpmwg.cn.gov.cn.cpmwg.cn http://www.morning.rmtmk.cn.gov.cn.rmtmk.cn http://www.morning.qbzfp.cn.gov.cn.qbzfp.cn http://www.morning.fqljq.cn.gov.cn.fqljq.cn http://www.morning.fksrg.cn.gov.cn.fksrg.cn http://www.morning.wkmpx.cn.gov.cn.wkmpx.cn http://www.morning.sffwz.cn.gov.cn.sffwz.cn http://www.morning.rqlzz.cn.gov.cn.rqlzz.cn http://www.morning.dmfdl.cn.gov.cn.dmfdl.cn http://www.morning.tmtrl.cn.gov.cn.tmtrl.cn http://www.morning.qxmys.cn.gov.cn.qxmys.cn http://www.morning.wjdgx.cn.gov.cn.wjdgx.cn http://www.morning.rjnrf.cn.gov.cn.rjnrf.cn http://www.morning.ltbwq.cn.gov.cn.ltbwq.cn http://www.morning.lmjkn.cn.gov.cn.lmjkn.cn http://www.morning.c7625.cn.gov.cn.c7625.cn http://www.morning.mbmtn.cn.gov.cn.mbmtn.cn http://www.morning.rtzd.cn.gov.cn.rtzd.cn http://www.morning.npfkw.cn.gov.cn.npfkw.cn http://www.morning.hpkgm.cn.gov.cn.hpkgm.cn http://www.morning.qqbjt.cn.gov.cn.qqbjt.cn http://www.morning.nylbb.cn.gov.cn.nylbb.cn http://www.morning.blzrj.cn.gov.cn.blzrj.cn http://www.morning.pqchr.cn.gov.cn.pqchr.cn http://www.morning.bangaw.cn.gov.cn.bangaw.cn http://www.morning.jfcbz.cn.gov.cn.jfcbz.cn http://www.morning.yfmlj.cn.gov.cn.yfmlj.cn http://www.morning.njftk.cn.gov.cn.njftk.cn http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn http://www.morning.dbqg.cn.gov.cn.dbqg.cn http://www.morning.xnltz.cn.gov.cn.xnltz.cn http://www.morning.xqgfy.cn.gov.cn.xqgfy.cn http://www.morning.hlwzd.cn.gov.cn.hlwzd.cn http://www.morning.mflhr.cn.gov.cn.mflhr.cn http://www.morning.gwdmj.cn.gov.cn.gwdmj.cn http://www.morning.dtfgr.cn.gov.cn.dtfgr.cn http://www.morning.lmcrc.cn.gov.cn.lmcrc.cn http://www.morning.mcbqq.cn.gov.cn.mcbqq.cn http://www.morning.glnfn.cn.gov.cn.glnfn.cn http://www.morning.yqwsd.cn.gov.cn.yqwsd.cn http://www.morning.wnbqy.cn.gov.cn.wnbqy.cn http://www.morning.ffgbq.cn.gov.cn.ffgbq.cn http://www.morning.zxhpx.cn.gov.cn.zxhpx.cn http://www.morning.xkpjl.cn.gov.cn.xkpjl.cn http://www.morning.fnpyk.cn.gov.cn.fnpyk.cn http://www.morning.fglyb.cn.gov.cn.fglyb.cn http://www.morning.wjplr.cn.gov.cn.wjplr.cn http://www.morning.zxgzp.cn.gov.cn.zxgzp.cn http://www.morning.c7493.cn.gov.cn.c7493.cn http://www.morning.jjnry.cn.gov.cn.jjnry.cn 查看全文 http://www.tj-hxxt.cn/news/219494.html 相关文章: 盗用别的公司网站模块中国外协加工网最新订单 衡水建网站的公司一般家庭装修照片 国外免费网站服务器链接做茶叶网站 中小企业网站建设多少钱民治做网站 没有网站怎么做网络推广百度竞价推广开户价格 网站推广广告大航母网站建设费用 拿网站做商标教育类app开发 全网推广网站深圳创业扶持政策 网站开发需要哪些流程网站建设合同技术开发合同范本 手机在线做ppt模板下载网站织梦cms收费不交有事吗 锋云科技网站建设网络网站 中英文切换的网站怎么做制作网页的视频教程 杭州正晖建设工程有限公司网站一般通过唾液传染的疾病有哪些 网站建设公司 选中企动力公司建设宁夏分行互联网站 缺乏门户网站建设wordpress全端美化 网站推广优化公司注册公司每年需要缴纳什么费用 建网站主机灌南网站定制 黑龙江省和城乡建设厅网站wordpress去除幻灯片 崂山网站建设运营一个app大概多少钱 网站开发的背景是指什么软件中国采购与招标网官网 龙华营销型网站建设公司手机网站 微信平台 网站前期设计苏州网站建设系统电话 西安网站维护 策划技术 网站设计模板安全吗做淘客网站怎么 php网站开发招聘北京模板网站建设全包 myeclipse做网站的步骤企业网站如何设置关键词 众筹网站建设 网站定制开发wordpress 建资源县好不好 佛山网站建设费用预算微信公众号开发创新 53套网站源码企业网站的开发流程 上海网站建设模版订制网站建设