CN101286936A - Method and apparatus for data message processing - Google Patents

Method and apparatus for data message processing Download PDF

Info

Publication number
CN101286936A
CN101286936A CNA2008100947985A CN200810094798A CN101286936A CN 101286936 A CN101286936 A CN 101286936A CN A2008100947985 A CNA2008100947985 A CN A2008100947985A CN 200810094798 A CN200810094798 A CN 200810094798A CN 101286936 A CN101286936 A CN 101286936A
Authority
CN
China
Prior art keywords
acl rule
data message
hash
attribute information
hash key
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
Application number
CNA2008100947985A
Other languages
Chinese (zh)
Other versions
CN101286936B (en
Inventor
闫婷
张学锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Digital Technologies Chengdu Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2008100947985A priority Critical patent/CN101286936B/en
Publication of CN101286936A publication Critical patent/CN101286936A/en
Application granted granted Critical
Publication of CN101286936B publication Critical patent/CN101286936B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses a data message processing method and device. The method comprises the steps of receiving a data message, obtaining an ACL rule matched with attribute information of the data message as well as hash keywords corresponding to the ACL rule; obtaining a hash end value by carrying out hash calculation of the hash keywords; shunting the data message to a processor corresponding to the end value. The method and device of the invention can shunt the data messages belonging to the same stream to the same processor for processing by matching the ACL rule with the hash keywords, which keeps the integrality of data stream information and brings convenience to the uniform analysis and processing of the same data stream; moreover, different hash keywords can be identified aiming at different ACL rules, therefore, the flexibility of the data message shunt is improved.

Description

The processing method of data message and device
Technical field
The present invention relates to communication technical field, particularly a kind of processing method of data message and device.
Background technology
Along with the development of computer and network technologies, it is more and more higher that business is carried out the required bandwidth of data processing, and performance of processors also improves constantly, and therefore data shunted real-time, and becoming with the preliminary treatment that realizes data becomes more and more important.The core of data distribution is exactly that the data that will collect are transmitted to different processors according to certain forwarding strategy, transmit according to the high bandwidth of transmission line to realize data, for example, the high bandwidth that the 10G Ethernet can reach is 10G, when the data bandwidth that transmits on the circuit is 10G, can receive data according to the data bandwidth of 10G, and data are transmitted or handled.There is multiple application service in the existing network, for example: HTTP (Hypertext Transfer Protocol, HTML (Hypertext Markup Language)), FTP (FileTransfer Protocol, file transfer protocol (FTP)) etc., after being split into the data of different types bag usually, these services transmit, the packet of same kind has some identical attribute, as source IP (Internet Protocol, Internet protocol) address, purpose IP address, source port number, the destination slogan, at least a in the protocol fields etc., the packet of above-mentioned same kind belongs to same stream, and the data of same data flow should guarantee to assign in the same processor and handle.
The inventor finds in the research to the existing business implementation procedure, the processing mode that prior art adopts usually is for shunting the packet of input according to its physical port, soon assign on the same processor and handle from the data of some or certain several physical port, because data distribution is divided according to predefined physical port, therefore the data that belong to same stream may be assigned on the different processors to be handled, destroyed the integrality of traffic flow information, can't be to carrying out unified analysis and processing with a kind of data flow.
Summary of the invention
The purpose of the embodiment of the invention is to provide a kind of processing method and device of data message, can be kept the integrality of traffic flow information by same processor processing so that belong to the data of data flow of the same race.
For realizing the purpose of the embodiment of the invention, the embodiment of the invention provides following technical scheme:
A kind of processing method of data message comprises:
Behind the receiving data packets, obtain the acl rule with the attribute information of described data message coupling, and the Hash key corresponding with described acl rule;
Described Hash key is carried out Hash calculation obtain the Hash result value;
Described data message is branched to and the corresponding processor of described Hash result value.
A kind of processing unit of data message comprises:
Receiving element is used for receiving data packets;
Acquiring unit is used to obtain the acl rule with the attribute information coupling of described data message, and the Hash key corresponding with described acl rule;
Computing unit is used for that described Hash key is carried out Hash calculation and obtains the Hash result value;
Dividing cell, be used for described data message shunting with the corresponding processor of described Hash result value.
The technical scheme that is provided by the above embodiment of the invention as seen, after receiving data message in the embodiment of the invention, obtain acl rule with the attribute information of this data message coupling, and the Hash key corresponding with described acl rule, this Hash key is carried out Hash calculation obtain the Hash result value, described data message is branched to the processor corresponding with this Hash result value.Use the embodiment of the invention, by coupling to acl rule and Hash key, the data message that belongs to same stream can be diverted on the identical processor and handle, keep the integrality of traffic flow information, be convenient to carrying out unified analysis and processing with a kind of data flow.
Description of drawings
Fig. 1 is an embodiment flow chart of the processing method of data message of the present invention;
Fig. 2 is another embodiment flow chart of the processing method of data message of the present invention;
Fig. 3 handles structural representation for the data message of using the embodiment of the invention;
Fig. 4 is an embodiment block diagram of the processing unit of data message of the present invention;
Fig. 5 is another embodiment block diagram of the processing unit of data message of the present invention.
Embodiment
The embodiment of the invention provides the processing method and the device of data message, after receiving data message, obtain ACL (Access Control List with the attribute information of this data message coupling, Access Control List (ACL)) rule, and the Hash key corresponding with described acl rule, this Hash key is carried out Hash calculation obtain the Hash result value, described data message is branched to the processor corresponding with this Hash result value.
In order to make those skilled in the art person understand the technical scheme that the embodiment of the invention provides better, the technical scheme that the embodiment of the invention provides is described in further detail below in conjunction with the drawings and specific embodiments.
One embodiment flow process of the processing method of data message of the present invention is as shown in Figure 1:
Step 101: behind the receiving data packets, obtain the acl rule with the attribute information of this data message coupling, and the Hash key corresponding with this acl rule.
Wherein, the attribute information of data message comprises at least a in source IP address, purpose IP address, source port number, destination slogan, the protocol type.
Step 102: this Hash key is carried out Hash calculation obtain the Hash result value.
Wherein, the mode of the side of Hash calculation comprises parallel CRC algorithm, square algorithm, folding algorithm or removes and stay the remainder algorithm.
Step 103: this data message is branched to the processor corresponding with the result calculated value.
Another embodiment flow process of the processing method of data message of the present invention as shown in Figure 2, this embodiment shows in detail the data message is handled, with the detailed process that realizes the data message is shunted:
Step 201: the attribute information of data message and the corresponding relation of acl rule are set, reach the corresponding relation of acl rule and Hash key, and distribute the Hash result value scope of each processor correspondence.
The attribute information of data message generally includes the IP five-tuple, be source IP address, purpose IP address, source port number, destination slogan, protocol type, if desired a certain data flow is unified to handle, the data message that belongs to this data flow can be defined as has some identical attribute information, then can be the acl rule of these same alike result information setting correspondences, make the same acl rule of same data stream conforms.According to the requirement of different data streams, the acl rule of some the various attribute informations of correspondence is set to attribute information.
Further, because the kind of data flow is a lot, can not be processor of each distribution of flows, therefore only need to guarantee that data flow of the same race is sent into same processor processing to get final product, that is to say, a certain processor can be handled several data stream, but will guarantee that same data flow all handled by same processor.Therefore, after the corresponding relation of attribute information that is provided with data message and acl rule, the Hash key of each acl rule correspondence further is set, each Hash key carries out can obtaining the Hash result value after the Hash calculation, the Hash result value can be carried out scope division, obtain some Hash result value scopes, make a certain processor only handle the data message in a certain Hash result value scope, the data message that promptly belongs to same data flow can fall into same Hash result value scope, and by same processor processing.
Step 202: preserve acl rule table and Hash key table.
The attribute information of data message and the corresponding relation of acl rule, and the corresponding relation of acl rule and Hash key can promptly be preserved by acl rule table and Hash key table respectively respectively by the form preservation of table.
Wherein, acl rule in the acl rule table can be arranged from high to low according to the levels of precision of attribute information coupling, levels of precision can be represented by corresponding mask is set, can determine the prefix word length of every acl rule according to mask, preceding asyllabia is used for representing the number of significant digit of each field in the attribute information of acl rule correspondence, the respective field of a data message attribute information must and preceding asyllabia is identical could mate this acl rule.For example, the source IP address of the coupling of knowing clearly surely in acl rule is 192.168.0.1, and mask is 255.255.255.0, and corresponding prefix word length is 24, and then first three field of all source IP addresss is that the data message of 192.168.0 all mates with this acl rule.
Step 203: after receiving data message, the packet header of resolving this data message obtains the attribute information of data message.
Usually the data message that receives is divided into header part and payload part, wherein comprised the information such as source IP address, purpose IP address, source port number, destination slogan, protocol type of this data message in the header part, resolved this data message and can obtain above-mentioned information.
Step 204: in the coupling acl rule table with the corresponding acl rule of attribute information of resolving.
The attribute information that parses and the acl rule in the acl rule table are mated, and whether the attribute information that promptly relatively parses is identical with the attribute information of each bar acl rule definition.
Step 205: judge whether to match acl rule, if then execution in step 206; Otherwise, execution in step 212.
Step 206: judge whether the acl rule that matches surpasses one, if then execution in step 207; Otherwise, direct execution in step 208.
Step 207: select the highest acl rule of levels of precision in many acl rules, execution in step 208.
Because the acl rule in the acl rule table is arranged from high to low according to levels of precision, and according to the definition of same data flow to attribute information, a certain data message may mate more than one acl rules simultaneously.For example, article one, acl rule is defined as source IP address coupling " 192.168.0.1 ", and the second acl rule is defined as source IP address front two coupling " 192.168 ", then when the source IP address of a certain data message is 192.168.0.1, to mate with above-mentioned two acl rules simultaneously, because the levels of precision of article one acl rule is higher than the second acl rule, so this data message will mate with article one acl rule.
Step 208: the Hash key corresponding in the coupling Hash key table with this acl rule.
Step 209: this Hash key is carried out Hash calculation obtain the Hash result value.
Hash key is set at the combination in any of IP five-tuple usually, the mode of Hash calculation can preestablish, common Hash calculation mode comprises parallel CRC algorithm, square algorithm, folding algorithm or removes and stay the remainder algorithm, by accessing the Hash result value after the above-mentioned Hash calculation.
Step 210: relatively obtain the affiliated Hash result value scope of this end value after this end value and the pre-assigned Hash result value scope.
Step 211: data message is transferred to and the corresponding processor of this Hash result value scope, finish current flow process.
Step 212: this data message is branched to the processor that sets in advance, finish current flow process.
Because acl rules all in this data message and the acl rule table all do not match, therefore this type of data message is directly branched to certain processor that sets in advance and unify to handle.Further, can pass through analysis to the attribute information of this type of data message, in the acl rule table, add the acl rule corresponding with it, and be that this acl rule defines Hash key, realization is to the real-time update of acl rule table and Hash key table, so that when receiving this type of data message again, can unify to handle by same processor.
The processing structural representation of using data message processing method embodiment of the present invention comprises among Fig. 3 as shown in Figure 3: N processor of module and N shunting memory module and correspondence thereof selected in packet header processing module, data memory module, acl rule table module, HASH (Hash) function diverter module, shunting.
The packet header processing module is discerned the packet header of data message after receiving data message, parse the IP five-tuple information such as source IP address, purpose IP address, source port number, destination slogan, protocol type of data message, the above-mentioned information that parses is sent in the acl rule table module, has preserved the acl rule table of record attribute information and acl rule corresponding relation in the acl rule table module; The while data message is admitted to data memory module and keeps in.
Acl rule in the acl rule table can be arranged from high to low according to the levels of precision of attribute information coupling, levels of precision can be represented by corresponding mask is set, can determine the prefix word length of every acl rule according to mask, that is to say the length descending of acl rule according to preceding asyllabia, when the attribute information of data message and many acl rules all mated, acl rule table module sent the longest acl rule of prefix word length to HASH function diverter module.In addition, acl rule table module can be carried out real-time update according to the reception condition of data message, when the data message of some acl rule correspondence is not received for a long time, this acl rule can be deleted from the acl rule table; When receiving new data message, also the acl rule of corresponding such data message can be added in the acl rule table, need guarantee during interpolation that this acl rule is recorded in relevant position in the acl rule table according to the requirement of prefix word length descending.
HASH function diverter module is used for that the acl rule that matches is carried out HASH and calculates, and account form can be selected at different applying flexibles.Preserved the HASH key table of acl rule and HASH keyword corresponding relation in this HASH function diverter module, the HASH keyword is generally the combination at random of IP five-tuple, certainly the out of Memory of data message also can be used as the HASH keyword, for example, the part of data message more than the IP layer, grade such as the port numbers of transport layer, the payload portion in the data message, thereby realize the data message is shunted flexibly.Obtain the HASH keyword corresponding by searching this HASH key table, this HASH keyword is calculated according to the Hash calculation mode of selecting, module is selected in HASH end value input shunting with the acl rule that mates.
Shunting selects to have preserved in the module N each the self-corresponding HASH end value scope of shunting memory module that sets in advance, after receiving the HASH end value, this end value and each HASH end value scope are compared, find the HASH end value scope under this end value, transfer in the shunting memory module corresponding and store with this HASH end value scope with being temporarily stored in data message in the data memory module.After a period of time, each shunting memory module sends to the data message of storing to be unified in the corresponding processor to handle.
In conjunction with the embodiment of the invention described above data processing method, describe the application example that carries out data processing by this embodiment below in detail.
The corresponding relation of supposing the attribute information that sets in advance and acl rule is as shown in table 1 below:
Table 1
Rule Source IP address The source IP address mask Purpose IP address Purpose IP address mask
ACL1 10.110.78.3 255.255.255.255 10.110.64.22 255.255.0.0
ACL2 10.110.78.3 255.255.255.0 10.110.64.33 255.255.0.0
ACL3 192.168.0.1 255.0.0.0 10.110.65.44 255.255.255.0
Last table 1 is convenient for example, and the attribute information that illustrates only comprises source IP address and purpose IP address (attribute information in the practical application is not limited to above-mentioned two kinds), and only shows three acl rules corresponding respectively with above-mentioned attribute information.By last table 1 as can be known, ACL1 is identical with the source IP address of ACL2, but the mask of the source IP address of ACL1 is 255.255.255.255, all fields in the expression source IP address all will accurately be mated and just be met ACL1, the mask of the source IP address of ACL2 is 255.255.255.0, first three fields match in the expression source IP address just meets ACL2, that is to say, source IP address is necessary for 10.110.78.3 and could mates with ACL1, and first three field of source IP address is as long as just can mate with ACL2 for 10.110.78, as long as correspondingly first field of source IP address is 192 just can mate with ACL3.According to the rule of longest-prefix descending, the prefix word length be 32 ACL1, prefix word length be 24 ACL2 and prefix word length be 8 ACL3 by descending sequence arrangement from high to low in the mapping table of attribute information and acl rule.If receiving the source IP address of packet is 10.110.78.3, then its attribute information and ACL1 and ACL2 all mate, but the order of returning from high to low according to the prefix word length, the acl rule that returns is ACL1.
Further, it is as shown in table 2 below to set in advance the corresponding relation of the HASH keyword corresponding with each acl rule:
Table 2
Acl rule The HASH keyword
ACL1 Source IP address
ACL2 Source IP address+purpose IP address
ACL3 Purpose IP address
Suppose to receive three data messages this moment, these three packets are as shown in table 3 below, and are convenient for example, only show the source IP address and the purpose IP address of data message in the following table 3:
Table 3
Packet Source IP address Purpose IP address Payload data
Packet 1 10.110.78.3 10.110.54.1 Payload data 1
Packet 2 10.110.78.99 10.110.54.1 Payload data 2
Packet 3 192.x.x.x 10.110.65.x Payload data 3
Arbitrary value between " x " expression 0 to 255 in the last table 3, at first above-mentioned packet 1 is resolved, the source IP address that obtains packet 1 is 10.110.78.3, purpose IP address is 10.110.54.1, then with acl rule table 1 in acl rule mate, wherein packet 1 all mates with ACL 1 and ACL2, returns ACL1 corresponding address 1 (10.110.78.3) according to the levels of precision acl rule table 1 that mates; Then packet 2 is resolved, the source IP address that obtains packet 2 is 10.110.78.99, and purpose IP address is 10.110.54.1, and with the ACL2 coupling in the acl rule table 1, the acl rule table returns ACL2 corresponding address 2 (10.110.78.99); At last packet 3 is resolved, the source IP address that obtains packet 3 is 192.x.x.x, and purpose IP address is 10.110.65.x, and with the ACL3 coupling in the acl rule table 1, acl rule table 1 returns ACL3 corresponding address 3 (192.168.0.1).
Definition according to table 2, the HASH keyword definition of ACL1 correspondence is a source IP address, then the HASH keyword of packet 1 is 10.110.78.3, the HASH keyword definition of ACL2 correspondence is source IP address+purpose IP address, then the HASH keyword of packet 2 is 10.110.78.99 and 10.110.54.1, the HASH keyword definition of ACL3 correspondence is purpose IP address, and then the HASH keyword of packet 3 is 10.110.65.x.
Suppose to adopt the mode of CRC-8 that the HASH keyword is carried out HASH calculating, because CRC-8 result calculated value is between 0 to 255, suppose to have four processors to participate in the processing of data message, the Hash result value scope that sets in advance first processor correspondence is 0 to 63, the Hash result value scope of second processor correspondence is 64 to 127, the Hash result value scope of the 3rd processor correspondence is that the Hash result value scope of 128 to 191, the four processor correspondences is 192 to 255.Need to prove, if there is more processor to participate in shunting, then only need to divide more Hash result value scope and get final product, when number of processors surpasses the scope of CRC-8 result calculated value, can adopt the bigger HASH account forms of end value scope such as CRC-16 or CRC-32 simultaneously.
Calculate the corresponding HASH end value of HASH keyword of above-mentioned three packets by CRC-8, the HASH end value of packet 1 correspondence is 241, being branched to the 4th processor handles, the HASH end value of packet 2 correspondences is 155, being divided to the 3rd processor handles, realize the shunting processing of data message thus, making can be by the unified processing of same processor with a kind of data message.
Corresponding with the embodiment of the processing method of the invention described above data message, the present invention also provides the embodiment of the processing unit of data message.
One embodiment block diagram of the processing unit of data message of the present invention is as shown in Figure 4:
The processing unit of this data message comprises: receiving element 410, acquiring unit 420, computing unit 430 and dividing cell 440.
Wherein, receiving element 410 is used for receiving data packets; Acquiring unit 420 is used to obtain the acl rule with the attribute information coupling of described data message, and the Hash key corresponding with described acl rule; Computing unit 430 is used for that described Hash key is carried out Hash calculation and obtains the Hash result value; Dividing cell 440 be used for described data message shunting with the corresponding processor of described Hash result value.
Another embodiment block diagram of the processing unit of data message of the present invention is as shown in Figure 5:
The processing unit of this data message comprises: default unit 510, preservation unit 520, allocation units 530, receiving element 540, acquiring unit 550, computing unit 560, dividing cell 570, delete cells 580 and adding device 590.
Wherein, default unit 510 is used to set in advance the attribute information of data message and the corresponding relation of acl rule, and the corresponding relation of acl rule and Hash key.
Preserve the acl rule table that unit 520 is used for described attribute information of keeping records and acl rule corresponding relation, and the Hash key table of described acl rule and Hash key corresponding relation, the acl rule in the described acl rule table is arranged from high to low according to the levels of precision of attribute information coupling.
Allocation units 530 are used to allocate in advance the Hash result value scope of each processor correspondence.
Receiving element 540 is used for receiving data packets.
Acquiring unit 550 is used to obtain the acl rule with the attribute information coupling of described data message, and the Hash key corresponding with described acl rule.Concrete, this acquiring unit 550 comprises resolution unit, is used to resolve the attribute information that the described data message that receives obtains described data message; Matching unit, be used for mating the described acl rule table acl rule corresponding with the attribute information of described parsing, and mate Hash key corresponding in the described Hash key table with described acl rule, when matching many acl rules consistent with the attribute information of described parsing, mate in the described Hash key table with described many acl rules in the highest corresponding Hash key of acl rule of levels of precision.
Computing unit 560 is used for that described Hash key is carried out Hash calculation and obtains the Hash result value.
Dividing cell 570 be used for described data message shunting with the corresponding processor of described Hash result value, and when being further used for attribute information when the data message of described parsing and not matching acl rule in the described acl rule table, described data message is branched to the processor that sets in advance.Concrete, dividing cell 570 comprises comparing unit, is used for more described Hash result value and described Hash result value scope, obtains the affiliated Hash result value scope of described Hash result value; Determining unit is used for determining and the described corresponding processor of Hash result value scope that obtains; Transmission unit is used for described data message is transferred to the processor that described determining unit is determined.
When delete cells 580 is used for not receiving the corresponding data message of acl rule with described acl rule table in Preset Time, delete described acl rule.
When the attribute information that adding device 590 is used for the data message of described parsing does not match the acl rule of described acl rule table, attribute information according to described data message, in described acl rule table, add the acl rule corresponding, and in described Hash key table, add the Hash key corresponding with described acl rule with described attribute information.
Description by the embodiment of the invention as can be known, use the embodiment of the invention, by coupling to acl rule and Hash key, the data message that belongs to same stream can be diverted on the identical processor and handle, the integrality that has kept traffic flow information is convenient to carrying out unified analysis and processing with a kind of data flow; And owing to can improve the flexibility of data message shunting at the different different Hash key of acl rule definition.
One of ordinary skill in the art will appreciate that all or part of step that realizes in the foregoing description method is to instruct relevant hardware to finish by program, described program can be stored in the computer read/write memory medium, this program is when carrying out, after comprising the steps: receiving data packets, obtain the acl rule with the attribute information of described data message coupling, and the Hash key corresponding with described acl rule; Described Hash key is carried out Hash calculation obtain the Hash result value; Described data message is branched to and the corresponding processor of described Hash result value.Described storage medium, as: ROM/RAM, magnetic disc, CD etc.
Though described the present invention by embodiment, those of ordinary skills know, the present invention has many distortion and variation and do not break away from spirit of the present invention, wish that appended claim comprises these distortion and variation and do not break away from spirit of the present invention.

Claims (18)

1, a kind of processing method of data message is characterized in that, comprising:
Behind the receiving data packets, obtain the acl rule with the attribute information of described data message coupling, and the Hash key corresponding with described acl rule;
Described Hash key is carried out Hash calculation obtain the Hash result value;
Described data message is branched to and the corresponding processor of described Hash result value.
2, method according to claim 1 is characterized in that, described method also comprises:
Set in advance the attribute information of data message and the corresponding relation of acl rule, and the corresponding relation of acl rule and Hash key;
The acl rule table of described attribute information of keeping records and acl rule corresponding relation, and the Hash key table of described acl rule and Hash key corresponding relation.
3, method according to claim 2 is characterized in that, the described acl rule that obtains with the attribute information of data message coupling, and the Hash key corresponding with described acl rule comprises:
The described data message that parsing receives obtains the attribute information of described data message;
Mate acl rule corresponding in the described acl rule table, and mate Hash key corresponding in the described Hash key table with described acl rule with the attribute information of described parsing.
4, method according to claim 3 is characterized in that, the acl rule in the described acl rule table is arranged from high to low according to the levels of precision of attribute information coupling.
5, method according to claim 4 is characterized in that, when matching many acl rules consistent with the attribute information of described parsing, the Hash key corresponding with described acl rule is specially in the described coupling Hash key table:
Mate in the described Hash key table with described many acl rules in the highest corresponding Hash key of acl rule of levels of precision.
6, method according to claim 3 is characterized in that, also comprises:
When the attribute information of the data message of described parsing does not match acl rule in the described acl rule table, described data message is branched to the processor that sets in advance.
7, method according to claim 6 is characterized in that, also comprises:
According to the attribute information of described data message, in described acl rule table, add the acl rule corresponding, and in described Hash key table, add the Hash key corresponding with described acl rule with described attribute information.
8, method according to claim 2 is characterized in that, also comprises:
When in Preset Time, not receiving the data message corresponding, delete described acl rule with acl rule in the described acl rule table.
9, method according to claim 1 is characterized in that, also comprises: the Hash result value scope of allocating each processor correspondence in advance;
Describedly data message branched to the processor corresponding with described Hash result value comprise:
More described Hash result value and described Hash result value scope obtain the affiliated Hash result value scope of described Hash result value;
Determine and the described corresponding processor of Hash result value scope that obtains;
Described data message is transferred to the processor of described correspondence.
10, according to any described method of claim 1 to 9, it is characterized in that described attribute information comprises: at least a in source IP address, purpose IP address, source port number, destination slogan, the protocol type;
The mode of described Hash calculation comprises: parallel CRC algorithm, square algorithm, folding algorithm or remove and stay the remainder algorithm.
11, a kind of processing unit of data message is characterized in that, comprising:
Receiving element is used for receiving data packets;
Acquiring unit is used to obtain the acl rule with the attribute information coupling of described data message, and the Hash key corresponding with described acl rule;
Computing unit is used for that described Hash key is carried out Hash calculation and obtains the Hash result value;
Dividing cell, be used for described data message shunting with the corresponding processor of described Hash result value.
12, device according to claim 11 is characterized in that, also comprises:
Default unit is used to set in advance the attribute information of data message and the corresponding relation of acl rule, and the corresponding relation of acl rule and Hash key;
Preserve the unit, be used for the acl rule table of described attribute information of keeping records and acl rule corresponding relation, and the Hash key table of described acl rule and Hash key corresponding relation.
13, device according to claim 12 is characterized in that, described acquiring unit comprises:
Resolution unit is used to resolve the attribute information that the described data message that receives obtains described data message;
Matching unit is used for mating the described acl rule table acl rule corresponding with the attribute information of described parsing, and mates Hash key corresponding with described acl rule in the described Hash key table.
14, method according to claim 13 is characterized in that, the acl rule in the acl rule table that described preservation unit is preserved is arranged from high to low according to the levels of precision of attribute information coupling;
Described matching unit also is used for, when matching many acl rules consistent with the attribute information of described parsing, mate in the described Hash key table with described many acl rules in the highest corresponding Hash key of acl rule of levels of precision.
15, device according to claim 13, it is characterized in that, described dividing cell also is used for, and when the attribute information of the data message of described parsing does not match acl rule in the described acl rule table, described data message is branched to the processor that sets in advance.
16, device according to claim 15 is characterized in that, also comprises:
Adding device is used for the attribute information according to described data message, adds the acl rule corresponding with described attribute information in described acl rule table, and adds the Hash key corresponding with described acl rule in described Hash key table.
17, device according to claim 12 is characterized in that, also comprises:
Delete cells when being used for not receiving the corresponding data message of acl rule with described acl rule table in Preset Time, is deleted described acl rule.
18, device according to claim 11 is characterized in that, described device also comprises: allocation units are used to allocate in advance the Hash result value scope of each processor correspondence;
Described dividing cell comprises:
Comparing unit is used for more described Hash result value and described Hash result value scope, obtains the affiliated Hash result value scope of described Hash result value;
Determining unit is used for determining and the described corresponding processor of Hash result value scope that obtains;
Transmission unit is used for described data message is transferred to the processor that described determining unit is determined.
CN2008100947985A 2008-05-16 2008-05-16 Method and apparatus for data message processing Active CN101286936B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100947985A CN101286936B (en) 2008-05-16 2008-05-16 Method and apparatus for data message processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100947985A CN101286936B (en) 2008-05-16 2008-05-16 Method and apparatus for data message processing

Publications (2)

Publication Number Publication Date
CN101286936A true CN101286936A (en) 2008-10-15
CN101286936B CN101286936B (en) 2010-10-27

Family

ID=40058915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100947985A Active CN101286936B (en) 2008-05-16 2008-05-16 Method and apparatus for data message processing

Country Status (1)

Country Link
CN (1) CN101286936B (en)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088457A (en) * 2010-12-17 2011-06-08 天津曙光计算机产业有限公司 Message shunting method for ensuring connection proportionality
CN101527685B (en) * 2009-04-17 2011-07-20 华为技术有限公司 Method for assigning message transmission link and device
CN101465807B (en) * 2008-12-17 2011-07-20 成都市华为赛门铁克科技有限公司 Control method and device for data stream
CN101572670B (en) * 2009-05-07 2011-08-10 成都市华为赛门铁克科技有限公司 Data packet processing method based on flow table, device and network system
CN102156723A (en) * 2011-03-31 2011-08-17 中兴通讯股份有限公司 Method and device for memorizing and reading data based on Hash algorithm
CN102217281A (en) * 2011-06-13 2011-10-12 华为技术有限公司 Method and apparatus for protocol analysis
WO2012019545A1 (en) * 2010-08-11 2012-02-16 Hangzhou H3C Technologies Co., Ltd. Method and apparatus for packet processing and a preprocessor
CN101431516B (en) * 2008-12-04 2012-04-25 成都市华为赛门铁克科技有限公司 Method for implementing distributed security policy, client terminal and communication system thereof
CN102495764A (en) * 2011-12-06 2012-06-13 曙光信息产业股份有限公司 Method and device for realizing data distribution
CN102546441A (en) * 2012-02-29 2012-07-04 杭州华三通信技术有限公司 Message diversion method and network equipment
CN103188231A (en) * 2011-12-30 2013-07-03 北京锐安科技有限公司 Multi-core printed circuit board access control list (ACL) rule matching method
CN103414701A (en) * 2013-07-25 2013-11-27 华为技术有限公司 Rule matching method and device
CN103634146A (en) * 2013-11-27 2014-03-12 华为技术有限公司 Network data processing method and device
CN103888364A (en) * 2012-12-24 2014-06-25 华为技术有限公司 Message shunting method and device
CN104539642A (en) * 2014-10-29 2015-04-22 杭州银江智慧医疗集团有限公司 Device and method for hardware acceleration of Internet of things module equipment based on infection control protocol package
CN104850555A (en) * 2014-02-14 2015-08-19 阿里巴巴集团控股有限公司 Method and device for extracting standard description information
CN105871741A (en) * 2015-01-23 2016-08-17 阿里巴巴集团控股有限公司 Packet dispersion method and device
CN105871725A (en) * 2015-01-23 2016-08-17 阿里巴巴集团控股有限公司 Message shunt method and device
CN102217281B (en) * 2011-06-13 2016-11-30 华为技术有限公司 protocol analysis method and device
CN107786437A (en) * 2016-08-24 2018-03-09 华为技术有限公司 Message forwarding method and device
CN108234455A (en) * 2017-12-14 2018-06-29 北京东土科技股份有限公司 A kind of message transmission control method, device, computer installation and storage medium
US10116773B2 (en) 2014-07-14 2018-10-30 Huawei Technologies Co., Ltd. Packet processing method and related device that are applied to network device
CN111181974A (en) * 2019-12-31 2020-05-19 国家计算机网络与信息安全管理中心 Device and method for realizing flow preprocessing based on network processor
CN112380257A (en) * 2020-11-26 2021-02-19 厦门市美亚柏科信息股份有限公司 Network data stream locking method, terminal equipment and storage medium
CN112468413A (en) * 2020-11-26 2021-03-09 迈普通信技术股份有限公司 Message processing method and device, electronic equipment and storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143074B (en) * 2011-03-25 2015-09-16 中兴通讯股份有限公司 The sharing method of network load, system and network processing unit
CN102546398B (en) * 2011-12-16 2015-02-25 华为技术有限公司 Message matching method and device

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431516B (en) * 2008-12-04 2012-04-25 成都市华为赛门铁克科技有限公司 Method for implementing distributed security policy, client terminal and communication system thereof
CN101465807B (en) * 2008-12-17 2011-07-20 成都市华为赛门铁克科技有限公司 Control method and device for data stream
CN101527685B (en) * 2009-04-17 2011-07-20 华为技术有限公司 Method for assigning message transmission link and device
CN101572670B (en) * 2009-05-07 2011-08-10 成都市华为赛门铁克科技有限公司 Data packet processing method based on flow table, device and network system
CN102377640B (en) * 2010-08-11 2014-12-31 杭州华三通信技术有限公司 Message processing apparatus, message processing method and preprocessor
WO2012019545A1 (en) * 2010-08-11 2012-02-16 Hangzhou H3C Technologies Co., Ltd. Method and apparatus for packet processing and a preprocessor
CN102377640A (en) * 2010-08-11 2012-03-14 杭州华三通信技术有限公司 Message processing apparatus, message processing method and preprocessor
CN102088457A (en) * 2010-12-17 2011-06-08 天津曙光计算机产业有限公司 Message shunting method for ensuring connection proportionality
CN102156723A (en) * 2011-03-31 2011-08-17 中兴通讯股份有限公司 Method and device for memorizing and reading data based on Hash algorithm
CN102217281A (en) * 2011-06-13 2011-10-12 华为技术有限公司 Method and apparatus for protocol analysis
CN102217281B (en) * 2011-06-13 2016-11-30 华为技术有限公司 protocol analysis method and device
US9112915B2 (en) 2011-06-13 2015-08-18 Huawei Technologies Co., Ltd. Method and apparatus for protocol parsing
CN102495764A (en) * 2011-12-06 2012-06-13 曙光信息产业股份有限公司 Method and device for realizing data distribution
CN103188231A (en) * 2011-12-30 2013-07-03 北京锐安科技有限公司 Multi-core printed circuit board access control list (ACL) rule matching method
CN102546441B (en) * 2012-02-29 2014-09-17 杭州华三通信技术有限公司 Message diversion method and network equipment
CN102546441A (en) * 2012-02-29 2012-07-04 杭州华三通信技术有限公司 Message diversion method and network equipment
CN103888364A (en) * 2012-12-24 2014-06-25 华为技术有限公司 Message shunting method and device
CN103414701B (en) * 2013-07-25 2017-03-01 华为技术有限公司 A kind of rule matching method and device
CN103414701A (en) * 2013-07-25 2013-11-27 华为技术有限公司 Rule matching method and device
CN103634146A (en) * 2013-11-27 2014-03-12 华为技术有限公司 Network data processing method and device
CN103634146B (en) * 2013-11-27 2017-02-22 华为技术有限公司 Network data processing method and device
CN104850555A (en) * 2014-02-14 2015-08-19 阿里巴巴集团控股有限公司 Method and device for extracting standard description information
CN104850555B (en) * 2014-02-14 2018-07-10 阿里巴巴集团控股有限公司 A kind of method and device of extraction standard description information
US10116773B2 (en) 2014-07-14 2018-10-30 Huawei Technologies Co., Ltd. Packet processing method and related device that are applied to network device
CN104539642A (en) * 2014-10-29 2015-04-22 杭州银江智慧医疗集团有限公司 Device and method for hardware acceleration of Internet of things module equipment based on infection control protocol package
CN105871725A (en) * 2015-01-23 2016-08-17 阿里巴巴集团控股有限公司 Message shunt method and device
CN105871725B (en) * 2015-01-23 2019-02-05 阿里巴巴集团控股有限公司 A kind of message diversion method and device
CN105871741A (en) * 2015-01-23 2016-08-17 阿里巴巴集团控股有限公司 Packet dispersion method and device
CN105871741B (en) * 2015-01-23 2018-12-25 阿里巴巴集团控股有限公司 A kind of message diversion method and device
CN107786437A (en) * 2016-08-24 2018-03-09 华为技术有限公司 Message forwarding method and device
CN112671641A (en) * 2016-08-24 2021-04-16 华为技术有限公司 Message forwarding method and device
CN108234455A (en) * 2017-12-14 2018-06-29 北京东土科技股份有限公司 A kind of message transmission control method, device, computer installation and storage medium
CN108234455B (en) * 2017-12-14 2021-03-19 北京东土科技股份有限公司 Message forwarding control method and device, computer device and storage medium
CN111181974A (en) * 2019-12-31 2020-05-19 国家计算机网络与信息安全管理中心 Device and method for realizing flow preprocessing based on network processor
CN112380257A (en) * 2020-11-26 2021-02-19 厦门市美亚柏科信息股份有限公司 Network data stream locking method, terminal equipment and storage medium
CN112468413A (en) * 2020-11-26 2021-03-09 迈普通信技术股份有限公司 Message processing method and device, electronic equipment and storage medium
CN112468413B (en) * 2020-11-26 2023-04-25 迈普通信技术股份有限公司 Message processing method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN101286936B (en) 2010-10-27

Similar Documents

Publication Publication Date Title
CN101286936B (en) Method and apparatus for data message processing
US20150350078A1 (en) Flow-driven forwarding architecture for information centric networks
EP2813060B1 (en) A method for collaborative caching for content-oriented networks
CN101656765B (en) Address mapping system and data transmission method of identifier/locator separation network
CN101820386B (en) Method and system for facilitating forwarding a packet in a content-centric network
CN104115472A (en) A method for scalable routing in content-oriented networks
CN100466627C (en) Method and device for searching address prefixion and message transfer method and system
US20060126668A1 (en) Internet broadcasting system and method thereof
CN110166570B (en) Service session management method and device, and electronic device
US9853718B2 (en) Dynamically adjusting the transmission mode in a satellite communication system
EP3567813B1 (en) Method, apparatus and system for determining content acquisition path and processing request
CN107078960A (en) The optimization method of network function link based on stream
CN101800731B (en) Network transmission management server, network transmission management method and network transmission system
CN109743414B (en) Method for improving address translation availability using redundant connections and computer readable storage medium
CN101267331A (en) A search method and device for multicast forward table
CN111382114B (en) Data transmission method and device for network on chip and electronic equipment
CN101272324B (en) Service quality control method and network appliance
CN107547346B (en) Message transmission method and device
CN107580079A (en) A kind of message transmitting method and device
CN103326925B (en) A kind of information push method and device
CN102857547B (en) The method and apparatus of distributed caching
CN100459583C (en) Data forwarding controlling method and apparatus
EP2316205B1 (en) Message routing platform
US9363227B2 (en) Multicast source in group address mapping
CN106411553B (en) Method and device for optimizing service chain path

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: CHENGDU CITY HUAWEI SAIMENTEKE SCIENCE CO., LTD.

Free format text: FORMER OWNER: HUAWEI TECHNOLOGY CO., LTD.

Effective date: 20090424

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090424

Address after: Qingshui River District, Chengdu high tech Zone, Sichuan Province, China: 611731

Applicant after: Chengdu Huawei Symantec Technologies Co., Ltd.

Address before: Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Province, China: 518129

Applicant before: Huawei Technologies Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee after: Huawei Symantec Technologies Co., Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: Chengdu Huawei Symantec Technologies Co., Ltd.