CN108449262A - 一种即时通信数据的传输方法 - Google Patents
一种即时通信数据的传输方法 Download PDFInfo
- Publication number
- CN108449262A CN108449262A CN201810305396.9A CN201810305396A CN108449262A CN 108449262 A CN108449262 A CN 108449262A CN 201810305396 A CN201810305396 A CN 201810305396A CN 108449262 A CN108449262 A CN 108449262A
- Authority
- CN
- China
- Prior art keywords
- message
- client
- data
- byte
- bytes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种即时通信数据的传输方法。所述方法包括:采用二进制码流协议作为即时通信数据传输方式;每条消息由消息头和消息体组成;使用者通过客户端程序输入数据,随后客户端程序将数据按照协议规定生成为标准消息数据流,并将该消息数据流上传到服务器;服务器接收到发送客户端上传的消息后,向消息发送客户端确认已接收,并将消息流发送至接收客户端;接收客户端接收到服务器分发的消息后,向服务器进行确认,并将接收到的二进制消息数据流按照协议规定转换为使用者能识别的文字、图片、声音或视频。本发明的一种即时通信数据的传输方法能节约数据传输量,增加传输可靠性,更适应移动网络环境,且能提升数据处理即时性。
Description
技术领域
本发明涉及一种即时通信数据的传输方法。
背景技术
目前在即时通信传输领域应用最广的是基于XML等架构的开放式结构化文本类协议。协议中通常定义了三个角色,客户端,服务器,网关。服务器同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信)等。基本的网络形式是单客户端通过TCP/IP连接到单服务器,然后在之上传输结构化的文本数据。
当前常用的即时通信协议存在以下缺点:
1.文本协议在即时通信传输中,占用数据带宽过大,特别是在手机移动网络不稳定情况下,容易造成网络数据丢失,从而增加tcp重传次数,加重运营商网络负载。
2.文本协议本身无法传输二进制数据,比如音频、视频、图片格式数据流,在传输这些数据时需要进行base64编码,而base64编码一方面会增大数据量,另一方面会增加传输双方编解码时间,降低消息传输即时性。
针对相关技术中存在的上述问题,目前尚未提出有效的解决方案。
发明内容
本发明的目的是提供了能节约数据传输量,增加传输可靠性,更适应移动网络环境,且能提升数据处理即时性的一种即时通信数据的传输方法。
本发明的基本构思是:
针对当前文本类传输协议缺点,本发明采用二进制码流协议作为即时通信数据传输方式。该方式与文本协议比较,可以节约数据传输量,增加传输可靠性,更适应移动网络环境。由于协议本身为二进制数据格式,原生支持音频、视频、图片等格式数据,无需特别处理,从而提升数据处理即时性。
实现描述:
用户之间的即时通信的内容一般包括文本、表情、图片、音频、视频等类型。这些数据在计算机内存中均为二进制形式。在TCP / IP网络进行数据传输时,也是使用二进制格式。用户终端与服务器数据传输中,除包含聊天内容本身信息,还包括附带信息,如消息发送者、接收人、长度、类型等内容,所设计的协议需要将这些不同格式、不同类型数据进行分别标识,以便终端和服务器解析出原始可读内容。
在协议层面传输的数据格式分解为固定字节大小和不固定字节大小内容,而固定字节又进一步分解为单字节、2字节、4字节,不固定字节大小需要由附加字段标识出长度,即长度+实际内容。
1.消息结构:
每条消息由消息头和消息体组成,消息头含有该消息共同内容,包括长度、类型、发送者、接收者,消息体则根据不同内容类型约定。消息结构如下:
2.消息生成流程:
使用者通过客户端程序输入文字数据或者上传图片、语音、视频文件,随后客户端程序将客户输入的消息数据按照协议规定生成为标准消息数据流,并将该消息数据流上传到服务器。
3.消息交互流程:
服务器接收到发送客户端上传的消息后,向消息发送客户端确认已接收,并将消息流发送至接收客户端。接收客户端接收到服务器分发的消息后,向服务器进行确认,并将接收到的二进制消息数据流按照协议规定转换为使用者能识别的文字、图片、声音或视频。
4.运行环境和过程:
本发明方法可作为一个标准的软件程序实现运行,具体的运行环境和过程如下:
1.1.运行过程描述
程序首先被计算机操作系统加载,从磁盘中复制到寄存器中,寄存器将客户端或服务器程序复制到主存中进行存储。程序运行过程中,CPU执行程序编译后的机器指令,指令的结果是将程序生成的字节流由内存复制到寄存器,寄存器再将结果复制到网络IO设备(计算机网卡)上进行传输。
1.2.客户端软件运行环境要求
1.3.程序运行的网络环境
支持:局域网、广域网、VPN
服务器端:保障下行带宽20M,上行带宽10M
PC客户端:10M网络应用环境
移动终端:3G/4G网络
与前述现有同类产品相比,本发明的一种即时通信数据的传输方法能节约数据传输量,增加传输可靠性,更适应移动网络环境,且能提升数据处理即时性。
本发明的内容结合以下实施例作更进一步的说明,但本发明的内容不仅限于实施例中所涉及的内容。
附图说明
图1是根据本发明实施例的一种即时通信数据的传输方法的流程图。
具体实施方式
如图1所示,本实施例中所述的一种即时通信数据的传输方法,在包括即时通信方法中定义的客户端、服务器,通信能够在这两者的任意两个组合之间双向发生,其特征在于,所述方法包括:
发送一段消息,采用二进制码流协议作为即时通信数据传输方式;
每条消息由消息头和消息体组成,消息头含有该消息共同内容,包括长度、类型、发送者、接收者,消息体则根据各种类型约定;
使用者通过客户端程序输入文字数据或者上传图片、语音、视频文件,随后客户端程序将客户输入的消息数据按照协议规定生成为标准消息数据流,并将该消息数据流上传到服务器;
服务器接收到发送客户端上传的消息后,向消息发送客户端确认已接收,并将消息流发送至接收客户端;
接收客户端接收到服务器分发的消息后,向服务器进行确认,并将接收到的二进制消息数据流按照协议规定转换为使用者能识别的文字、图片、声音或视频。
也就是说,所述的一种即时通信数据的传输方法,在包括方法中定义的客户端、服务器,通信能够在这两者的任意两个组合之间双向发生,其特征在于:
发送一段文字/语音/图片/视频消息,采用二进制协议作为即时通信数据传输方式;
每条消息由消息头和消息体组成,消息头含有该消息共同内容,包括长度、类型、发送者、接收者,消息体则根据不内容类型约定;
每条消息由服务器中转完成,即用户A终端先将消息发送至服务器,服务器再转发给用户B终端,用户B终端对内容进行解码,将消息还原为可读文字展现出来;
用户A终端除了需要将消息传输到服务器外,还需要一些附带信息,如发送者id、接收者id、消息类型、消息总长度;而服务器在分发该消息到用B终端时,也需要传输这些附带信息;
服务器接收到发送客户端上传的消息后,需要向客户端确认已接收,接收客户端接收到服务器分发的消息后,也需要向服务器进行确认。
本实施中消息头的格式为:消息头总共48个字节(0-47),分为五个部分,0-3字节内容为消息总长度,4-7字节内容为消息类,8-11字节内容为发送者id,12-15字节内容为接收者id,16-47字节内容为消息id号。详见下表:
本实施中用户消息的消息体格式为:消息体总长为不定字节数,其中头部4个字节(0-3)的内容固定为消息内容的总长度,后续的字节则为消息内容的二进制编码。详见下表:
本实施中确认消息的消息体格式为:消息体总长为4个字节(0-3),内容为消息接收的状态,规定值0为成功。详见下表:
字节数 | 值(16进制) | 含义 |
4 | 0 | 状态,0-成功 |
Claims (4)
1.一种即时通信数据的传输方法,在包括即时通信方法中定义的客户端、服务器,通信能够在这两者的任意两个组合之间双向发生,其特征在于,所述方法包括:
发送一段消息,采用二进制码流协议作为即时通信数据传输方式;
每条消息由消息头和消息体组成,消息头含有该消息共同内容,包括长度、类型、发送者、接收者,消息体则根据各种类型约定;
使用者通过客户端程序输入文字数据或者上传图片、语音、视频文件,随后客户端程序将客户输入的消息数据按照协议规定生成为标准消息数据流,并将该消息数据流上传到服务器;
服务器接收到发送客户端上传的消息后,向消息发送客户端确认已接收,并将消息流发送至接收客户端;
接收客户端接收到服务器分发的消息后,向服务器进行确认,并将接收到的二进制消息数据流按照协议规定转换为使用者能识别的文字、图片、声音或视频。
2.如权利要求1所述的一种即时通信数据的传输方法,其特征是定义消息头具体格式为:所述消息头总共48个字节,即0字节至47字节,分为五个部分,0字节至3字节内容为消息总长度,4字节至7字节内容为消息类,8字节至11字节内容为发送者id,12字节至15字节内容为接收者id,16字节至47字节内容为消息id号。
3.如权利要求1所述的一种即时通信数据的传输方法,其特征是定义消息体具体格式为:所述消息体总长为不定字节数,其中头部4个字节,即0字节至3字节的内容固定为消息内容的总长度,后续的字节则为消息内容的二进制编码。
4.如权利要求3所述的一种即时通信数据的传输方法,其特征是定义确认消息的消息体格式为:消息体总长为4个字节,即0字节至3字节,内容为消息接收的状态,规定值0为成功。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305396.9A CN108449262A (zh) | 2018-04-08 | 2018-04-08 | 一种即时通信数据的传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810305396.9A CN108449262A (zh) | 2018-04-08 | 2018-04-08 | 一种即时通信数据的传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108449262A true CN108449262A (zh) | 2018-08-24 |
Family
ID=63198637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810305396.9A Pending CN108449262A (zh) | 2018-04-08 | 2018-04-08 | 一种即时通信数据的传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108449262A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110474834A (zh) * | 2019-06-28 | 2019-11-19 | 深圳快胜时尚科技有限公司 | 一种保持即时通讯实时性的方法、电子设备及存储介质 |
CN110912803A (zh) * | 2019-11-14 | 2020-03-24 | 富途网络科技(深圳)有限公司 | 一种im消息传输方法及终端 |
CN111314350A (zh) * | 2020-02-19 | 2020-06-19 | 深圳中兴网信科技有限公司 | 图像存储系统、存储方法、调用系统和调用方法 |
CN113923177A (zh) * | 2021-09-30 | 2022-01-11 | 完美世界(北京)软件科技发展有限公司 | 即时通讯的语音处理系统及方法、装置 |
CN114697376A (zh) * | 2022-03-16 | 2022-07-01 | 浪潮云信息技术股份公司 | 一种超大消息传输方法及装置 |
CN114757145A (zh) * | 2022-03-21 | 2022-07-15 | 慧之安信息技术股份有限公司 | 一种判断消息字符集编码的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1897580A (zh) * | 2006-06-23 | 2007-01-17 | 北京金山数字娱乐科技有限公司 | 一种在网络游戏即时聊天中应用多样性信息的系统与方法 |
US20120011207A1 (en) * | 2010-07-09 | 2012-01-12 | Robert Paul Morris | Methods, systems, and computer program products for processing a request for a resource in a communication |
CN103281311A (zh) * | 2013-05-12 | 2013-09-04 | 南京载玄信息科技有限公司 | 一种使用Protobuf描述的物联网协议解析方法 |
CN103812756A (zh) * | 2012-11-12 | 2014-05-21 | 深圳中兴网信科技有限公司 | 一种基于网页的即时通信的方法及装置 |
CN105072266A (zh) * | 2015-07-31 | 2015-11-18 | 小米科技有限责任公司 | 实现即时聊天的方法、装置及终端设备 |
CN105337968A (zh) * | 2015-10-19 | 2016-02-17 | 江苏中威科技软件系统有限公司 | 一种跨平台通讯协议代码的转换方法及其系统 |
-
2018
- 2018-04-08 CN CN201810305396.9A patent/CN108449262A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1897580A (zh) * | 2006-06-23 | 2007-01-17 | 北京金山数字娱乐科技有限公司 | 一种在网络游戏即时聊天中应用多样性信息的系统与方法 |
US20120011207A1 (en) * | 2010-07-09 | 2012-01-12 | Robert Paul Morris | Methods, systems, and computer program products for processing a request for a resource in a communication |
CN103812756A (zh) * | 2012-11-12 | 2014-05-21 | 深圳中兴网信科技有限公司 | 一种基于网页的即时通信的方法及装置 |
CN103281311A (zh) * | 2013-05-12 | 2013-09-04 | 南京载玄信息科技有限公司 | 一种使用Protobuf描述的物联网协议解析方法 |
CN105072266A (zh) * | 2015-07-31 | 2015-11-18 | 小米科技有限责任公司 | 实现即时聊天的方法、装置及终端设备 |
CN105337968A (zh) * | 2015-10-19 | 2016-02-17 | 江苏中威科技软件系统有限公司 | 一种跨平台通讯协议代码的转换方法及其系统 |
Non-Patent Citations (2)
Title |
---|
刘晓建: "计算机操作系统", 《计算机操作系统》 * |
沈瑞琴: "多媒体通信", 《多媒体通信》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110474834A (zh) * | 2019-06-28 | 2019-11-19 | 深圳快胜时尚科技有限公司 | 一种保持即时通讯实时性的方法、电子设备及存储介质 |
CN110912803A (zh) * | 2019-11-14 | 2020-03-24 | 富途网络科技(深圳)有限公司 | 一种im消息传输方法及终端 |
CN110912803B (zh) * | 2019-11-14 | 2022-03-08 | 富途网络科技(深圳)有限公司 | 一种im消息传输方法及终端 |
CN111314350A (zh) * | 2020-02-19 | 2020-06-19 | 深圳中兴网信科技有限公司 | 图像存储系统、存储方法、调用系统和调用方法 |
CN113923177A (zh) * | 2021-09-30 | 2022-01-11 | 完美世界(北京)软件科技发展有限公司 | 即时通讯的语音处理系统及方法、装置 |
CN113923177B (zh) * | 2021-09-30 | 2023-01-06 | 完美世界(北京)软件科技发展有限公司 | 即时通讯的语音处理系统及方法、装置 |
CN114697376A (zh) * | 2022-03-16 | 2022-07-01 | 浪潮云信息技术股份公司 | 一种超大消息传输方法及装置 |
CN114757145A (zh) * | 2022-03-21 | 2022-07-15 | 慧之安信息技术股份有限公司 | 一种判断消息字符集编码的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108449262A (zh) | 一种即时通信数据的传输方法 | |
EP1528710B1 (en) | A publish-subscribe system | |
JP4334617B2 (ja) | 無線装置を介した電子メッセージ通信システム | |
US8316095B1 (en) | Computer-implemented system and method for facilitating conversation within a group through heterogeneous message delivery | |
KR101291324B1 (ko) | 확장된 메시징 플랫폼 | |
US20110281594A1 (en) | Consolidating international short message service messages destined to multiple recipients | |
CN103532828B (zh) | 一种基于扩展的xmpp协议的富文本格式实现系统和方法 | |
CN101223746B (zh) | 寻呼模式消息收发 | |
CN106656751A (zh) | 一种数据通信的方法及装置 | |
CN109450908A (zh) | 基于分布式消息的通信方法 | |
US7889760B2 (en) | Systems and methods for sending binary, file contents, and other information, across SIP info and text communication channels | |
CN101156386A (zh) | 实现信息传送业务的方法和系统及终端 | |
EP2087671B1 (en) | Delivery reports in a communication system | |
WO2012003668A1 (zh) | 一种消息发送方法、系统及互通服务器 | |
KR20080043103A (ko) | 통합 ip 메시지 서비스와 단문 메시지 서비스 간에인터워킹 시스템 및 방법 | |
US8537824B2 (en) | Method, system and devices for processing messages in multimedia messaging service | |
CN206226468U (zh) | 基于websocket实现的即时通讯系统 | |
US20070288564A1 (en) | Handling a message | |
WO2010009642A1 (zh) | 多企业间的短信实现方法、系统和设备 | |
CN104394068B (zh) | 一种基于商用客户端的短波E‑mail发送、接收以及通信方法 | |
CN107145535A (zh) | 即时通信方法及装置和服务器 | |
CN110071925B (zh) | 数据传输方法和相应的服务器、计算机可读存储介质 | |
CN103973794A (zh) | 一种基于分布式网络传输中标记语言对象访问方法 | |
US8176129B2 (en) | System and method of sending compressed html messages over telephony protocol | |
AU2021103643A4 (en) | A system for exchanging media between entities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180824 |