TCP关心分组是否准确送达,甚至仔细到给每个分组编号并收到目的端的确认“我已经收到啦~你继续发~”才继续发送后续的分组,而UDP则不然,它只负责把分组封装好后直接发送到链路上,至于目的端收到与否并不关心

TCP和UDP,协议的目的是为了两端进行对话。有连接和无连接就像打电话和发短信。一个要先拨通,而另一个只要有号码就行。
有连接
A拨电话:滴…滴…滴…(如果此时语音提示你拨打的电话无法接通则直接挂掉,通信中断)
B接电话:小王您好,我是老宋,有什么事情。
A:balabala
无连接
A发短信:balabala

TCP的面向连接指对话之前需要先建立一个会话,而UDP无连接直接发送消息
再补充一个有确认和无确认,有确认无确认与有连接无连接没有必然联系。有无确认区别主要在消息发送出去之后。

有确认
A:balabala
A:怎么不说话,你听不到吗?那我重说一次。balabala
B:现在听到了
A:好的,继续。balabala
无确认
A:balabala

无论是有连接还是无连接,对话时都可以使用有确认和无确认的方式进行对话。

作者:灯下黑
链接:https://www.zhihu.com/question/51388497/answer/125792585
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

怎么理解TCP的面向连接和UDP的无连接(不面向连接)?的更多相关文章

  1. C# HTTP1.0 1.1 2.0与HTTPS 、TCP/IP协议的UDP与TCP、 Socket介绍与WebSocket

    一.HTTP1.0 1.1 2.0和HTTPS 1.HTTP协议是什么? HTTP协议是超文本传输协议的缩写,英文是Hyper Text Transfer Protocol.它是从WEB服务器传输超文 ...

  2. TCP 和 UDP 的区别( 面向连接 和 面向无连接 )

    第一:TCP 和 UDP 的区别( 面向连接 和 面向无连接 ) TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才 ...

  3. 【PHPsocket编程专题(理论篇)】初步理解TCP/IP、Http、Socket.md

    前言 我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API).那TCP/IP又是什么呢?TCP/IP是ISO/OS ...

  4. 深入浅出理解 TCP/IP 协议 (一)

    文章转自:https://www.cnblogs.com/onepixel/p/7092302.html TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入 ...

  5. 简单理解TCP/IP协议

    一.什么是TCP/IP TCP/IP是一个协议族,是因为TCP/IP协议包括TCP.IP.UDP.ICMP.RIP.TELNETFTP.SMTP.ARP.TFTP等许多协议,这些协议一起称为TCP/I ...

  6. TCP/IP协议与UDP协议的区别

    TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接.一个TCP连接必须要经过三次“对话”才能建立起来, ...

  7. 深入理解TCP(一)

    TCP是面向连接的传输层层协议,可以为应用层提供可靠的数据传输服务.所谓的面向连接并不是真正意思上的连接,只不过是在发送数据之前,首先得相互握手,也就是说接收方知道你要发数据给它了.而UDP是面向无连 ...

  8. TCP Socket Establish;UDP Send Package Process In Kernel Sourcecode Learning

    目录 . 引言 . TCP握手流程 . TCP connect() API原理 . TCP listen() API原理 . UDP交互过程 . UDP send() API原理 . UDP bind ...

  9. Kcptun 是一个非常简单和快速的,基于KCP 协议的UDP 隧道,它可以将TCP 流转换为KCP+UDP 流

    本博客曾经发布了通过 Finalspeed 加速 Shadowsocks 的教程,大家普遍反映能达到一个非常不错的速度.Finalspeed 虽好,就是内存占用稍高,不适合服务器内存本来就小的用户:而 ...

随机推荐

  1. 关于css中层叠性的一点理解

    关于css层叠性的一点理解 标签(空格分隔): html css 我们平时在写css的时候会遇到这样的情况 <!DOCTYPE html> <html lang="en&q ...

  2. Tomcat服务器的默认端口是多少?怎样修改tomcat的端口?

    Tomcat服务器的默认端口是多少?怎样修改tomcat的端口? 解答:默认端口为8080,可以通过service.xml的Connector元素的port属性来修改端口.

  3. Web监听器导图详解

    监听器是JAVA Web开发中很重要的内容,其中涉及到的知识,可以参考下面导图: Web监听器 1 什么是web监听器? web监听器是一种Servlet中的特殊的类,它们能帮助开发者监听web中的特 ...

  4. 【 D3.js 入门系列 --- 9.4 】 集群图的制作

    本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 集群图( Cluster )通经常使用于表示包括与被包括关系. ...

  5. Oracle起步---创建临时表空间/表空间/创建用户/授权

    1. 安装: 百度一下你就知道 2. sqlplus登录/sqlplus命令登录 在安装Oracle时,你需要记住设置的“全局数据库名”(默认为orcl) 和 口令,在以两种方式登录时: 用户名: s ...

  6. 第十五篇:流迭代器 + 算法灵活控制IO流

    前言 标准算法配合迭代器使用太美妙了,使我们对容器(数据)的处理更加得心应手.那么,能不能对IO流也使用标准算法呢?有人认为不能,他们说因为IO流不是容器,没有迭代器,故无法使用标准算法.他们错了,错 ...

  7. poj 2923(状态压缩+背包)

    比较巧妙的一道题目,拿到题目就想用暴力直接搜索,仔细分析了下发现复杂度达到了2^n*n! ,明显不行,于是只好往背包上想. 于是又想二分找次数判断可行的方法,但是发现复杂度10^8还是很悬... 然后 ...

  8. Less-Mixins分离规则集

    //Mixins --立即执行函数 .test{/* */} #test{/* */} --指定执行函数 .test(){/* */} #test(){/* */} --调用: .test; or . ...

  9. 【VUE】VUE相关学习和知识备份

    一.学习资料参考 1.1.Vue.js 官网:Vue.js https://cn.vuejs.org/ 官方文档:介绍 - Vue.js https://cn.vuejs.org/v2/guide/ ...

  10. Android性能测试摘入(TestHome)

    Android性能测试:      客户端性能测试      服务端性能测试   客户端性能测试:      1.ROM版本的性能测试(即手机的不同操作系统):关注功耗测试      2.应用的性能测 ...