加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

C/C++应用:深入领略Socket收集通讯

发布时间:2019-10-23 08:10:37 所属栏目:建站 来源:编程老大叔
导读:【大咖·来了 第7期】10月24日晚8点寓目《智能导购对话呆板人实践》 Socket是收集通信常常回收的一种方法,它不是一个详细的物件也不是想http类的通信协议。你可以把它当作是一组基于TCP和UDP通讯协议的接口,Socket着实就是一个门面模式,它把伟大的TCP/IP
【大咖·来了 第7期】10月24日晚8点寓目《智能导购对话呆板人实践》

Socket是收集通信常常回收的一种方法,它不是一个详细的物件也不是想http类的通信协议。你可以把它当作是一组基于TCP和UDP通讯协议的接口,Socket着实就是一个门面模式,它把伟大的TCP/IP协议族潜匿在Socket接口后头,对用户来说,一组简朴的接口就是所有,让Socket去组织数据,以切合指定的协议。

Socket根基观念

在相识Socket之前你必要对计较机通信的分层有个或许的相识,详细讲授我在这里就不讲了,放一张很好的图分享给各人:

C/C++应用:深入领略Socket收集通讯

上面图具体讲了根基整个计较机通讯的分层架构,许多我也不相识没我们只看我们体谅的TCP/IP,其分层简化图示如下:

C/C++应用:深入领略Socket收集通讯

领略Socket

好,相识了基天职层机构后,我们此刻来形象的领略一下Socket到底是什么。我这里有一个很形象的实例可以辅佐我们很好的领略Socket,这也是我当初在进修Socket编程时本身贯通出来的,那就是物流。

我们要传送的数据就是物流中的货品,ip就是发货人和收货人的接洽方法,那么Socket是什么?各人想想这送货这这一流程还穷乏啥?对呀,物流公司啊,对吧!物流公司就是谁人Socket,他认真帮你处理赏罚送货的噜苏工作,好比你的货品该怎么打包、该怎么防备易碎物品破裂、该用什么方法运输、等等,假如是境外货品还牵扯到报关等等一系列伟大噜苏的工作,这些物流公司(Socket)帮你处理赏罚好了。表示图如下:

C/C++应用:深入领略Socket收集通讯

领略TCP与UDP的区别以及三次握手和四次挥手

然后我们来说一下TCP和UDP的区别。前面讲到Socket就相等于是物流公司,那么TCP协议就相等于是:假设你是寄货方,你要寄给你伴侣一份礼品,你起首得去物流公司去寄,这样你再物流公司就相等于成立了一个事物(Socket实例)。然后物流公司有两种处事方法让你选择(TCP和UDP)。

先说TCP,TCP这个协议它较量守旧,物流公司说我必需确保你伴侣会吸取这份礼品,否则它不送。于是物流公司就归去接洽你伴侣。然后接洽内容大抵如下:

物流:你好,我这里有个你伴侣寄的礼品要给你,你收吗?

你伴侣:OK,收,什么时辰发,多久到?

物流:此刻就发,大提纲12小时到。

然后物流才开始发货,而且会给你们一个物流单号,这个单号就是关于这份货品你和你伴侣的发货收货凭据。这就是所谓的三次握手。表示图:

C/C++应用:深入领略Socket收集通讯

物流发送完后还会接洽你伴侣,大抵对话内容:

物流:你好,货品已发送,请留意查收

你伴侣:好的。

货品送到,你伴侣:OK,货品收到,你们可以了案

物流:好的,我了案了。

这就是所谓的四次挥手(拜拜);

(注释:三次握手四次挥手这都是Socket在你成立的时辰按照你选择的协议确定好的)

这样是不是很贫困,预计也就顺丰有这处事了,其他大部门公司照旧没有这么知心的处事的,他们也许就是UDP协议方法了。

UDP较量简朴,当你用物流(Socket)寄货品的时辰物流公司并不会管你伴侣是否能接洽上,是否乐意吸取,它只认真将你的货品发出去就完事。这中间是不必要关照你伴侣的,你和你伴侣也不必要有毗连,这就是所谓的无毗连。

两种协议区别

UDP 常用于一次性传输较量少量数据的收集应用中,UDP 也常用于多媒体应用(如 IP 电话、及时视频集会会议、流媒体等),显然,靠得住数据传输对付这些应用来说并不是最重要的,但 TCP 的拥塞节制会导致数据呈现较大的耽误,这是它们不能容忍的,我们最认识的视频通话大部门就是用的UDP协议。

TCP面向毗连,即发送数据之前必要成立毗连,而且TCP是拥有拥塞机制的,当前部门数据还没有被吸取完,后部门的数据会被阻塞知道前部门数据转达OK后才会继承转达后半部门,以是通过TCP毗连传送的数据,无过错,不丢失,不一再,且按序达到;在数据完备性、安详性要求较高的场景必要行使TCP协议,好比你传送重要办公翰札、图片等,这些对象丢包都是会影响数据品格的。

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读