fttr组网下基于扩展omci的消息转发方法及装置
技术领域
1.本发明涉及fttr组网技术领域,具体来讲是一种fttr组网下基于扩展omci的消息转发方法及装置。
背景技术:2.fttr(fiber to the room,光纤到房间)是千兆时代下家庭及soho办公网络的新型覆盖模式,它是在fttb(十兆时代光纤到楼)和ftth(百兆时代光纤到户)的基础上,再将光纤布设进一步衍生到每一个房间或者办公室,让每一个房间或者办公室都可以达到千兆光纤网速,实现全屋wi-fi6千兆全覆盖的新型组网方案。
3.目前,fttr网络可采用gpon(吉比特无源光网络)光纤组网,一个主网关下挂有多个子网关,且fttr网络沿用传统的gpon omci(onu management and control interface光网络单元管理控制接口)管理协议进行管理。但由于omci协议是一个主从协议,仅支持主网关和子网关之间的管理,不支持子网关与子网关之间通过omci协议进行交互,因此,在具体应用时,现有方案会导致子网关间的消息转发存在诸多问题。
4.例如,以物联场景下的联动场景来说,客厅子网关下的总关打开后需要主卧、客卧、厨房房间子网关下的开关进行联动通信时,如图示1所示存在以下问题:
5.问题1、当客厅子网关的消息a产生时,不清楚应该发给其他的哪些子网关,无法实现消息的按需转发;
6.问题2、同样的消息a发往不同的目的地(如发送给图1中主卧子网关和客卧子网关)时,需要通过客厅子网关将消息a进行反复发送,发送效率低下;而且,消息a在网络中传输了多次,信息冗余占用带宽。
7.因此,如何解决fttr组网环境下多个子网关之间无法按需快速转发消息以及消息转发效率低、带宽占用大等问题,成为了本领域技术人员亟待解决的事情。
技术实现要素:8.本发明的目的在于提供一种fttr组网下基于扩展omci的消息转发方法及装置,至少解决上述的技术问题之一。
9.为达到以上目的,第一方面,本发明实施例提供一种fttr组网下基于扩展omci的消息转发方法,该方法包括:
10.协议扩展流程:对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能;
11.消息订阅流程:当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关;主网关根据该订阅消息生成omci消息路由转发表,所述omci消息路由转发表用于记录订阅者与所订阅的消息的关联关系;
12.消息转发流程:当某个子网关产生消息时,发送发布消息给主网关;主网关根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去。
13.作为一个优选的实施方案,所述协议扩展流程具体包括:对现有omci协议的消息类型字段message type进行扩展设置,使其支持消息订阅类型;对现有omci协议的消息标识字段message identify进行扩展设置,使其用于标识某条消息;复用现有omci协议的消息内容字段message contents,使其用于保存消息内容。
14.作为一个优选的实施方案,所述协议扩展流程具体包括:对现有omci协议的消息内容字段message contents进行扩展设置,使其支持消息订阅类型并用于保存消息内容;利用现有omci协议的字符串主题名来标识某条消息。
15.作为一个优选的实施方案,所述消息订阅流程中,主网关生成的omci消息路由转发表包括订阅列表和消息标识hash表;所述消息标识hash表用于基于消息标识进行hash运算找到对应的订阅列表;所述订阅列表包括消息标识和订阅者列表;每个订阅者列表项包括:订阅者所在网关的物理序列号、订阅者所在网关的授权号以及订阅消息传递的物理层gemport。
16.作为一个优选的实施方案,该方法还包括以下操作:
17.所述协议扩展流程中,对现有omci协议进行扩展设置时,使其具备标识转发模式的功能,所述转发模式包括omci订阅组转发模式、omci消息组转发模式以及omci单播转发模式;
18.所述消息订阅流程中,某个子网关通过扩展的omci协议发送订阅消息给主网关时指定转发模式;主网关收到订阅消息后,根据转发模式分配对应的gemport并反馈给该子网关;其中,omci单播转发模式分配omci单播gemport,omci订阅组转发模式分配omci订阅组gemport,omci消息组转发模式分配omci消息组gemport;
19.所述消息转发流程中,主网关将某个子网关发布的消息转发出去时,按照所指定的转发模式并通过所分配的gemport进行消息转发。
20.作为一个优选的实施方案,当转发模式为omci订阅组转发模式时,所述消息订阅流程和消息转发流程具体包括以下操作:
21.当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关并指定转发模式为omci订阅组转发模式;主网关收到订阅消息后,分配对应的omci订阅组gemport并反馈给该子网关,同时根据该订阅消息生成omci消息路由转发表;
22.当某个子网关产生消息时,将发布消息通过omci单播gemport发布给主网关;主网关根据所述omci消息路由转发表查找出所有订阅者,并将消息一次性通过所分配的omci订阅组gemport发送给所有订阅者;订阅者收到消息后,对于不在订阅范围的消息直接丢弃。
23.作为一个优选的实施方案,当转发模式为omci消息组转发模式时,所述消息订阅流程和消息转发流程具体包括以下操作:
24.当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关并指定转发模式为omci消息组转发模式;主网关收到订阅消息后,分配对应的omci消息组gemport并反馈给该子网关,同时根据该订阅消息生成omci消息路由转发表;
25.当某个子网关产生消息时,将发布消息通过omci单播gemport发布给主网关;主网关根据所述omci消息路由转发表查找出订阅该消息的所有订阅者,并将消息一次性通过所分配的omci消息组gemport发送给订阅该消息的所有订阅者。
26.作为一个优选的实施方案,当转发模式为omci单播转发模式时,所述消息订阅流
程和消息转发流程具体包括以下操作:
27.当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关并指定转发模式为omci单播转发模式;主网关收到订阅消息后,使用订阅消息来源的单播gemport作为为该子网关分配的omci单播gemport,并根据该订阅消息生成omci消息路由转发表;
28.当某个子网关产生消息时,将发布消息通过omci单播gemport发布给主网关;主网关根据omci消息路由转发表查找出订阅该消息的所有订阅者,并将消息通过订阅者各自的omci单播gemport分别进行发送。
29.作为一个优选的实施方案,所述消息转发流程还包括以下操作:
30.当转发模式为omci单播转发模式时,若查找出的某个订阅者不在线,主网关将该消息缓存,待不在线的订阅者上线后将该消息通过omci单播gemport发送;并在消息成功发送后删除消息;
31.当转发模式为omci订阅组转发模式时,若查找出的某个订阅者不在线,主网关先将消息一次性通过所分配的omci订阅组gemport发送给所有订阅者;再将该消息缓存,待不在线的订阅者上线后将该消息通过订阅消息来源的单播gemport重新发送;并在消息成功发送后删除消息;
32.当转发模式为omci消息组转发模式时,若查找出的某个订阅者不在线,主网关先将消息一次性通过所分配的omci消息组gemport发送给订阅该消息的所有订阅者;再将该消息缓存,待不在线的订阅者上线后将该消息通过订阅消息来源的单播gemport重新发送;并在消息成功发送后删除消息。
33.第二方面,本发明实施例还提供一种基于第一方面实施例中方法的fttr组网下基于扩展omci的消息转发装置,该装置包括设于主网关/子网关的协议扩展模块、设于子网关的消息订阅及发布模块、设于主网关的omci消息路由模块;
34.所述协议扩展模块,用于:对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能;
35.所述消息订阅及发布模块,用于:当子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关;当子网关产生消息时,发送发布消息给主网关。
36.所述omci消息路由模块,用于:当收到子网关发送的订阅消息时,根据该订阅消息生成omci消息路由转发表,所述omci消息路由转发表用于记录订阅者与所订阅的消息的关联关系;当收到子网关发布的消息时,根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去。
37.本发明的有益效果在于:
38.(1)本发明中,通过对现有omci协议进行扩展,使其支持基于消息(消息标识)的订阅发布模式,使得后续进行消息转发时能实现基于订阅的按需消息转发,不仅有效解决了fttr组网环境下子网关基于omci的按需通信问题,而且子网关产生的消息只需有针对性地发送给对该消息感兴趣的关联网关,从一定程度上减轻了主网关的转发量、提高了转发效率,满足实际应用需求。
39.(2)本发明中,不仅设计有多种转发模式——omci单播转发模式、omci订阅组转发模式以及omci消息组转发模式,还扩展原来单通道的omci支持多通道omci——omci单播
gemport、omci订阅组gemport以及omci消息组gemport,使得主网关进行消息转发时可根据消息订阅者指定的转发模式,选择与之对应的gemport来传递消息,不但转发方式灵活可选,而且在omci订阅组转发模式以及omci消息组转发模式下,消息仅一次性转发,避免了相同消息的反复发送,从而提高了发送效率、减少了冗余信息占用带宽。
附图说明
40.图1为背景技术中现有消息转发方案的示意图;
41.图2为本发明实施例中fttr组网下基于扩展omci的消息转发方法的流程图;
42.图3为本发明实施例中扩展omci协议的格式示意程图;
43.图4为本发明实施例中omci消息路由转发表的示意图;
44.图5为本发明实施例中omci订阅组转发模式的示意图;
45.图6为本发明实施例中omci消息组转发模式的示意图;
46.图7为本发明实施例中omci单播转发模式的示意图。
具体实施方式
47.针对现有的技术中,由于fttr网络沿用传统的gpon omci协议,该协议仅支持主网关和子网关之间的管理,不支持子网关与子网关之间通过omci协议进行交互,因此,在具体应用时会导致子网关间的消息转发存在无法按需快速转发消息以及消息转发效率低、带宽占用大等问题。本发明旨在提供一种fttr组网下基于扩展omci的消息转发方法及装置,至少解决上述的技术问题之一,以满足实际应用需求。
48.其主要的设计思路为:对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能;当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关;主网关根据该订阅消息生成omci消息路由转发表,所述omci消息路由转发表用于记录订阅者与所订阅的消息的关联关系;当某个子网关产生消息时,发送发布消息给主网关;主网关根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去。
49.本方案中,通过对现有omci协议进行扩展,使其支持基于消息(消息标识)的订阅发布模式,使得后续进行消息转发时能实现基于订阅的按需消息转发,不仅有效解决了fttr组网环境下子网关基于omci的按需通信问题,而且子网关产生的消息只需有针对性地发送给对该消息感兴趣的关联网关,从一定程度上减轻了主网关的转发量、提高了转发效率,满足实际应用需求。
50.为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合说明书附图以及具体的实施例对本发明的技术方案进行详细的说明。
51.但需说明的是:接下来要介绍的示例仅是一些具体的例子,而不作为限制本发明的实施例必须为如下具体的步骤、数值、条件、数据、顺序等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。
52.实施例一
53.参见图2所示,本实施例提供了一种fttr组网下基于扩展omci的消息转发方法,该方法包括以下步骤:
54.a、协议扩展流程:对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能。
55.可以理解的是,实际应用中可采用各种方式来实现对现有omci协议的扩展,只要其扩展设置后的omci协议能支持消息订阅类型并具备标识消息的功能即可,本实施例不做具体限定。但为了便于本领域技术人员的实施,下面仅以两个可选的实施方式进行举例说明。
56.示例1,作为一种可选的实施方式,步骤a中,对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能,具体包括以下操作:
57.a1、参见图3所示,对现有omci协议的标准字段message type(消息类型字段)进行扩展设置,使其支持消息订阅类型。实际应用中,所述消息订阅类型包括:订阅消息、取消订阅消息、发布消息、订阅响应消息、发布响应消息等。
58.a2、参见图3所示,对现有omci协议的标准字段message identify(消息标识字段)进行扩展设置,使其用于标识某条消息。
59.a3、参见图3所示,复用现有omci协议标准字段message contents(消息内容字段),使其用于保存消息内容。实际应用中,可复用该字段使其支持2字节消息长度和可变长(0-1964字节)的消息负载。
60.示例2,作为一种可选的实施方式,步骤a中,对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能,具体包括以下操作:
61.a1
′
、对现有omci协议的标准字段message contents(消息内容字段)进行扩展设置,使其支持消息订阅类型并用于保存消息内容。同样,实际应用中,所述消息订阅类型可包括:订阅消息、取消订阅消息、发布消息、订阅响应消息、发布响应消息等。
62.a2
′
、利用现有omci协议的字符串主题名来标识某条消息。
63.上述两个可选实施方式中,考虑到omci报文长度受限,采用扩展omci协议的标准字段message identify(消息标识字段)的方式来标识消息,更加灵活、高效、便捷,所以可优选该方式来实现。
64.b、消息订阅流程:当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关;主网关根据该订阅消息生成omci消息路由转发表,所述omci消息路由转发表用于记录订阅者与所订阅的消息的关联关系。
65.示例性地,参见图4所示,作为一种优选的实施方式,步骤b中主网关生成的omci消息路由转发表包括:订阅列表和消息标识hash表。
66.其中,消息标识hash表主要用于基于消息标识(即,消息标识字段message identify)进行hash运算找到对应的订阅列表,以完成消息的快速查找。订阅列表包括消息标识(即,消息标识字段message identify)和订阅者列表,每个订阅者列表项包括:订阅者所在网关的物理序列号(sn)、订阅者所在网关的授权号(ontid)以及订阅消息传递的物理层gemport(gemport)。
67.c、消息转发流程:当某个子网关产生消息时,发送发布消息给主网关;主网关根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去。
68.示例性地,还是以图4所示的omci消息路由转发表为例,主网关根据所述omci消息路由转发表查找出需要转发的所有订阅者(本示例中,以订阅了该消息的订阅者为需要转
发的订阅者为例,进行说明),并将该消息转发出去,具体包括以下操作:
69.主网关根据消息标识hash表将子网关所产生消息的消息标识进行hash运算根据运算结果快速查到对应的订阅列表,从该订阅列表中查找到消息对应的订阅者列表,并按照订阅者列表中的信息(如按照列表中的物理层gemport进行消息的传递),将消息转发给此消息对应的订阅者列表中的所有订阅者。举例来说,以图4中消息标识669为例,可根据消息标识hash表将子网关所产生消息的消息标识669,进行hash(669)运算,根据运算结果快速查到对应的订阅列表,从该订阅列表中查找到消息(即消息标识669)对应的订阅者列表。
70.可以理解的是,上述示例中,是以订阅了该消息的订阅者为需要转发的订阅者为例(即对应下文中omci消息组转发模式、omci单播转发模式),进行举例说明的。实际应用中,当需要转发的所有订阅者不仅是订阅了该消息的订阅者,而是所有进行了订阅的订阅者时(即对应下文中omci订阅组转发模式),则主网关根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去,具体包括以下操作:主网关从omci消息路由转发表的订阅列表中,查找出所有的订阅者列表,并按照订阅者列表中的信息(如按照列表中的物理层gemport进行消息的传递),将消息转发给每个订阅者列表中的所有订阅者。
71.更进一步地,实际应用时,该方法还包括以下步骤:当子网关对某个消息不再关注时,通过扩展的omci协议发送取消订阅消息给主网关;主网关根据该取消订阅消息在当前的omci消息路由转发表中取消订阅关系。之后,再产生该消息时,主网关将不再转发该消息给已取消订阅的子网关。
72.从上述内容可以看出,本实施例中通过对现有omci协议进行扩展,使其支持基于消息(消息标识)的订阅发布模式,使得后续进行消息转发时能实现基于订阅的按需消息转发,不仅有效解决了fttr组网环境下子网关基于omci的按需通信问题,而且子网关产生的消息只需有针对性地发送给对该消息感兴趣的关联网关,从一定程度上也减轻了主网关的转发量、提高了转发效率,满足实际应用需求。
73.实施例二
74.本实施例提供一种fttr组网下基于扩展omci的消息转发方法,其基本步骤与实施例一相同,不同之处在于,作为一种优选的实施方式,为了进一步解决消息转发效率低、信息冗余占用带宽大等问题,本实施例不仅设计有多种转发模式(包含omci单播转发模式、omci订阅组转发模式以及omci消息组转发模式),还扩展原来单通道的omci支持多通道omci(包含omci单播gemport、omci订阅组gemport以及omci消息组gemport),使得主网关进行消息转发时可根据消息订阅者指定的转发模式,选择与之对应的gemport来传递消息,不但转发方式灵活可选,而且在omci订阅组转发模式以及omci消息组转发模式下,消息仅转发一次,避免了相同消息的反复发送,从而提高了发送效率、减少了冗余信息占用带宽。具体来说,本实施例的方法还包括以下操作:
75.步骤a中,对现有omci协议进行扩展设置时,使其具备标识转发模式的功能,所述转发模式包括omci订阅组转发模式、omci消息组转发模式以及omci单播转发模式。示例性地,实际应用中,可通过对现有omci协议的标准字段message identify(消息标识字段)进行扩展设置,来使其具备标识转发模式的功能。具体来说,参见图3所示,可扩展现有omci协议的标准字段message identify,使其高3bits为转发模式字段,用于标识转发模式;低29bits为消息标识字段,用于标识某条消息。
76.步骤b中,某个子网关通过扩展的omci协议发送订阅消息给主网关时指定转发模式;主网关收到订阅消息后,根据该子网关所指定的转发模式分配对应的gemport(例如,omci订阅组转发模式分配对应的omci订阅组gemport;omci消息组转发模式分配对应的omci消息组gemport;omci单播转发模式分配对应的omci单播gemport),并反馈给该子网关。示例性地,实际应用中,主网关可通过订阅响应消息将分配的gemport反馈给该子网关;该子网关收到主网关的订阅响应消息后,可将返回的gemport加入到自身的接收omci消息gemport列表中,允许接收该gemport的消息。
77.步骤c中,主网关将某个子网关发布的消息转发出去时,会按照所指定的转发模式并通过所分配的gemport进行消息转发。
78.参见图5所示,示例性地,作为一种可选的实施方式,当转发模式为omci订阅组转发模式时,所述消息订阅流程和消息转发流程具体包括以下操作:
79.消息订阅流程:当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关并指定转发模式为omci订阅组转发模式;主网关收到订阅消息后,分配对应的omci订阅组gemport(如图5中gemport4),并通过订阅响应消息将分配的omci订阅组gemport反馈给该子网关(子网关会将反馈的gemport4加入到自身的接收omci消息gemport列表中,从而允许通过该gemport4接收消息,如图5中子网关1的gemport4、子网关2的gemport4、子网关n的gemport4),同时根据该订阅消息生成omci消息路由转发表(实际操作中,若omci消息路由转发表已创建,则可直接将子网关作为订阅者加入到所创建的omci消息路由转发表的订阅列表中)。
80.消息转发流程:当某个子网关产生消息时(如图5中的子网关1产生消息a),将发布消息通过omci单播gemport(如图5中的子网关1的gemport1)发布给主网关;主网关根据所述omci消息路由转发表查找出所有订阅者,并按照omci订阅组转发模式将消息一次性通过所分配的omci订阅组gemport(如图5中主网关的gemport4)发送给所有订阅者;订阅者收到消息后(订阅者通过之前反馈的omci订阅组gemport,如图5中子网关1的gemport4、子网关2的gemport4、子网关n的gemport4,各自接收消息),对于不在订阅范围的消息直接丢弃。实际应用中,订阅者收到消息后,可根据一个本地预先维护的消息订阅列表来判断是否丢弃消息,对于不在消息订阅列表中的消息则可直接丢弃。例如,图5中子网关1可能会收到不是自己订阅的消息(即不在本地消息订阅列表中的消息),那么在收到该消息后会直接进行本地过滤,从而丢弃该消息。
81.可以理解的是,在omci订阅组转发模式下,子网关产生的消息在发布传输过程中只需发送一次,不重复传输,并且主网关转发时也只需一次性通过所分配的omci订阅组gemport发送给所有订阅者,订阅者只需丢弃不在订阅范围的消息即可,整个过程的发送效率高且冗余信息少,减少了带宽占用。另外,在omci订阅组转发模式下,主网关根据omci消息路由转发表进行查表时,可不去关心消息标识,只需查找出所有订阅者即可进行一次性转发(即主网关侧不用进行消息标识过滤,由子网关侧来进行消息标识过滤),可进一步提高主网关侧的效率。
82.参见图6所示,示例性地,作为一种可选的实施方式,当转发模式为omci消息组转发模式时,所述消息订阅流程和消息转发流程具体包括以下操作:
83.消息订阅流程:当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅
消息给主网关并指定转发模式为omci消息组转发模式;主网关收到订阅消息后,分配对应的omci消息组gemport(如图6中gemport5),并通过订阅响应消息将分配的omci消息组gemport反馈给该子网关(子网关会将反馈的gemport5加入到自身的接收omci消息gemport列表中,从而允许通过该gemport5接收消息,如图6中子网关2的gemport5、子网关n的gemport5),同时根据该订阅消息生成omci消息路由转发表。
84.消息转发流程:当某个子网关产生消息时(如图6中的子网关1产生消息a),将发布消息通过omci单播gemport(如图6中的子网关1的gemport1)发布给主网关;主网关根据所述omci消息路由转发表查找出订阅该消息的所有订阅者,并按照omci消息组转发模式将消息一次性通过所分配的omci消息组gemport(如图6中主网关的gemport5)发送给订阅该消息的所有订阅者(如图6中的子网关2和子网关n)。订阅该消息的所有订阅者(如图6中的子网关2和子网关n),则通过之前反馈的omci消息组gemport,如图6中子网关2的gemport5、子网关n的gemport5,各自接收消息。
85.可以理解的是,在omci消息组转发模式下,子网关产生的消息在发布传输过程中也只需发送一次,不重复传输,并且主网关转发时也只需一次性通过所分配的omci消息组gemport发送给订阅该消息的所有订阅者即可,整个过程的发送效率高且冗余信息少,减少了带宽占用。并且,与omci订阅组转发模式相区别的是,在omci消息组转发模式下,子网关侧不用进行消息标识过滤,消息标识的过滤由主网关侧来进行,这样可进一步提高子网关侧的效率。
86.参见图7所示,示例性地,作为一种可选的实施方式,当转发模式为omci单播转发模式时,所述消息订阅流程和消息转发流程具体包括以下操作:
87.消息订阅流程:当某个子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关并指定转发模式为omci单播转发模式;主网关收到订阅消息后,使用订阅消息来源的单播gemport作为为该子网关分配的omci单播gemport(如图7中主网关的gemport2、3),并根据该订阅消息生成omci消息路由转发表。
88.消息转发流程:当某个子网关产生消息时(如图7中的子网关1产生消息a),将发布消息通过omci单播gemport(如图7中子网关1的gemport1)发布给主网关;主网关根据omci消息路由转发表查找出订阅该消息的所有订阅者,并按照omci单播转发模式将消息通过订阅者各自的omci单播gemport(如图7中主网关的gemport2、3)分别进行发送。订阅该消息的所有订阅者,则通过各自的订阅消息的单播gemport(如图7中子网关2的gemport2、子网关n的gemport3),各自接收消息。实际应用时,在omci单播模式下当主网关发送消息给订阅该消息的子网关后,子网关收到消息后,可发送发布响应消息给主网关,以反馈是否成功接收到消息的信息。
89.可以理解的是,在omci单播转发模式下,虽然消息在主网关转发过程中会被复制多份,分别进行发送;但是,子网关产生的消息在发布给主网关的传输过程中只需发送一次,不用重复传输,依然从一定程度上提高了发送效率。
90.更进一步地,实际应用时,在消息转发流程中,若查找出的某个订阅者不在线,主网关还需要将消息缓存,直至订阅者上线后将消息发送(或重新发送);并在消息成功发送后删除消息。这样,既能保证消息的有效转发,提高了可靠性;又能防止过多消息的堆积而产生相互干扰。
91.具体来说,当转发模式为omci单播转发模式时,若查找出的某个订阅者不在线,主网关将该消息缓存,待不在线的订阅者上线后将该消息通过omci单播gemport发送;并在消息成功发送后删除消息。
92.当转发模式为omci订阅组转发模式时,若查找出的某个订阅者不在线,主网关先将消息一次性通过所分配的omci订阅组gemport发送给所有订阅者;再将该消息缓存,待不在线的订阅者上线后将该消息通过订阅消息来源的单播gemport重新发送;并在消息成功发送后删除消息。
93.当转发模式为omci消息组转发模式时,若查找出的某个订阅者不在线,主网关先将消息一次性通过所分配的omci消息组gemport发送给订阅该消息的所有订阅者;再将该消息缓存,待不在线的订阅者上线后将该消息通过订阅消息来源的单播gemport重新发送;并在消息成功发送后删除消息。
94.实施例三
95.基于同一发明构思,本发明实施例还提供了一种fttr组网下基于扩展omci的消息转发装置,该装置包括设于主网关/子网关的协议扩展模块、设于子网关的消息订阅及发布模块、设于主网关的omci消息路由模块。
96.其中,协议扩展模块,用于:对现有omci协议进行扩展设置,使其支持消息订阅类型并具备标识消息的功能。
97.消息订阅及发布模块,用于:当子网关对某个消息关注时,通过扩展的omci协议发送订阅消息给主网关;当子网关产生消息时,发送发布消息给主网关。
98.omci消息路由模块,用于:当收到子网关发送的订阅消息时,根据该订阅消息生成omci消息路由转发表,所述omci消息路由转发表用于记录订阅者与所订阅的消息的关联关系;当收到子网关发布的消息时,根据所述omci消息路由转发表查找出需要转发的所有订阅者,并将该消息转发出去。
99.可以理解的是,采用本实施例的装置,不但可以有效解决fttr组网环境下子网关基于omci的按需通信问题,而且子网关产生的消息只需有针对性地发送给对该消息感兴趣的关联子网关,从一定程度上减轻了主网关的转发量、提高了转发效率,满足实际应用需求。
100.需要说明的是,前述方法实施例中的各种变化方式和具体实例同样适用于本实施例的装置,通过前述方法的详细描述,本领域技术人员可以清楚的知道本实施例中装置的实施方法,所以为了说明书的简洁,在此不再详述。
101.注意:上述的具体实施例仅是例子而非限制,且本领域技术人员可以根据本发明的构思从上述分开描述的各个实施例中合并和组合一些步骤和装置来实现本发明的效果,这种合并和组合而成的实施例也被包括在本发明中,在此不一一描述这种合并和组合。
102.本发明实施例中提及的优点、优势、效果等仅是示例,而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,本发明实施例公开的上述具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明实施例必须采用上述具体的细节来实现。
103.本发明实施例中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子,并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员
将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。本发明实施例所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。本发明实施例所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
104.本发明实施例中的步骤流程图以及以上方法描述仅作为例示性的例子,并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用冠词“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
105.另外,本发明各个实施例中的步骤和装置并非仅限定于某个实施例中实行,事实上,可以根据本发明的概念来结合本文中的各个实施例中相关的部分步骤和部分装置,以构思新的实施例,而这些新的实施例也包括在本发明的范围内。
106.本发明实施例中的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于硬件的电路或处理器。
107.本发明实施例的方法包括用于实现上述的方法的一个或多个动作。方法和/或动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。
108.本发明实施例中的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是可以由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括ram、rom、eeprom、cd-rom或其他光碟存储、磁碟存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,碟(disk)和盘(disc)包括紧凑盘(cd)、激光盘、光盘、dvd(digital versatile disc,数字多功能光盘)、软碟和蓝光盘,其中碟通过磁再现数据,而盘利用激光光学地再现数据。
109.因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。
110.其他例子和实现方式在本发明实施例和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。
111.本领域技术人员可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处
理、机器、制造、事件的组成、手段、方法或动作。
112.提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
113.为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本发明的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。且本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。