- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GPRS数据传输设计 十一 TCP协议
GPRS数据传输设计 十一 TCP协议
GPRS数据传输设计(十一)TCP协议2011-03-09 14:38GPRS数据传输设计(十一)TCP协议TCP协议处于TCP/IP协议簇的传输层,它可以为网络提供有序可靠的分组数据交换服务。TCP在不可靠的分组传输网络上提供可靠的进程间通信机制,它具有分组丢失检测、自动重传、错误处理等保证可靠有序传输的功能。TCP不对高层协议的数据产生影响,它将来自高层的数据看成不间断的字节流,TCP为流中的每一个字节都分配一个序列号,在与对等的TCP交换报文时,TCP给这些段附加的控制信息包括该段中第一个字节的序列号以及该段中所有数据字节的个数,接收方的TCP就能够根据这些信息将不间断的数据流传送给自己的高层协议。
1.TCP报文段格式
TCP软件在两台计算机之间传输的数据单元称为报文段。报文段分为两个部分,前面是TCP头,后面是数据。TCP报文段格式如图3-11所示。
(1)源端口
16位,表示发送方的端口号。因为TCP是一种进程通信协议,在同一个IP模块上可能有多个TCP应用程序在运行,仅仅使用IP地址无法唯一区别应用程序,所以同一主机上的不同应用程序使用端口区别。
(2)目的端口
16位,表示接收方的端口号。
(3)序列号
32位,表示该数据段中的第一个字节的序列号。如果TCP数据包中设置了同步信号(SYN),那么该值是初始序列号(initial sequence number,ISN),以后通信的第一个数据字节的序列号为ISN+1。序列号是数据流中字节的唯一性标识,因此如果有部分数据需要重新发送(比如没有接收到确认信息),那么从需要重新发送的第一个字节起的所有字节都要重新发送,并且要使用原来的序列号。
(4)确认号
32位,如果设置了ACK则表示发送方期望下次接收到的数据段的起始编号。在连接建立后,ACK必须每次都发送并且要设置为本机已经接收到的最大数据段序列号加一。通信的另一方根据这个确认号来确定下次要发送的数据段。
(5)数据偏移
4位,包含一个整数,指明报文段头的长度,单位是4字节。因为TCP报头中包含的任选项长度是可变的,所以TCP报头长度是不固定的。
(6)控制位
6位,用来确定报文段的目的与内容。以下各位1表示有效,从左到右依次为:
URG:表示紧急指针数据段有效。
ACK:表示确认号数据段有效。
PSH:表示报文段请求一次推进操作,该标识要求TCP尽快将数据发送出去,而不要等待后续数据的到来。接收到带有PSH标志的数据段后要尽快处理。
RST:重置连接。本次连接被复位。
SYN:同步序列号,建立连接时使用。
FIN:发送者已经发送完数据,关闭连接时使用。
(7)窗口
16位,表示发送者可以接收的数据字节数量。按网络字节顺序排列的整数。
(8)检查和
16字节,TCP计算检查和和的方法与IP相同。但计算时必须在TCP数据帧前面加上一个伪数据头,伪数据头的格式如下:
其中,TCP的协议标识符为6,TCP报文长度指的是整个TCP报文的长度(不包括伪报头)。在计算时,把上面的伪数据头增加到TCP报文的前面,然后将检查和字节都设置为0,以2个字节为单位求和,有进位时将检查和加1,计算完毕后将结果按位取反。
(9)紧急指针
16位,当URG设置为1时该值有效。紧急指针指示该段数据中哪些数据是紧急的。虽然TCP是面向流的协议,但是有时候处在连接的一端的程序也需要立即发送带外数据,而不用等待连接的另一端上的程序消耗完数据流中正传输的数据。为了提供带外数据,TCP提供了紧急数据指针。当接收方发现紧急数据时,接收方的的TCP就通知与连接相关的应用程序进入紧急方式,在所有的紧急数据处理结束后,TCP才回到正常的运行方式。当发送紧急数据时,首先要设置URG,然后设置紧急指针,紧急指针指出窗口中紧急数据结束的位置,它的值是从序列号开始的数据段中的正偏移。
(10)任选项
任选项用来处理其它各种情况,任选项长度是可变的,协议只要求它是以字节为单位的,因此有可能不是32位的整数倍,此时要在任选项后面添加填充项。目前使用的任选项有:(内容为16进制)
任选项结束内容:00
表示任选项结束。
NOP(空)内容:01
可能出现在任选项域中的任何位置,为使任选项为32位的整数倍,可利用它来填充。
最大段长度内容:02 04 2字节表示的最大段长度
设置TCP数据段的最大值。
2.TCP数据传输过程
TCP提供面向连接的可靠报文传输协议。因此,TCP传输数据前必须建立连接,在传输结束后必须断开连接,这些控制是通过TCP数据帧中的控制标志实现的。而TCP传输的可靠性和有序性是通过序列号和确认号来实现的,流量控制则通过窗口机制实现。TCP在两个端点之间建立等效于物理连接的逻辑连接,然后数据就可以沿着这个连接双向传送。
您可能关注的文档
- 2017村党支部第一书记年度工作计划.doc
- 20m、35m箱梁预应力张拉计算书.doc
- 20万温州商人给苏州的启示.doc
- 20世纪福克斯公司特刊.doc
- 20岁以上的女生。要有成人的视觉,理性的智慧。如何气.doc
- 20招教你打造通透大气家 小户型经典设计.doc
- 20种学生必备软件.doc
- 21种方式让你玩转三亚.doc
- 21世纪公司的组织结构.doc
- 220kv及以下软母线装置安装技术.doc
- 2025至2030中国移动治疗台行业发展研究与产业战略规划分析评估报告.docx
- 2025至2030链激酶行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030爆炸物探测扫描仪行业市场占有率及有效策略与实施路径评估报告.docx
- 2025至2030四川省智能制造行业细分市场及应用领域与趋势展望研究报告.docx
- 2026届高三二轮复习试题政治大单元突破练1生产资料所有制与分配制度含解析.docx
- 2026届高三二轮复习试题政治大单元突破练16哲学基本思想与辩证唯物论含解析.docx
- 2026届高三二轮复习试题政治大单元突破练2社会主义市场经济体制含解析.docx
- 浙江省衢州市五校联盟2025-2026学年高二上学期期中联考技术试题-高中信息技术含解析.docx
- 浙江省金丽衢十二校2026届高三上学期11月联考政治试题含解析.docx
- 2026届高三二轮复习试题政治大单元突破练7领导力量:中国共产党的领导含解析.docx
原创力文档


文档评论(0)