Parent Group Merge Algorithm
The parent group merge algorithm enables the system to merge policies that contain references to parent groups and create an internal parent group for each internal parent group in a component policy in the final merged policy. There is a one-to-one correspondence between an internal parent group in the merged policy and an internal parent group in a component policy.
- If there is no existing internal parent group with the same name in the merged policy, the system creates a corresponding internal parent group with the same name.
- If an internal parent group with the same name already exists, the system uses a name built by appending an internally generated sequence number to the name of the internal parent group in the component policy.
- If the length of the name exceeds the maximum length allowed, the policy merge fails.
- If a classifier group in a component policy refers to an internal parent group, the same classifier group in the merged policy corresponds to the internal parent group in the merged policy.
- If a classifier group in a component policy refers to an external parent group, the same classifier group in the merged policy refers to the same external parent group.
- If there is a conflict where two or more component policies contain the same classifier group referring to an internal parent group in a corresponding component policy or to an external parent group, then last one is used.
In the following example, component policies P1 and P2 create the merged policy mpl_88000001.
host1#show policy-list P1Policy Table------ -----IP Policy P1Administrative state: enableReference count: 1Classifier control list: *, precedence 100, parent-group ZforwardClassifier control list: A, precedence 100, parent-group XforwardClassifier control list: B, precedence 100, parent-group XforwardClassifier control list: C, precedence 100, external parent-group EPG1parameter fooforwardClassifier control list: D, precedence 100, external parent-group EPG1 parameter fooforwardParent group: X, parent-group Zrate-limit-profile R1Parent group: Zrate-limit-profile R2host1#show policy-list P2Policy Table------ -----IP Policy P2Administrative state: enableReference count: 1Classifier control list: B, precedence 100, parent-group XforwardClassifier control list: C, precedence 100, parent-group YforwardClassifier control list: D, precedence 100, external parent-group EPG2 parameter abcdforwardParent group: X, parent-group Yrate-limit-profile R3Parent group: Yrate-limit-profile R4host1#show policy-list mpl_88000001Policy Table------ -----IP Policy mpl_88000001Administrative state: enableReference count: 1Classifier control list: *, precedence 100, parent-group ZforwardClassifier control list: A, precedence 100, parent-group XforwardClassifier control list: B, precedence 100, parent-group X_1forwardClassifier control list: C, precedence 100, parent-group YforwardClassifier control list: D, precedence 100, external parent-group EPG2 parameter abcdforwardParent group: X, parent-group Zrate-limit-profile R1Parent group: Zrate-limit-profile R2Parent group: X_1, parent-group P2_Yrate-limit-profile R3Parent group: Yrate-limit-profile R4Referenced by interfaces:ATM5/0.1 input policy, statistics enabled, virtual-router defaultReferenced by profiles:NoneComponent policies:P1P2