一种获取总线上挂载节点信息的方法和装置的制造方法_3

文档序号:9581585阅读:来源:国知局
]进一步的,由于图4所示的方法中各个挂载节点使用相同的上报时延生成算法来进行第一标识的转换,因此对于不同的第一标识其转换得到的转换数值也有可能是相同的,这时转换数值相同的两个甚至多个挂载节点将同时通过总线向控制节点发送第一标识,仍然可能产生消息碰撞,使得控制节点无法接收到这些挂载节点发送的第一标识,因此,本发明实施例还提供了图5所示的获取总线上挂载节点标识的方法,通过确认控制节点中接收到的第一标识以及控制节点发送多轮上报消息的方式解决该问题。参见图5,假设控制节点发送N轮上报消息,N大于等于2 ;该方法包括:
[0085]步骤501?步骤506与步骤401?步骤406相同。
[0086]步骤507:控制节点通过总线发送确认消息,所述确认消息中包括接收到的各个挂载节点的第一标识。
[0087]步骤508:挂载节点接收所述确认消息,判断所述确认消息中是否包括自身的第一标识,包括时,如果再接收到所述控制节点发送的上报消息,不再发送自身的第一标识;不包括时,如果再接收到所述控制节点发送的上报消息,所述挂载节点将自身的第一标识通过总线发送给所述控制节点。
[0088]以上步骤501?步骤508是控制节点发送第一轮的上报消息时,控制节点与各个挂载节点之间的处理步骤。
[0089]之后,控制节点还将发送第二轮的上报消息,此时,控制节点与各个挂载节点之间的处理步骤可以参考步骤502?步骤508,区别仅在于:1、控制节点发送的第二轮的上报消息中包括的上报时延生成算法标识最好与第一轮的上报消息中包括的上报时延生成算法标识不同;2、发送第二轮的上报消息时,与控制节点进行交互的挂载节点仅为第一轮中判断确认消息中不包括自身的第一标识的挂载节点,判断确认消息中包括自身的第一标识的挂载节点不再发送第一标识。
[0090]控制节点发送的第二轮之后的各轮的上报消息时,控制节点与各个挂载节点之间的处理步骤以此类推不再赘述。
[0091]在实际应用中,N的数值可以自主设定,本发明并不限制。优选地,所述控制节点发送的相邻两轮上报消息中包括的上报时延生成算法标识不同。
[0092]举例来说,参见图5A所示场景下的总线系统结构图,总线系统中包括挂载节点1?5共5个挂载节点;假设控制节点预设发送3轮上报消息,本例中上报时延生成算法为hash算法,上报消息中分别包括hash算法标识1、3、2 ;则,
[0093]控制节点发送第一轮的上报消息,其中包括hash算法标识1 ;
[0094]挂载节点1?5分别执行步骤502?步骤506,具体过程不细述,假设挂载节点1、2、3使用hash算法标识1指示的hash算法对自身的第一标识进行hash转换后得到的转换数值均为a,挂载节点4、5使用hash算法标识1指示的hash算法对自身的第一标识进行hash转换后得到的转换数值分别为b和c,a、b、c的数值互不相同;则挂载节点1、2、3发送第一标识的延时时间相同,三个挂载节点发送的第一标识将在总线上发生消息碰撞,使得控制节点无法接收到挂载节点1、2、3的第一标识,只能接收到挂载节点4的第一标识和挂载节点5的第一标识;
[0095]则控制节点执行步骤507发送确认消息时,确认消息中将仅包括挂载节点4的第一标识和挂载节点5的第一标识,从而使得挂载节点4、5判断所述确认消息中包括自身的第一标识,接收到第二轮和第三轮的上报消息时,不再发送第一标识,挂载节点1、2、3将在接收到第二轮的上报消息时,继续发送第一标识。
[0096]之后,控制节点发送第二轮的上报消息,其中包括hash算法标识3 ;
[0097]挂载节点1?3分别执行步骤502?步骤506,具体过程不细述,假设挂载节点1、2使用hash算法标识3指示的hash算法对自身的第一标识进行hash转换后得到的转换数值均为d,挂载节点3使用hash算法标识3指示的hash算法对自身的第一标识进行hash转换后得到的转换数值为e,d和e数值不同,则挂载节点1、2发送第一标识的延时时间相同,挂载节点1、2发送的第一标识将在总线上发生消息碰撞,使得控制节点无法接收到挂载节点1、2的第一标识,只能接收到挂载节点3的第一标识;
[0098]则控制节点执行步骤507发送确认消息时,确认消息中将仅包括挂载节点3的第一标识,从而使得挂载节点3判断所述确认消息中包括自身的第一标识,接收到第三轮的上报消息时,不再发送第一标识,挂载节点1、2将在接收到第三轮的上报消息时,继续发送第一标识。
[0099]之后,控制节点发送第三轮的上报消息,其中包括hash算法标识2 ;
[0100]挂载节点1?2分别执行步骤502?步骤506,具体过程不细述,假设挂载节点1、2使用hash算法标识3指示的hash算法对自身的第一标识进行hash转换后得到的转换数值分别为f和g,f和g数值不同,则挂载节点1、2发送第一标识的延时时间不同,控制节点可以接收到挂载节点1、2发送的第一标识;
[0101]则控制节点执行步骤507发送确认消息时,确认消息中将包括挂载节点1的第一标识和挂载节点2的第一标识,从而使得挂载节点1、2判断所述确认消息中包括自身的第一标识。至此,控制节点与挂载节点之间的交互结束,控制节点能够获取到挂载节点1?5的第一标识。当然,在实际应用中,有可能发生控制节点发送多轮的上报消息时,仍然有两个或多个挂载节点发送的第一标识发生碰撞的可能性,但是,通过多轮上报消息的发送、设计合理的上报时延生成算法以及在不同轮的上报消息之间合理切换上报时延生成算法标识等方法,随着每一轮发送上报消息后与控制节点交互的挂载节点数量的降低,能够尽量降低甚至消除挂载节点之间消息碰撞的发生概率,使得控制节点能够获取到总线上所有挂载节点的第一标识。
[0102]参见图6,为本发明实施例一种获取总线上挂载节点标识的装置结构示意图,该装置可以应用于总线系统中的控制节点,所述控制节点和总线系统中的每个挂载节点通过总线通信;该装置600包括:
[0103]发送单元610,用于发送上报消息,所述上报消息用于指示各个所述挂载节点上报第一标识;
[0104]接收单元620,用于接收各个所述挂载节点分别发送的所述挂载节点自身的第一标识。
[0105]可选地,所述上报消息中包括上报时延生成算法标识,所述上报时延生成算法标识用于指示各个所述挂载节点所使用上报时延生成算法。
[0106]可选地,所述发送单元发送的相邻两轮上报消息中包括的上报时延生成算法标识不同。
[0107]可选地,所述发送单元610,还可以用于所述接收单元620接收各个所述挂载节点分别发送的所述挂载节点自身的第一标识之后,发送确认消息,所述确认消息中包括所述接收单元接收到的各个第一标识,以便各个所述挂载节点确认所述控制节点是否接收到自身的第一标识。
[0108]可选地,所述发送单元610,还可以用于发送确认消息之后,发送下一轮的上报消息;相邻两轮上报消息中包括的上报时延生成算法标识不同;
[0109]所述接收单元620,还可以用于接收确认未被控制节点确认的挂载节点所发送的第一标识;
[0110]所述发送单元610,还可以用于再次发送确认消息,所述确认消息中包括所述接收单元在所述发送单元发送所述下一轮的上报消息后接收到的第一标识。
[0111]本实施例中,所述装置发送上报消息,指示总线上的各个挂载节点上报第一标识,接收各个挂载节点发送的第一标识,从而使得控制节点能够通过总线获取到总线上挂载的各个挂载节点的第一标识。
[0112]参见图7,为本发明实施例另一种获取总线上挂载节点标识的装
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1