教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 工程科技> 信息与通信> 通信网络小论文

通信网络小论文

上传者:庞科
|
上传时间:2015-05-04
|
次下载

通信网络小论文

TCP传输的可靠性

【摘要】:传输控制协议(TCP)是为了在不可靠的互联网上提供一个可靠的端到端的、面向字节流连接而设计的,它为IP服务增加了面向连接和可靠性的特点。TCP提供了传输层几乎所有的功能,保证数据传送可靠、按序、无丢失和无重复。

【关键词】:面向连接 端到端 字节流 可靠性

【Abstract】:Transmission control protocol (TCP) is designed for providing a reliable end-to-end,connected with the byte stream oriented for the unreliable Internet.It adds the characteristics of connection-oriented and reliability for IP service.TCP provides nearly all of the transport layer functions, to ensure reliable data transmission, sequential, no loss and no repeat.

【Key Words】:Connection-oriented end-to-end byte stream reliability

一、引言

UDP是一个简单的协议,是实现最低传输要求的传输层协议。但是对于大多数Internet

应用,更需要可靠、按序递交的传输层协议。TCP协议具有面向连接和可靠性的特点,它使用端口号来完成进程到进程的通信。TCP为应用层提供全双工服务,所有连接都是点到点的。目前许多流行应用程序都采用了TCP,如Telnet、FTP、SMTP等,而这些应用通常是用户进程。

二、TCP的连接管理与释放

TCP是面向连接的传输层协议。在每一次数据传输之前首先要在通信双方建立一条连

接,即在源进程和目的进程之间建立一条虚路径。通过两个过程完成:建立连接和释放连接。

1、建立连接

TCP以全双工方式传送数据。在任何数据传送之前,要使每一方能确知对方的存在。

TCP协议中建立连接采用三次握手(three-way handshake)的方式实现。

内容需要下载文档才能查看

2、连接释放

由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成

它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这

一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的

一方将执行主动关闭,而另一方执行被动关闭。

TCP连接释放需要4次握手。

内容需要下载文档才能查看

三、流量控制

TCP采用可变大小的滑动窗口协议进行流量控制。TCP连接的每一方都有固定大小的

缓冲空间用来暂存从应用程序传递来并准备发送的数据。滑动协议窗口协议定义了在缓存上的一个窗口。TCP发送数据的大小由窗口定义。双方为每个连接各使用一个窗口。

内容需要下载文档才能查看

在TCP报文段首部的窗口大小字段的值就是当前给对方设置的窗口值。 发送窗口在连

接时由双方商定,在通信过程中,接收方可根据自己资源情况,随时动态调整。如果网络发生拥塞,实际窗口可能变小。

当窗口的大小为0时,发送端不能再发送数据,但是有两种例外情况:(1)紧急数据

可以发送;(2)发送方想让接收方重新宣布下一个期望的字节和窗口大小,则可以发送一个字节的数据段。

四、差错控制

TCP差错控制包括检测受到损伤的报文段、丢失的报文段、失序的报文段和重复的报

文段,以及检测出差错后纠正差错,它除了使用检验和,还使用确认技术和超时机制。

1、丢失或受到损伤的报文段

TCP的每一个报文段都包括校验和字段,如果检查出某个报文段受到损伤,则接收端

TCP就丢弃这个报文段。TCP没有否认机制,若某报文段在超时之前没有被确认,则被认为受到损伤或已丢失,发送端重传这个报文段。

2、重复的报文段

当超时截止期到但还没有收到确认报文时,发送端就会重发这个报文段。在接收端,当

它收到的这个报文段序号与已接收到的另一个报文段序号相同时,那么接收端简单丢弃这个

报文段。

3、失序的报文段

TCP报文段封装在IP数据报中。每一个IP数据报进行独立的路由选择。TCP报文段可

能失序到达。接收端TCP处理失序报文段的方法是不予确认,只有当被确认的字节之前的

所有数据都已经接收到,才发送确认报文段。

如果确认延迟了,在发送端TCP的失序报文段的计时器截止期到,则重新发送这个报

文段。重复的报文将被接收端TCP丢弃。

4、丢失确认

在TCP的确认机制中,使用累计确认系统。每一个确认报文段证实了一直到由确认号

指明的字节为止的所有字节都已经收到。

TCP发送方使用超时机制来恢复报文段丢失问题。

TCP使用累计确认系统。

五、定时器管理

1、重传定时器

为了实现TCP协议,对每个连接TCP管理4个不同的定时器。

重传定时器是用于处理重传时间的。重传时间是指等待某个报文段确认的时间。

重传时间的确定与TCP连接的往返时间RTT有关。

重传时间可基于往返时间实现动态化调整。

TCP不能对所有连接使用相同的重传时间。如重传时间太短,会导致对正在传输途中

报文段的重传,增加网络负荷。如设置太长,一旦分组丢失,会使网络传输效率降低。TCP

采用动态重传时间策略。

TCP每发送一个报文段后就启动重传定时器。如果在定时器超时前收到确认报文,定

时器被停止。如果超时还没有收到确认报文,则报文重传,定时器复位。

用于下一个报文段重传时间计算的RTT值修正:

