Label Matching
Label matching is used to determine which consumer and provider EPGs can communicate. Contract subjects of a given producer or consumer of that contract determine that consumers and providers can communicate.
The match type algorithm is determined by the matchT attribute that can have one of the following values:
-
All
-
AtLeastOne
(default) -
None
-
AtmostOne
When both EPG and contract subject labels exist, label matching is done first for EPGs, then for contract subjects.
When checking for
a match of provider labels,
vzProvLbl
, and consumer labels,
vzConsLbl
, the
matchT
is determined by the provider EPG.
When checking for a
match of provider or consumer subject labels,
vzProvSubjLbl
,
vzConsSubjLbl
, in EPGs that have a subject, the
matchT
is determined by the subject.
The same matchT logic is the same for EPG and contract subject labels. The following table shows simple examples of all the EPG and contract subject provider and consumer match types and their results. In this table, a [ ] entry indicates no labels (NULL).
|
|
|
Result should be |
---|---|---|---|
|
[ ] |
[ ] |
match |
|
LabelX, LabelY |
LabelX, LabelY |
match |
|
LabelX, LabelY |
LabelX, LabelZ |
no match |
|
LabelX, LabelY |
LabelX |
no match |
|
LabelX |
LabelX, LabelY |
match |
|
[ ] |
LabelX |
no match |
|
LabelX |
[ ] |
no match |
|
LabelX, LabelY |
LabelX |
match |
|
LabelX, LabelY |
LabelZ |
no match |
|
LabelX |
[ ] |
no match |
|
[ ] |
LabelX |
no match |
|
[ ] |
[ ] |
match |
|
LabelX |
LabelY |
match |
|
LabelX |
LabelX |
no match |
|
LabelX, LabelY |
LabelY |
no match |
|
LabelX |
LabelX, LabelY |
no match |
|
[ ] |
LabelX |
no match |
|
LabelX |
[ ] |
match |
|
[ ] |
[ ] |
match |
|
LabelX |
LabelX |
match |
|
LabelX, LabelY |
LabelX, LabelY |
no match |
|
LabelX, LabelZ |
LabelX, LabelY |
match |
|
LabelX |
LabelY |
no match |
|
[ ] |
LabelX |
no match |
|
LabelX |
[ ] |
no match |
|
[ ] |
[ ] |
match |