`
woodding2008
  • 浏览: 284955 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TCP编号系统

 
阅读更多

      虽然TCP软件需要掌握正在传送的或已接收到的每一个报文段,但在报文段首部中并没有存放报文段编号的字段。实际上,在这个首部中由两个叫作序号和确认号的字段。这两个字段所指的都是字节的编号而不是报文段的编号。

 

字节号

       TCP把在一个连接中要发送的所有数据字节(8位组)都编上号。两个方向的编号是相互独立的。当TCP接收来自进程的数据字节时,就把它们存储在发送缓存中,并为它们进行编号。编号不一定要从0开始。TCP选择 0~(2^32 - 1)之间的一个随机数作为第一个字节的编号。例如,若这个数字恰巧是1057,而要发送的数据总共有6000字节,那么这些字节的编号是从1057~7056.我们会看到,在流量控制和差错控制中都要用到字节编号。每条连接上传送的数据字节都被TCP编了号。编号从一个随机产生的数字开始。

 

 

序号

       当字节都被编上号以后,TCP就给每一个要发送的报文段指派一个序号。每个报文段的序号就这个这个报文段中第一个数据字节的序号。

        假设一条TCP连接要传送一个5000字节的文件。第一个字节的编号是10001.如果该数据用5个报文来发送,且每个报文段携带1000个字节的数据,那么每个报文段的序号分别是什么?下面给出每一个报文段的序号。

     

         报文段的序号字段定义的是这个报文段包含的第一个数据字节所分配的编号。

       当一个报文段同时携带了数据和控制信息(捎带)时,它使用一个序号。但如果报文段不携带用户数据,从逻辑上讲,它就不定义序号。序号字段总是存在的,但它的值是无意义的,不过某些仅携带控制信息的报文段还是需要一个序号,以便于接收方的确认。这些报文用于连接建立、连接终止和连接异常终止。这每一个报文段都要消耗一个序号,就好像它携带了一个字节的数据,但实际上是没有数据的。

 

 

确认号

       TCP通讯是全双工的。当一条连接建立后,双方能同时发送和接收数据。通常双方从不同的起始号开始对字节编号。每一个方向上的序号表示的是该方向的报文段所携带的第一个字节的编号。双方还使用了确认号对各自收到的字节表示确认,不过这个确认号定义的是它期望接收的下一个字节的编号。另外,确认号是累积的,也就是说,他把收到的最后一个(完全完好)字节的编号上加1所得到的值宣布为确认号。这里术语累积的意思是指,如果某一方使用5643作为确认号,那么就表示它已经收到了从开始一直到编号5642的所有字节。请注意,并不是说这一方已经收到了5642个字节,因为第一个字节编号不一定是从0开始。

 

 

  • 大小: 176.2 KB
分享到:
评论
1 楼 可乐瓶里的小辣椒 2016-12-02  

相关推荐

    TCP网络门禁系统设计方案.docx

    专业门禁系统解决方案 中山联视达安防科技工程部 TCP网络门禁系统设计方案全文共10页,当前为第1页。 TCP网络门禁系统设计方案全文共10页,当前为第1页。 方案旳提出 根据客户规定,办公室主出入口要实现对办公室...

    TCP-IP技术大全

    IP和相关协议 第9章 IP协议家族 77 9.1 TCP/IP模型 77 9.1.1 解剖TCP/IP模型 78 9.1.2 协议组件 78 9.2 理解网际协议(IP) 79 9.2.1 IPv4结构 79 9.2.2 IP做什么 80 9.3 理解传输控制协议...

    TCP/IP教程TCP/IP基础

    3.9 TCP/IP和系统结合 27 3.10 内部网概述 28 3.11 小结 28 第二部分 命名和寻址 第4章 IP网络中的名字和地址 29 4.1 IP寻址 29 4.1.1 二进制和十进制数 30 4.1.2 IPv4地址格式 30 4.2 子网的出现 34 4.2.1 分子网 ...

    TCP/IP技术大全

    3.9 TCP/IP和系统结合 27 3.10 内部网概述 28 3.11 小结 28 第二部分 命名和寻址 第4章 IP网络中的名字和地址 29 4.1 IP寻址 29 4.1.1 二进制和十进制数 30 4.1.2 IPv4地址格式 30 4.2 子网的出现 34 4.2.1 分子网 ...

    基于Java实现(GUI)TCP 协议编程的聊天系统【100012104】

    本系统基于 TCP 协议,采用客户端服务器模式,客户端可以并发访问服务器。采用了多线程技术,可以做到多人同时在线,提高了系统的并发能力,增强了系统的实用性。有简单的客户端界面,方便用户使用。采用的是 TCP ...

    基于TCP的员工管理系统

    员工管理系统(服务器和客户端)实现功能如下: 1.有管理员和普通员工二种账号 2.管理员可以添加新员工 3.管理员可以删除员工 4.管理员可以修改员工信息 5.管理员可以查看所有用户的操作历史 6.普通员工可以更改自己...

    TCP/IP详解 (卷2:实现)

    本书适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。 作者简介 Gary R.Wright 研究TCP/IP多年。他是Connix公司的董事长,这个公司的基地在...

    tcp通信MFC,课程设计

    “已知的协议”,即固定协议,采用的端口由“互联网编号分配认证(IANA)”控制和分配,RFC 1700中说明的编号。从本质上说,端口号分为下面这三类:“已知”端口、已注册端口、动态和(或)私用端口。  “已知...

    TCP/IP技术大全(中文PDF非扫描版)

    3.9 TCP/IP和系统结合 27 3.10 内部网概述 28 3.11 小结 28 第二部分 命名和寻址 第4章 IP网络中的名字和地址 29 4.1 IP寻址 29 4.1.1 二进制和十进制数 30 4.1.2 IPv4地址格式 30 4.2 子网的出现 34 4.2.1 分子网 ...

    TCP/IP详解

    3.9 TCP/IP和系统结合 27 3.10 内部网概述 28 3.11 小结 28 第二部分 命名和寻址 第4章 IP网络中的名字和地址 29 4.1 IP寻址 29 4.1.1 二进制和十进制数 30 4.1.2 IPv4地址格式 30 4.2 子网的出现 34 4.2.1 分子网 ...

    基于 Java+MySQL实现TCP聊天工具【100010271】

    该系统是基于JAVA语言开发的一款网络聊天工具,实现TCP编程,使用多线程实现了多客户端的连接。模仿腾讯QQ的界面,功能较为简单,但是使用了最基本的网络编程技术,如tcp、I/O阻塞、多线程、MySQL数据库等。 该系统...

    基于JAVA超市自助购物系统的设计与实现.7z

    基于JAVA超市自助购物系统的设计与实现 资料包里包含完整源码+软件环境(也就是安装包都有)+视频(代码调试、运行、讲解视频) 基于RFID的自动识别技术,通过无线射频方式实时获得磁卡对超市物品的电子标签进行读取,...

    基于TCP的socket网络传输视频(C++, python)+源代码+文档说明

    2.对系统资源的要求(TCP较多,UDP少); 3.UDP程序结构较简单; 4.流模式与数据报模式 ; 5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。 接下来将以图片传输为例,用Python和C++实现服务端...

    嵌入式\(高校应用案例)北航软件学院

    3-5名学员组成一个项目小组,项目自选,项目小组提交项目报告,经审核同意后拨付项目经费,在项目指导教师指导下项目实施,项目完成应有成型产品,组织召开项目完成报告会,项目小组提交项目完成报告书,项目结束。

    基于JAVA超市自助购物系统的设计与实现.zip

    这是基于JAVAweb设计的超市自助购物系统。 包含javaweb端和STM32硬件端。 模拟实现超市自助购物,店家商家货物,会员充值、会员消费等等。 资料包里: 包含所有源码、部署视频、说明文档。 基于RFID的自动识别技术...

    门禁系统设计方案(2).doc

    方案的提出 根据客户要求,学生公寓主出入口要实现对公寓内部学生进行有效的进出控制管理, 为了防止非法或外来人员擅自进出,现增加出入口控制- 门禁管理系统,系统采用TCP/IP门禁控制系统。可以在网络上任何一个...

    基于 C++ 设计的多人在线聊天系统【100010787】

    最终,在 windows 操作系统下实现多人在线即时聊天功能。 服务器端功能需求 服务器能够选择端口号并且启动服务器端的 TCP 服务,等待客户端的 Socket 连接。 服务器能够接受多个客户端的请求,并且能够识别不同的...

    深入解析Windows操作系统中文.part2.rar

    7.11 页面帧编号数据库 469 页面列表的动态变化 472 已修改页面写出器 475 PFN数据结构 476 低内存通知和高内存通知 479 7.12 本章总结 483 第8章 安全性 485 8.1 安全系统组件 488 8.2 保护对象 492 访问检查 493 ...

    无线蓝牙点菜系统(代码文档齐全)

    实验箱端完成封包发送,使用Socket编程实现,优选TCP协议作为传输层协议。 主机端: 1. 采用x86+Window平台 2. 采用QT图形系统实现订菜情况的显示,查询功能 3. 接收到实验箱端的信息后,能进行解析,获取菜名,座位...

Global site tag (gtag.js) - Google Analytics