当应用进程把数据传送到TCP的发送缓存后,剩下的发送任务就由TCP来控制了。可以用不同的机制来控制TCP报文段的发送时机。例如,第一种机制是TCP维持一个变量,它等于最大报文段长度MSS。只要缓存中存放的数据达到MSS字节时,就组装成一个TCP报文段发送出去。第二种机制是由发送方的应用进程指明要求发送报文段,即TCP支持的推送(push)操作。第三种机制是发送方的一个计时器期限到了,这时就把当前已有的缓存数据装入报文段(但长度不能超过MSS)发送出去。
但是,如何控制TCP发送报文段的时机仍然是一个较为复杂的问题。
例如,一个交互式用户使用一条TELNET连接(运输层为TCP协议)。假设用户只发1个字符。加上20字节的首部后,得到21字节长的TCP报文段。再加上20字节的IP首部,形成41字节长的IP数。据报。在接收方TCP立即发出确认,构成的数据报是40字节长(假定没有数据发送)。若用户要求远地主机会送这一字符,则又要发回41字节长的IP数据报和40字节长的确认IP数据报。这样。用户仅发1个字符时线路上就需传送总长度为162字节共4个报文段。当线路宽并不富裕时,这种传送方法的效率的确不高。因此应适当推迟发回确认报文,并尽量使用捎带确认的方法。
深正互联,专业的网站建设公司
在TCP的实现中广泛使用Nagle算法。算法如下:若发送应用进程把要发送的数据逐个字节地送到TCP的发送缓存,则发送方就把第一个数据字节先发送出去,把后面到达的数据字节都缓存起来。当发送方收到第一个数据字符的确认后,再把发送缓存中的所有数据组装成一个报文段发送出去,同时继续对随后到达的数据进行缓存。只有在收到对前一个报文段的确认后才继续发送下一个报文段。当数据到达较快而网络速率较慢时,用这样的方法可明显地减少所用的网络带宽。Nagle算法还规定,当到达的数据已达到发送窗口大小的一半或已达到报文段的最大长度时,就立即发送一个报文段。这样做,就可以有效地提高网络的吞吐量。
另一个问题叫做糊涂窗口综合征(silly window syndrome)[RFC 813],有时也会使TCP的性能变坏。设想一种情况:TCP接收方的缓存已满,而交互式的应用今晨过一次只从接收缓存中读取1个字节(这样就使接收缓存空间仅腾出1个字节),然后想发送方发送确认,并把窗口设置为1个字节(但发送的数据报是40字节长)。接着,发送方又发来1个字节的数据(请注意,发送方发送的IP数据报是41字节长)。接收方发回确认,仍然将窗口设置为1个字节。这样进行下去,是网络的效率很低。

猜你喜欢
联络方式:
深圳 · 龙岗 · 大运软件小镇22栋201
电话:400 1828 580
邮箱:szhulian@qq.com



-
4个关键词总结,如何把用户体验做到极致?
上周五约了朋友吃晚饭,提前约的顺风车。由于堵车,司机到了办公区的北门。经过沟通,我从定位地点过去找他。
-
【微信支付】为什么商城网站突然微信支付不能使用了?
互联网支付技术和安全哪家强?估计很多人会说支付宝,腾讯的微信支付,对比支付宝,那就显得弱爆了。现实中,很多做开发的程序员都喜欢搞支付宝支付接口,都不喜欢搞微信支付接口,为嘛??因为腾讯总是闲的蛋疼,动不动就修改路径规则...
-
深圳网站建设多少钱是合理的?
企业官网是企业必须的门户,是一个企业的形象展现和发布的平台,企业做网络营销,互联网是一个渠道,而网站是一个工具,需要借助互联网的优势,把企业网站推向目标客户眼前,过程看着比较简单,那么企业网站建设多少钱呢...
-
【通知】关于备案信息存量核查工作的相关通知
为贯彻落实《中华人民共和国反恐怖主义法》《中华人民共和国网络安全法》《互联网信息服务管理办法》《非经营性互联网信息服务备案管理办法》等法律法规和规章的要求...
-
企业做一个电商平台网站能带来哪些效益
搭建电商平台网站能给企业带来什么效益,随着时代不断的发展,再这个电商盛行的时代下,电商平台网站建设变得尤其重要。电商平台建设的好坏,会直接影响到企业未来电子商务的收益。如果你的企业正在筹备建设电商平台网站;深正互联为你整理的这份电商平台网站建设方案,必定能为你带来帮助。