即时通讯 ?XMPP :Socket

即时通讯基础 即时通讯系列阅读 即时通讯基础 即时通讯:XMPP基础 即时通讯:XMPP项目实践-微聊 1. 即时通讯简介即时通讯(Instant Messaging)是目前Internet 上最为流行的通讯方式,各种各样的即时通讯软件也层出不穷;服务提供商也提供了越来越丰富的通讯服务功能。不容置疑,Internet 已经成为真正的信息高速公路。从实际工程应用角度出发,以计算机网络原理为指导,结合当前网络中的一些 阅读详情

      最近在研究 即时通讯编程,一查网络资料,杂乱无章的信息疯拥而至。XMPP ?Socket 该选择哪以个?这就需要了解到它们实现的机制了。下面笔者就来分析一下,便于对它们的选择,如有错处,请纠正,共勉。

      首先,看这两者的区别,XMPP 是一个应用层协议,其底层(传输层和网络层)依然是Socket通信。换句话说,XMPP是建立在Socket通信基础上的。

      关于层次的问题,又懵乎了吧。它们两者都是基于网络应用,而网络由下往上分为 物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。如此,两者之间可以看出区别了吧。

      再深入研究一番,就涉及到经常提到的 TCP/IP和HTTP协议。TCP协议对应于传输层,而HTTP协议对应于应用层。在对比上面的 XMPP协议 与 Socket ,有没有发现两组之间的共同之处。确实如此  HTTP协议  XMPP 都是 一个应用层协议, 不过 TCP/IP是一个传输层协议 , Socket不是一个协议 ,Socket是对TCP/IP协议的封装和应用.也就是说Socket是TCP/IP协议的具体实现。

      接下来,再分析一下,这些协议能做些什么,干什么用的呢?首先上面说到的

      HTTP协议 XMPP 是一个 应用层协议 ,它们主要解决如何包装数据。

      TCP/IP协议是传输层协议 ,主要解决数据如何在网络中传输。

      可想而知 XMPP是建立在Socket通信基础上的 这句话它到底描述了什么了吧,没有数据的传输,哪里有数据给你包装呢!但是两者在即时通讯编程的时候,又是相互独立的,

原因的是它们都有相应的框架对传输的数据进行处理了。但是 HTTP协议 与 TCP/IP协议 则不然,它们之间还是不能相互独立的。关于TCP/IP和HTTP协议的关系,网络有一段比

较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容."

      到此,应该有恍然大悟的措举了吧。:)

      如果 即时通讯 ?XMPP :Socket , 还在这个选择上还飘忽不定,那么看完下面的介绍就该得出结论了吧

     下面笔者列举一下使用  XMPP ?Socket 分别需要的条件

       XMPP 是一个 应用层协议  它要拿到网络中传输的数据,才能对数据进行包装处理。所以使用它来即时通讯要做好以下工作:

       (1)搭建好XMPP服务器(服务器比较常用的 有 ejabberd ,openfire)

       (2)客户端(Adium)

         具体的步骤:点击打开链接

                              点击打开链接

      Socket 作用于传输层,它就可以直接操作网络之间传输的数据了,至于识别数据内容,导入CocoaAsyncSocket框架使用即可。框架链接点击打开链接

      笔者 在使用 Socket ,后续操作代码逐一奉上!!记关注。。。



XMPP协议中文版.doc 本文定义了可扩展消息和出席信息协议(XMPP)的核心功能,这个协议采用XML流实现在任意两个网络终端接近实时的交换结构化信息。XMPP提供一个通用的可扩展的框架来交换XML数据,它主要用来建立即时消息和出席信息应用以实现 RFC 2779 的需求。 立即下载

相关推荐

基于XMPP协议一套Socket通信程序(C/S都带,VS2013打开,可学习,也可直接使用,物超所值)

基于XMPP协议实现一套Socket通信程序,解决服务器多IP、多网卡自动识别的问题(C/S都带,VS2013打开,可学习,也可直接使用,物超所值)

最全的socket,tcp,http三者之间的区别和原理

socket,tcp,http三者之间的区别和原理 http、TCP/IP协议与socket之间的区别 下面的图表试图显示不同的TCP/IP和其他的协议在最初OSI模型中的位置: 7 应用层 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP 6 表示层 例如XDR、ASN.1、SMB、AFP、NCP 5 会话层 例如ASAP、TLS、SSH、ISO 8327 / CCITT X.225、RPC、Net

weixin_53762042的博客 1276

安卓XMPP聊天通讯Socket相关-简易微信客户端和服务器源码.rar

简易微信客户端和服务器源码.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

XMPP介绍三:Socket

本人录制技术视频地址:https://edu.youkuaiyun.com/lecturer/1899 欢迎观看。一、 什么是SocketSocket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,否则是没有办法建立联系并相互通信的。正如打电话之前,双方必须各自拥有一台电话机一样。在网间网内部,每一个Socket用一个半相关描述:(协议,本地地址,本地端口)。一个完整的Socket有一...

秋恨雪 2401

