Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
What is a Logical Table?
Device behavior in SDKLT is defined and controlled by Logical Tables (LT). A logical table provides device independent network level controls.
Logical Table Properties
All Logical Tables have one or more columns and rows.
A column represents a field. Fields provide network level status or control for the device. Most Logical Tables consists of one or more fields.
A row represents an entry. Entries are a collection of fields that have the same index within the table.
Logical tables are mapped to a physical table (TCAM, Hash, Index, Register) that controls a functional area in the device.
Only a few C APIs are required to operate on Logical Tables.
Basic table attributes
All Logical Tables have unique names, such as VLAN.
- A table field (column) is identified by a name that is unique within the table, such as VLAN_ID.
- A table entry (row) is a collection of fields which have the same index within the table.
- Each field is associated with a value and type.
- Each row is associated with a single unique index.
- The row index is calculated using the values of one or more key fields.
- Key fields can be direct indices or can be algorithmically processed (e.g. hashed) to obtain the index.
See example logical table definitions here.