- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第十二章:传输协议与应用
传输层
传输层作用是什么?第二章学习过,传输层是实现端到端的连接,端到端是什么概念呢?比如:一个人用QQ聊天,网络层识别IP地址,能够将信息发送到正确的主机,而主机应该使用什么应用协议接收这个信息呢?这个功能就需要传输层完成。
传输层主要有TCP和UDP协议。
传输层概述
传输层的功能
1:网络层协议只提供了点到点的连接,而传输层协议提供一种端到端的服务,即应用进程之间通信。
2:网络层协议提供不可靠,无连接和尽力投递的服务,因此,如果对于可靠性要求很高的上层协议,就需要在传输层实现可靠性保障。
传输层协议主要有
TCP (Transmission Control Protocol)
UDP (User Datagram protocol )
TCP即传输控制协议,是一个可靠的、面向连接的协议。它允许网络间两台主机之间无差错的信息传递,TCP协议还进行流量控制,以避免发送过快而发生拥塞。不过这一切对用户都是透明的。
UDP即用户数据报协议,它采用无连接的方式传送数据,也就是说发送端不关心发送数据是否到达目标主机,数据是否出错等,收到数据主机也不会告诉发送方是否收到了数据,它的可靠性由上层协议来保障。
这两个协议针对不同网络环境实现数据传输。各有优缺点,面向连接的TCP协议效率较低,但可靠性高,适用于网络链路好或可靠性要求高的环境,UDP面向非连接,不可靠,所以效率极高,常用语一些实时业务,也用于一些对于差错不敏感的应用。
TCP协议
它支持多种网络应用程序,TCP对下层服务没有多少要求,它假定下层只能传送不可靠的数据包服务,它可以在多种硬件构成的网络上运行。
TCP工作原理
TCP的封装格式
连接与断开
流量控制
拥塞控制
差错控制
计时器
TCP封装格式
TCP是面向连接的可靠协议,TCP协议为实现可靠传输而提供了一系列方法和手段。
TCP的数据段采取编号的方式保证数据正确顺序。
TCP数据段被封装在IP数据包中来完成传输,而IP数据包经过的路径有可能不同,那么IP数据包到达时可能会失去原有顺序,因而到达的TCP数据段也可能会失序,为了解决,TCP对数据段进行编号,对接收到的数据进行重新排序,然后正确的顺便交给应用程序。其次,由于到达的IP数据包可能发生重复,TCP接收端必须有丢弃重复数据的功能。
TCP连接的每一方都有固定大小的缓冲空间,这就要求TCP发送端只能发送接收端缓冲区能接收下的数据,这防止较快的主机导致较慢的主机缓冲区溢出。
TCP首部数据结构
0 15 16 31位 源端口号 目标端口号 32位序列号
32位确定号 4位首部长度
保留(6位)
URG
ACK
PSH
RST
SYN
FIN
16位窗口大小 16位校验和 16位紧急指针 可选项 数据 0-15 这16位成为源端口号;它是TCP数据段发送方进程对应的端口号,这个端口号是由发送方进程产生的随机数,它唯一地标识了发送端的一个进程。
16-31 这16位目标端口号,它对应的是接收端的进程,接收端收到数据段后,根据这个端口号来确定把数据送给那个应用程序的进程。这样才能保证数据到达正确的地方。
第2行是32位的序列号,提供0-2的32次方-1范围内的一个数字,TCP从应用程序取得数据后,会根据实际传输能力把数据划分成不同的数据段。TCP用这个数字来给数据段打上标记,当数据到达目的后,接收端会按照这个序列号把数据重新排列,保证数据正确性
3行是32位确认序列号,它提供0-2的32次方-1范围内的一个数字。被分成许多数据段的数据虽然被做了标记,但不能保证这当中的所有段都会到达目的地,然后对接收端来讲,只要有一个段没接收到,就不能保证数据的正确性,使用确认号可以更好的解决这个问题。
4行分为4个部分
1:4位首部长度,可以确定首部数据结构字节长度
2:6个保留位,作为今后扩展功能用,现在还没有使用到。
3:6个控制位,这6位有很重要的作用,TCP连接、传输和断开都是受这6个控制位的指挥。
GUR:紧急指针有效位,它和第5行的16位紧急指针配合使用,当URG=1时,TCP根据16位紧急指针确定紧急数据的最后一个字节的位置。这样接收端就可以优先准确快速地获取紧急数据,确保数据的即使到达。
ACK:只有当ACK=1时确认序列号字段才有效。当ACK=0时,确认号无效。
PSH:标志位为1时要求接收方尽快将数据段送达应用层,这个标志位是为了加快特殊数据的处理速度。
PST:值为1时通知重新建立TCP连接。
SYN:同步序列号。TCP需要建立连接时将这个位置为1.
FIN:发端完成发送任务位,当TCP完成
您可能关注的文档
最近下载
- 2025年公务员多省联考《申论》真题试题答案解析(湖南省市卷).pdf VIP
- T∕CECS 10039-2019 绿色建材评价 墙面涂料(可复制版).pdf
- 2013款别克昂科拉用户使用手册.pdf VIP
- 通化(2011)1207双线路腕臂.pdf VIP
- 《公司研发投入与公司价值之间关系研究文献综述》2400字.doc VIP
- 高血压的护理(共22张PPT).pptx VIP
- 2025金融监管局考试真题及答案.doc VIP
- 通化(2010)1042双线路腕臂.pdf VIP
- 空间灵活性如何通过设计提升空间的灵活性与多功能性.pptx VIP
- 叁化(2008)1168多线路腕臂构造安装图.pdf VIP
原创力文档


文档评论(0)