传奇3网关之间的通讯原理
2008-11-18 15:50
225 查看
首先是LoginGate(登录网关)
LoginGate<->LoginServer,LoginGate开启监听后,会启动一个Timer控件,2秒左右向LoginServer发送"%--$",可能是判断是否与LoginServer断开连接,LoginServer接收到%--$,会返回一个"%++$"的信息给LoginGate,表示已经收到消息了。
Mir3Client<->LoginGate<->LoginServer,客户端连接到LoginGate时,LG会向LS发送一条以%O+Mir3ClientSocket句柄+"/"+Mir3Client的IP+$,当Mir3Client发送账号密码后,LG会向LS发送"%A"+"Mir3ClientSocket句柄"+"/"+收到的消息+"$",然后LS处理该封包后,返回给LG一条这样的消息"%"+"Mir3ClientSocket"+"/"+"回溃给Mir3Client的消息"+"$",然后,LG会把收到的回溃消息处理后发送给Mir3Client,当Mir3Client断开连接的时候,LG会发一个"%X"+"Mir3ClientSocket句柄"+"$"给LS说明该Socket断开连接。
其次是SelGate(选人网关)
Mir3Client<->SelGate<->DBServer
SG<->DB:5100进行通讯他们之间也会像LG<->LS之间发送"%--$"与"%++$",所有从SG->DB的信息都以"%"开头,以"$"结束。当Mir3Client首次连接SG的时候,SG->DB("%O"+"Socket句柄"+"/"+"Mir3Client的IP"+"$"),DB会确定是哪个Mir3,当Mir3Client选定分区后,SG->DB("%A+"句柄"+"/"+"收到的消息"+"$",DB处理后->SG("%"+"句柄"+"/"+"要发到Mir3Client的内容"+"$"),SG处理消息后发送给Mir3Client,当Client断开后发一个"%X"+"句柄"+"$"到DB表示这个句柄断开了。
最后是GameGate(游戏网关)
还在研究中。呼呼。研究完了。在完善这部分。
LoginGate<->LoginServer,LoginGate开启监听后,会启动一个Timer控件,2秒左右向LoginServer发送"%--$",可能是判断是否与LoginServer断开连接,LoginServer接收到%--$,会返回一个"%++$"的信息给LoginGate,表示已经收到消息了。
Mir3Client<->LoginGate<->LoginServer,客户端连接到LoginGate时,LG会向LS发送一条以%O+Mir3ClientSocket句柄+"/"+Mir3Client的IP+$,当Mir3Client发送账号密码后,LG会向LS发送"%A"+"Mir3ClientSocket句柄"+"/"+收到的消息+"$",然后LS处理该封包后,返回给LG一条这样的消息"%"+"Mir3ClientSocket"+"/"+"回溃给Mir3Client的消息"+"$",然后,LG会把收到的回溃消息处理后发送给Mir3Client,当Mir3Client断开连接的时候,LG会发一个"%X"+"Mir3ClientSocket句柄"+"$"给LS说明该Socket断开连接。
其次是SelGate(选人网关)
Mir3Client<->SelGate<->DBServer
SG<->DB:5100进行通讯他们之间也会像LG<->LS之间发送"%--$"与"%++$",所有从SG->DB的信息都以"%"开头,以"$"结束。当Mir3Client首次连接SG的时候,SG->DB("%O"+"Socket句柄"+"/"+"Mir3Client的IP"+"$"),DB会确定是哪个Mir3,当Mir3Client选定分区后,SG->DB("%A+"句柄"+"/"+"收到的消息"+"$",DB处理后->SG("%"+"句柄"+"/"+"要发到Mir3Client的内容"+"$"),SG处理消息后发送给Mir3Client,当Client断开后发一个"%X"+"句柄"+"$"到DB表示这个句柄断开了。
最后是GameGate(游戏网关)
还在研究中。呼呼。研究完了。在完善这部分。
相关文章推荐
- 网络-两远程客户端之间的通讯原理-Java基础-Java-编程开发
- QQ聊天通讯原理
- UDP聊天 网关原理
- 紫金桥组态软件和厦门四信DTU通讯原理及配置
- Web开发,浏览器通讯原理及流程那点事,你应该听说下
- C++/CLI程序进程之间的通讯
- java线程基础巩固---多Produce多Consume之间的通讯导致出现程序假死的原因分析
- 详解SLB、EIP、NAT网关之间区别, 合理选择云上公网入口
- 十六、APP与服务器之间的交互原理、MUI Ajax使用
- iOS app之间的通讯 相互调用
- Web开发,浏览器通讯原理及流程那点事,你应该听说下
- vbox中如何设置两个虚拟机之间的通讯
- 私有IP通过网关代理上网的原理
- Winform 进程之间通讯的几种方法
- c# 进程间同步实现 进程之间通讯的几种方法
- 实例解析C++/CLI程序进程之间的通讯
- 实现主机和虚拟机之间的虚拟串口通讯
- unity3D中Socket链接与服务之间的通讯测试程序
- 声波通讯的原理
- VirtualBox下的ubuntu虚拟机之间通讯的网络配置