- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
技术报告
XINU的TCP实现中的一些问题
清华大学计算机系 章淼
1999年4月11日
简介:
本文指出了XINU操作系统中TCP实现的一些问题,描述了发现错误的过程,分析了错
误产生的原因,并提出了解决的方法。
关键词:
TCP的实现 XINU
一、背景介绍
TCP(Transmission Control Protocol)虽然在1981年就由RFC793提出了标准,但是在目
前TCP众多的实现版本中仍然存在着大量的问题。即使是已经相当成熟的BSD版本,最近也有
人指出了问题[Allman97]。这种现象是由TCP协议本身的复杂性所决定的。由于TCP协议在目
前的Internet网的TCP/IP协议族中所处的重要地位,发现和解决TCP实现中的错误,对提高
网络传输的可靠性和效率具有十分重要的意义。为此IETF(the
Force)有专门的TCP Implementation Work Group,研究TCP实现的改进和其中存在的问题,
在1999年3月的RFC2525(Known TCP Implementation Problems)[RFC2525]指出了一些在TCP
实现中经常出现的错误,希望减少由于实现协议错误而引起的网络中的不必要的传输和连接
的错误,以保证整个Internet的稳定性。
XINU操作系统是一个以教学为目的开发的操作系统。在Douglas E. Comer的一系列关于
操作系统和网络的教材中都使用XINU作为讲解的范例。XINU操作系统出于教学的目的,具有
较好的模块性和可读性,是研究网络和操作系统具体实现的一个很好的对象。在Douglas E.
Comer所著的《Internetworking with TCP/IP》的第二卷《Design
Internals》中对XINU操作系统中的网络实现进行了详细的讲解。这本教材被公认为网络实
现方面的经典教科书。
为了深入的了解TCP实现中的细节,并进行TCP性能上的研究,我们将XINU中的TCP实现
剥离出来,在Sun Solaris系统上实现的调试环境上进行了调试和测试,发现在XINU的TCP
实现中存在一系列的问题。其中有些问题是相当严重的,甚至会导致正常传输的失败。
XINU中的错误在一些互连网站上也可以见到(见[bugs.html])。本文提出的问题,大
部分在这些网站中没有出现过。希望能够对加深对TCP的理解有所帮助。
二、问题的发现、分析和解决
2.1 MSS协商上的错误
2.1.1发现
在TCP建立连接的过程中,连接的双方会对MSS(Maximus Segment Size,最大段长)进
行协商。我们发现,虽然在SYN报文的选项中,我们指定了最大段长为1460字节,但对截取
的报文的分析发现,实际的使用的MSS为1440字节。
2.1.2分析
通过对代码的分析,我们发现XINU在MSS的理解上存在问题。在RFC879[RFC879]中指出,
MSS只是段内数据的字节数,而不包括TCP报头或者IP报头。而XINU误认为MSS是TCP报文的总
长度,于是它在计算每个报文能够发送的最大数据量时,又减去了TCPHLEN(20个字节)。这
个错误虽然不是致命的错误,但是会降低TCP传输的效率,因为每个报文所能携带的数据量
减少了。
2.1.3解决
这个错误只要改变程序中计算MSS的一行代码就可以了。
2.2重传时钟管理上的问题
2.2.1发现
为了检验TCP实现的健壮性,我们在试验中指定了丢包率,由TCP的底层-IP层按丢包率
随机的丢弃发送的报文。在试验中,我们发现,有时传输回莫名奇妙的中断,明明数据没有
传完,但是传送过程却结束了,连接也没有关闭。通过大量的分析,我们发现XINU的实现中
在重传时钟的管理上存在巨大的问题,而这个问题是致命的。
2.2.2分析
为了说明问题,我们首先对XINU的重传机制作一个简单的介绍。为了保证数据的可靠传
输,TCP协议[RFC793]要求,如果数据在传送过程中出现丢失的情况,TCP要负责数据的重传。
这里使用了重传时钟的概念,重传时钟的大
您可能关注的文档
- 《四库全书》的形成和主要内容及其历史地位.pdf
- 2009-2010高等数学(A2)--A卷评分标.pdf
- A FRAMEWORK FOR ANALYZING THE POTENTIAL BENEFITS OF INTERNET MARKETING网络营销潜在效益分析框架.pdf
- BS-EN-13726-4-2003 非活性医疗器械.主要伤口敷料的试验方法.第4部分:一致性.pdf
- CORP TYPE HTC HEAT TRANSFER CEMENT公司型HTC导热水泥.pdf
- Functional Verification of a Multiple-issue, Out-of-Order, Superscalar Alpha Processor—The DEC Alpha 21264 Microprocessor微处理器的多问题、无序、超标量Alpha处理器的功能验证.pdf
- H.264码率控制算法分析.pdf
- 2002年专四真题考题.pdf
- Interpretation of Gas-In-Oil Analysis Using New IEC Publication 60599 and IEC TC 10 Databases使用新IEC出版物60599和IEC TC 10数据库解释油中气体分析.pdf
- POLSC201 Sub subunit 1.4.3 Justice as a Virtue FINAL正义作为美德最终版.pdf
- 实验室危废随意倾倒查处规范.ppt
- 实验室危废废液处理设施规范.ppt
- 实验室危废处置应急管理规范.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第20课时 中国的地理差异.ppt
- 初中地理中考总复习精品教学课件课堂讲本 基础梳理篇 主题10 中国的地理差异 第21课时 北方地区.ppt
- 危险废物处置人员防护培训办法.ppt
- 危险废物处置隐患排查技术指南.ppt
- 2026部编版小学数学二年级下册期末综合学业能力测试试卷(3套含答案解析).docx
- 危险废物处置违法案例分析汇编.ppt
- 2026部编版小学数学一年级下册期末综合学业能力测试试卷3套精选(含答案解析).docx
原创力文档


文档评论(0)