当前位置: 首页 > 工具软件 > IPMsg4Android > 使用案例 >

IPMSG协议分析第一步

白青青
2023-12-01

因为目前事情一堆,也不打算对IPMSG的源代码看的很详细的。毕竟ALC的环境是android。

 

找了一些网上有关IPMSG协议的文章,目前学习的成果如下:

 

1、IPMSG发送命令以及消息都使用UDP,文本传输等等都是用TCP;

     ALC也打算采用这种方式,TCP部分必须提供一个统一的方便使用的方式;

2、IPMSG采用了加密;

     作为刚起步的东东,ALC开始阶段都不考虑加密的问题。但是一定要余留方便的扩展点。

3、IPMSG的命令格式大致为:版本号:包编号:发送者姓名:发送者主机名:命令字:附加信息。整个报文采用字符串的形式发送。

     为了和IPMSG区别,版本号上打算使用ALCXX(X为数字)这种方式。命令字第一阶段和IPMSG兼容。

4、具体应用场景分析如下:

    登录/离线通知部分:新登录的用户使用广播方式发送命令:我来了。每一个接收到的用户都回应:知道了,同时记录新的用户进入用户列表。

    离线也相同,只不过接收到的用户不再做出回应就可以了。

    涉及的命令:IPMSG_BR_ENTRY和IPMSG_ANSENTRY,离线的有IPMSG_BR_EXIT;

    发送/接收消息部分:直接用户发送命令即可;

    涉及的命令:IPMSG_SEND_MSG和IPMSG_SENDCHECKOPT。

    两者的差异主要是checkOPT需要回执IPMSG_RECVMSG,回执命令的附加信息是确认的包编号。

    文件传输部分ALC第一个版本是不需要实现的。所以先不予理会。  

 类似资料: