会员登陆
注册会员
首页
电工知识
机械维修
仪器仪表
工业控制
试题总结
安全用电
电力配电
电工配件
导航
本站搜索
电工知识
机械维修
仪器仪表
工业控制
试题总结
安全用电
电力配电
电工配件
家电弱电
业界资讯
通信技术
你的位置:
首页
>
通信技术
>
计算机网络
TCP协议
2016-10-30 14:23:04 | 112人围观 |
评论:
1.TCP的特点
(1)TCP是面向连接的传输层协议,应用程序在使用TCP协议之前,必须先建立TCP连接。在传输完数据后,必须释放已经建立的TCP连接。应用进程之间的通信就好像打电话,通话前要先拨号建立一条线路连接,通话结束后要挂机释放连接。
(2)每一条TCP连接只能有两个端点,即TCP连接只能是点对点的。
(3) TCP提供可靠交付的服务。也就是说,通过TCP传输的数据是无差错、不丢失、不重复并且按序到达。
(4) TCP提供全双工通信。TCP允许通信双方的应用进程在任何时候都能发送数据。TCP连接的两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据。在发送时,应用程序把数据传送给TCP缓存后,就可以做自己的事,而TCP在合适的时候把数据发送出去。在接收时,TCP把收到的数据放入缓存,上层的应用进程在合适的时候读取缓存中的数据。
(5)面向字节流。TCP中的字节流(stream)指的是流入到进程或从进程流出的字节序列。“面向字节流”的含义是:虽然应用程序和TCP的交互是一次一个数据块(大小可以不等),但TCP把应用程序交下来的数据看成是一连串的无结构的字节流。TCP并不知道所传送的字节流的含义。TCP不保证接收方应用程序所收到的数据块和发送方应用程序所发出的数据块具有对应的大小关系。但接收方所收到的字节流必须和发送方所发出的字节流完全一样。
2.TCP的连接
TCP把连接作为最基本的抽象,TCP的许多特性都与面向连接的这个基本特性有关。因此,我们要特别介绍TCP的连接。
在TCP的特点中我们讲过,每一条TCP连接有两个端点。那么,TCP连接的端点是什么呢?这个端点指的不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口。TCP连接的端点叫做套接字(socket)或插口。根据RFC793的定义:端口号拼接到IP地址即构成了套接字。因此套接字的表示方法是在点分十进制的IP地址后面写上端口号,中间用冒号或逗号隔开。例如,若IP地址是192.3.4.5,而端口号是80,那么得到的套接字就是(192.3.4.5:80)。所以套接字可以表示为
套接字socket=(IP地址:端口号)
每一条TCP连接唯一地被通信两端的两个端点(即套接字)所确定。因此TCP连接可以表示为:{socket1,socket2}={(IP1:port1),(IP2:port2)}
这里IP1和IP2分别是两个端点主机的IP地址,而port1和port2分别是两个端点主机中的端口号。套接字是个很重要的概念,在网络编程中有着非常重要的作用。
总之,TCP连接就是由协议软件所提供的一种抽象。有时我们也可以说,在一个应用进程与另一个应用进程之间建立了一条TCP连接,但一定要记住:TCP连接的端点是套接字,同一个IP地址可以有多个不同的TCP连接,而同一个端口号也可以出现在多个不同的TCP连接中。
3.停止等待协议
前面我们介绍过TCP发送的报文段是交给IP层传送的。但IP层只能提供尽最大努力服务,也就是说,TCP下面的网络所提供的是不可靠的传输。因此,TCP必须要有适当的措施保证两个传输层间的通信是可靠的。停止等待协议和连续ARQ协议就是两个这样的措施。
在理想的传输条件下,即如果传输信道不产生差错,也不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据,那么传输层不需要采取任何措施就能保证数据的可靠传输。可是实际的网络传输条件都不是理想的条件,所以传输层就要采用一些可靠的传输协议。停止等待协议就是一个最简单的可靠传输协议。下面分四种情况说明这种协议。为了讨论问题的方便,我们仅考虑A发送数据,而B接收数据并发送确认的情况。
所谓“停止等待”就是发送方每发送完一个分组就停止发送,等待对方确认。在收到对方确认后再发送下一个分组。参见图1
4.连续ARQ协议
这里简单地介绍连续ARQ协议,对理解滑动窗口协议打下基础。
我们知道前面介绍的停止等待协议确实简单,容易实现,但对信道的利用率太低了,不适合在实际应用中使用。因此就提出了连续ARQ协议,原理和停止等待协议相同,但提高了信道的利用率。我们通过图2来说明连续ARQ协议的工作原理。
图2 连续ARQ协议工作原理
连续ARQ协议规定,发送方和接收方都要维持一个发送或接收窗口,窗口的大小通过协商确定为N(这里N=5)个分组的空间。发送方每收到一个确认就将发送窗口向前滑动一个分组的位置,如图中所示,现在可以发送第6个分组了。接收方一般都是采用累积确认的方式。这就是说,接收方不必对收到的分组逐个发送确认,而是可以在收到几个分组后,对按序到达的最后一个分组发送确认,这样就表示:到这个分组为止的所有分组都已经正确收到了。
累积确认的方法容易实现,即使确认丢失也不必重传。但缺点是不能向发送方反映出接收方已经正确收到的所有分组的信息。
5.TCP报文段首部格式
TCP虽然是面向字节流的,但TCP传送的数据单元却是报文段。一个TCP报文段分为首部和数据两部分,TCP的全部功能都在首部中的字段体现出来。只有理解了TCP首部各字段的作用才能更好地掌握TCP的工作原理。TCP的首部格式见图4-15。
TCP报文段首部的前20个字节是固定的,后面可能还有4N(N=1,2,3…)字节的选项(根据需要而定)。因此TCP首部的最小长度是20字节。
6.TCP流量控制
人们总是期望数据在网络上传输的越快越好,但如果发送方把数据发送得太快,接收方就可能来不及接收处理这些数据,当缓存空间装满,数据溢出,这样就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收处理。
利用滑动窗口机制就可以很方便地在TCP连接上实现对发送方的流量控制。
7.TCP拥塞控制
拥塞控制与流量控制是两个不同的问题,但是有比较紧密的联系,希望通过这节的学习能够理解拥塞控制和流量控制的区别和联系。
计算机网络中能给数据提供服务的设备和资源称为网络资源。如带宽、交换节点中的缓存和处理机等。若网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就会变坏,这种情况就叫做拥塞(Congestion)。所以可以认为拥塞发生的条件就是网络可用资源小于网络的需求资源。若网络中有许多资源同时呈现供应不足,则网络的性能就会明显变坏,甚至出现瘫痪。
网络拥塞是个非常复杂的问题,它一般是由很多因素引起的,但在某一方面增加某些资源一般是不能解决问题的。例如,当某个结点缓存的容量太小时,到达该结点的分组因缓存空间不够而不得不丢弃。现在设想将该结点的缓存容量扩展到非常大。于是凡到达该结点的分组均可在结点的缓存队列中排队,不受任何限制。但由于输出链路的带宽和处理机的速度并未提高,因此在这队列中的绝大多数分组的排队等待时间将会大大增加,结果上层应用进程只好把它们进行重传(因为早就超时了)。这样反而会进一步加剧网络的拥塞程度。由此可见,仅从某一方面增加网络资源并不能提高网络性能,还有可能加剧网络的拥塞。
流量控制和拥塞控制的关系
拥塞控制与流量控制的关系密切,它们之间也存在着一些差别。所谓拥塞控制就是防止更多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。拥塞控制是一个全局性的过程,涉及到网络中所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。
而流量控制是指点对点通信量的控制,是个端到端的问题,接收端控制发送端。流量控制所要做的就是抑制发送端发送数据的速率,以便接收端来得及接收。
拥塞控制的方法在1999年公布的因特网建议标准RFC2581定义了四种算法,它们分别是慢开始、拥塞避免、快重传和快恢复。具体算法参见有关资料。
< 上一篇
TCP/IP传输层
下一篇 >
UDP协议
标签:
相关内容推荐:
2016-11-02
TCP协议与UDP协议
2016-10-30
TCP协议
变频器内部主电路简单分析
变频器选择注意事项
变频器的性能指标
低压变频器如何选型?低压变频器选型
安川变频器故障显示方式
变频器怎样接线?变频器接线端子说明
变频器控制的电机按停止按钮时,电机
变频器的输出功率该如何选择?
三菱变频器复位方法
变频器的频率为何调不上去?如何解决
推荐阅读
什么都不会可以学习电工吗?电工难学吗?电工应该怎么样入门?电工应该怎么样学精通?
安防门禁系统常见故障及维修方法
智能门锁用什么电池好?智能门锁电池用碳性好还是碱性好?常见5号AA电池选购指南
装修时零线火线接反了怎么办?老电工教您一招三分钟搞定
小型断路器上标数字都表示什么?小型断路器参数解析
电工经验分享:几个小窍门让你工作起来得心应手
万用表判断单相电机好坏方法图解
家装配电箱接线是否每个回路的零线都要接在零线排上?
电工入门到底该怎么样学习?电工入门应该五步走
电热水壶内部电路原理图及故障维修方法
电控系统运行过程中发生反复切换/
交流电中的有效电流是如何定义的?
什么是相电流和线电流
电机二次启动怎么接线?电动机星三
电气图分类有哪几类?电气图的十二大
单相功率和三相功率的测量方法及电
电气自锁和互锁的区别在哪里?怎么实
电工奇才对消毒机电气控制电路改造
已知设备功率,确定导线截面时需要考
解开面纱看本质 充电宝节电器骗术
最热文章
安装监控需要多少钱?人工费怎么算?安装监控收费标准
电容的公式
电热水壶内部电路原理图及故障维修方法
2020年电工职业资格证取消了?电工职业资格证退出国家目录
7812引脚图及参数,7812稳压电路图
雅迪电动车控制器接线图解读
plc编程工资多少一个月
汽车电动车窗的组成和电路图工作原理图解
新版电工证是不是只有电子版?电工证二维码能造假吗?新二维码电工证照图片
漏电保护器图形符号和文字符号
东芝电梯故障代码说明
汽车空调是耗油还是电
汽车发电机会一直发电吗?
几种易于在工程中使用的算法入门
电力电缆故障检测及故障点定位方法
电工最害怕的味道!
这样的导线发热原来不用换导线就能
西门子840D报警文本的制作
西门子828D一次垂直补偿功能调试
汽车曲轴位置传感器作用原理与识别
统计
全站搜索