安卓XMPP聊天通讯Socket相关-Android实现简单的局域网数据传输(基于热点局域网.rar

Android实现简单的局域网数据传输(基于热点局域网.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

Python实战:用SkillMetrics库5分钟搞定泰勒图绘制(附完整代码)

本文详细介绍了如何使用Python的SkillMetrics库快速绘制专业泰勒图,以直观对比多个模型的预测性能。通过整合相关系数、标准差和中心化均方根误差三个核心指标,该工具能帮助数据科学家和研究者高效完成模型评估与可视化,提升分析报告质量。文章提供了从环境配置、数据准备到高级定制与子图对比的完整代码示例。

7z8x2c4v6b9的博客 371

Socket、XMPP的实现原理、环信的实现原理

是否使用过环信,简单的说下环信的实现原理 环信是一个即时通信的服务提供商 环信使用的是XMPP协议,它是再XMPP的基础上进行二次开发,对服务器Openfire和客户端进行功能模型的添加和客户端SDK的封装,环信的本质还是使用XMPP,基本于Socket的网络通信 环信内部实现了数据缓存,会把聊天记录添加到数据库,把附件(如音频文件,图片文件)下载到本地,使程序员更多时间是花到用户体验上

黑码哥的技术博客 5321

Win11如何更改用户文件夹名(完整流程- 已验证可行)

把C盘所有文件备份,如果不想备份,则选择创建一个C盘的系统还原点(能在后续把C盘玩崩之后恢复原状)

Y_Aryan的博客 5万+

网络协议TCPIP、UDP、Http、Socket、XMPP区别

一、UDP: UDP是一种面向无连接的用户数据报服务(user data protocol),不需要和服务器也能交互,只需要知道ip和监听端口,不需要链接没有目的的socket,只是将数据报投递出去,不管接收方是否成功接收到,因此是一种不可靠的传输,可能会造成数据丢包,但由于这些特征,传输效率要优于TCP。例如QQ传输 二、TCP: TCP是一种面向连接的传输控制协议(transform...

swwcyy的博客 555

目标检测——布匹缺陷检测数据集

结构瑕疵指的是布料本身的缺陷,包括嵌结、抽纱、错纱、断纱、预缩等问题,这些问题通常是在布料生产过程中出现的。而质量瑕疵则是指布料在使用过程中出现的问题,如污渍、断裂、鼓囊、针眼等,这些问题可能由生产过程中的结构瑕疵导致,也可能是在运输、存放和使用过程中引起的。布匹瑕疵如缺纬、断纬、粗纬、松纬、缺经、断经、粗经、筘痕、污点、破损等,若未得到及时有效的检测,这些瑕疵产品可能会流向市场,导致消费者的不满和退货,严重影响企业的声誉和品牌形象。织疵包括缺经、缺纬、跳花、弓纱、错纱、厚薄段、油污渍等;

zzjlhlcd的博客 612

深度伪造检测实战:轻量级频域特征 pipeline 部署指南

深度伪造检测(deepfake detection)是多媒体内容安全的核心技术,其本质是通过建模生成式篡改在像素与频域留下的微弱异常痕迹。传统端到端大模型虽在标准数据集上表现优异,却因训练域与真实场景失配、计算开销高、缺乏可解释性而难以落地。本文聚焦于工程可复现的实践路径,提出‘人脸定位→频域伪造特征提取(Xception-FCN + Frequency-Aware Masking)→轻量分类决策’三段式解耦架构,兼顾精度、延迟与可解释性。该方案已在边缘设备(Jetson Orin NX)实现单帧<48ms

weixin_33437929的博客 307

XMPP 和 socket 的区别

xmpp 是 聊天框架 就像qq 微信 一样 , 用xmpp 可以开发一个 即使通讯的聊天的软件  socket 是网络长连接 就像http 数据请求 一样 ,用socket 可以实现一个 时时的网络请求 , 比如 , 直播间列表 中 , 有一个人开直播 , 服务器就通知客户端 刷新数据;

于海明的博客 5449

2024“华为杯”中国研究生数学建模竞赛(A题)深度剖析_数学建模完整过程+详细思路+代码全解析

目标是优化风力涡轮机的功率调度,使其在给定的实时风速数据下,最小化涡轮机关键组件(如塔架和主轴)的疲劳损伤。问题的挑战在于,考虑通信延迟和测量噪声的同时,要确保功率输出与风速变化的响应快速且准确。

2401_82549447的博客 6628

关于即时通讯的一点记录

即时通讯实现方式: 第一类:基于应用层的协议或第三方库 1.第三方:环信,融云,推送等 2.应用层协议: XMPP协议(推荐): Smack(客户端)+Openfire(服务端)(基于应用层的xmpp协议,其实XMPP 是一种很类似于http协议的一种数据传输协议,它的过程就如同“解包装--〉包装”的过程,用户只需要明白它接收的类型,并理解它返回的类型

源码分享的博客 959

Python实战:用MNE-Python从脑电数据中提取P300成分(附完整代码)

本文提供了一份使用MNE-Python从脑电数据中提取P300成分的完整实战指南。通过详细的代码示例,系统讲解了从环境搭建、数据加载、预处理(滤波、分段、伪迹剔除)到P300波形提取、可视化与参数量化的全流程。重点介绍了如何利用零相位滤波和叠加平均技术,从EEG信号中精准分离出反映认知加工的P300事件相关电位,适用于脑机接口与认知神经科学研究。

weixin_29240343的博客 338

Python爬虫实战:爬取小红书数据做爆款分析,我破解了签名加密+移动端反爬(附完整代码)

爬取小红书数据的核心,不是“简单的HTTP请求”,而是“理解移动端接口的加密逻辑和反爬规则”——从x-s/x-t签名破解到移动端UA伪装,再到行为模拟,每一步都是对移动端爬虫的深度理解。这套方案的价值在于,不仅能稳定抓取小红书数据,还能从数据中拆解出有价值的爆款特征,真正把“数据”变成“洞察”。对程序员来说,小红书爬虫不仅是技术练手,更是了解新媒体平台数据逻辑的窗口。希望这篇分享能帮到做新媒体分析或爬虫进阶的小伙伴,也欢迎在评论区交流小红书反爬和爆款分析的更多技巧!

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2058

XMPP协议之Socket5 Bytestream文件传输

SOCK5流协商的建立一部分通过XMPP XML流,一部分通过一个独立的socket实际的文件传输发生在创建的socket上。第一步:[发送端] 发送SI(流协商)包AA:to=test@dd.antkingdom.com/Exodus>http://jabber.org/protocol/bytestreams[接收端] 接收A: 发送SI响应包BB:jjl@dd.antkingdom.

kang9557的专栏 962

【QGIS】软件下载安装及GIS4WRF插件使用

【QGIS】软件下载安装及GIS4WRF插件使用

WW、forever的博客 1799

iOS程序员的成才之路

上班第一天,公司的电脑还没到,所以闲着无聊,准备在博客里面留下自己的足迹。 大概看了一下公司的需求,需要我负责的可能是即时通讯这一块,所以在这里我复习一下即时通讯。 即时通讯有两大协议:①socket长链接协议  ②xmpp协议。 一般我们都是用环信的SDK来集成即时通讯,包括登录,注册,聊天等一些功能。 具体集成步骤可以参考环信的官方文档  http://docs.easemob.co

shenyangfire的博客 276

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

IM 四大协议

四大协议(概述) IMPP(Instant Messaging And PresenceProtocol):即时信息和空间协议。 XMPP(Extensible Messaging and Presence Protocol):可扩展消息与存在协议。 特点xml语言(理解其缺点优点) SIP(Session Initialion Protocol):回话发起协议 SIMPLE(SIP for I...

活着就是应该在解放自我 1975

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

C语言实现698通信协议,关于即时通讯的一点记录

即时通讯实现方式:第一类:基于应用层的协议或第三方库1.第三方:环信,融云,推送等2.应用层协议:XMPP协议(推荐): Smack(客户端)+Openfire(服务端)(基于应用层的xmpp协议,其实XMPP 是一种很类似于http协议的一种数据传输协议,它的过程就如同“解包装--〉包装”的过程,用户只需要明白它接收的类型,并理解它返回的类型,就可以很好的利用xmpp来进行数据通讯。)MQTT协...

weixin_29378975的博客 1496

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

stream:error (text) 错误分析

xmpp 聊天,用asmack jar包,当用户登录后,

银灵子 3123

XMPP客户端库资料

最近需要做一个IM即时聊天工具项目, 上网搜集了一些关于XMPP方面的资料, 将C/C++客户端库都列出来了, 由于E文水平不好, 可能有许不多正确地方, 见笑了!!! gloox gloox是一个稳定功能完整的XMPP客户端库, 使用ANSI C++编写, 使用它编写标准客户非常容易, 并能将Jabber/XMPP功能集成到现有的应用程序中, gloox遵循GNU GPL许可协议,

ywwgolife的博客 312

基于XMPP协议的即时通讯工具的服务器端实现

 基于XMPP协议的即时通讯工具的服务器端实现,下面将要来共同学习一下基于XMPP协议的即时通讯工具的客户端实现原理,本篇将主要分析agsXMPPP客户端用户登录认证的实现原理(关于XMPP协议与agsXMPP的相关知识请认真看第一篇中的附件)1、主窗体初始化时将订阅一大堆的事件  // 读取接收到的XML流信息            XmppCon.OnReadXml            

bisword的专栏 4234

xmpp版即时聊天

1.即时聊天简单介绍,socket通信 1.即时聊天的解决方案 * socket: * xmpp:xmpp+openfire+asmack 2.环信--------即时通讯云领导者:http://www.easemob.com/ 3.socket:套接字,连接需要`ip`和`端口`,分为tcp和udp两种形式      代码   2.xmpp协议的介绍

LLLigj博客 6098
上一篇: ios 技术境地
下一篇: 即时通讯:socket 使用
韩小城
博客等级 码龄12年 37粉丝 22原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值