精英盒子 -> 零毫秒 -> 零毫秒通讯协议初稿--修改意见00 [打印本页]

abreto 2011-09-30 23:37

零毫秒通讯协议初稿--修改意见00

半数,独帖示之。

关于”

零毫秒通讯协议0.1


“(传送门http://jybox.net/bbs/read.php?tid-214.html)的修改意见,之.

  

第一、
零毫秒使用TCP通讯,端口号暂定4321
此端口号含有太多YY成分,建议为配置文件所指定。

第二、
32bit 协议版本顺序号(0.1版为1)
就目前来说,协议版本顺序号不必为32位,因为不大可能出现超过(2^32-1)个版本。

第三、
32bit 消息类型,每一个数字代表一类消息
没看懂,消息类型需要32比特?


第四、
用户名、密码、客户端版本顺序号、客户端名称描述性字符串,空格隔开。
总觉得用空格隔开不怎么好。


第五、
登录结果-失败    S    空
应返回失败原因(错误代码)。


第六、
应增加”取得指定用户状态、信息、资料“消息(不一定是一个)。


第七、
客户端应当在连接后先获取服务器时间,然后计算本地时间和服务器时间的差值,然后等待下一个整10秒数进行发送,以防止数据包被发送到服务器时,密码被更新。
不要等待整10秒。由服务器每个一段固定时间(或顺眼时间)生成一个盐巴(salt)存储在配置文件,取代(时间戳%10)。


第八、
等待实践验证这些理论。






\0.

jybox 2011-10-01 00:06
此端口号含有太多YY成分,建议为配置文件所指定。

已标明端口号是暂定,肯定是通过配置文件储存的(服务器信息的获取一节已规定获取方法)

32bit 协议版本顺序号(0.1版为1)
32bit 消息类型,每一个数字代表一类消息

为以后着想,因为有可能以后会有其他大量占用编号的情况(我已经初步预料到了几种情况),另外32bit方便计算,正好是int

用户名、密码、客户端版本顺序号、客户端名称描述性字符串,空格隔开。

原帖已标明:大部分消息的数据部分都是字符串,因为有计划写命令行版本,字符串的话虽然降低了效率,但有助于命令行版的开发

登录结果-失败    S    空
应返回失败原因(错误代码)。

错误原因只有一种:密码验证失败,至于命令解析失败神马的会触发其他命令的(直接否决)

应增加”取得指定用户状态、信息、资料“消息(不一定是一个)。

已标明0.1版本不提供该功能,之后版本必定会提供

  1. 不要等待整10秒。由服务器每个一段固定时间(或顺眼时间)生成一个盐巴(salt)存储在配置文件,取代(时间戳%10)。

没看懂(怀疑有错别字),而且没百度到

另外感觉你整个帖子/标题的格式太装B了

abreto 2011-10-01 18:33
不要等待整10秒。由服务器每隔一段固定时间(或顺眼时间)生成一个盐巴(salt)存储在配置文件,取代(时间戳%10)。


abreto 2011-10-01 18:34
也就是说加密算法为:
MD5(MD5(salt)+MD5(pass));

jybox 2011-10-01 19:09
abreto:也就是说加密算法为:
MD5(MD5(salt)+MD5(pass)); (2011-10-01 18:34) 

salt是什么啊

abreto 2011-10-01 19:35
不要等待整10秒。由服务器每隔一段固定时间(或顺眼时间)生成一个盐巴(salt)存储在配置文件,取代(时间戳%10)

jybox 2011-10-01 19:43
abreto:不要等待整10秒。由服务器每隔一段固定时间(或顺眼时间)生成一个盐巴(salt)存储在配置文件,取代(时间戳%10)
 (2011-10-01 19:35) 

我在问salt是啥




Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.041054 second(s),query:5 Gzip enabled