TCP面向连接中的“连接”和“可靠”与“不可靠”
来源:互联网 发布:东海证券交易软件下载 编辑:程序博客网 时间:2024/06/05 17:47
转载自:http://blog.csdn.net/haizhongyun/article/details/7621199点击打开链接
连接是对状态的保持
实际上就是在客户端和服务器端都维护一个变量,这个变量维护现在数据传输的状态,例如传输了哪些数据,下一次需要传输哪些数据,等等,并不是真的我们想象中的真的有什么东西连接着这两端,因为无论对于有连接还是无连接,都有网线连着呢(不包括无线网),所以连接根本就不是是否真的有什么东西把他们连接起来,真实的含义就是我上面说的,两边维护一个状态变量。
UDP通讯有四个参数:源IP、源端口、目的IP和目的端口。而TCP通讯至少有有六个参数:源IP、源端口、目的IP和目的端口,以及序列号和应答号。
序列号和应答号是TCP通讯特有的参数,TCP通讯利用序列号和应答号来保持和确认数据的关联与正确性,是在三次握手中确定的,不正确的序列号和应答号会导致无法正常通讯。因此对TCP连接的连接概念可以简单理解成为同UDP通讯相比,用序列号和应答号确定了相互之间的连接特征,来保证数据传输的正确性。
TCP保证可靠,面向连接而UDP不保证可靠,非面向连接,UDP的报头长度远远小于TCP的报头长度。TCP使用了三种基础机制来实现面向连接的服务:1 使用序列号进行标记,以便TCP接收服务在向目的应用传递数据之前修正错序的报文排序;2 TCP使用确认,校验,和定时器系统提供可靠性。3 TCP在应用层数据上附加了一个报头,报头包括序列号字段和这些机制的其他一些必要信息,如叫做端口号的地址字段,该字段可以标识数据的源点和目标应用程序。
UDP发出去的包是不管的,对方也不会应答是否收到.TCP发出包之后对方会应答是否完整收到
可以在发包的时候采取类似创建TCP连接那样的操作,发消息,然后对方给一个ACK,然后发消息方再发一个ACK,这样算发送成功。
通过最简单的重传确认即可达到QQ现在做到的效果,简单说就是发送方一直发送数据,直到收到接收方的反馈再停止即可。
- TCP面向连接中的“连接”和“可靠”与“不可靠”
- TCP面向连接中的“连接”究竟是什么,可靠与不可靠
- TCP面向连接中的“连接”究竟是什么,可靠与不可靠(转)
- 为何说TCP是可靠连接而UDP是不可靠连接
- Tcp可靠Udp不可靠原理
- 2017-02-14 面向连接的运输:TCP、TCP链接、TCP报文段结构、往返时间的估计与超时、可靠数据传输、流量控制、TCP链接管理
- 可靠信号与不可靠信号
- TCP可靠,UDP不可靠的原因
- TCP可靠传输及流量控制系列二:TCP连接中的七个定时器
- TCP可靠传输及流量控制系列六:TCP连接中的TIME_WAIT状态
- TCP面向连接Socket
- 为什么说IP和UDP是不可靠的,而TCP是可靠的
- 不可靠信号与可靠信号对比
- Storm 可靠的与不可靠的消息
- APUE可靠信号与不可靠信号
- Linux可靠信号和不可靠信号
- Linux可靠信号和不可靠信号
- Linux可靠信号和不可靠信号
- AnyChatSDK 实现视频通话
- 个人感觉高三与大学的一些区别
- windows 下php5.x mcrypt 开启
- PS4有BUG,入手需要谨慎_VRAR123.TOP
- Medium 49题 Group Anagrams
- TCP面向连接中的“连接”和“可靠”与“不可靠”
- 整理activity中的四种启动模式
- 喷水装置(一)
- JS中数组的操作
- maven学习3-建立Web工程
- 微信开源的 Android 热补丁框架 Tinker 什么来头?
- 原根(详解+代码实现+例题+快速求解一个数的原根)
- LeetCode 94. Binary Tree Inorder Traversal 解题报告
- 【java学习】排序_冒泡排序+选择排序