logo资料库

飞鸽传书项目介绍.pdf

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
嵌入式系统工程师
IPMSG<飞鸽传书>协议简介 2
IPMSG协议简介  IPMSG可以用于收发消息和文件(夹)  使用UDP协议收发消息  使用TCP协议收发文件(夹)  默认使用2425端口作数据传输(TCP/UDP)  包含以下功能  用户上下线识别  消息收发  文件传输  文件夹传输 3
IPMSG协议简介  现行IPMSG为版本1  通信报文以字符串形式进行收发  基本格式如下 版本号:包编号:发送者姓名:发送者机器名:命令字:附 加信息  举例 1:1238605487:user:machine:32:hello  版本号固定为1  包编号一般为不重复的十进制数,通常可以由 time函数产生  发送者姓名和发送者机器名可以任意,但在整个 通信中必须保持一致 4
IPMSG协议简介  命令字  报文中的命令字是一个32位无符号整数 包含命令(最低字节)和选项(高三字节)两部分  常用基本命令(带有BR标识的为广播命令) 用户上线 用户退出 通报在线 发送消息 通报收到消息 IPMSG_BR_ENTRY IPMSG_BR_EXIT IPMSG_ANSENTRY IPMSG_SENDMSG IPMSG_RECVMSG IPMSG_GETFILEDATA 请求通过TCP传输文件 IPMSG_RELEASEFILES 停止接收文件 IPMSG_GETDIRFILES 请求传输文件夹 5
IPMSG协议简介  命令字 常用选项 IPMSG_SENDCHECKOPT 传送检查(需要对方返回回执) IPMSG_FILEATTACHOPT 传送文件选项  附加信息 附加信息的内容根据命令字的不同而不同 6
IPMSG协议简介  用户上下线识别  IPMSG启动时,向局域网广播IPMSG_BR_ENTRY  其他已在线用户向该新用户回复IPMSG_ANSENTRY  IPMSG退出时,向局域网广播IPMSG_BR_EXIT  用户列表的维护 ENTRY报文和ANSENTRY报文  添加用户到用户列表 EXIT报文  将用户从用户列表中删除  ENTRY报文中的附加信息为用户名 7 S1.向局域网广播“我来了”S2.各在线主机回答“我也在”
IPMSG协议简介  消息收发  包含IPMSG_SENDMSG命令的报文表示发送消息 消息内容放在附加信息的位置  附加IPMSG_SENDCHECKOPT选项表示需要对方发送回 执  如需回执,则发送IPMSG_RECVMSG报文 将对方的包编号 放在附加信息位置 8 SENDMSGSENDMSG | SENDCHECKOPTRECVMSG
分享到:
收藏