一种基于哈希算法的数据存储和读取的方法及装置的制作方法哈希算法原理解析,如何利用函数预测博彩走势

2025-09-02

  哈希算法,SHA256,哈希函数,加密哈希,哈希预测/哈希算法是博彩游戏公平性的核心,本文详细解析 SHA256 哈希函数的运作原理,并提供如何通过哈希技术进行博彩预测的方法!

一种基于哈希算法的数据存储和读取的方法及装置的制作方法哈希算法原理解析,如何利用哈希函数预测博彩走势

  哈希(hash)算法实际上是将一组关键词(或者叫键值),通过哈希函数hash_ function,映射到一个连续的空间上,而这个连续的空间则被称之为哈希表,其中该一组关键词包括至少一个关键词。一般的哈希算法包含三个要素关键词key、哈希函数hasH_ function和位置position。key是指需要确定位置的关键词,通过采用哈希函数对key进行哈希算法获得存储位置position信息,上述三者之间的关系可以简单的表示如下=Potion =hasf—funtion (key)0哈希算法是一种高效的查找算法,现有的交换机及路由器在存储和读取数据时, 也都普遍的采用哈希算法。但是在现有的路由器、交换机等网络设备中,存在一些比较复杂的情况,从而使得哈希表项占用的存储空间较大。这是因为在网络设备中,根据接入类型的不同,在具体的进行数据的存储和读取时,基于的关键词是不同的,例如对于接入类型为端口接入时,其将端口(port)属性信息作为关键词,确定数据的存储位置,而对于接入类型为子端口接入时,其将端口属性信息以及Vlan (Virtual Local Area Network,虚拟局域网)标识(ID)信息作为关键词,确定数据的存储位置,而对于接入类型为Qinq (也称Macked VLAN或Double VLAN,指有两层Vlan ID)接入时,其将端口属性信息、及两个Vlan ID的信息作为关键词,确定数据的存储位置。由于针对不同的接入类型其对应的关键词是不同的,因此在现有技术中针对不同的接入类型分别存储了一种类型的哈希表,以便于进行数据的存储和读取。并且基于不同的接入类型,也分别设置相应的微码实现流程,在一定程度上也存在微码指令的浪费。

  有鉴于此,本发明实施例提供一种基于哈希算法的数据存储和读取的方法及装置,用以解决现有哈希表项及微码指令占用存储空间,不利于提升网络设备性能的问题。本发明实施例提供的一种基于哈希算法的数据存储和读取的方法,该方法包括根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词;根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位, 并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效;根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置, 并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。本发明实施例提供的一种基于哈希算法的数据存储和读取的装置,该装置包括确定模块,用于根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词;置位模块,用于根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效;操作模块,用于根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置,并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。本发明实施例提供了一种基于哈希算法的数据存储和读取的方法及装置。该方法在每次进行数据的存储和读取操作时,根据接入类型对应的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,根据置位后的标识信息以及每个关键词,确定进行数据操作的存储位置,并对数据进行操作。由于本发明实施例中针对每种接入类型都采用该方法,因为无需针对不同的接入类型单独采用微码编写相应的流程,节省了微码指令,另外在本发明实施例中针对每种接入类型,都采用该哈希表,只是根据每种接入类型将获取的关键词对应的标识信息置位,根据置位后的标识信息以及关键词,确定数据在哈希表中的存储位置,因此节省了哈希表的存储空间,从而有效的提升了网络设备的性能。

  此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1为本发明实施例提供的基于哈希算法的数据存储和读取的过程示意图;图2为本发明实施例提供的基于哈希算法的数据存储和读取的装置结构示意图。

  本发明实施例为了有效地节省微码指令以及哈希表项的存储空间,提升网络设备的性能,提供了一种基于哈希算法的数据存储和读取的方法及装置。在本发明实施例中针对每种接入类型都采用该方法,因为无需针对不同的接入类型单独采用微码编写相应的流程,节省了微码指令,另外在本发明实施例中针对每种接入类型,都采用该哈希表,只是根据每种接入类型将获取的关键词对应的标识信息置位,根据置位后的标识信息以及关键词,确定数据在哈希表中的存储位置,因此节省了哈希表的存储空间,从而有效的提升了网络设备的性能。为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。图1为本发明实施例提供的基于哈希算法的数据存储和读取的过程示意图,该过程包括以下步骤SlOl 根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词。具体的在本发明实施例中,该接入类型包括端口接入类型、子端口接入类型及 Qinq接入类型。确定的进行数据操作所需的关键词为一组,该一组关键词包括至少一个关键词。S102:根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效。具体的在本发明实施例中为了针对每种接入类型,都采用相同的微码指令,即采用相同的处理流程,在本发明实施例中针对不同的接入类型,根据每种接入类型对应的关键词,设置对应每种关键词的进行哈希运算的标识信息。当存在该关键词时,将该关键词对应的进行哈希运算的标识信息置位,而不存在关键词对应的进行哈希运算的标识信息的值为默认值,该默认值可以为0,或无效值。当所述接入类型为端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息;根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位。当所述接入类型为子端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息及接收所述待存储数据的Vlan ID的信息;根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的标识信息置位,并将所述Vlan ID的信息对应的进行哈希运算的标识信息置位。当所述接入类型为Qinq接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息、接收所述待存储数据的第一 Vlan ID信息以及第二 Vlan ID的 fn息;根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息、第一 Vlan ID信息对应的进行哈希运算的标识信息及第二 Vlan ID信息对应的进行哈希运算的标识信息置位。S103:根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置,并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。由于针对每个关键词都设置了相应的标识信息,并且当该关键词存在时,则将该关键词对应的进行哈希运算的标识信息置位,因此根据置位后的标识信息,关键词以及哈希函数,即可确定进行数据操作的存储位置,并根据该存储位置对数据进行操作。具体的在本发明实施例中,对数据进行操作包括对数据的存储或读取操作。由于接入类型包括端口接入类型、子端口接入类型及Qinq接入类型,而针对每种接入类型,其对应的进行数据存储所需的关键词是不同的。例如针对端口接入类型,其进行数据存储所需的关键词为端口属性信息,针对子端口接入类型,其进行数据存储所需的关键词为端口属性信息及接收所述待存储数据的Vlan ID的信息,而针对Qinq接入类型,其进行数据存储所需的关键词为端口属性信息、接收所述待存储数据的第一 Vlan ID的信息以及第二 Vlan ID的信息。因此,在本发明实施例中为了通过微码指令,统计各种接入类型的数据存储和读取的过程,可以针对不同的关键词设置对应的进行哈希运算的标识信息,例如针对端口属性信息设置进行哈希运算的标识信息A,针对第一 VlanID的信息设置进行哈希运算的标识信息B,针对第二 Vlan ID的信息设置进行哈希运算的标识信息C。在默认状态下每个标识信息为0,或无效值,例如该无效值可以为Oxfff。具体的可以根据关键词与其对应的进行哈希运算的标识信息的乘积,确定进行存储位置确定的关键词。因此可知当标识信息未置位即设置为0或无效时,该标识信息与关键词的乘积为0,即可以认为该关键词不存在。即具体的在本发明实施例中可以确定该关键词为A端口属性信息+B第一 Vlan ID的信息+C第二 Vlan ID的信息。当然关键词增加时,相信本领域技术人员可以依据上述方法确定相应的实现方案。当接收到相应的数据请求后,该数据请求包括对数据进行存储的请求,以及对数据进行读取的请求。根据对该数据请求进行操作的端口对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词,并将该每个关键词对应的进行哈希运算的标识信息置位。由于在默认状态下每个标识信息都是无效值,或者0,因此将对应的标识信息置位后,可以根据该标识信息与该关键词进行存储位置的确定。下面针对具体的实施例进行说明,当接收到进行数据存储的数据请求时,根据发送该数据请求的端口的接入类型,确定该接入类型为端口接入类型时,则确定该端口接入类型对应的进行数据操作所需的关键词为端口属性信息,并将该端口属性信息对应的进行哈希运算的标识信息A置位,由于此时不存在第一 Vlan ID的信息以及第二 Vlan ID的信息,因此此时第一 Vlan ID的信息以及第二 Vlan ID的信息分别对应的进行哈希运算的标识信息B和C设置为无效。因此可以根据该端口属性信息、其对应的置位后的进行哈希运算的标识信息A以及哈希函数,确定该数据的存储位置,并将该数据存储到该对应的位置。当接收到进行数据读取的数据请求时,根据发送该数据请求的端口的接入类型, 确定该接入类型为子端口接入类型时,则确定该子端口接入类型对应的进行数据操作所需的关键词为端口属性信息以及第一 Vlan ID的信息,并将该端口属性信息对应的进行哈希运算的标识信息A置位,并将该第一 Vlan ID的信息对应的进行哈希运算的标识信息B置位。由于此时不存在第二 Vlan ID的信息,因此此时第二 Vlan ID的信息分别对应的标识信息C设置为无效。因此可以根据该端口属性信息、第一 Vlan ID的信息、其对应的置位后的标识信息A、B以及哈希函数,确定该数据的存储位置,并从该对应位置读取数据。当接收到进行数据读取的数据请求时,根据发送该数据请求的端口的接入类型, 确定该接入类型为Qinq接入类型时,则确定该Qinq接入类型对应的进行数据操作所需的关键词为端口属性信息、第一 Vlan ID的信息及第二 Vlan ID的信息,并将该端口属性信息对应的进行哈希运算的标识信息A置位,将该第一 Vlan ID的信息对应的进行哈希运算的标识信息B置位,及该第二 Vlan ID的信息对应的进行哈希运算的标识信息C置位。因此可以根据该端口属性信息、第一 Vlan ID的信息、第二 Vlan ID的信息、其对应的置位后的标识信息A、B、C以及哈希函数,确定该数据的存储位置,并从该对应位置读取数据。由于本发明实施例中针对每种接入类型都采用该方法,因为无需针对不同的接入类型单独采用微码编写相应的流程,节省了微码指令,另外在本发明实施例中针对每种接入类型,都采用该哈希表,只是根据每种接入类型将获取的关键词对应的标识信息置位,根据置位后的标识信息以及关键词,确定数据在哈希表中的存储位置,因此节省了哈希表的存储空间,从而有效的提升了网络设备的性能。图2为本发明实施例提供的一种基于哈希算法的数据存储和读取的装置的结构示意图,所述装置包括确定模块21,用于根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词;

  置位模块22,用于根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效;操作模块23,用于根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置,并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。所述确定模块21,具体用于确定端口接入类型、子端口接入类型及Qinq接入类型对应的进行数据操作所需的每个关键词。所述确定模块21,具体用于当所述接入类型为端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息;所述置位模块22,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位。所述确定模块21,具体用于当所述接入类型为子端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息及接收所述待存储数据的Vlan ID的 fn息;所述置位模块22,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位,并将所述Vlan ID的信息对应的进行哈希运算的标识信息置位。所述确定模块21,具体用于当所述接入类型为Qinq接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息、接收所述待存储数据的第一 Vlan ID 的信息以及第二 Vlan ID的信息;所述置位模块22,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息、第一 Vlan ID的信息对应的进行哈希运算的标识信息及第二 Vlan ID对应的进行哈希运算的标识信息置位。本发明实施例提供了一种基于哈希算法的数据存储和读取的方法及装置。该方法在每次进行数据的存储和读取操作时,根据接入类型对应的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,根据置位后的标识信息以及每个关键词,确定进行数据操作的存储位置,并对数据进行操作。由于本发明实施例中针对每种接入类型都采用该方法,因为无需针对不同的接入类型单独采用微码编写相应的流程,节省了微码指令,另外在本发明实施例中针对每种接入类型,都采用该哈希表,只是根据每种接入类型将获取的关键词对应的标识信息置位,根据置位后的标识信息以及关键词,确定数据在哈希表中的存储位置,因此节省了哈希表的存储空间,从而有效的提升了网络设备的性能。上述说明示出并描述了本发明的一个优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、 修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

  1.一种基于哈希算法的数据存储和读取方法,其特征在于,所述方法包括根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词;根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效;根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置,并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。

  3.如权利要求2所述的方法,其特征在于,当所述接入类型为端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息;根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位。

  4.如权利要求2所述的方法,其特征在于,当所述接入类型为子端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息及接收所述待存储数据的虚拟局域网标识Vlan ID的信息;根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位,并将所述Vlan ID的信息对应的进行哈希运算的标识信息置位。

  5.如权利要求2所述的方法,其特征在于,当所述接入类型为Qinq接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息、接收所述待存储数据的第一虚拟局域网标识Vlan ID的信息以及第二 Vlan ID的信息;根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息、第一 Vlan ID的信息及第二 Vlan ID的信息对应的进行哈希运算的标识信息置位。

  6.一种基于哈希算法的数据存储和读取的装置,其特征在于,所述装置包括确定模块,用于根据接收到的数据请求中该数据对应的接入类型,确定该接入类型对应的进行数据操作所需的每个关键词;置位模块,用于根据确定的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,并将未获取的关键词对应的进行哈希运算的标识信息设置为0或无效;操作模块,用于根据置位后的每个标识信息、每个关键词以及哈希函数,确定该数据的存储位置,并根据所述存储位置对该数据进行操作,包括对数据的存储和读取操作。

  8.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于当所述接入类型为端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息;所述置位模块,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位。

  9.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于当所述接入类型为子端口接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息及接收所述待存储数据的虚拟局域网标识Vlan ID的信息;所述置位模块,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的进行哈希运算的标识信息置位,并将所述Vlan ID的信息对应的进行哈希运算的标识信息置位。

  10.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于当所述接入类型为Qinq接入类型时,确定该接入类型对应的进行数据存储所需的关键词为端口属性信息、 接收所述待存储数据的第一虚拟局域网标识VlanID的信息以及第二 Vlan ID的信息;所述置位模块,具体用于根据确定的每个关键词,将该每个关键词对应的标识信息置位包括将所述端口属性信息对应的标识信息、第一 Vlan ID的信息对应的标识信息及第二 Vlan ID的信息对应的进行哈希运算的标识信息置位。

  本发明公开了一种基于哈希算法的数据存储和读取的方法及装置,用以解决现有哈希表项及微码指令占用存储空间,不利于提升网络设备性能问题。该方法在每次进行数据的存储和读取操作时,根据接入类型对应的每个关键词,将该每个关键词对应的进行哈希运算的标识信息置位,根据置位后的标识信息以及每个关键词,确定进行数据操作的存储位置,并对数据进行操作。由于本发明实施例中无需针对不同的接入类型单独采用微码编写相应的流程,节省了微码指令,只是根据每种接入类型将获取的关键词对应的标识信息置位,根据置位后的标识信息以及关键词,确定数据在哈希表中的存储位置,因此节省了哈希表的存储空间,从而有效的提升了网络设备的性能。

  1.计算机视觉 2.无线.计算机仿线.网络安全;物联网安全 、大数据安全 2.安全态势感知、舆情分析和控制 3.区块链及应用

地址:广东省广州市天河区88号 客服热线:400-123-4567 传真:+86-123-4567 QQ:1234567890

Copyright © 2012-2025 哈希游戏推荐 版权所有 非商用版本