RTT=α×(前一个RTT)+(1- α) ×(当前的RTT)

α:修正因子(0 ≤ α < 1)

Karn修正算法:

重传时间=βRTT

Karn提出的解决方法是:当一个超时和重传发生时,在重传数据段的确认报文最后到

达前,不更新RTT,且每重传一次,超时时间加倍。

决定了以前估计的RTT所占的权重。每次进行新测量时,RTT将得到更新。每个新RTT

的90%来自前一个RTT,10%取自当前。

2、持续定时器

为了防止死锁情况发生,TCP对每一个连接使用一个持续定时器,当发送端TCP收到

窗口大小为0的确认报文段时就启动它。如果持续定时器超时,发送端就给接收端发送一个

只有一个字节数据的探测报文段。

接收端对探测报文段的响应必须重传确认报文段,以将窗口大小告诉发送方。如果窗口

大小非0,就可以发送数据了;如果还为0,则持续定时器再次设置,直至收到窗口大小非

0的确认报文。

3、保活定时器

保活定时器用来防止一个连接较长时期的空闲。保活功能就是试图让服务器端能检测到

这种半开放的连接。

在大多数的实现中,都是为服务器设置保活计时器。 6

每当服务器收到客户端的信息,将定时器复位。超时常设为2h。如在连接空闲2h后,

服务器发送探测报文段,查看客户端是否仍存在。

保活功能主要为服务器应用进程提供,服务器可以获知客户是否崩溃、关机或重启了。

4、时间等待定时器

每个连接使用的最后一个定时器是时间等待定时器。在关闭连接时该连接处于

Timed_Wait状态中。

时间等待定时器的值通常设置为一个报文段预计的最大生存时间的两倍。

六、结语

综上所述,TCP通过下列方式来提供可靠性:

1、应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生

的数据报长度将保持不变。

2、当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能

及时收到一个确认,将重发这个报文段。

3、当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,

通常将推迟几分之一秒 。

4、 TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传

输过程中的任何变化。如果收到段的检验和有差错,TCP将丢弃这个报文段和不确认收到

此报文段。

5、既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文

段的到达也可能会失序。如果必要,TCP将对收到的数据进行重新排序,将收到的数据以

正确的顺序交给应用层。

6、既然IP数据报会发生重复,TCP的接收端必须丢弃重复的数据。

7、TCP还能提供流量控制。TCP使用的流量控制协议是可变大小的滑动窗口协议。

参考文献

[1]张延双,张建标,王全民,TCP/IP协议分析及应用,北京:机械工业出版社,2007

[2]毛京丽,董跃武,现代通信网(第3版),北京:北京邮电大学出版社,2013

[3](美)W.R.斯蒂文思(W.Richard Stevens)著,任守奎等译,TCP/IP详解(第一卷,协议),

北京:北京大学出版社,1999

[4](美)伯莱克著,良友翻译组译,TCP/IP 及相关协议,北京:机械工业出版社,1998

[5](美)尚穆格姆(Ramadas Shanmugam)等著,尹浩琼,李剑等译,TCP/IP详解,北京:电子

工业出版社,2003

[6]徐宇杰,TCP/IP协议深入分析,北京:清华大学出版社,2009

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注视频

冀教版小学数学二年级下册第二单元《余数和除数的关系》
沪教版八年级下册数学练习册21.4(1)无理方程P18
七年级英语下册 上海牛津版 Unit5
北师大版数学 四年级下册 第三单元 第二节 小数点搬家
北师大版八年级物理下册 第六章 常见的光学仪器(二)探究凸透镜成像的规律
外研版英语七年级下册module3 unit1第二课时
沪教版牛津小学英语(深圳用) 四年级下册 Unit 7
沪教版牛津小学英语(深圳用) 四年级下册 Unit 12
第五单元 民族艺术的瑰宝_16. 形形色色的民族乐器_第一课时(岭南版六年级上册)_T3751175
冀教版小学数学二年级下册第二单元《有余数除法的整理与复习》
沪教版牛津小学英语(深圳用) 五年级下册 Unit 7
飞翔英语—冀教版(三起)英语三年级下册Lesson 2 Cats and Dogs
苏科版数学八年级下册9.2《中心对称和中心对称图形》
冀教版小学英语五年级下册lesson2教学视频(2)
沪教版八年级下册数学练习册一次函数复习题B组(P11)
每天日常投篮练习第一天森哥打卡上脚 Nike PG 2 如何调整运球跳投手感?
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
北师大版数学四年级下册第三单元第四节街心广场
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣.mp4
19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T502436
8.练习八_第一课时(特等奖)(苏教版三年级上册)_T142692
冀教版小学数学二年级下册第二单元《有余数除法的竖式计算》
3月2日小学二年级数学下册(数一数)
第12章 圆锥曲线_12.7 抛物线的标准方程_第一课时(特等奖)(沪教版高二下册)_T274713
外研版英语三起5年级下册(14版)Module3 Unit2
外研版英语三起6年级下册(14版)Module3 Unit2
沪教版牛津小学英语(深圳用) 六年级下册 Unit 7
精品·同步课程 历史 八年级 上册 第15集 近代科学技术与思想文化
冀教版小学数学二年级下册第二单元《租船问题》