haitao:
技术贴:设备编码问题:现有的一种设备编码规则比较短视,导致号码空间很快不够用了
[阅读: 828] 2005-04-02 16:26:45
技术贴:设备编码问题:现有的一种设备编码规则比较短视,导致号码空间很快不够用了
如何在不改变按原规则产生的已有的号码的基础上,引进新的规则,使得号码空间扩大很多
具体的实例是这样的:
机器类型大约有100多种,分别给编成4位数字
每个机器大约由1个或多(最多99个)个设备组成,同一种类型的机器的设备数量也相差很大
客户要求 机器编号 和 设备编号 一定能比较直接的看出它们的从属关系
5年前定下的原有规则:
机器编号:类型(4位数字)+序号(4位数字)
设备编号:机器的序号(4位数字)+本机的设备序号(4位数字)
而机器的序号不是每个类型里分别递增(类型0011里的机器序号从0001、0002、...;类型0012里的机器序号从0001、0002、...。即确保8位数字是唯一的,但仅看机器序号,会有很多重复的。这样的号码空间显然很紧凑,只要最大的类别的机器数不超过1万,多可以满足)
而是按总机器数唯一递增(类型0011里的机器序号0001,类型0012里增加一台机器,序号就只能是0002了。即确保后4位数字是唯一的。这样的号码空间显然很浪费,只要总的机器数超过1万,就无法承受了)
现在总的机器数很快要超过1万了,就意味着号码要用完了!!
最简单的扩展办法是允许字母作为机器序号,像地区的车牌号一样,理论上可以从1万扩大36*36*36*36(=167'9616,接近168万!)
但是,这样改与行业传统太脱离。可能无法被接受。
如果当初的规则是:
机器编号:类型(3位数字)+序号(5位数字)
设备编号:机器的序号(5位数字)+本机的设备序号(3位数字)
号码空间就可以很充裕了,应该还至少可以用20年
类型空间和下属设备空间也远远高出现有的范围,均最多可以达到1000
但是毕竟现在有近1万个机器已经按原规则编号,一下子改变难以接受
用户甚至放弃设备号的唯一性要求,只求机器编号 和 设备编号 仍然能比较直接的看出它们的从属关系
提出这样的方案:
新增的机器开始按每个类型里分别递增,即把原来类型里的序号跳得太快留下的空隙(未用序号)填补掉
这样,机器号的后4位就不唯一了
从而也必然导致设备号也不唯一了,表达一个设备,必须设备号+机器号
(其实从机器号找它的设备,也会找到多套设备号与之对应;从设备号找它的属主机器,也会找到多个机器,难以区分到底哪一个机器才是)