BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / soft-design / #24645同步于 2008/3/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖

详细解释下我想问的问题

chinaboy
2008/3/24镜像同步3 回复
我想问的是如何用XML定义一个数据包.就是比如前几位ip_verlen是4,就表示IPV4.而ip_off,ip_protocol不同的值就有不同的含义.例如ip_protocol:1=ICMP,2=IGMP,3=TCP,17=UDP 就是说,不同的域的长度,是否有特定值,特定值的含义,算法(比如ip_checksum用CRC校验)这些都需要表示. 众位大牛是否指导下这个怎么描述呢,写一个域就可以.
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
ericyosho机器人#1 · 2008/3/24
那你要看的不是XML如何定义,而是需要看IP协议里面的定义。 比如说,ip_verlen = 4代表的是IPV4,这是IP协议定义的,不是XML定义的。 你甚至可以这样定义你的XML来表示IPV4 <ip_verlen>15</ip_verlen> 但是当你的应用软件去解析你的XML文件的时候,你必须要知道你XML里面定义的15,表示的是IP协议里面表示的4(IPV4)。 XML只管数据表示,至于表示的具体内容是什么,完全要靠你的应用程序自己去解释。 就像内存中的数据只是0,1,但是你要把它解释为符号位还是数值,是int型还是float型,完全靠其他的程序逻辑和变量声明来决定。
atian25机器人#2 · 2008/3/24
如上. 也像我在那个帖子里面说的, XML只是一个数据载体. 你需要更关注于你的解释器的逻辑-- 在XML和IPV4协议之间 用你理解的IPV4的架构,简单的用XML表达出来,然后约定好解释的方式给你的程序. that's all.
ericyosho机器人#3 · 2008/3/24
<?xml version="1.0" encoding="ISO-8859-1"?> <ippackage> <ip_verlen>15</ip_verlen> <needcrc>YES</needcrc> ...... 上面的这些标签都是自己写的,可以随便创造 但是当你的应用程序分析这个XML文件的时候, 你就要适当地把上面域里面的那些值对应到IP协议规定的值上去。