CN103516570B - 多对象竞争实现方法和系统 - Google Patents
多对象竞争实现方法和系统 Download PDFInfo
- Publication number
- CN103516570B CN103516570B CN201210218773.8A CN201210218773A CN103516570B CN 103516570 B CN103516570 B CN 103516570B CN 201210218773 A CN201210218773 A CN 201210218773A CN 103516570 B CN103516570 B CN 103516570B
- Authority
- CN
- China
- Prior art keywords
- competition
- order
- competitive
- conflict
- existing object
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明涉及一种多对象竞争实现方法和系统,该方法中系统中的各个竞争单元执行以下步骤:竞争命令发送步骤;若处于当前对象竞争状态,则提取判断该竞争单元是否具备竞争优先权,若具备则返回表明当前对象竞争冲突的冲突命令,否则配置为下一对象竞争状态,转竞争命令发送步骤;若处于当前对象确认状态,则接收竞争命令后返回表明竞争冲突的冲突命令;接收到表明当前对象竞争冲突的冲突命令,配置为下一对象竞争状态,转竞争命令发送步骤;发送或连续发送竞争命令且未收到竞争命令和冲突命令,配置为当前对象确认状态。本发明方法和系统可以提高对象竞争的效率。
Description
技术领域
本发明涉及通信技术,尤其是一种多对象竞争实现方法和系统。
背景技术
在通信电源中,根据系统容量和应用场景,一般可分为多机架大系统电源、单机架基站电源、嵌入式和壁挂式电源等。其中,多机架大系统电源一般容量较大,在1000A以上,由多个交流配电屏、整流器机架、直流配电屏并联组成。通常情况下,需要至少三个或者以上的机柜(标准机柜为600mm和800mm两种规格),才能实现一个完整的系统。因而,多机架大系统电源主要用于中心机房等集中供电环境,且占用很大的机房空间。嵌入式电源和壁挂式电源,顾名思义,容量和体积都较小,在200A以下,一般配套设备。随着分布式供电的发展和应用,单机架基站电源,以最合适的容量(100A到800A)、相对最经济的空间(一个标准机柜),得到了用户最广泛的应用。据统计,某电源设备制造商的年销售中,单机架基站电源占据超过70%以上的发货量,90%以上的发货额。
随着3G和其他电信业务的发展,以及为了实现环保、降成本、扩容方便等目的,电信运营商大量上马各类设备,希望能有更大容量的基站电源。由于很多基站、机房都是租用的,因此,运营商希望电源设备占用尽量少的空间,多机架大系统电源倍受冷落;可以并联供电、随意扩充容量的单机架基站电源,呼之欲出。比如,当用户需要的容量在800A以内时,只需要一个800A的基站电源机架;当业务量上升到1600A,再并联一个机架即可。节省初期投资、节省空间,扩容方便。
基站电源并联,如果只是供电的正负排的短接,电池、负载等并联应用,这种物理连接是很简单的,首先要解决的一个关键问题就是多对象竞争,具体表现为主、从机竞争,目前这一问题有两种解决方式:参数设置、自动竞争。
参数设置指在参数界面增加配置选项,例如参数选项设置为“主机”,“从机”,在电源并联时,人为的去设置参数,设置监控单元A为主机,监控单元B为从机,但这种方式非常不智能,需要人为参与,而且一旦并联的监控数目过多,则手动设置效率低下繁琐,可能导致设置重复,如果开局时忘记设置或者参数设置重复就会造成系统无法正常运行;
自动竞争虽然可以解决参数设置所带来的问题,但其存在依次竞争主机和从机而导致的竞争效率低下的问题,另外目前采用的方法是将序列号作为唯一关键字,通过比较序列号来竞争主机,序列号小的充当主机,然后依次分配从机地址,这种方法竞争条件比较单一,容错功能不完善,可能造成运作中的主机被抢走主机身份,导致主机频繁变更;序列号重复导致反复竞争等严重问题。
发明内容
本发明要解决的技术问题是提供一种多对象竞争实现方法和系统,以提高对象竞争的效率。
为解决以上技术问题,本发明提供了一种多对象竞争实现方法,该方法应用于包括若干个竞争单元的系统,各个竞争单元执行以下步骤:
竞争命令发送步骤,符合竞争命令发送条件时,发送用于竞争当前对象的竞争命令;
根据不同的接收命令情况执行以下不同的处理:
竞争命令处理步骤,接收到用于竞争当前对象的竞争命令,若该竞争单元处于当前对象竞争状态,则判断该竞争单元是否具备竞争优先权,若具备竞争优先权则返回表明当前对象竞争冲突的冲突命令,否则配置为下一对象竞争状态,转执行所述竞争命令发送步骤;若该竞争单元处于当前对象确认状态,则返回表明竞争冲突的冲突命令;
冲突命令处理步骤,接收到表明当前对象竞争冲突的冲突命令,配置为下一对象竞争状态,转执行所述竞争命令发送步骤;
确认状态配置步骤,发送或连续发送所述用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令,则配置为当前对象确认状态。
优选地,所述竞争命令中携带所述竞争单元的竞争信息,所述竞争命令处理步骤中,若所述竞争单元处于当前对象竞争状态,提取接收的竞争命令中的竞争信息和本地的竞争信息,根据预置的竞争策略判断是否具备竞争优先权。
进一步地,所述竞争单元竞争的对象为身份或地址。
优选地,所述竞争命令发送条件包括以下至少之一:
所述竞争单元启动;并入其他竞争单元所在的系统;定时器超时;从前一对象竞争状态切入当前对象竞争状态。
可选地,所述竞争单元的当前对象是系统设置的或掉电前保存的。
优选地,所述竞争策略包括比较信息、比较信息的比较顺序以及竞争单元具备竞争优先权的规则。
具体地,所述方法应用于并联的基站电源,各个基站电源配置各自的竞争单元,所述对象为主、从机的地址,所述竞争策略为:首先判断竞争单元的运行时长的差值是否大于预设阈值,如是,则运行时间长的竞争单元具备竞争优先权;否则判断MAC地址的大小,MAC地址大的竞争单元具备竞争优先权。
为解决上述技术问题,本发明还提供了一种多对象竞争实现系统,、所述系统包括若干个竞争单元,所述竞争单元包括:
命令交互模块,用于在竞争命令发送条件时,发送用于竞争当前对象的竞争命令;还用于接收其他竞争单元发送的竞争命令和冲突命令;
竞争命令处理模块,该竞争单元处于当前对象竞争状态时,用于判断该竞争单元是否具备竞争优先权;还用于在判断具备竞争优先权时,向发送所述竞争命令的竞争单元返回表明当前对象竞争冲突的冲突命令,以及在判断不具备竞争优先权时配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;该竞争单元处于当前对象确认状态时,用于返回表明当前对象竞争冲突的冲突命令;
冲突命令处理模块,用于在接收到表明当前对象竞争冲突的冲突命令时,配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;
确认状态配置模块,用于在所述命令交互模块发送或连续发送用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令时,配置为当前对象确认状态。
相较于现有技术,本发明提供的多对象竞争实现方法和系统中,各竞争单元只要根据自身状态和接收的命令进行相应处理,而无需关注其他竞争单元的状态和当前对象的竞争结果,因此可以同时实现多个对象的竞争,相互不存在干扰,提高了竞争效率;另外,处于当前对象确认状态的竞争单元,接收到竞争命令后,发送冲突命令,不改变当前对象状态,保证了竞争对象的稳定性,当前对象不会任意变更,造成管理混乱。
附图说明
图1为本发明实施例多对象竞争实现方法的流程示意图;
图2为本发明监控单元进行主从机竞争的简易流程示意图;
图3为当前对象为主机时,监控单元的处理流程图;
图4为当前对象为从机时,监控单元的处理流程图;
图5是发生地址冲突时的流程示意图;
图6为本发明实施例多对象竞争实现系统的模块结构示意图。
具体实施方式
本发明提供一种多对象竞争实现方法,该方法应用于包括若干个竞争单元的系统,如图1所示,各个竞争单元执行以下步骤:
步骤101:竞争命令发送步骤,符合竞争命令发送条件时,发送用于竞争当前对象的竞争命令;
本发明主要提供一种竞争机制,竞争单元竞争的对象包括但不限于身份或地址。本发明对对象之间的竞争顺序不作限定,比如各监控对象可以随机进行对象竞争。优选地,所述竞争单元竞争的多个对象具有预置的竞争顺序。对于不同的竞争单元,可以根据其具体应用环境设置不同的竞争顺序。
所述竞争单元的当前对象是系统设置的或掉电前保存的。
所述竞争命令发送条件可以根据具体应用灵活设置,优选地包括但不限于以下情形:
所述竞争单元启动;并入其他竞争单元所在的系统;定时器超时;从前一对象竞争状态切入当前对象竞争状态。
优选地,竞争命令中携带所述竞争单元的竞争信息,具体的竞争信息可以灵活设置,本发明对此不做限定。
根据不同的接收命令情况执行以下不同的处理:
步骤102:竞争命令处理步骤,接收到用于竞争当前对象的竞争命令,若该竞争单元处于当前对象竞争状态,则判断该竞争单元是否具备竞争优先权,若具备竞争优先权则返回表明当前对象竞争冲突的冲突命令,否则配置为下一对象竞争状态,转执行所述竞争命令发送步骤;若该竞争单元处于当前对象确认状态,则返回表明当前对象竞争冲突的冲突命令;
所述竞争命令处理步骤中,若所述竞争单元处于当前对象竞争状态,竞争单元提取接收的竞争命令中的竞争信息和本地的竞争信息,根据预置的竞争策略判断是否具备竞争优先权。
所述竞争策略包括比较信息、比较信息的比较顺序以及竞争单元具备竞争优先权的规则。
步骤103:冲突命令处理步骤,接收到表明当前对象竞争冲突的冲突命令,配置为下一对象竞争状态,转执行所述竞争命令发送步骤;
步骤104:确认状态配置步骤,或连续发送所述用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令,则配置为当前对象确认状态。
可理解地,以上各步骤之间没有严格的先后顺序,且其中的竞争命令或冲突命令的具体名称并不是本发明所关心的,只要竞争命令是为了竞争当前对象的消息或命令,冲突命令时为了表明竞争当前对象发生了冲突,且当前竞争单元更具有竞争当前对象的优先权,即被本发明的所涵盖。
本发明方法可以应用于并联的基站电源,各个基站电源配置各自的竞争单元,现有技术中一般称为监控单元,竞争的对象为主、从机的地址,以下以单机架基站电源多机并联时主从机竞争为例对本发明进行详细说明:
本发明中,各个并联基站电源都配置各自的监控单元,以实现本电源设备的检测。各个监控单元需要基于全双工的物理链路,例如CAN总线或者RS232总线,实现各监控之间的交互,监控单元软件需要进行简单修改,增加主机竞争、从机地址竞争,以最终达到自动竞争分配的目的。
优选地,可基于以下原则设计监控单元的竞争方案:
竞争时间尽可能短,主机需要监管整个系统,必须尽快确定主机,从机的地址也需要尽快确定;
主从竞争互不干扰,总线上存在多个主机、多个地址相同的从机,主机和主机、从机和从机之间的竞争互不干扰,缩短竞争时间;
正在运行的主机不能被抢走主机身份;
从机有多个,正在运行的从机不能被抢走本从机地址;
采用两级竞争条件,运行时长作为第一级竞争条件,MAC地址作为第二级竞争条件,确保可靠。
下面具体描叙基于以上原则的竞争方案:
每个监控单元一启动就进入竞争模式,把竞争阶段前移,可以提前发现冲突,缩短竞争时间;
监控单元实质竞争的是地址,该地址是监控单元确定主、从机后进行交互的基础,也称为主机竞争或从机竞争,竞争主机和竞争从机可以采用不同的竞争命令,主机和从机的竞争可以同时进行,互不干扰,这样可以尽可能缩短竞争时间,而无需等到主机确定后再进行从机竞争;
每个监控单元初始化状态可设置为主机竞争状态,如果经过竞争后则会变为竞争后的状态,掉电保存,也可通过参数设置人为改变;
整个竞争流程分为四种状态:主机竞争状态、主机确认状态、从机竞争状态、从机确认状态,但不是每个监控单元都会经历这四种状态;
如果某监控单元已竞争为主机,则后续启动还会处于主机竞争状态,如果某监控单元已竞争为从机,则后续启动还会处于从机竞争状态;
本发明中,只要重新启动,都会从确认状态进入竞争状态。主机复位了就进入主机竞争状态,竞争失败才转为从机竞争状态,而不会直接进入从机竞争状态,从机复位了就进入从机竞争状态,不会进入主机竞争状态。
如图2所示,一般地,对于某个监控单元来说,如果只需要竞争主机和从机两个竞争对象,则启动后可以执行以下步骤:
步骤201:判断是否已经竞争或配置为主机,如是,则执行步骤202,否则执行步骤205;
步骤202:进入为主机竞争状态,进行主机竞争,若竞争成功,则执行步骤203,否则执行步骤205;
步骤203:进入主机确认状态,竞争得到主机身份;
步骤204:执行系统管理、轮询从机;
步骤205:进入从机竞争状态,竞争从机,若竞争从机成功则执行步骤206;
步骤206:进入从机确认状态,得到从机身份;
步骤207:向主机注册,回应主机命令;
步骤208:判断是否产生地址冲突,若产生地址冲突,返回步骤201,否则流程结束。
当一个监控单元A已竞争为主机时,监控单元A启动时处于主机竞争状态,会向CAN总线上发送主机竞争命令,该命令携带竞争信息,比如本机启动以来运行时长、本机MAC地址等信息,基于该竞争信息,可设置相应的竞争策略为:
首先判断运行时长的差值是否大于预设阈值,如是,则运行时间长的监控单元具备竞争优先权;否则判断MAC地址的大小,MAC地址大的监控单元具备竞争优先权。
监控单元发送主机竞争命令(本文中也称为地址竞争命令)后,分为如下几种情况:
a)当前总线上存在正常运行、处于主机确认状态的主机,该主机确认状态的主机会回复地址冲突命令(也称为主机冲突命令),告知总线上已经存在一个主机,监控单元A收到该命令后,将自身置为从机竞争状态,这样可以避免正在以主机身份运行的监控单元被新加入的监控单元抢走主机身份;
b)当前总线上存在一个也处于主机竞争状态的监控单元B,监控单元B收到监控单元A发出的主机竞争命令后,提取命令信息,首先比较两者运行时长,如果监控单元A运行时长比监控单元B要多出时间T,监控单元B不回复任何命令,将自己置为从机竞争状态;如果监控单元B运行时长比监控单元A运行时长的多出的时间大于预设时间阈值T(时间预置T可以大于或等于零),监控单元B回复地址冲突命令,监控单元A收到该命令后,将自身置为从机竞争状态;如果两者运行时长差值在时间阈值T以内,那么就比较MAC地址。如果监控单元A的MAC地址小,监控单元B不回复任何命令,将自己置为从机竞争状态;如果监控单元B的MAC地址小,监控单元B回复地址冲突命令,监控单元A收到该命令后,将自身置为从机竞争状态;
c)如果连续发送N次主机竞争命令都没有收到回应(即没有收到其他监控单元发送的竞争主机的竞争命令和冲突命令),表明目前只有监控单元A竞争主机或其他监控单元的主机竞争优先权低于该监控单元A,监控单元A就进入主机确认状态,开始对整个系统进行管理,轮询整流器和其他从机。
图3给出了监控单元在当前对象为主机(包括在配置为主机或竞争为主机后启动的情形以及在以主机身份运行的情形)时的最佳处理流程,该流程具体包括:
步骤301:判断当前是否是主机竞争状态,若是则执行步骤302,否则即为主机确认状态,转执行步骤307;
步骤302:判断主机竞争命令发送次数是否小于预设次数N,若是,则执行步骤303,否则执行步骤306;
步骤303:发送主机竞争命令;
步骤304:判断预设时间T内是否收到其他监控单元发送的针对主机的主机竞争命令或主机冲突命令,若收到主机竞争命令,则执行步骤305;若收到主机冲突命令,则执行步骤308,若未收到命令,则转执行步骤302;
步骤305:判断是否具备竞争主机优先权,若是,则转执行步骤302,否则转执行步骤308;
步骤306:进入主机确认状态,获得主机身份,流程结束;
步骤307:接收到主机竞争命令时,返回主机冲突命令,流程结束;
步骤308:进入从机竞争状态,开始竞争从机,流程结束。
监控单元A从主机竞争状态进入从机竞争状态,会从“从机1”(本文中“从机1”“从机2”代表不同的竞争对象)开始,向外发送竞争从机1的从机竞争命令,或监控单元A已竞争为从机1时,每次启动都处于“从机1竞争”状态,分为如下几种情况:
a)当前总线上存在正常运行的、处于从机确认状态的从机1,该处于从机确认状态的从机1回复地址冲突命令(也称为从机冲突命令),告知总线上已经存在一个“从机1”,监控单元A收到该命令后,会开始竞争“从机2”,这样可以避免正在以从机1身份或从机1地址运行的监控单元被竞争主机失败的监控单元或者新加入的监控单元抢走从机1身份或从机1地址;
b)当前总线上存在一个也处于竞争从机1的从机竞争状态的监控单元B,并且监控单元B也在竞争从机1,监控单元B收到监控单元A发出的地址竞争命令后,提取命令信息,首先比较两者运行时长,如果监控单元A运行时长比监控单元B运行时长的多出的时间大于预设时间阈值T(时间预置T可以大于或等于零),监控单元B不回复任何命令,重新开始竞争“从机2”;如果监控单元B运行时长比监控单元A要多出时间T,监控单元B回复地址冲突命令,监控单元A收到该命令后,重新开始竞争“从机2”;如果两者运行时长差值在时间阈值T以内,那么就比较MAC地址。如果监控单元A的MAC地址小,监控单元B不回复任何命令,重新开始竞争“从机2”;如果监控单元B的MAC地址小,监控单元B回复地址冲突命令,监控单元A收到该命令后,重新开始竞争“从机2”;
c)如果连续发送N次从机竞争命令都没有收到回应,监控单元A就进入从机确认状态,向主机进行注册并开始响应主机的命令;
d)系统最多配置M个从机,如果监控单元A将“从机1”~“从机M”都竞争一遍而没有成功,监控单元A将自身设置为“从机1”,进入从机确认状态,置位竞争一轮标志,向主机进行注册并开始响应主机的命令。这种情况下所有地址都被沾满,显然是并联了过多的监控,就会产生“地址冲突”告警,需要人为处理。
系统中可能存在无主机的情况。如果从机连续10分钟没有收到来自主机的数据,从机将自身置为“主机竞争”状态,以竞争出新的主机。
图4给出了监控单元在当前对象为从机1(包括在配置为从机1或竞争为从机1后启动的情形以及在以从机1身份运行的情形)时的最佳处理流程,该流程具体包括:
步骤401:判断当前是否是从机1竞争状态,若是则执行步骤402,否则即为从机1确认状态,转执行步骤407;
步骤402:判断从机1竞争命令发送次数是否小于预设次数N,若是,则执行步骤403,否则执行步骤406;
步骤403:发送从机1竞争命令;
步骤404:判断预设时间T内是否收到其他监控单元发送的针对从机1的从机1竞争命令或从机1冲突命令,若收到从机1竞争命令,则执行步骤405;若收到从机1冲突命令,则执行步骤308,若未收到命令,则转执行步骤402;
步骤405:判断是否具备竞争从机1优先权,若是,则转执行步骤402,否则转执行步骤408;
步骤406:进入从机1确认状态,获得从机1身份,流程结束;
步骤407:接收到从机1竞争命令时,返回从机1冲突命令,流程结束;
步骤408:进入从机2竞争状态,开始竞争从机2,流程结束。
如图5所示,把两个正在运行的主机通过CAN总线连接在一起,这样系统中存在两个处于主机确认状态的主机,即主机地址冲突,这时候两个主机会重新进入主机竞争状态,重复步骤3~5,直到竞争出主机、从机;如果系统中存在多个地址一样的从机,并且竞争一轮标志没有置位,即从机地址冲突,冲突的从机会将自身设置为“从机竞争”状态,重新开始竞争。
在本发明中,关于各种命令的发送和接收,可以在发送的命令中携带具有针对性的信息或采用不同的命令码,以使得只有需要处理该命令的竞争单元接收该命令,也可以在各竞争单元进行设置,使得该竞争单元只接收需要处理的命令,或者竞争单元接收所有其他竞争单元发送的命令,但只处理需要处理的命令。
具体地,比如竞争单元不需要知道其他竞争单元的状态,只是根据自身状态发送命令,如果一个竞争单元处于主机竞争状态,就发送主机竞争命令,其他处于主机竞争状态或主机确认状态的竞争单元处理该接收的主机竞争命令,若收到冲突命令,该竞争单元就退出主机竞争状态,进入从机竞争状态,发送从机竞争命令。
又或者,主机竞争命令和从机竞争命令是不同的,两者的命令码不一样,主机竞争命令和从机竞争命令内容不同,主机竞争命令只有处于主机竞争和主机确认状态才能收到,从机竞争命令只有处于从机竞争和从机确认状态才能收到。
下面结合附图对具体的应用实例作进一步的详细描述:
应用实例1
该应用实例中,假设某地需要3个监控单元并联,监控单元A、监控单元B和监控单元C初始化均为主机,3个监控单元同时上电,执行以下步骤:
步骤501:3个监控同时处于主机竞争状态,向外发送主机竞争命令;
步骤502:监控单元A收到来自监控单元B和监控单元C的主机竞争命令,提取命令信息,由于3个监控同时上电,故运行时长基本一致,进而比较MAC地址,监控单元A的MAC地址最小,所以监控单元A分别向监控单元B和监控单元C发送地址冲突命令,然后A继续发主机竞争命令;如果3个监控在启动时刻存在先后,例如监控单元A先启动,那么监控单元A就在竞争阶段没有其他主机与之竞争,就会立刻获得主机身份,监控单元B和监控单元C后启动,进入竞争阶段发送竞争命令,会收到监控单元A的地址冲突命令,转而进入从机竞争状态;
步骤503:监控单元B会收到来自监控单元A和监控单元C的主机竞争命令,还会收到来自监控单元A的地址冲突命令,所以监控单元B会退出主机竞争,进入从机竞争状态,开始竞争从机1,并且发送从机地址竞争命令;
步骤504:监控单元C会收到来自监控单元A和监控单元B的主机竞争命令,还会收到来自监控单元A的地址冲突命令,所以监控单元C会退出主机竞争,进入从机竞争状态,开始竞争从机1,并且发送从机地址竞争命令;
步骤505:监控单元A在发送N次主机竞争命令后没有收到回应,进入主机确认状态,开始进行管理,轮询整流器和从机;
步骤506:监控单元B和监控单元C竞争从机1,并且发送从机地址竞争命令。监控单元B收到来自监控单元C的从机地址竞争命令,提取信息,发现和自己竞争的从机地址一样,比较运行时长,基本一致,进而比较MAC地址,发现自己的MAC地址小,就向监控单元C发送地址冲突命令,并且继续发送从机地址竞争命令;
步骤507:监控单元C收到来自监控单元B的从机地址竞争命令和监控单元B的地址冲突命令,重新开始竞争从机2,并且发送从机地址竞争命令;
步骤508:监控单元B发送N次从机地址竞争命令都没有收到回应,进入从机确认状态,确认为从机1;
步骤509:监控单元C发送N次从机竞争命令都没有收到回应,进入从机确认状态,确认为从机2。
步骤510:系统开始运行。
应用实例2
该应用实例中,将两个这个在运行的系统并联,系统1中存在主机监控单元A,从机1监控单元B,系统2中存在主机监控单元C和从机1监控单元D;并联后的系统存在2个主机,2个从机1;执行以下步骤:
步骤601:监控单元A和监控单元C开始竞争主机,监控单元B和监控单元D开始竞争从机1;
步骤602:监控单元A和监控单元C发出竞争主机命令,由于监控单元A运行时间更久,所以监控单元A回复地址冲突命令,监控单元C收到后,退出主机竞争状态,进入从机竞争状态;
步骤603:监控单元B和监控单元D发出竞争从机命令,由于监控单元B运行时间更久,所以监控单元B回复地址冲突命令,监控单元D收到后,退出从机1竞争,开始竞争从机2;
步骤604:由于没有监控单元和监控单元D竞争从机2,那么监控单元D就确定为从机2;
步骤605:监控单元C退出主机竞争后,进入从机竞争状态,开始竞争从机1,如果此时监控单元B和监控单元D还处于从机竞争状态,那么监控单元B、C、D就要根据运行时间或者MAC地址来仲裁,如果监控单元B、D已经处于从机确定状态,监控单元C只能竞争从机3,并且最终确定为从机3;
步骤606:系统开始运行。
相较于现有技术,本发明提供的主、从机竞争方案,具有以下优点:
支持主机、从机自动竞争,不需要人为参与,扩展性能很好,可以随意并联;
遵守运行中主机、从机优先原则,保证主机、从机的稳定性,主机、从机不会任意变更,造成管理混乱;
采用两级竞争条件,保证竞争的可靠性以及竞争结果的唯一性;
竞争阶段前移,可以提前发现冲突,然后马上开始竞争,有利于快速确定主机,缩短竞争时间;
主机、从机竞争互不干扰,解决了过去确定一个才能竞争下一个的缺陷,可以大大缩短竞争时间;
本发明提供的技术,彻底地解决了单机架基站电源多监控并联主从机竞争的困难,为实现扩容供电提供了一个创新的、实用的解决方案,也为需要实现一主多从并联监控的场景提供了解决方案。
综上,本发明方法应用于主从及竞争,可以实现任意数量监控单元并联地址竞争,新加入的设备会自动竞争地址,不需要人为的参与,对于地址冲突、多主机等问题可以及时纠正,在无主机的情况下重新启动竞争,产生新的主机,确保系统安全、可靠运行。本发明的目的,是为了解决单机架基站电源多机并联时主从机竞争及地址分配问题,实现了主机的自动竞争、从机地址自动分配,是一种低成本、高可靠、易实现的多监控并联主从地址竞争方案。
为了实现以上方法,本发明还提供了一种多对象竞争实现系统,如图6所示,所述系统包括若干个竞争单元,所述竞争单元包括:命令交互模块、竞争命令处理模块、冲突命令处理模块和确认状态配置模块,其中:
命令交互模块,用于在竞争命令发送条件时,发送用于竞争当前对象的竞争命令;还用于接收其他竞争单元发送的竞争命令和冲突命令;
优选地,所述竞争单元竞争的对象包括但不限于身份或地址。所述竞争单元竞争的多个对象具有预置的竞争顺序。
可选地,触发所述命令交互模块发送竞争命令的事件包括以下至少之一:
所述竞争单元启动;并入其他竞争单元所在的系统;定时器超时;从前一对象竞争状态切入当前对象竞争状态。
优选地,所述竞争单元当前对象是系统设置的或掉电前保存的。
竞争命令处理模块,该竞争单元处于当前对象竞争状态时,用于判断该竞争单元是否具备竞争优先权;还用于在判断具备竞争优先权时,向发送所述竞争命令的竞争单元返回表明当前对象竞争冲突的冲突命令,以及在判断不具备竞争优先权时配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;该竞争单元处于当前对象确认状态时,用于返回表明当前对象竞争冲突的冲突命令;
优选地,所述竞争命令中携带所述竞争单元的竞争信息,若所述竞争单元处于当前对象竞争状态,所述竞争命令处理模块提取接收的竞争命令中的竞争信息和本地的竞争信息,根据预置的竞争策略判断是否具备竞争优先权。
所述竞争策略包括比较信息、比较信息的比较顺序以及竞争单元具备竞争优先权的规则。
具体地,所述系统应用于并联的基站电源,不同的竞争单元服务于不同的基站电源,所述对象为主、从机的地址,所述竞争策略为:首先判断竞争单元的运行时长的差值是否大于预设阈值,如是,则运行时间长的竞争单元具备竞争优先权;否则判断MAC地址的大小,MAC地址大的竞争单元具备竞争优先权。
冲突命令处理模块,用于在接收到表明当前对象竞争冲突的冲突命令时,配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;
确认状态配置模块,用于在所述命令交互模块发送或连续发送用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令时,配置为当前对象确认状态。
相较于现有技术,本发明提供的多对象竞争实现方法和系统,具有以下优点:
各竞争单元只要根据自身状态和接收的命令进行相应处理,而无需关注其他竞争单元的状态和当前对象的竞争结果,因此可以同时实现多个对象的竞争,相互不存在干扰,提高了竞争效率;
通过设置发送竞争命令的发送条件,可支持竞争单元的自动竞争,不需要人为参与,扩展性能很好,可以随意并联;
处于当前对象确认状态的竞争单元,接收到竞争命令后,发送冲突命令,不改变当前对象状态,保证了竞争对象的稳定性,当前对象不会任意变更,造成管理混乱;
可灵活设置竞争策略。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
Claims (12)
1.一种多对象竞争实现方法,其特征在于,该方法应用于包括若干个竞争单元的系统,各个竞争单元执行以下步骤:
竞争命令发送步骤,在符合竞争命令发送条件时,发送用于竞争当前对象的竞争命令;
根据不同的接收命令情况执行以下不同的处理:
竞争命令处理步骤,接收到用于竞争当前对象的竞争命令后,若该竞争单元处于当前对象竞争状态,则判断该竞争单元是否具备竞争优先权,若是则返回表明当前对象竞争冲突的冲突命令,否则配置为下一对象竞争状态,转执行所述竞争命令发送步骤;若该竞争单元处于当前对象确认状态,则返回表明竞争冲突的冲突命令;
冲突命令处理步骤,接收到表明当前对象竞争冲突的冲突命令,配置为下一对象竞争状态,转执行所述竞争命令发送步骤;
确认状态配置步骤,连续发送所述用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令,则配置为当前对象确认状态。
2.如权利要求1所述的方法,其特征在于:所述竞争命令中携带所述竞争单元的竞争信息,所述竞争命令处理步骤中,若所述竞争单元处于当前对象竞争状态,提取接收的竞争命令中的竞争信息和本地的竞争信息,根据预置的竞争策略判断是否具备竞争优先权。
3.如权利要求1所述的方法,其特征在于:所述竞争单元竞争的对象为身份或地址。
4.如权利要求1所述的方法,其特征在于:所述竞争命令发送条件包括以下至少之一:
所述竞争单元启动;并入其他竞争单元所在的系统;定时器超时;从前一对象竞争状态切入当前对象竞争状态。
5.如权利要求1所述的方法,其特征在于:所述竞争单元的当前对象是系统设置的或掉电前保存的。
6.如权利要求2所述的方法,其特征在于:所述竞争策略包括比较信息、比较信息的比较顺序以及竞争单元具备竞争优先权的规则。
7.如权利要求2或6所述的方法,其特征在于:所述方法应用于并联的基站电源,各个基站电源配置各自的竞争单元,所述对象为主、从机的地址,所述竞争策略为:首先判断竞争单元的运行时长的差值是否大于预设阈值,如是,则运行时间长的竞争单元具备竞争优先权;否则判断MAC地址的大小,MAC地址大的竞争单元具备竞争优先权。
8.一种多对象竞争实现系统,其特征在于:所述系统包括若干个竞争单元,所述竞争单元包括:
命令交互模块,用于在符合竞争命令发送条件时,发送用于竞争当前对象的竞争命令;还用于接收其他竞争单元发送的竞争命令和冲突命令;
竞争命令处理模块,该竞争单元处于当前对象竞争状态时,用于判断该竞争单元是否具备竞争优先权;还用于在判断具备竞争优先权时,向发送所述竞争命令的竞争单元返回表明当前对象竞争冲突的冲突命令,以及在判断不具备竞争优先权时配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;该竞争单元处于当前对象确认状态时,用于返回表明当前对象竞争冲突的冲突命令;
冲突命令处理模块,用于在接收到表明当前对象竞争冲突的冲突命令时,配置为下一对象竞争状态,并通知所述竞争命令交互模块发送竞争命令;
确认状态配置模块,用于在所述命令交互模块连续发送用于竞争当前对象的竞争命令且未收到其他竞争单元发送的针对当前对象的竞争命令和冲突命令时,配置为当前对象确认状态。
9.如权利要求8所述的系统,其特征在于:所述竞争命令中携带所述竞争单元的竞争信息,若所述竞争单元处于当前对象竞争状态,所述竞争命令处理模块提取接收的竞争命令中的竞争信息和本地的竞争信息,根据预置的竞争策略判断是否具备竞争优先权。
10.如权利要求8所述的系统,其特征在于:所述竞争单元竞争的对象为身份或地址。
11.如权利要求8所述的系统,其特征在于:触发所述命令交互模块发送竞争命令的事件包括以下至少之一:
所述竞争单元启动;并入其他竞争单元所在的系统;定时器超时;从前一对象竞争状态切入当前对象竞争状态。
12.如权利要求8或9所述的系统,其特征在于:所述系统应用于并联的基站电源,不同的竞争单元服务于不同的基站电源,所述对象为主、从机的地址,所述竞争策略为:首先判断竞争单元的运行时长的差值是否大于预设阈值,如是,则运行时间长的竞争单元具备竞争优先权;否则判断MAC地址的大小,MAC地址大的竞争单元具备竞争优先权。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210218773.8A CN103516570B (zh) | 2012-06-28 | 2012-06-28 | 多对象竞争实现方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210218773.8A CN103516570B (zh) | 2012-06-28 | 2012-06-28 | 多对象竞争实现方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103516570A CN103516570A (zh) | 2014-01-15 |
CN103516570B true CN103516570B (zh) | 2017-10-27 |
Family
ID=49898644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210218773.8A Active CN103516570B (zh) | 2012-06-28 | 2012-06-28 | 多对象竞争实现方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103516570B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107347022A (zh) * | 2017-07-10 | 2017-11-14 | 上海市共进通信技术有限公司 | 无线ap自动选举生成ac的系统及方法 |
CN109060173B (zh) * | 2018-09-27 | 2021-07-06 | 宁波中车时代传感技术有限公司 | 一种轨道车荧光测温系统模式自适应方法及其轨道车荧光测温系统 |
CN116047887A (zh) * | 2022-12-29 | 2023-05-02 | 孚瑞肯电气(深圳)有限公司 | 一种多主机变频恒压供水的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0494372A2 (de) * | 1990-12-31 | 1992-07-15 | Robert Bosch Gmbh | Verfahren zur Zugriffssteuerung für an ein Bus-System angeschlossene Stationen in Kommunikations-Vermittlungsanlagen |
CN1420435A (zh) * | 2001-11-16 | 2003-05-28 | 深圳市中兴通讯股份有限公司上海第二研究所 | 对多对象实现分布式功能的方法 |
CN101645897A (zh) * | 2009-09-07 | 2010-02-10 | 中兴通讯股份有限公司 | 一种实现竞争机制的方法及系统 |
CN102118799A (zh) * | 2009-12-31 | 2011-07-06 | 华为技术有限公司 | 一种基于竞争资源的配置方法和装置 |
-
2012
- 2012-06-28 CN CN201210218773.8A patent/CN103516570B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0494372A2 (de) * | 1990-12-31 | 1992-07-15 | Robert Bosch Gmbh | Verfahren zur Zugriffssteuerung für an ein Bus-System angeschlossene Stationen in Kommunikations-Vermittlungsanlagen |
CN1420435A (zh) * | 2001-11-16 | 2003-05-28 | 深圳市中兴通讯股份有限公司上海第二研究所 | 对多对象实现分布式功能的方法 |
CN101645897A (zh) * | 2009-09-07 | 2010-02-10 | 中兴通讯股份有限公司 | 一种实现竞争机制的方法及系统 |
CN102118799A (zh) * | 2009-12-31 | 2011-07-06 | 华为技术有限公司 | 一种基于竞争资源的配置方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103516570A (zh) | 2014-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI765083B (zh) | 基於喚醒源的電動汽車上電方法及電腦可讀儲存媒體 | |
US10862172B2 (en) | Method and device for identifying master and slave battery packs | |
CN103516570B (zh) | 多对象竞争实现方法和系统 | |
EP2688333B1 (en) | Parallel monitoring method and system for communication base station power sources | |
CN102842939B (zh) | 一种电池管理系统及电池管理方法 | |
CN106016587B (zh) | 多联空调机组及其通讯方法和装置 | |
CN103973809B (zh) | 一种数据分发方法及系统 | |
CN105992317B (zh) | 无线通讯模块管理方法和无线通讯模块管理装置 | |
CN104091447A (zh) | 一种智能设备识别临时用户的方法 | |
CN109353224B (zh) | 一种电动汽车控制方法及电动汽车整车控制器 | |
CN102938898A (zh) | 一种atca架构下多板卡统一配置系统 | |
JP2007221394A (ja) | 通信方法、及び、通信システム、並びに、通信装置 | |
CN102426771A (zh) | 一种船舶机舱监测系统 | |
CN113037889A (zh) | 一种储能电池管理系统从机地址分配方法 | |
CN105122736A (zh) | 用于主仲裁的方法和系统 | |
US9596131B2 (en) | Method for transiting operation mode of routing processor | |
EP3407458B1 (en) | Method and device for identifying master and slave battery packs | |
CN104951346B (zh) | 一种用于嵌入式系统的进程管理方法及系统 | |
CN114048066A (zh) | 一种基于guid识别的板卡深度信息智能管理方法 | |
CN101557307A (zh) | 调度自动化系统应用状态管理方法 | |
CN109386939A (zh) | 一种空调控制方法、装置、存储介质及空调 | |
CN110177343A (zh) | 广播帧的处理方法、装置、存储介质、处理器及系统 | |
CN203966216U (zh) | 基于以太网控制的智能锁具管理系统 | |
CN116208638A (zh) | 多组件主从式自动组网方法及管理系统 | |
CN113064343A (zh) | 一种基于可靠性燃料电池的多系统调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |