Label Matching

This chapter contains the following sections:

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).

matchT

vzProvLbl

vzProvSubLbl

vzConsLbl

vzConsSubLbl

Result should be

All

[ ]

[ ]

match

All

LabelX, LabelY

LabelX, LabelY

match

All

LabelX, LabelY

LabelX, LabelZ

no match

All

LabelX, LabelY

LabelX

no match

All

LabelX

LabelX, LabelY

match

All

[ ]

LabelX

no match

All

LabelX

[ ]

no match

AtLeastOne

LabelX, LabelY

LabelX

match

AtLeastOne

LabelX, LabelY

LabelZ

no match

AtLeastOne

LabelX

[ ]

no match

AtLeastOne

[ ]

LabelX

no match

AtLeastOne

[ ]

[ ]

match

None

LabelX

LabelY

match

None

LabelX

LabelX

no match

None

LabelX, LabelY

LabelY

no match

None

LabelX

LabelX, LabelY

no match

None

[ ]

LabelX

no match

None

LabelX

[ ]

match

None

[ ]

[ ]

match

AtmostOne

LabelX

LabelX

match

AtmostOne

LabelX, LabelY

LabelX, LabelY

no match

AtmostOne

LabelX, LabelZ

LabelX, LabelY

match

AtmostOne

LabelX

LabelY

no match

AtmostOne

[ ]

LabelX

no match

AtmostOne

LabelX

[ ]

no match

AtmostOne

[ ]

[ ]

match