CN117478642A - 通信地址自动分配方法 - Google Patents
通信地址自动分配方法 Download PDFInfo
- Publication number
- CN117478642A CN117478642A CN202311817536.8A CN202311817536A CN117478642A CN 117478642 A CN117478642 A CN 117478642A CN 202311817536 A CN202311817536 A CN 202311817536A CN 117478642 A CN117478642 A CN 117478642A
- Authority
- CN
- China
- Prior art keywords
- communication
- information packet
- address
- node equipment
- packet
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000004044 response Effects 0.000 claims abstract description 30
- 230000001934 delay Effects 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5069—Address allocation for group communication, multicast communication or broadcast communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于通信技术领域,公开了一种通信地址自动分配方法,包括:通信主节点设备向所有通信从节点设备广播报名信息包;通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包;通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃地址分配信息包。本发明实现了通信节点设备地址的自动分配。
Description
技术领域
本发明涉及到通信技术领域,特别涉及到一种通信地址自动分配方法。
背景技术
监控系统各类总线、FSK(Frequency Shift Keying,频移键控)、ASK(AmplitudeShift Keying,振幅移键)等数据通信中,每个通信节点设备需要设置通信地址,通信节点设备间才能实现有效数据通信。这就涉及到怎么设置通信节点设备的地址和通信主节点设备怎么知道各个通信节点设备的地址问题。目前通常都是通过人工手动设置:安装设备时设置好每个通信节点设备的地址并要做好记录;或者每个设备都设置好通信地址后再安装设备,并做好记录。这两种配置通信节点设备地址的方式都容易出问题:可能地址设置重叠了,或者从节点设备设置的地址有误;设置好地址的设备安装,容易安装上不是一套的设备;设备坏了替换设备也容易设错或忘设置通信地址。因此,如何解决人工手动设置通信节点设备的地址存在的缺陷是亟需解决的技术问题。
发明内容
本发明的主要目的为提供一种通信地址自动分配方法,旨在解决人工手动设置通信节点设备的地址存在的缺陷,实现通信节点设备地址的自动分配。
为了实现上述发明目的,本发明第一方面提出一种通信地址自动分配方法,包括:
通信主节点设备向所有通信从节点设备广播报名信息包;
通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包;其中,回应的报名信息包包括该通信从节点设备的身份标识;
通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址;
通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包。
进一步的,所述通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包的步骤之后,还包括:
重复上述所有步骤,直到通信主节点设备广播报名信息包后,没有通信从节点设备回应为止。
进一步的,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之后,所述方法还包括:
所述通信主节点设备开始定时延时,等待通信从节点设备返回回应的报名信息包,并在延时时间到后,执行所述通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤。
进一步的,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出所述延时时间。
进一步的,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包的步骤包括:
通信从节点设备接收到通信主节点设备广播的报名信息包后,从所述报名信息包中解析出所述用于产生随机数的最大值,并根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
进一步的,所述如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存的步骤之后,还包括:
标识本节点设备已经分配了通信地址。
第二方面,本申请实施例提供一种通信地址自动分配方法,应用于通信主节点设备,所述方法包括:
向所有通信从节点设备广播报名信息包;
接收通信从节点设备针对广播的报名信息包回应的报名信息包;
根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址。
进一步的,所述向所有通信从节点设备广播报名信息包之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出延时时间;
所述向所有通信从节点设备广播报名信息包的步骤之后,还包括:
开始定时延时,并在所述延时时间到达后,判断是否接收到通信从节点设备针对广播的报名信息包回应的报名信息包;
如果接收到,则执行所述根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤,并在延时若干秒后,返回获取时间片和用于产生随机数的最大值的步骤;
如果接收不到,则判断没有接收到回应的报名信息包的次数是否超过预设的次数,如果是,则退出地址分配流程;如果不是,则返回获取时间片和用于产生随机数的最大值的步骤。
第三方面,本申请实施例提供一种通信地址自动分配方法,应用于通信从节点设备,所述方法包括:
判断是否接收到通信主节点设备广播的报名信息包;
若接收到通信主节点设备广播的报名信息包,则判断本通信节点设备是否已经分配过通信地址;
如果已经分配过通信地址,则退出地址分配流程;
如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包;
如果没有接收到通信主节点设备广播的报名信息包,则判断是否接收到通信主节点设备广播的地址分配信息包;
如果没有接收到通信主节点设备广播的地址分配信息包,则返回判断是否接收到通信主节点设备广播的报名信息包的步骤;
如果接收到通信主节点广播的地址分配信息包,则解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,然后退出地址分配流程;如果没有,则丢弃所述地址分配信息包,并返回判断是否接收到通信主节点设备广播的报名信息包的步骤。
进一步的,所述广播的报名信息包包括时间片和用于产生随机数的最大值,所述如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包的步骤包括:
如果没有分配过通信地址,则从所述广播的报名信息包中解析出时间片和用于产生随机数的最大值;
根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
进一步的,所述则从所述地址分配信息包中解析出本设备的通信地址并保存步骤之后,还包括:
标识本设备已经分配了通信地址。
本申请实施例中,通信主节点设备向所有通信从节点设备广播报名信息包,这样,通信从节点设备在接收到报名信息包后,可以向通信主节点设备进行回应,以期望通信主节点设备能够为其分配通信地址,通信主节点设备接收到通信从节点设备回应的报名信息包,根据这个回应的报名信息包给这个通信从节点设备分配通信地址,然后通信主节点设备将所有报名的通信从节点设备的身份标识以及其对应的通信地址封装成地址分配信息包,然后广播这个地址分配信息包,通信从节点设备接收到这个地址分配信息包后,解析这个地址分配信息包,根据解析结果判断地址分配信息包是否包括本节点设备(也就是这个通信从节点设备本身)的身份标识,如果有则解析出本节点设备的通信地址并保存到自己的通信地址,如果没有,则丢弃这个地址分配信息包,这样,实现了通信节点设备地址的自动分配,解决了人工手动设置通信地址带来的缺陷,通信节点地址自动化分配,无需人为干预,地址分配稳定可靠,保证系统数据通信的可靠稳定性,同时简化了设备安装步骤,节省人力和设备地址管理的繁琐工作,同时纯软件方法也不会增加设备的硬件成本。
附图说明
图1是本申请一实施例提供的通信地址自动分配方法的流程示意图;
图2是本申请另一实施例提供的通信地址自动分配方法的流程示意图;
图3是本申请又一实施例提供的通信地址自动分配方法的流程示意图;
图4是本申请再一实施例提供的通信地址自动分配方法的流程示意图;
图5是本申请应用于通信主节点设备的通信地址自动分配方法的流程示意图;
图6是本申请应用于通信从节点设备的通信地址自动分配方法的流程示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图作进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“上述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件、模块、模块和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、模块、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一模块和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
如图1所示,本申请实施例提供一种通信地址自动分配方法,包括步骤S1-S4:
S1、通信主节点设备向所有通信从节点设备广播报名信息包。
在步骤S1,通信主节点设备启动后,向所有通信从节点设备广播报名信息包,或通信主节点设备可以在通信主节点设备启动后,且接收到用户手动触发指令后向所有通信从节点设备广播报名信息包,或其他条件触发,本发明实施例对此不做限制。所述报名信息包中携带的信息是用于告知通信从节点设备现在通信主节点设备接收报名,为报名的通信从节点设备分配通信地址,并请求通信从节点设备返回封装好指定数据的报名信息包,返回的报名信息包中包括通信从节点设备本身的身份标识,每个通信从节点设备的身份标识都是唯一的,身份标识包括MCU(Microcontroller Unit,微控制单元)的ID(Identitydocument,身份)或设备的系列号,这样,通信主节点设备能够根据通信从节点设备的身份标识为该通信从节点设备分配通信地址。
S2、通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包;其中,回应的报名信息包包括该通信从节点设备的身份标识;
在步骤S2中,比如,通信从节点设备A2接收到通信主节点设备广播的报名信息包后,通信从节点设备A2向通信主节点设备返回通信从节点设备A2的身份标识。
S3、通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址。
在步骤S3中,具体地,回应的报名信息包中包括通信从节点设备本身的身份标识,那么有了这个通信从节点设备本身的身份标识就可以给该报名的通信从节点设备分配通信地址。
S4、通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包。
在步骤S4中,比如,通信从节点设备A2接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有通信从节点设备A2本身的身份标识,如果有,则从所述地址分配信息包中解析出通信从节点设备A2的通信地址并进行保存,如果没有,则丢弃这个地址分配信息包。
本申请实施例中,通信主节点设备向所有通信从节点设备广播报名信息包,这样,通信从节点设备在接收到报名信息包后,可以向通信主节点设备进行回应,以期望通信主节点设备能够为其分配通信地址,通信主节点设备接收到通信从节点设备回应的报名信息包,根据这个回应的报名信息包给这个通信从节点设备分配通信地址,然后通信主节点设备将所有报名的通信从节点设备的身份标识以及其对应的通信地址封装成地址分配信息包,然后广播这个地址分配信息包,通信从节点设备接收到这个地址分配信息包后,解析这个地址分配信息包,根据解析结果判断地址分配信息包是否包括本节点设备(也就是这个通信从节点设备本身)的身份标识,如果有则解析出本节点设备的通信地址并保存到自己的通信地址,如果没有,则丢弃这个地址分配信息包,这样,实现了通信节点设备地址的自动分配,解决了人工手动设置通信地址带来的缺陷,通信节点地址自动化分配,无需人为干预,地址分配稳定可靠,保证系统数据通信的可靠稳定性,同时简化了设备安装步骤,节省人力和设备地址管理的繁琐工作,同时纯软件方法也不会增加设备的硬件成本。
本发明实施例可以应用在监控系统各类总线、FSK(Frequency Shift Keying,频移键控)、ASK(Amplitude Shift Keying,振幅移键)等数据通信中,也可以应用在其他需要设置通信地址的系统,本发明在此不做限制。
在一实施例中,所述通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包的步骤之后,还包括:
重复上述所有步骤,直到通信主节点设备广播报名信息包后,没有通信从节点设备回应为止。
在本申请实施例中,由于广播一次报名信息包后,可能会存在部分通信从节点设备不回应,因此,通过重复上述步骤S1-S4,直到通信主节点设备广播报名信息包后,没有通信从节点设备回应为止,可以为所有通信从节点设备分配通信地址。比如,有100个通信从节点设备,那么第一次只有50个通信从节点设备回应,重复上述步骤可以接收另外50个通信从节点设备回应,这样就完成了100个通信从节点设备的通信地址分配。需要说明的是,通信从节点设备保存了通信主节点设备给它分配的地址信息后也是不会回应通信主节点设备的。
如图2所示,在一实施例中,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之后,所述方法还包括:
所述通信主节点设备开始定时延时,等待通信从节点设备返回回应的报名信息包,并在延时时间到后,执行步骤S3,即执行所述通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤。
在这一实施例中,其目的是为了等待通信从节点设备返回回应的报名信息包,并在延时时间到后,再执行所述通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤,之后再重新广播报名信息包,能够避免广播信息和接收信息冲突的问题,保证数据正常通信。
如图3所示,在一实施例中,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出所述延时时间。
在这一实施例中,所述时间片指的是一段时间,比如,时间片是10ms,时间片可以预先设置也可以从通信系统中获取,时间片的长度一般根据通信系统的响应特性确定。所述用于产生随机数的最大值是预先设置的,用于产生随机数的最大值一般根据通信从节点设备的数量确定,通信从节点设备数量越多,用于产生随机数的最大值就越大。比如,用于产生随机数的最大值和通信从节点设备的数量相同,比如,通信从节点设备的数量是100个,时间片是10ms,那么延时时间是1000ms,在这1000ms内,通信主节点等待通信从节点设备返回回应的报名信息包。在这一实施例中,其一目的是为了保证不同通信从节点设备返回回应的报名信息包的时间不同,从而避免数据冲突、造成信息丢失、错乱等问题。具体地,通过令广播的报名信息包包括时间片和用于产生随机数的最大值,这样,通信从节点设备接收到这个广播的报名信息包后,可以利用上述用于产生随机数的最大值产生一个随机数,并将这个随机数乘以上述时间片得到通信从节点设备的延时时间,由于不同通信从节点设备都会产生一个随机数,因此,不同通信从节点设备的延时时间不同,即不同通信从节点设备返回回应的报名信息包的时间不同,又由于数据均在一条通信总线上传输,因此,不同通信从节点设备返回回应的报名信息包的时间不同可以避免数据冲突、造成信息丢失、错乱等问题,从而保证系统数据通信的可靠稳定、保证地址分配的稳定可靠。另外,其另一目的是为了能够确保可以接收所有通信从节点设备返回的数据。具体地,通信主节点设备会将上述时间片乘以上述用于产生随机数的最大值计算出通信主节点设备的延时时间,并在这个延时时间内等待通信从节点设备返回回应的报名信息包,由于通信主节点设备的延时时间是根据用于产生随机数的最大值计算的,且用于产生随机数的最大值是根据通信从节点设备数量确定的,所以通过这种方式计算得到的延时时间确保了可以接收所有通信从节点设备返回的数据,另外,延时时间过后再重新广播报名信息包,能够避免广播信息和接收信息冲突的问题。
所述用于产生随机数的最大值在每次循环中不变或每次循环都进行更新。每次循环都进行更新,具体地,用通信从节点设备的总数量减去已经分配通信地址的通信从节点设备的数量,得到用于更新随机数的最大值的值。比如,100个通信从节点设备,在第一次循环中(第一次执行步骤S1-S4)中,已经给50个通信从节点设备分配了地址,那么,第二次用于产生随机数的最大值可以用100-50=50进行更新(即用50进行更新),这样可以减少延时时间,从而提高整个通信地址自动分配流程的速度。
如图4所示,在一实施例中,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包的步骤包括:
通信从节点设备接收到通信主节点设备广播的报名信息包后,从所述报名信息包中解析出所述用于产生随机数的最大值,并根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
在这一实施例中,其目的是保证不同通信从节点设备返回回应的报名信息包给通信主节点设备的时间不同,从而避免数据冲突、造成信息丢失、错乱等问题。具体地,每个通信从节点设备根据用于产生随机数的最大值产生一个随机数,这里根据用于产生随机数的最大值产生一个随机数指的是使用随机数生成器,生成一个在0到随机数的最大值之间随机数,作为该通信从节点设备的延时时间长度,由于每个通信从节点设备都会分别产生一个随机数和时间片相乘,因此,每个通信从节点设备的延时时间长度不同,能够保证不同从节点设备返回回应的报名信息包给通信主节点设备的时间不同,又由于数据均在一条通信总线上传输,因此,保证不同从节点设备返回回应的报名信息包给通信主节点设备的时间不同可以避免数据冲突、造成信息丢失、错乱等问题,从而保证系统数据通信的可靠稳定、保证地址分配的稳定可靠。
在一实施例中,所述如果有,则从所述地址分配信息包中解析出本设备的通信地址并保存到自己的通信地址的步骤之后,还包括:
标识本节点设备已经分配了通信地址。
在这一实施例中,其目的是为了快速了解到通信从节点设备本身是否已经分配了通信地址,提高整个通信地址分配流程的速度。通过将已经分配地址的通信从节点设备标识为已经分配了通信地址,那么,下一次可以快速得知其自己是否已经分配了通信地址,这种做了该种标识的通信从节点设备下一次接收到通信主节点设备的广播信息包时,不再回应通信主节点设备,这样通信主节点设备也不需要为其重新分配地址,也即通信主节点设备端所要处理和计算的数据减少,从而提高整个通信地址分配流程的速度。另外,由于通信从节点设备根据这个标识就能够判断出于通信从节点设备自己本身是否已经分配过地址,因此也能够减少通信从节点设备这一端的计算量,从而节约了通信从节点设备这一端的计算资源,提高通信从节点设备这一端的运行速度。
实施例2:
以下本申请还提供一种通信地址自动分配方法,应用于通信主节点设备,该方法不同于上述方法(实施例1)的一点是,其执行主体是通信主节点设备,而上述方法的执行主体既包括通信主节点设备又包括通信从节点设备,但是上述方法(实施例1)中关于通信主节点设备的相关均适用于本申请实施例,因此,本申请下述以通信主节点设备为执行主体的方法不再进行详细赘述。
如图5所示,本申请还提供一种通信地址自动分配方法,应用于通信主节点设备,所述方法包括:
S21、向所有通信从节点设备广播报名信息包;
S22、接收通信从节点设备针对广播的报名信息包回应的报名信息包;
S23、根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址。
在一实施例中,所述向所有通信从节点设备广播报名信息包之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出延时时间;
所述向所有通信从节点设备广播报名信息包的步骤之后,还包括:
开始定时延时,并在所述延时时间到达后,判断是否接收到通信从节点设备针对广播的报名信息包回应的报名信息包;
如果接收到,则执行所述根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤,并在延时若干秒后,返回获取时间片和用于产生随机数的最大值的步骤;
如果接收不到,则判断没有接收到回应的报名信息包的次数是否超过预设的次数,如果是,则退出地址分配流程;如果不是,则返回获取时间片和用于产生随机数的最大值的步骤。
在本申请实施例中,需要说明的是,延时时间还未到时,将接收到的回应的报名信息包存储起来。
实施例3:
以下本申请还提供一种通信地址自动分配方法,应用于通信从节点设备,该方法不同于上述方法(实施例1)的一点是,其执行主体是通信从节点设备,而上述方法(实施例1)的执行主体既包括通信主节点设备又包括通信从节点设备中,但是上述方法(实施例1)关于通信从节点设备的相关均适用于本申请实施例,因此,本申请下述以通信从节点设备为执行主体的方法不再进行详细赘述。
如图6所示, 本申请还提供一种通信地址自动分配方法,应用于通信从节点设备,所述方法包括:
判断是否接收到通信主节点设备广播的报名信息包;
若接收到通信主节点设备广播的报名信息包,则判断本通信节点设备是否已经分配过通信地址;
如果已经分配过通信地址,则退出地址分配流程;
如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包;
如果没有接收到通信主节点设备广播的报名信息包,则判断是否接收到通信主节点设备广播的地址分配信息包;
如果没有接收到通信主节点设备广播的地址分配信息包,则返回判断是否接收到通信主节点设备广播的报名信息包的步骤;
如果接收到通信主节点广播的地址分配信息包,则解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,然后退出地址分配流程;如果没有,则丢弃所述地址分配信息包,并返回判断是否接收到通信主节点设备广播的报名信息包的步骤。
在一实施例中,所述广播的报名信息包包括时间片和用于产生随机数的最大值,所述如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包的步骤包括:
如果没有分配过通信地址,则从所述广播的报名信息包中解析出时间片和用于产生随机数的最大值;
根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
在一实施例中。所述则从所述地址分配信息包中解析出本设备的通信地址并保存步骤之后,还包括:
标识本设备已经分配了通信地址。
实施例四:
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例所述的通信地址自动分配方法。本实施例中的计算机可读存储介质可以是易失性可读存储介质,也可以为非易失性可读存储介质。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种通信地址自动分配方法,其特征在于,包括:
通信主节点设备向所有通信从节点设备广播报名信息包;
通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包;其中,回应的报名信息包包括该通信从节点设备的身份标识;
通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址;
通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包。
2.根据权利要求1所述的通信地址自动分配方法,其特征在于,所述通信从节点设备接收到通信主节点设备广播的地址分配信息包后,解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,如果没有,则丢弃所述地址分配信息包的步骤之后,还包括:
重复上述所有步骤,直到通信主节点设备广播报名信息包后,没有通信从节点设备回应为止。
3.根据权利要求1所述的通信地址自动分配方法,其特征在于,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之后,所述方法还包括:
所述通信主节点设备开始定时延时,等待通信从节点设备返回回应的报名信息包,并在延时时间到后,执行所述通信主节点设备根据接收到的回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤。
4.根据权利要求3所述的通信地址自动分配方法,其特征在于,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信主节点设备向所有通信从节点设备广播报名信息包的步骤之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出所述延时时间。
5.根据权利要求1所述的通信地址自动分配方法,其特征在于,所述通信主节点设备广播的报名信息包包括时间片和用于产生随机数的最大值,所述通信从节点设备接收到通信主节点设备广播的报名信息包后,向通信主节点设备返回回应的报名信息包的步骤包括:
通信从节点设备接收到通信主节点设备广播的报名信息包后,从所述报名信息包中解析出所述用于产生随机数的最大值,并根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
6.根据权利要求1所述的通信地址自动分配方法,其特征在于,所述如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存的步骤之后,还包括:
标识本节点设备已经分配了通信地址。
7.一种通信地址自动分配方法,其特征在于,应用于通信主节点设备,所述方法包括:
向所有通信从节点设备广播报名信息包;
接收通信从节点设备针对广播的报名信息包回应的报名信息包;
根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包;其中,地址分配信息包包括所有报名的通信从节点设备的身份标识以及其对应的通信地址。
8.根据权利要求7所述的通信地址自动分配方法,其特征在于,所述向所有通信从节点设备广播报名信息包之前,还包括:
获取时间片和用于产生随机数的最大值;
根据所述时间片和所述用于产生随机数的最大值计算出延时时间;
所述向所有通信从节点设备广播报名信息包的步骤之后,还包括:
开始定时延时,并在所述延时时间到达后,判断是否接收到通信从节点设备针对广播的报名信息包回应的报名信息包;
如果接收到,则执行所述根据所述回应的报名信息包给报名的通信从节点设备分配通信地址,然后向报名的通信从节点设备广播地址分配信息包的步骤,并在延时若干秒后,返回获取时间片和用于产生随机数的最大值的步骤;
如果接收不到,则判断没有接收到回应的报名信息包的次数是否超过预设的次数,如果是,则退出地址分配流程;如果不是,则返回获取时间片和用于产生随机数的最大值的步骤。
9.一种通信地址自动分配方法,其特征在于,应用于通信从节点设备,所述方法包括:
判断是否接收到通信主节点设备广播的报名信息包;
若接收到通信主节点设备广播的报名信息包,则判断本通信节点设备是否已经分配过通信地址;
如果已经分配过通信地址,则退出地址分配流程;
如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包;
如果没有接收到通信主节点设备广播的报名信息包,则判断是否接收到通信主节点设备广播的地址分配信息包;
如果没有接收到通信主节点设备广播的地址分配信息包,则返回判断是否接收到通信主节点设备广播的报名信息包的步骤;
如果接收到通信主节点广播的地址分配信息包,则解析地址分配信息包中是否有本节点设备的身份标识,如果有,则从所述地址分配信息包中解析出本节点设备的通信地址并保存,然后退出地址分配流程;如果没有,则丢弃所述地址分配信息包,并返回判断是否接收到通信主节点设备广播的报名信息包的步骤。
10.根据权利要求9所述的通信地址自动分配方法,其特征在于,所述广播的报名信息包包括时间片和用于产生随机数的最大值,所述如果没有分配过通信地址,则向通信主节点设备返回回应的报名信息包的步骤包括:
如果没有分配过通信地址,则从所述广播的报名信息包中解析出时间片和用于产生随机数的最大值;
根据所述用于产生随机数的最大值产生一个随机数,将所述随机数乘以所述时间片得到一个时间长度,然后定时延时所述时间长度,并在基于所述时间长度的延时时间到后,向通信主节点设备返回回应的报名信息包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311817536.8A CN117478642A (zh) | 2023-12-27 | 2023-12-27 | 通信地址自动分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311817536.8A CN117478642A (zh) | 2023-12-27 | 2023-12-27 | 通信地址自动分配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117478642A true CN117478642A (zh) | 2024-01-30 |
Family
ID=89626034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311817536.8A Pending CN117478642A (zh) | 2023-12-27 | 2023-12-27 | 通信地址自动分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117478642A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103826252A (zh) * | 2014-01-16 | 2014-05-28 | 京信通信系统(中国)有限公司 | 主从设备之间获取及发送序列号的方法和系统 |
CN109391493A (zh) * | 2017-08-09 | 2019-02-26 | 深圳市傲睿智存科技有限公司 | 一种服务器集群的子服务器集群及其自启动加载方法 |
CN111400214A (zh) * | 2020-02-27 | 2020-07-10 | 深圳震有科技股份有限公司 | 一种双核共用网口的实现方法、智能终端及存储介质 |
CN112217917A (zh) * | 2020-10-12 | 2021-01-12 | 深圳市友华软件科技有限公司 | 桥接模式下挂载终端的ip获取方法和装置 |
CN113612868A (zh) * | 2021-08-06 | 2021-11-05 | 深圳市欧瑞博科技股份有限公司 | 设备地址分配方法、装置以及系统 |
CN115989666A (zh) * | 2020-05-26 | 2023-04-18 | 卡乐工业股份公司 | 分配操作地址的方法 |
-
2023
- 2023-12-27 CN CN202311817536.8A patent/CN117478642A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103826252A (zh) * | 2014-01-16 | 2014-05-28 | 京信通信系统(中国)有限公司 | 主从设备之间获取及发送序列号的方法和系统 |
CN109391493A (zh) * | 2017-08-09 | 2019-02-26 | 深圳市傲睿智存科技有限公司 | 一种服务器集群的子服务器集群及其自启动加载方法 |
CN111400214A (zh) * | 2020-02-27 | 2020-07-10 | 深圳震有科技股份有限公司 | 一种双核共用网口的实现方法、智能终端及存储介质 |
CN115989666A (zh) * | 2020-05-26 | 2023-04-18 | 卡乐工业股份公司 | 分配操作地址的方法 |
CN112217917A (zh) * | 2020-10-12 | 2021-01-12 | 深圳市友华软件科技有限公司 | 桥接模式下挂载终端的ip获取方法和装置 |
CN113612868A (zh) * | 2021-08-06 | 2021-11-05 | 深圳市欧瑞博科技股份有限公司 | 设备地址分配方法、装置以及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101951417B (zh) | 多服务器地址分配方法、系统及中继设备 | |
CN106789498B (zh) | Modbus通信网络的网络地址分配方法、从节点设备与通信系统 | |
RU2017122705A (ru) | Способ установления приоритетов в процессе произвольного доступа с использованием кодирования посредством преамбул | |
US10880057B2 (en) | Method and apparatus for determining resource occupation state | |
CN111654348B (zh) | 物联网数据传输方法、装置、计算机设备和存储介质 | |
CN107949058B (zh) | 一种窄带物联网随机接入方法及装置 | |
EP3101985B1 (en) | Multichannel access method and apparatus | |
CN111597123A (zh) | 自动分配地址方法、装置、计算机设备和存储介质 | |
EP3291592A1 (en) | Monitoring management method and apparatus | |
CN111104273A (zh) | 基于批量任务的自动化分配测试方法、装置和计算机设备 | |
CN109120741B (zh) | 一种重复地址检测方法及装置、计算机可读存储介质 | |
EP3787308A1 (en) | Method and apparatus for opening quiet window, and registration method, apparatus and system | |
CN117478642A (zh) | 通信地址自动分配方法 | |
CN110460491B (zh) | 基于rdma的性能测试方法及装置 | |
CN108551690B (zh) | 一种无线设备接入方法、装置及终端设备 | |
CN112272244B (zh) | 一种路由器WAN端IPv6上网模式配置方法及装置 | |
CN111741143B (zh) | 一种电测仪表Modbus地址在线分配的方法、装置 | |
CN109474709B (zh) | 以太网接入设备的ip地址动态分配方法和系统装置 | |
CN111698342A (zh) | 温控器通信地址分配方法及系统 | |
CN109525417B (zh) | 基于网口的家电设备接入方法、家电控制器及存储介质 | |
CN113473620A (zh) | 动态时隙分配方法、装置、计算机设备和可读存储介质 | |
CN109062702B (zh) | 一种计算资源分配方法、相关装置及可读存储介质 | |
CN113504879A (zh) | 数据存储的方法及智能家电 | |
CN109951891B (zh) | 一种进行数据传输的方法和设备 | |
CN110611589A (zh) | 区域控制系统的控制方法及装置、空调系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |