下载此文档

xnet通讯简述.ppt


文档分类:通信/电子 | 页数:约27页 举报非法文档有奖
1/27
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/27 下载此文档
文档列表 文档介绍
目录
Xnet原理概述
XNet开发关注点
单XNET服务器
XNET日志分析;
XNET服务器级联
第一页,共27页。
一、XNet原理概述
第二页,共27页。
XNET原理概述-1
XNET是我公司自主开发的通讯中间件:
采用TCP/IP通讯协议,长连接,异步方式;
功能:
建立,断开连接,发送接收数据;
支持逻辑寻址,编程时不需考虑对方地址,支持单播,多播的发送方式;
发送中自动压缩;
在线联机检测,发现断连可自动重连;
支持XNET服务器多层级联;
支持数据优先级设置;
第三页,共27页。
XNET原理概述-2
所有使用XNET通讯的程序要求采用TXNetData打包;
XNET报文结构:
系统区+用户区
系统区由18位固定长度的包头:
Source\0 + Target\0 + Title\0 + Mark\0
XNET逻辑名称:xnet通讯时寻址的主要依据,逻辑名必须唯一;
对于XNET服务器本身,服务器逻辑名是域名(域名为启动xnet时的配置名如xnetd boc 12300,域名即为boc);
对于XNET客户端(使用xnet通讯的程序),逻辑名(终端名)为“”,应用逻辑名对于后台应用进程是写在配置文件或者固化在代码中(该类程序一般不能起多个),而对于客户端,一般都会有很多客户端同时登录,一般由服务器自动分配;
第四页,共27页。
XNET原理概述-3
Xnet内部逻辑名称可用来判断数据返回路径,对程序员而言,该名字能简洁地辨识出数据的来源和去向,便于查看日志;(故要求程序员在命名程序的逻辑名时注意要能简洁地标识当前程序)
从xnet日志看,用******@:111 来表示,xxx是xnet逻辑名称,用点号分开,是IP地址,111是端口号(端口号随机分配),逻辑名和ip、端口做了绑定, xnet根据逻辑名可发送信息给相应客户端,
XNET寻址:支持逻辑寻址和title寻址,我们一般常用的还是title寻址;
第五页,共27页。
XNET原理概述-4
Title命名规则:
Dot分割连续数字字母,大小写敏感,严禁使用空格和除通配符(*,>)外的其它特殊字符;
一般目前我们使用title结构是“”(如)
单域通配符(*),如Ps.*则等可匹配,但不能匹配;后者需通过多域匹配符(>)来实现;
XNET发包类型:
单播:XNET服务器将该包转发给关注该包的第一个连接;
多播: XNET服务器将该包转发给关注该包的所有连接;
返回包:XNET客户端A将收到的包,反馈给发该包的连接,此时XNET服务器直接将Source和Target调换,无需通过title寻址;
第六页,共27页。
XNET原理概述-5
基于Title进行逻辑寻址;
请求者(发包方)和响应者(收包方)均通过配置ip,端口连接到xnet服务器;
响应者连接上XNet后,注册Title(SetCommand设置为xcRegTitle,SetData方法打包注册title字符串),向XNET注册关注的title,可多个,支持通配;
请求方构造TXNetData对象,调用SetData属性设置包内容,SetTitle方法设置包Title,SetCommand方法设置包类型(单播,多播),进行发送;
Xnet服务器收到单播或广播包后,转发给注册该Title的连接(即响应者);
第七页,共27页。
XNET原理概述-6
XNET级联拓扑图
第八页,共27页。
二、开发关注点
第九页,共27页。
开发关注点-1
做好Title规划:
开发前事先规划好项目需要有多少个XNET,是否需部署级联(级联可分散XNET压力);
后台应用间,后台应用和客户端间注册Title需清晰区分开;
后台应用间,后台应用和客户端间发送xnet包,通讯时,发包title按目的应用的title设置;
如:
存在后台应用app1,app2分别注册title:app1.>;和app2.>;
客户端appc1,注册title: appc1.>;
则app1发包给app2,则可发送app2.>的包;
app2发包给客户端appc1,则可发送app2.>的包;
第十页,共27页。

xnet通讯简述 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数27
  • 收藏数0 收藏
  • 顶次数0
  • 上传人977562398
  • 文件大小438 KB
  • 时间2021-12-03