FAQ-What Is Config order and Auto order of ACL of MA5200G

Publication Date:  2012-07-27 Views:  115 Downloads:  0
Issue Description
      Q: What Is Config order and Auto order of ACL of MA5200G?
Alarm Information
Null
Handling Process
1. Config match 
As the name implies, the config sequence means the rule configured first will be at the top, and the later follows. When the ACL rules in config sequence are numbered, they are sequenced ascendingly according to the serial number. The one with smaller number locates at the front. If no serial number is specified, the rule number will be created automatically according to step length. If the rule number is the same as the one existed, the newly configured will replace the existed one. The display acl command can help check which rule is matched first. Among the displayed, the rule at the top will first take effect regardless of whatever sequence. 
Example: 
[MA5200G-acl-basic-2030]rule 5 deny source 10.10.0.0 0.0.0.255
[MA5200G-acl-basic-2030]rule 3 deny source 10.10.0.0 0.0.255.255
In the example above, the rule 5 is first configured in ACL view, and then rule 3. However, when the display acl command is executed, the rule 3 is first matched before rule 5 because 3 is less than 5.
[MA5200G-acl-basic-2030]display acl 2030                                        
Basic ACL  2030, 2 rules                                                        
Acl's step is 5                                                                 
 rule 3 deny source 10.10.0.0 0.0.255.255 (0 times matched)                     
 rule 5 deny source 10.10.0.0 0.0.0.255 (0 times matched)       
2. Auto match 
Auto match is according to depth first principle. What is depth first? Simply, the more specific (smaller) the range of rules, the higher the priority, and it locates at the top (comparing with FIB). Auto match does not permit to enter rule number, so the serial number of ACL seen is created automatically according to step length after auto sequencing, which differs to config match. 
For example, enter the following two commands in ACL 3060 view: 
[MA5200G-acl-adv-3060]rule deny ip source 10.0.0.0 0.0.255.255 destination any
[MA5200G-acl-adv-3060]rule deny ip source 10.0.0.0 0.0.0.255 destination any
According to the auto match principle, the most specific will locate at the top, which is similar to the maximum length match principle. The more the zeros in wild mask, the more specific the match, and the higher the priority is. In the case, although the rule is entered first, it is less specific than the second of C network segment because it is a B network segment, so the one the system creates ranks at the back, as shown in the following. If two rules cannot compare, the rules will match according to config sequence. 
[MA5200G-acl-adv-3060]display acl 3060                                          
Advanced ACL  3060, 2 rules, match-order is auto                                
Acl's step is 5                                                                 
 rule 0 deny ip source 10.0.0.0 0.0.0.255 (0 times matched)                     
 rule 5 deny ip source 10.0.0.0 0.0.255.255 (0 times matched)                   
It should be noted that the protocol number in the above example is IP. When auto match is used, and advanced ACL is enabled, it first matches the protocol number; the specific protocol number (such as TCP and UDP) is prior to IP protocol, and then the rule with more specific range. If both above are the same, the config sequence takes effect (there is no priority between specific protocols). For example:
In advanced ACL view, enter the following commands: 
[MA5200G-acl-adv-3060]rule deny ip source 10.0.0.0 0.0.0.255 destination any
[MA5200G-acl-adv-3060]rule deny tcp source 10.0.0.0 0.0.0.255 destination any
The first protocol number is IP, and the second TCP. Execute display acl command, and it is found: the rule with TCP command locates at top, and that with IP command follows. 
[MA5200G-acl-adv-3060]display acl 3060                                          
Advanced ACL 3060, 2 rules, match-order is auto                                
Acl's step is 5  
 rule 0 deny tcp source 10.0.0.0 0.0.255.255 (0 times matched)                  
 rule 5 deny ip source 10.0.0.0 0.0.255.255 (0 times matched)                   
When it is auto match, if the protocol is TCP or UDP, the rule for specific port has higher priority than that without specification. There is no priority between specific protocols.
Root Cause
Null
Suggestions
Null

END