`
- 浏览:
19711 次
- 性别:
- 来自:
信阳
-
一、引文
“协议”,英文为 protocol,解释为:计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则。无规矩不成方圆,改一下无协议就无通信,只有制定一套特定的协议,让大家在接收信息和发送信息的时候有一个统一的标准,人们之间日常的交流都遵守着特定的协议,像古代的四书五经,纲常伦理,也都是在学习一种协议,为什么古代妇女上不了厅堂,因为她们不懂得协议或者说协议上不允许她们这么做,说了这么多,就是想说没有协议我们的世界将会是一场无声的电影,因为大家都听不懂对方的话,为什么秦始皇有些伟大,why?他统一了货币啊,制订了协议,不然你的钱到了其它地方就成了纸,那是多么的悲剧啊,所以我断言,通货膨胀归根结底问题在于协议出现了问题,说的更大点,拉登与美国的战争不也是协议的问题,世界之大,莫非协议啊。
好吧,上面讲了那么多,还是来点实的吧,下面介绍一下我了解的通信协议。
二.通信协议
‘通信’这个名词顾名思义,就是两端客户在进行信息交互的过程,在这个过程中需要注意的是通信的方式以及格式问题,就好比打电话,方式就好比是用固定电话还是手机,格式就可以是电话接通后,被呼叫方会先说一句“喂”代表告诉呼叫方通信可以开始了,如果被呼叫方不知道对方是谁,还会问一句“who”,然后呼叫方就要自报家门,如果是呼叫方先问一句“who”, 被呼叫方肯定会感到惊讶,因为对方没有遵从协议,此时通信就有可能会被终止,人与人之间的通信存在随机应变,而电脑也就只会用随机变量,而且谁也不知道它的具体值,不然中彩票的人就太多了,计算机与计算机之间的通信需要人为的制定一套“规矩”,通信过程总体会分成两段,客户机—>服务器,服务器—>客户机,但协议一般都会基本一样,目的是让计算机能正确的发送和解析信息以实现远程交互,每一套通信体系一般都会有自己的通信协议,所以想要实现网络通信,首先得制定一份自己的通信协议,当然‘山寨’一下也可以。
三、XMPP VS BYTE Stream
1)XMPP
XMPP(Extensible Messaging and Presence Protocol)是一种以XML为基础的开放式实时通信协议,是经由互联网工程工作小组(IETF)通过的互联网标准。通信协议的核心其实就是消息的格式组成,XMPP消息类型主要是通过一系列的命令符,格式组成主要是:<msg>..<content>..</content>..</msg>
任何一个命令或者是一条信息都是由一对对对称的<type>..</type>符号组成,
下面简单介绍几组以上特定格式信息:
1. 用户名验证信息 :<msg><userName >...</userName></msg>
2. 密码验证信息 :<msg>< passWord >...</ passWord ></msg>
3. 登陆成功信息 :<msg><loginReply>...</loginReply></msg>
4. 聊天信息 :<msg><Rec>...</Rec><Con>...</Con></msg>
2)BYTE Stream
字节流协议,就是把所有的不同类型的信息都转化为字节的形式,这与网络中直接的字节传输不同,字节流协议会在传输之前进行一定的处理。字节流的信息结构主要包括以下两个部分:
1. 信息头:信息总长度(int)+信息类型(byte)+用户名(30byte)+[接受者(30byte)]
2. 信息体:主要包括具体信息的内容
下面是要实现两个客户机的交互:
客户机1 服务器 客户机2
1. 登陆 (0X01)..........应答(0X11)................. 登陆 (0X01)
2. 注册 (0X02)..........应答(0X12)................. 注册 (0X02)
3. 聊天 (0X03)..........应答(0X13)................. 聊天 (0X03)
4. 视频 (0X04)..........应答(0X14)................. 视频(0X04)
3)区别
1.这两种协议方式用起来都比较的比较方便;
2.当需要大规模的扩展信息的类型时,XMPP信息将会变得特别的繁长,解析也比较的麻烦,而对于字节流协议来说就方便很多了;
3.网络上信息的传输最终都会转化为字节的传输,XMPP信息在解析的时候,特别是在解析中文的时候容易出现乱码问题(解决方法肯定有,等找到了再贴上),字节流信息因为是事先定义好了字节的长度,只要准确的根据协议进行解析就可以了;
4.两种协议信息的读取过程必须特别注意,因为读取到的都是字节,所以很容易出现字节的缺失。
以上只是一点点自己的想法,还需要更多的拓展与改进.........
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
这是安全协议论文的论文,主要分析的是SSL协议,大概10000字符。
汽车1939协议论文,很好地分析了数据结构
最新发表论文版权转让协议论文版权转让通用版合同WORD样本.docx
新巴塞尔协议论文.doc
MIL_STD_1553B数据总线协议论文.doc
非常不错的论文,转载哈,特别声明,是转载哦 非常不错的论文,转载哈,特别声明,是转载哦非常不错的论文,转载哈,特别声明,是转载哦非常不错的论文,转载哈,特别声明,是转载哦
优质资料(2021-2022年收藏)设计单片机通讯协议论文非常经典.docx
在分布式领域raft协议以简单和易理解的原则讲解了raft协议,并且了解理论的支持有助于在分布式领域走得更远
这是一个实现串口通信的论文 很有用 串口协议
DCTCP经典论文,论文分析了云数据中心TCP协议存在的不足,设计了DCTCP协议。
manet协议的一些论文
提出了一种基于IPv6的城市车载网移动切换协议。本协议提出了城市车载网络体系结构, 车辆节点在移动过程中由家乡地址唯一标志, 无须转交地址, 因此节省了转交地址配置时间和代价, 从而缩短了移动切换时间, 降低了移动...
BGP-4路由协议的安全性对于保障整个网络安全、可靠运行具有重要意义。现有的模糊测试方法在对BGP-4协议测试时存在状态测试困难、测试用例冗余等问题。为了解决这些问题,提出了一种基于有限状态机的BGP-4协议模糊...
采用一种编程语言VB或VC,编写一个负责从下位机接收数据,并进行 传输的远程数据传输系统: ...系统能按照UDP协议的要求,将接收到的数据传送到局域网内 的任何一台电脑,也能接受网内任何一台电脑发送过来的数 据;
基于DNS协议分析的流量监测系统,罗海峰,,本文结合现有网络协议分析与流量监测技术,在广域网环境下,设计出一个新的基于DNS协议分析的网络流量监测系统,通过使用流量监控
为了使密钥协商协议能够抵抗主动攻击,提出了一个可认证的无证书三方密钥协商协议。首先分析现有密钥协商协议的特点,然后以无证书密码学理论为基础设计一个安全的三方密钥协商协议。该协议只需要一轮消息交换就可以...
网络协议本质论
interenet的通信协议论文interenet的通信协议论文interenet的通信协议论文
简析了Telnet协议的组成,包括网络虚拟终端、选项协商和对称性,结合协议原理,在VC 6.0环境下实现了其在网络监控系统中的应用。
在分析层次LEACH协议的基础上,提出了LEACH协议算法存在的问题,并相应地修改了成簇算法,增强了算法的健壮性。节点能量耗尽是导致无线传感器网络生命周期缩短的主要因素,因此在选择簇首时根据剩余能量最大的节点...