在TCP的连接中,数据流必须以正确的顺序送达对方。TCP的可靠性是通过顺序编号和确认(ACK)来实现的。TCP在开始传送一个段时,为准备重传而首先将该段插入到发送队列之中,同时启动时钟。其后,如果收到了接受端对该段的ACK信息,就将该段从队列中删去。如果在时钟规定的时间内,ACK未返回,那么就从发送队列中再次送出这个段。TCP在协议中就对数据可靠传输做了保障,握手与断开都需要通讯双方确认,数据传输也需要双方确认成功,在协议中还规定了:分包、重组、重传等规则;而UDP主要是面向不可靠连接的,不能保证数据正确到达目的地。 另外,TCP是面向流的,发送和接收对于此协议来说,没有什么头和尾,全部顺序投递;而UDP是面向包的,每次接收与发送都是一个数据块。这样在编程时需要注意程序应提供不同的处理模型。在进行传输之前,首先发送请求信号,目的端接收信号后,回复信息,之后建立连接开始传输数据,俗称TCP三次握手。

X


TCP如何保障可靠性相关推荐

  1. TCP如何保证可靠性

    TCP传输控制协议  TCP 协议是一种面向连接的,为不同主机进程间提供可靠数据传输的协议.TCP 协议假定其所使用的网络栈下层协议(如IP 协议)是非可靠的,其自身提供机制保证数据的可靠性传输.在目 ...

  2. TCP如何实现可靠性传输

    1.UDP与TCP的区别 TCP(TransmissionControl Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议. UDP是User Datagram P ...

  3. Q50:TCP如何保证可靠性?

    TCP如何保证可靠性? (1)序列号.确认应答.超时重传 数据到达接收方,接收方需要发出一个确认应答,表示已经收到该数据段,并且确认序号会说明了它下一次需要接收的数据序列号. 如果发送发迟迟未收到确认 ...

  4. TCP如何保证可靠性,TCP如何实现可靠性传输的

    tcp 如何保证可靠性 大家都知道TCP是可靠性传输协议,既然是可靠的,就需要解决比如包丢失了.数据被破坏了.包重复了.乱序了等等这样的问题.下面将从几个方面介绍TCP的可靠性. 1. 校验和 TCP ...

  5. 公开课:TCP协议的可靠性传输机制-王达-专题视频课程

    公开课:TCP协议的可靠性传输机制-11821人已学习 课程介绍         本课程是2015年10月14号晚上在CSDN学院进行的一场公开课,主讲TCP协议的几个方面的传输机制,主要包括以下几个 ...

  6. 网络基本功:TCP报文及可靠性保证

    目录 1.概念了解 2.Socket通信的基本流程 3.TCP报文协议格式 4.TCP的三次握手 5.TCP的四次挥手 6.TCP的数据重传 7.滑动窗口 8.其他 9.小结 10.代码实现 1.概念 ...

  7. 简述tcp协议的可靠性有哪些机制_腾讯面试HTTP与TCP/IP20连问,你能答出多少?

    一.Session 和 cookie 的区别 二.TCP三次握手和四次挥手的流程,断开连接如果只有两次握手,会出现什么. 三.TIME_WAIT 和 CLOSE_WAIT的区别 四.为什么需要 TIM ...

  8. TCP三次握手和四次挥手?TCP如何保证可靠性?什么是TCP滑动窗口?

    TCP三次握手和四次挥手? 三次握手 tcp3handshake.gif tcp3handshake2.gif tcp3handshake3.gif tcp3handshake4.gif 四次挥手 t ...

  9. TCP 如何保证可靠性

    首先,TCP 的连接是基于三次握手,而断开则是四次挥手.确保连接和断开的可靠性. 其次,TCP 的可靠性,还体现在有状态;TCP 通过校验和.ACK 应答.超时重传来记录哪些数据发送了,哪些数据被接受 ...

最新文章

  1. 智源学者朱军获2020年“科学探索奖”
  2. Linux 内核抓包功能实现基础(五) 常见问题解析
  3. [bbk5128]第12集 - Chapter 06- Working with Composite Data Types -01-4998(Record)
  4. java如何编写年月_如何从Java中的日历对象构建天,月,年的列表?
  5. pytorch自动求梯度—详解
  6. Linux系统管理-(12)-网络配置IP命令
  7. 部分AllWin 平台Android4.4 车机 USB兼容性
  8. 《中国人工智能学会通讯》——第12章 12.1 新世纪知识工程—— 在哪里跨越
  9. 流程图绘制软件 EDraw Mind Map
  10. windows批处理命令大全
  11. 软件体系结构风格复习总结
  12. 计算机桌面没有cdef,如何解决电脑CDEF盘都打不开出现“该文件没有程序与之关联来执行该操作”的问题...
  13. MongoDB凭什么跻身数据库排行前五?
  14. 深入理解MVCC实现原理以及当前读和快照读存在的问题
  15. JDBC-03:PreparedStatement如何实现对数据库的增删改查操作
  16. 《电子商务与企业经营管理》
  17. vue适配双端浮标(悬浮球)拖拽
  18. 按后退键退出到主界面
  19. p2000显卡LINUX无显示,petalinux 2020.01工程 linux系统启动不完全
  20. 用好FMEA工具,企业风险管理事半功倍

热门文章

  1. java提示单个cass怎么办,求助解决hibernate报错,java.lang.casscastexception
  2. java datediff函数_JPA Criteria 中 DATEDIFF 函数的使用
  3. mysql单库tps_简单计算mysql 的QPS,TPS
  4. 三刺激值计算公式_超实用的数控车床常用计算公式,绝对帅,赶紧收藏了!
  5. 7月21日王者服务器维修,2020年7月21日王者荣耀世冠杯,GOG2:0EMC,实力碾压运营滴水不漏...
  6. mysql启动日志指令_简单整理MySQL的日志操作命令
  7. CentOS5.4安装libpng提示--configure: error: ZLib not installed
  8. 《敏捷无敌》试读:第5章 成长的烦恼
  9. 六、传递、返回复杂类型的对象
  10. arduino支持的内核版本_Arduino开发(arduino IDE)