CN113395615A - 一种消息处理方法、装置、电子设备和可读存储介质 - Google Patents
一种消息处理方法、装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN113395615A CN113395615A CN202110648856.XA CN202110648856A CN113395615A CN 113395615 A CN113395615 A CN 113395615A CN 202110648856 A CN202110648856 A CN 202110648856A CN 113395615 A CN113395615 A CN 113395615A
- Authority
- CN
- China
- Prior art keywords
- message
- parameter information
- ploam
- specific
- ack
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q11/0067—Provisions for optical access or distribution networks, e.g. Gigabit Ethernet Passive Optical Network (GE-PON), ATM-based Passive Optical Network (A-PON), PON-Ring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0079—Operation or maintenance aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0088—Signalling aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种消息处理方法、装置、电子设备和可读存储介质。所述方法、装置、电子设备和可读存储介质通过获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息,然后发送PLOAM消息,所述PLOAM消息包括所述特定标志,接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志,在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息,若是,则根据所述ACK消息执行消息处理操作。本发明实施例提供的技术方案,能够节约消息传输的存储空间,提高了消息查找的效率和消息的准确性。
Description
【技术领域】
本发明实施例涉及一种通信技术领域,尤其涉及一种消息处理方法、装置、电子设备和可读存储介质。
【背景技术】
GPON(Gigabit-capable Passive Optical Networks,吉比特无源光网络)技术是基于ITU-TG.984.x标准的无源光网综合接入标准,具有高带宽、高效率、大覆盖范围、用户接口丰富等众多优点,被大多数运营商视为实现接入网业务宽带化,综合改造的理想技术,目前在现网中被大量使用。
GPON网络由OLT(Optical Line Terminal,光线路终端),ONU(Optical NetworkUnit,光网络单元)和ODN(Optical Distribution Network,光分配网络)三个部分组成,其中:OLT通过ODN与每台ONU连接,是GPON***的核心功能设备,OLT负责控制ONU的注册,集中带宽分配、实时监控、运行维护管理等***功能。
在GPON***中,OLT设备的接入容量越来越大,各单盘集成的PON口数越来越多,且相应的所连接的GPON ONU数量也与日俱增,使得OLT设备面对大批量GPON ONU的管理压力越来越大,而PLOAM(physical layer OAM,物理层操作维护管理)作为OLT管理的ONU的重要管理通道,处理压力也日益增大,在进行PLOAM处理时,常规的处理方式是利用数组或链表存储已发送和期望的PLOAM消息,然后根据接收的PLOAM消息进行查找,判断PLOAM消息是否是待处理的,这种方式需要更大的存储空间和处理能力,不利于设备的成本控制,不利于在处理PLOAM消息时的存储、查找以及准确性。
【发明内容】
本发明提供了一种消息处理方法、装置、电子设备和可读存储介质,以解决现有技术在消息处理时需要更大的存储空间和处理能力,成本高、存储率低和准确性低的技术问题。
为解决上述问题,本发明实施例提供一下技术方案:一种消息处理方法。上述方法包括:
可选的,获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息;
发送PLOAM消息,所述PLOAM消息包括所述特定标志;
接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志;
在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息;
若是,响应所述ACK消息,以执行消息处理操作。
可选的,所述数据结构为哈希表,所述获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息,包括:
获取第一参数信息,所述第一参数信息包括PLOAM消息类型、PON ID和ONU ID;
根据所述PLOAM消息类型、所述PON ID和所述ONU ID计算哈希值;
将所述PLOAM消息类型、所述PON ID和所述ONU ID存入所述哈希值指向的所述哈希表的存储位置中。
可选的,所述第一参数信息还包括辅助量,所述辅助量用于计算所述哈希值。
可选的,所述发送PLOAM消息,包括:
获取所述PLOAM消息对应的第一特定字节位置,所述第一特定字节位置是所述PLOAM消息的第七、第八和第九这三个字节位置;
在所述第一特定字节位置存储所述特定标志,并在所述PLOAM消息的其他字节存储PLOAM原始信息;
发送包括所述特定标志和所述PLOAM原始信息的所述PLOAM消息。
可选的,所述接收根据所述PLOAM消息反馈的ACK消息,包括:
获取所述ACK消息对应的第二特定字节位置,所述第二特定字节位置是所述ACK消息的第十、第十一和第十二这三个字节位置;
在所述第二特定字节位置存储所述特定标志,并在所述ACK消息的其他字节位置存储所述第二参数信息;其中,所述第二参数信息包括ACK原始信息和所述PLOAM原始信息;
接收包括所述第二参数信息和所述特定标志的所述ACK消息。
可选的,所述在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息,包括:
在所述ACK消息为目标消息时,根据所述特定标志从所述数据结构中获取所述第一参数信息;
获取所述第二参数信息中的所述ACK原始信息;
将所述ACK原始信息与所述第一参数信息进行比较,判断所述第一参数信息中是否包括与所述ACK原始信息相同的信息;
若是,则确定所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,否则,不存在。
可选的,所述ACK原始信息包括存放于所述ACK消息第一字节位置的ONU ID和第三字节位置的PLOAM消息类型。
为解决上述问题,本发明实施例提供一下技术方案:一种消息处理装置。上述装置包括:获取模块,用于获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息;
发送模块,用于发送PLOAM消息,所述PLOAM消息包括所述特定标志;
接收模块,用于接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志;
判断模块,用于在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息;
处理模块,用于若所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,则响应所述ACK消息,以执行消息处理操作。
为解决上述问题,本发明实施例还提供一下技术方案:一种电子设备。上述电子设备包括:至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任一项所述的消息处理方法的步骤。
为解决上述问题,本发明实施例还提供一下技术方案:一种可读存储介质。上述可读存储介质包括:所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述任一项所述的消息处理方法的步骤。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有如下有益效果:通过获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息,然后发送PLOAM消息,所述PLOAM消息包括所述特定标志,接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志,在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息,若是,则根据所述ACK消息执行消息处理操作。本发明实施例提供的技术方案,能够节约消息传输的存储空间,提高了消息查找的效率和消息的准确性。
【附图说明】
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1为本发明实施例提供的一种消息处理方法的流程示意图;
图2是本发明实施例提供的PLOAM消息发送处理流程示意图;
图3是本发明实施例提供的哈希拉链法示意图;
图4是本发明实施例提供的哈希链表实现的流程示意图;
图5是本发明实施例提供的PLOAM消息接收处理流程示意图;
图6是本发明实施例提供的哈希表数据结构示意图;
图7a-7d是本发明实施例提供的业务配置相关PLOAM消息的四种类型;
图8是本发明实施例提供的ACK PLOAM消息示意图;
图9是本发明实施例提供的ACK消息接收处理流程示意图;
图10是本发明实施例提供的一种消息处理装置的结构框图;
图11是本发明施例提供的执行上述消息处理方法的电子设备的硬件结构示意图。
【具体实施方式】
为了便于理解本发明,下面结合附图和具体实施例,对本发明进行更详细的说明。需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。此外,本文所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本说明书中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是用于限制本发明。
请参阅图1,图1是本发明实施例提供的一种消息处理方法的流程示意图。所述方法由无源光网络的光线路终端执行,所述方法包括:
S1、获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息。
所述数据结构指的是数据元素集合之间存在一种或多种特定关系,是计算机存储、组织数据的方式。所述数据结构可以分为逻辑结构和物理结构。所述逻辑结构指的是数据元素之间逻辑关系。所述物理结构(也叫存储结构)指的是数据的逻辑结构在计算机存储空间中的存放形式。常用的存储结构有很多种。例如,顺序存储,也即,所述数据的存储顺序是连续的,一般表现为存储单元依次对一组地址连续的数据元素进行存储。例如,链式存储,也即,存储元素不一定是连续的,可以用任意地址的存储单元存储元素,所述元素的节点用来存放数据元素和指向相邻元素的地址信息。又例如,索引存储,通过建立附加的索引表来标识结点的地址。又例如,散列存储,所述散列存储又称哈希存储,所述哈希存储由节点的关键码值决定存储地址。
具体的,获取所述第一参数信息的方法有很多种。例如,利用索引存储结构(索引表)获取,所述预设的特定标志可以是关键字,所述关键字,是根据对应的第一参数得到的,所述第一参数信息即所述关键字标识的结点。所述数据结构,包括索引存储结构,也就是索引表,通过获取索引表的关键字,并在索引表中存储所述关键字和所述关键字标识的唯一一个结点。又例如,利用数组结构获取,也即,所述预设的特定标志可以是数组的下标,通过传递数组的下标来加快索引。又例如,利用哈希存储结构获取,也即,所述预设的特定标志可以是哈希(HASH)值,所述哈希值,可以是根据对应的第一参数得到,而所述第一参数,即哈希key值,所述哈希key值包括PLOAM消息类型、期望的PLOAM类型、发送时间点、PON ID和ONU ID,所述哈希值是根据所述PLOAM消息类型、所述PON ID和所述ONU ID计算的,而所述期望的PLOAM类型和发送时间点是用于在发送PLOAM消息时期望接收到反馈的ACK消息的类型和在接收到PLOAM消息时判断所述消息是否超时。所述PLOAM消息是OLT在TC层管理ONU的一个通道,主要用于管理ONU的消息,所述PON ID是OLT业务板卡的PON口号,所述ONU ID在PON口下是唯一的,是注册阶段OLT分配给ONU的识别序号。所述数据结构,包括哈希表,通过计算哈希值,将所述哈希值存储到所述哈希表中。
具体的,所述哈希表(Hash table,也叫散列表),是根据关键码值(哈希key值)而直接进行访问的数据结构。通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度,所述映射过程称为散列造表或散列。首先给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含所述关键字的记录在表中的地址,则称所述表M为哈希(Hash)表,所述函数f(key)为哈希(Hash)函数,若所述关键字为k,则其值存放在f(k)的存储位置上。通过上述方式,不需比较便可直接取得所查记录。对不同的所述关键字可能得到同一散列地址,即k1≠k2,而f(k1)=f(k2),这种现象称为哈希冲突。根据散列函数f(k)和处理冲突的方法将一组关键字映射到一个有限的连续的地址集或区间上,并以关键字在地址集中的“像”作为记录在表中的存储位置,所得的存储位置称为散列地址。
S2、发送PLOAM消息,所述PLOAM消息包括所述特定标志。
计算所述特定标志的方法有很多种。例如,索引存储结构的关键字,也即,发送PLOAM消息,所述PLOAM消息包括索引存储结构的关键字。又例如,哈希存储结构的哈希值,通过计算哈希key值中的PLOAM消息类型、PON ID和ONU ID得到哈希值,在计算所述哈希值时,为了提高哈希表的命中率,可以增加一个辅助量来计算当前的哈希值,创建表项将计算好的哈希值存储到哈希表项中。
所述发送PLOAM消息,包括发送PLOAM消息的原始消息和所述特定标志,在所述第一特定字节位置存放特定标志,并在所述PLOAM消息的其他字节存储PLOAM原始信息,所述特定标志是计算好的哈希值,将所述哈希值存放在所述PLOAM消息的第一特定字节位置,所述第一特定字节位置是所述PLOAM消息的第七、第八和第九这三个字节位置。
请参阅图2,图2为PLOAM消息发送处理流程示意图,包括:
S20、在发送业务PLOAM前,根据PON ID,ONU ID和PLOAM消息类型计算出当前的哈希值,为了增加哈希表的命中率,也可以增加辅助量来计算当前的哈希值,辅助量可以是随机生成数或递增递减的数,对于所述哈希值的计算方法有很多种。例如,直接寻址法,也即,取关键字或关键字的某个线性函数值为散列地址,即H(key)=key或H(key)=a·key+b,其中a和b为常数。例如,随机数法,也即,选择一个随机函数,取关键字作为随机函数的种子生成随机值作为散列地址,通常用于关键字长度不同的场合。
以简单的基于加法和乘法的散列方法为例:
Hash Value=(5381<<2+5381)+PON ID;
Hash Value=(Hash Value<<2+Hash Value)+ONU ID;
Hash Value=(Hash Value<<2+Hash Value)+send type;
Hash Value=(Hash Value<<2+Hash Value)+random;
Hash Value=Hash Value%Hash Tbl Length;
上述send type指的是发送的PLOAM消息类型,random指的是随机生成数,HashTbl Length指的是哈希表项的深度;
S21、根据所述哈希值查找所述哈希表;
S22、判断哈希节点是否存在;
若哈希节点不存在,则执行步骤S23,若存在,则执行步骤S24;
S23、创建节点并将节点***到所述哈希表中,所述哈希节点包括已发送业务PLOAM消息的哈希值;
S24、判断找到的节点内容存储的信息是否和待发送的PLOAM信息一致;
若信息一致,则执行步骤S25,若信息不一致,则执行步骤S26;
S25、所述信息一致,表明已经存在冲突,处理哈希冲突的方法有很多种。例如,开放寻址法,也即,Hi=(H(key+di)MOD m,i=1,2,…,k(k<=m-1),其中H(key)为散列函数,m为散列表长,di为增量序列,可有下列三种取法:
第一种,线性探测再散列,也即di=1,2,3,…,m-1;
第二种,二次探测再散列,也即,di=12,-12,22,-22,32,…,±k2,(k<=m/2);
第三种,伪随机探测再散列,也即,di=伪随机数序列。
又例如,采用哈希拉链法,也即,通过继续遍历该节点的下一个节点直到为空,然后继续创建节点并***到为空位置;
请参阅图3,图3为哈希拉链法示意图,包括:
在进行PLOAM处理时,为节约空间和时间,一般采用所述哈希表来存储数据,这主要是因为所述哈希表的查找和数组查询的效率几乎是等价的,但是哈希表在数据量大了后会出现哈希冲突,对于所述哈希冲突较为有效的处理方式是采用哈希拉链法,所述哈希拉链法的实现比较简单,是将链表和数组相结合。也就是说创建一个链表数组,数组中每一格就是一个链表。若遇到哈希冲突,则将冲突的值加到链表中即可。
请参阅图4,所述哈希链表的实现步骤如下:
S231、获得一个哈希key;
S232、根据设计的哈希散列函数,计算哈希key对应的哈希Value;
S233、根据哈希Value值定位到DATA[哈希Value](DATA是上面提到的链表数组,其存储的是一条链表的首地址);
S234、若DATA[哈希Value]为空则直接***,否则***到链表末尾。
S26、更新表项中发送时间点;
S27、将所述哈希值填充待发送PLOAM的Octer7,8,9字节并发送所述PLOAM消息。
S3、接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志。
所述ACK消息包括存储在第二特定字节位置的特定标志和存储在其他字节位置的第二参数信息,所述第二参数信息包括所述ACK消息的原始信息和所述PLOAM消息的原始信息,所述ACK消息的原始信息包括存放在ACK消息的第一、第二和第三字节位置的信息,所述第一字节位置的ONU ID、所述第二字节位置的ACK消息类型和所述第三字节位置PLOAM消息类型。所述特定标志包括存放在所述第二特定字节位置的哈希值,所述第二特定字节位置是所述ACK消息的第十、第十一和第十二这三个字节位置。
请参阅图5,图5为PLOAM消息接收处理流程示意图,包括:
S31、光线路终端在接收到PLOAM消息时先提取消息类型,判断所述消息是否是ACK消息;
若不是所述ACK消息,则执行下述步骤S32,若是,则执行下述S33步骤;
S32、进入其它PLOAM消息处理程序;
S33、获取所述ACK消息尾部的Octer10,11,12的哈希值,所述哈希值是在发送业务PLOAM消息时根据PON ID,ONU ID,PLOAM消息类型和随机生成数计算的哈希值;
S34、最后直接根据所述哈希值查找PLOAM哈希表并进入ACK处理流程。
请参阅图6,图6为哈希表数据结构示意图,包括:
在OLT接入容量及接入ONU数量的大量增加时,PLOAM消息管理通道信息存在巨大压力,需要更大的存储空间和处理能力,且容易出现因耗时导致PLOAM消息超时配置出错情况,此时利用哈希表来存储已发送的PLOAM消息,根据哈希值可以快速的找到存储的哈希节点,节约了存储的空间。所述哈希表包含了PON ID、ONU ID和已发送的业务PLOAM消息类型send Type、期望的PLOAM类型expect Type和发送时间点time stamp等。
对于所述哈希key的选择将基于PON ID、ONU ID已发送的业务PLOAM消息类型sendType、期望的PLOAM类型expect Type、发送时间点time stamp再加上一个随机生成数或递增递减的数来增加哈希表的命中率。所述期望的PLOAM类型是在发送PLOAM消息时期望接收到反馈的ACK消息的类型,所述发送时间点是方便后面对于接收到PLOAM消息的超时判断,当出现异常长时间未收到ONU消息时也需要将该无效内容删除处理,防止内存不断消耗。
所述ACK消息(Acknowledge character)即是确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。在GPON协议中,请参阅图7a-7d,图7a-7d为业务配置相关PLOAM消息的四种类型,主要是encrypted_port-ID,assign_alloc-ID,Configure Port-ID,Key_Switching_Time这四种类型,在接收方成功的接收到数据后,这些下行消息ONU按照协议需返回的都是ACK消息,通常ACK信号有自己固定的格式,长度大小,由接收方回复给发送方。
请参阅图8,图8为ACK PLOAM消息示意图,包括:
在GPON协议中,协议规定ACK消息的Octer4到12字节共9个字节会重复下行接收到的PLOAM消息,但是encrypted_port-ID,assign_alloc-ID,Configure Port-ID和Key_Switching_Time,这些消息的共性是只有前6个字节是协议定义了的,从Octer7开始到Octer12字节都是未定义的,受限于PLOAM消息12字节的固定长度,这些用于下行业务发送PLOAM消息只有Octer7,8和9字节是可以利用的,对应ACK消息中的Octer10,11和12字节。
S4、在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息。其中,所述目标消息包括ACK消息。
在所述ACK消息不是所述目标消息时,所述PLOAM消息会进入其它PLOAM消息处理程序。在所述ACK消息为目标消息时,获取所述ACK消息的Octer10,11,12字节位置的哈希值,根据所述哈希值查找哈希表,可以得到对应的第一参数信息,获取接收到的ACK消息中的第二参数信息,将所述第二参数信息中的所述ACK原始信息的第一字节位置ONU ID和第三字节位置PLOAM消息类型与第一参数信息中的ONU ID和PLOAM消息类型做比较,判断ONUID和PLOAM消息类型是否相等。
S5、若是,响应所述ACK消息,以执行消息处理操作。
当所述ACK消息的原始信息与所述第一参数信息进行比较,判断所述第一参数信息中是否包括与所述ACK原始信息相同的信息,若确定所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,则根据PLOAM消息类型分别做处理并删除所述哈希值对应的链表节点,若不相等,则表明存在哈希冲突,需要继续遍历所述节点的下一个节点。
具体的,所述哈希冲突指的是不同关键字通过相同哈希值计算出相同的哈希地址,所述哈希节点包括已发送业务PLOAM消息的哈希值。
请参阅图9,图9为ACK消息接收处理流程示意图,包括:
S51、根据所述ACK尾部的所述哈希值在所述哈希表中查找是否存在匹配的条目,即哈希key值对应哈希数组中存储的链表头节点地址是否为空;
若存在匹配的条目,则执行下述步骤S52,若不存在,则执行下述条目S55;
S52、根据OLT接收到的所述ACK消息中的ONU ID,send Type消息内容和所述哈希表中存储的内容做比较,即确认所述哈希表中存储的信息和所述ACK消息中的ONU ID等信息是否相等且所述ACK携带ONU ID等信息和哈希链表节点存储信息是相等的;
若信息都相等,则执行下述S53步骤,若都不相等,则执行下述S54步骤;
S53、根据所述send Type类型分别做处理并删除所述哈希值对应链表节点;
S54、表明存在哈希冲突,需要获取所述哈希链表节点指向的下一个节点的地址并判断下一哈希节点是否存在;
若存在下一哈希节点,则执行上述S52步骤,若不存在,则执行下述S55步骤;
S55、表示所述ACK消息可能已经被处理过或是其它情况,退出当前ACK处理程序。
在本实施例中,通过获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息,然后发送PLOAM消息,所述PLOAM消息包括所述特定标志,接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志,在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,并判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息,若是,则根据所述ACK消息执行消息处理操作。所述方法使得PLOAM消息在传输时节约了存储的空间,并且提高了消息查找的效率和消息的准确性。
请参阅图10,图10为本发明实施例提供的消息处理装置1的结构框图。所述消息处理装置1包括:获取模块10、发送模块11、接收模块12、判断模块13和处理模块14。
所述获取模块10用于获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息。
所述预设的特定标志,包括哈希值,所述哈希值,是根据对应的第一参数计算的,而所述第一参数,即哈希key值,所述哈希key值包括PLOAM消息类型、所述期望的PLOAM类型、所述发送时间点、PON ID和ONU ID,所述哈希值,是根据所述PLOAM消息类型、所述PONID和所述ONU ID计算的,而所述期望的PLOAM类型和发送时间点只是为了在发送PLOAM消息时期望接收到反馈的ACK消息的类型和在接收到PLOAM消息时判断所述消息是否超时。为了增加哈希表的命中率,也可以增加辅助量来计算当前的哈希值,辅助量可以是随机生成数或递增递减的数。所述数据结构,包括哈希表,通过计算哈希值,将所述哈希值存储到所述哈希表中。
所述发送模块11用于发送PLOAM消息,所述PLOAM消息包括所述特定标志。
所述发送PLOAM消息,包括发送PLOAM消息的原始消息和所述特定标志,在所述第一特定字节位置存放特定标志,并在所述PLOAM消息的其他字节存储PLOAM原始信息,所述特定标志是计算好的哈希值,将所述哈希值存放在所述PLOAM消息的第一特定字节位置,所述第一特定字节位置是所述PLOAM消息的第七、第八和第九这三个字节位置。
所述接收模块12用于接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志。
所述ACK消息,包括存储在第二特定字节位置的特定标志和存储在其他字节位置的第二参数信息,所述第二参数信息,包括所述ACK消息的原始信息和所述PLOAM消息的原始信息,所述ACK消息的原始信息包括存放在ACK消息的第一、第二和第三字节位置的信息,所述第一字节位置的ONU ID、所述第二字节位置的ACK消息类型和所述第三字节位置PLOAM消息类型,所述特定标志包括存放在所述第二特定字节位置的哈希值,所述第二特定字节位置是所述ACK消息的第十、第十一和第十二这三个字节位置。
所述判断模块13用于在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息。
在所述ACK消息为目标消息时,获取所述ACK消息的Octer10,11,12字节位置的哈希值,根据所述哈希值查找哈希表,可以得到对应的第一参数信息,获取接收到的ACK消息中的第二参数信息,将所述第二参数信息中的所述ACK原始信息的第一字节位置ONU ID和第三字节位置PLOAM消息类型与第一参数信息中的ONU ID和PLOAM消息类型做比较,判断ONU ID和PLOAM消息类型是否相等。
所述处理模块14用于若所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,则响应所述ACK消息,以执行消息处理操作。
当所述ACK消息的原始信息与所述第一参数信息进行比较,判断所述第一参数信息中是否包括与所述ACK原始信息相同的信息,若确定所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,则根据PLOAM消息类型分别做处理并删除所述哈希值对应的链表节点,若不相等,则表明存在哈希冲突,需要继续遍历所述节点的下一个节点。
需要说明的是,上述消息处理装置可执行本发明实施例所提供的消息处理方法,具备执行方法相应的功能模块和有益效果。未在消息处理装置实施例中详尽描述的技术细节,可参见本发明实施例所提供的消息处理方法。
本发明实施例还提供了一种电子设备,请参阅图11,本发明实施例提供了一种电子设备20,所述电子设备20包括:至少一个处理器21,图11中以一个处理器21为例;所述至少一个处理器21通信连接的存储器22,图11中以通过总线连接为例。
其中,所述存储器存22储有可被所述至少一个处理器21执行的指令,所述指令被所述至少一个处理器21执行,以使所述至少一个处理器21能够执行上述消息处理方法。
存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的消息处理方法对应的程序指令/模块。处理器21通过运行存储在存储器22中的非易失性软件程序、指令以及模块,从而执行电子设备20的各种功能应用以及数据处理,即实现上述方法实施例中消息处理方法。
存储器22可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,包括至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器。
所述一个或者多个模块存储在所述存储器22中,当被所述一个或者多个处理器21执行时,执行上述任意方法实施例中的消息处理方法,例如,执行以上描述的图1中的方法步骤。
所述电子设备20还连接其他装置用于更好的执行本发明实施例所提供的方法,如可以电性连接显示屏或其他显示器,可以远程通信连接目标用户的通信设备等,在此不一一列举。
上述电子设备可执行本发明实施例所提供的方法,具备执行方法相应的功能模块。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本申请实施例还提供了一种可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图1的方法步骤,实现图10中的各模块的功能。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种消息处理方法,其特征在于,所述方法包括:
获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息;
发送PLOAM消息,所述PLOAM消息包括所述特定标志;
接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志;
在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息;
若是,响应所述ACK消息,以执行消息处理操作。
2.根据权利要求1所述的方法,其特征在于,所述数据结构为哈希表,所述获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息,包括:
获取第一参数信息,所述第一参数信息包括PLOAM消息类型、PON ID和ONU ID;
根据所述PLOAM消息类型、所述PON ID和所述ONU ID计算哈希值;
将所述PLOAM消息类型、所述PON ID和所述ONU ID存入所述哈希值指向的所述哈希表的存储位置中。
3.根据权利要求2所述的方法,其特征在于,所述第一参数信息还包括辅助量,所述辅助量用于计算所述哈希值。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述发送PLOAM消息,包括:
获取所述PLOAM消息对应的第一特定字节位置,所述第一特定字节位置是所述PLOAM消息的第七、第八和第九这三个字节位置;
在所述第一特定字节位置存储所述特定标志,并在所述PLOAM消息的其他字节存储PLOAM原始信息;
发送包括所述特定标志和所述PLOAM原始信息的所述PLOAM消息。
5.根据权利要求4所述的方法,其特征在于,所述接收根据所述PLOAM消息反馈的ACK消息,包括:
获取所述ACK消息对应的第二特定字节位置,所述第二特定字节位置是所述ACK消息的第十、第十一和第十二这三个字节位置;
在所述第二特定字节位置存储所述特定标志,并在所述ACK消息的其他字节位置存储所述第二参数信息;其中,所述第二参数信息包括ACK原始信息和所述PLOAM原始信息;
接收包括所述第二参数信息和所述特定标志的所述ACK消息。
6.根据权利要求5所述的方法,其特征在于,所述在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息,包括:
在所述ACK消息为目标消息时,根据所述特定标志从所述数据结构中获取所述第一参数信息;
获取所述第二参数信息中的所述ACK原始信息;
将所述ACK原始信息与所述第一参数信息进行比较,判断所述第一参数信息中是否包括与所述ACK原始信息相同的信息;
若是,则确定所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,否则,不存在。
7.根据权利要求6所述的方法,其特征在于,所述ACK原始信息包括存放于所述ACK消息第一字节位置的ONU ID和第三字节位置的PLOAM消息类型。
8.一种消息处理装置,其特征在于,所述装置包括:
获取模块,用于获取预设的特定标志,并在数据结构中存储所述特定标志和所述特定标志对应的第一参数信息;
发送模块,用于发送PLOAM消息,所述PLOAM消息包括所述特定标志;
接收模块,用于接收根据所述PLOAM消息反馈的ACK消息,所述ACK消息包括第二参数信息和所述特定标志;
判断模块,用于在所述ACK消息为目标消息时,根据所述特定标志查找所述数据结构,以判断所述第二参数信息中是否存在与所述特定标志对应的所述第一参数信息中匹配的信息;
处理模块,用于若所述第二参数信息中存在与所述特定标志对应的所述第一参数信息中匹配的信息,则响应所述ACK消息,以执行消息处理操作。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7任一项所述的消息处理方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现权利要求1至7任一项所述的消息处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110648856.XA CN113395615B (zh) | 2021-06-10 | 2021-06-10 | 一种消息处理方法、装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110648856.XA CN113395615B (zh) | 2021-06-10 | 2021-06-10 | 一种消息处理方法、装置、电子设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113395615A true CN113395615A (zh) | 2021-09-14 |
CN113395615B CN113395615B (zh) | 2022-05-06 |
Family
ID=77620395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110648856.XA Active CN113395615B (zh) | 2021-06-10 | 2021-06-10 | 一种消息处理方法、装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113395615B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117349483A (zh) * | 2023-12-05 | 2024-01-05 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002057679A (ja) * | 2000-08-10 | 2002-02-22 | Nec Corp | Atm−pon二重化システム、局側光網終端装置、加入者側光網終端装置、およびatm−pon二重化方法 |
CN101034412A (zh) * | 2007-04-02 | 2007-09-12 | 华为技术有限公司 | 一种信息存储的方法、信息查找的方法及引擎装置 |
CN101552932A (zh) * | 2008-04-01 | 2009-10-07 | 华为技术有限公司 | 光网络传输处理方法、装置和*** |
CN101908941A (zh) * | 2010-08-11 | 2010-12-08 | 烽火通信科技股份有限公司 | 分析、调试及仿真gpon***omci和ploam消息的方法 |
CN102237999A (zh) * | 2010-04-23 | 2011-11-09 | 中兴通讯股份有限公司 | 消息处理方法及消息发送装置 |
WO2011144016A1 (zh) * | 2010-05-21 | 2011-11-24 | 中兴通讯股份有限公司 | 物理层操作管理和维护消息的发送方法、装置和光缆终端 |
CN102656838A (zh) * | 2009-07-31 | 2012-09-05 | 华为技术有限公司 | 基于光网络终端管理控制接口的无源光网络安全性增强 |
WO2017097008A1 (zh) * | 2015-12-07 | 2017-06-15 | 深圳市中兴微电子技术有限公司 | 一种多个光网络单元的接入方法、装置及存储介质 |
US20170366254A1 (en) * | 2016-06-21 | 2017-12-21 | Futurewei Technologies, Inc. | Optical Network Unit Reset Message |
US20210152249A1 (en) * | 2018-09-21 | 2021-05-20 | Huawei Technologies Co., Ltd. | Passive optical network (pon) channel bonding protocol |
-
2021
- 2021-06-10 CN CN202110648856.XA patent/CN113395615B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002057679A (ja) * | 2000-08-10 | 2002-02-22 | Nec Corp | Atm−pon二重化システム、局側光網終端装置、加入者側光網終端装置、およびatm−pon二重化方法 |
CN101034412A (zh) * | 2007-04-02 | 2007-09-12 | 华为技术有限公司 | 一种信息存储的方法、信息查找的方法及引擎装置 |
CN101552932A (zh) * | 2008-04-01 | 2009-10-07 | 华为技术有限公司 | 光网络传输处理方法、装置和*** |
CN102656838A (zh) * | 2009-07-31 | 2012-09-05 | 华为技术有限公司 | 基于光网络终端管理控制接口的无源光网络安全性增强 |
CN102237999A (zh) * | 2010-04-23 | 2011-11-09 | 中兴通讯股份有限公司 | 消息处理方法及消息发送装置 |
WO2011144016A1 (zh) * | 2010-05-21 | 2011-11-24 | 中兴通讯股份有限公司 | 物理层操作管理和维护消息的发送方法、装置和光缆终端 |
CN101908941A (zh) * | 2010-08-11 | 2010-12-08 | 烽火通信科技股份有限公司 | 分析、调试及仿真gpon***omci和ploam消息的方法 |
WO2017097008A1 (zh) * | 2015-12-07 | 2017-06-15 | 深圳市中兴微电子技术有限公司 | 一种多个光网络单元的接入方法、装置及存储介质 |
US20170366254A1 (en) * | 2016-06-21 | 2017-12-21 | Futurewei Technologies, Inc. | Optical Network Unit Reset Message |
US20210152249A1 (en) * | 2018-09-21 | 2021-05-20 | Huawei Technologies Co., Ltd. | Passive optical network (pon) channel bonding protocol |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117349483A (zh) * | 2023-12-05 | 2024-01-05 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
CN117349483B (zh) * | 2023-12-05 | 2024-04-09 | 杭州行芯科技有限公司 | 一种寄生参数的查找方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113395615B (zh) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110191428B (zh) | 一种基于智能云平台的数据分配方法 | |
CN101290213B (zh) | 光纤长度测量方法、通信设备、通信*** | |
CN102780568B (zh) | 一种单向网络中数据的组播方法、装置、终端及*** | |
CN102427410B (zh) | 光纤通道身份标识处理方法、装置、***及网络设备 | |
CN101971576B (zh) | 通信控制方法、站侧装置、加入者侧装置以及通信*** | |
CN109800336B (zh) | 基于键值对存储***的表格实现方法、装置、设备和介质 | |
CN104378452A (zh) | 一种用于域名解析的方法、装置及*** | |
CN113395615B (zh) | 一种消息处理方法、装置、电子设备和可读存储介质 | |
CN111885216B (zh) | Dns查询方法、装置、设备和存储介质 | |
CN1957635A (zh) | 用于远程访问无源光网络中的光网络设备的方法 | |
EP2458811B1 (en) | Method, apparatus and system for processing user identity information in gigabit passive optical network system | |
CN115941381A (zh) | 一种数据传输设备及其方法 | |
CN111711708B (zh) | 一种LoRaWAN终端设备地址分配方法 | |
CN101515297B (zh) | 历史数据查询方法、路由服务器和查询终端和*** | |
US20110153766A1 (en) | Network alarm message processing systems and methods | |
CN106534049B (zh) | 基于服务器的数据下发方法、客户端、服务器及*** | |
US12010008B2 (en) | Network communication method and apparatus | |
CN113791733A (zh) | 信息的存储方法、装置、设备及存储介质 | |
WO2013010125A1 (en) | Variable-length nonce generation | |
WO2012079536A1 (zh) | 私网服务器访问方法及光网络单元 | |
EP2533487B1 (en) | Method, device and optical line terminal for transmitting physical layer operations, administration and maintenance (ploam) messages | |
CN106713008B (zh) | 一种对eoc局端设备进行性能测试的方法 | |
CN110674068A (zh) | 一种板卡间的信息交互方法、分布式板卡及存储介质 | |
CN113923176B (zh) | 即时通讯的消息撤回方法、装置、设备及计算机可读介质 | |
CN114449378B (zh) | 一种基于snmp的olt侧onu自动发现方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |