|
32 | 32 | - [3.1 Overview](#31-overview)
|
33 | 33 | - [3.2 DB Changes](#32-db-changes)
|
34 | 34 | - [3.2.1 CONFIG DB](#321-config-db)
|
35 |
| - - [3.2.2 APP DB](#322-app-db) |
| 35 | + - [3.2.2 APPL DB](#322-appl-db) |
36 | 36 | - [3.2.3 STATE DB](#323-state-db)
|
37 | 37 | - [3.2.4 ASIC DB](#324-asic-db)
|
38 | 38 | - [3.2.5 COUNTER DB](#325-counter-db)
|
|
48 | 48 | - [3.7.2.1 Setting up switch-wide TAM attributes](#3721-setting-up-switch-wide-tam-attributes)
|
49 | 49 | - [3.7.2.2 Setting up Collectors](#3722-setting-up-collectors)
|
50 | 50 | - [3.7.2.2 Setting up Flow Groups](#3722-setting-up-flow-groups)
|
51 |
| - - [3.7.2.2 Setting up Samplers](#3722-setting-up-samplers) |
| 51 | + - [3.7.2.3 Attaching a Flow Group to an interface](#3723-attaching-a-flow-group-to-an-interface) |
| 52 | + - [3.7.2.4 Setting up Samplers](#3724-setting-up-samplers) |
| 53 | + - [3.7.2.5 Setting up TAM interface groups](#3725-setting-up-tam-interface-groups) |
52 | 54 | - [3.7.3 Show Commands](#373-show-commands)
|
53 | 55 | - [3.7.3.1 Listing the Switch-wide TAM attributes](#3731-listing-the-switch-wide-tam-attributes)
|
54 | 56 | - [3.7.3.2 Listing the Collectors](#3732-listing-the-collectors)
|
55 | 57 | - [3.7.3.3 Listing the Samplers](#3733-listing-the-samplers)
|
56 | 58 | - [3.7.3.4 Listing the Flow groups](#3734-listing-the-flow-groups)
|
57 | 59 | - [3.7.3.3 Listing the TAM features](#3733-listing-the-tam-features)
|
| 60 | + - [3.7.3.4 Listing the interface group information](#3734-listing-the-interface-group-information) |
58 | 61 | - [3.7.5 Debug Commands](#375-debug-commands)
|
59 | 62 | - [3.7.6 REST API Support](#376-rest-api-support)
|
| 63 | + - [Yang-based REST API based on the openconfig-tam module defintions](#yang-based-rest-api-based-on-the-openconfig-tam-module-defintions) |
| 64 | + - [Obtaining the status of all TAM feautures on the switch](#obtaining-the-status-of-all-tam-feautures-on-the-switch) |
| 65 | + - [Obtaining a status of a specific TAM feature](#obtaining-a-status-of-a-specific-tam-feature) |
| 66 | + - [Activating/De-activating a specific TAM feature](#activatingde-activating-a-specific-tam-feature) |
| 67 | + - [Obtaining TAM switch-wide attributes](#obtaining-tam-switch-wide-attributes) |
| 68 | + - [Setting-up TAM switch-wide attribute : switch-id](#setting-up-tam-switch-wide-attribute--switch-id) |
| 69 | + - [Setting-up TAM switch-wide attribute : enterprise-id](#setting-up-tam-switch-wide-attribute--enterprise-id) |
| 70 | + - [Resetting the TAM switch-wide attributes to defaults](#resetting-the-tam-switch-wide-attributes-to-defaults) |
| 71 | + - [Obtaining all of the collectors](#obtaining-all-of-the-collectors) |
| 72 | + - [Obtaining a specific collector](#obtaining-a-specific-collector) |
| 73 | + - [Creating a collector](#creating-a-collector) |
| 74 | + - [Deleting a collector](#deleting-a-collector) |
| 75 | + - [Obtaining all of the Samplers](#obtaining-all-of-the-samplers) |
| 76 | + - [Obtaining a specific sampler](#obtaining-a-specific-sampler) |
| 77 | + - [Creating a Sampler](#creating-a-sampler) |
| 78 | + - [Deleting a Sampler](#deleting-a-sampler) |
| 79 | + - [Obtaining all of the flow-groups](#obtaining-all-of-the-flow-groups) |
| 80 | + - [Creating a flow-group](#creating-a-flow-group) |
| 81 | + - [Deleting a flow-group](#deleting-a-flow-group) |
60 | 82 | - [4 Flow Diagrams](#4-flow-diagrams)
|
61 | 83 | - [4.1 Config call flow](#41-config-call-flow)
|
62 | 84 | - [5 Error Handling](#5-error-handling)
|
|
65 | 87 | - [7 Warm Boot Support](#7-warm-boot-support)
|
66 | 88 | - [8 Scalability](#8-scalability)
|
67 | 89 | - [9 Unit Test](#9-unit-test)
|
68 |
| - - [CLI](#cli) |
| 90 | + - [CLI](#cli-1) |
| 91 | +- [Broadcom Internal Information : To be removed before publishing externally.](#broadcom-internal-information--to-be-removed-before-publishing-externally) |
| 92 | + - [Revision History](#revision-history) |
| 93 | + - [Key notes](#key-notes) |
| 94 | + - [Specific Limitations](#specific-limitations) |
69 | 95 |
|
70 | 96 | ## List of Tables
|
71 | 97 |
|
@@ -116,6 +142,9 @@ There are many common aspects among the TAM features, as defined in the TAM spec
|
116 | 142 |
|
117 | 143 | 5.0 TAM infrastucture must support activating and deactivating individual features.
|
118 | 144 |
|
| 145 | +6.0 TAM infrastucture must allow a common specification of a interface group(if-group) definition that can be named and refererenced by individual features. |
| 146 | +it must allow user to add ingress and egress ports to the if-group. |
| 147 | + |
119 | 148 | ### 1.1.2 Configuration and Management Requirements
|
120 | 149 |
|
121 | 150 | The TAM infrastructure supports the new management framework and KLISH CLI for configuration.
|
@@ -270,6 +299,30 @@ This table holds various flow-group references that are setup to be used with th
|
270 | 299 | 3) "table-name"
|
271 | 300 | 4) "TAM"
|
272 | 301 |
|
| 302 | +TAM\_IF\_GROUP\_TABLE |
| 303 | + |
| 304 | + ;Defines TAM interface groups configuration in CONFIG_DB |
| 305 | + |
| 306 | + key = name ; name is if-group name and should be unique |
| 307 | + ingress-ports = [0-max_ports]*port_name ; List of ingress ports participating in this group |
| 308 | + egress-ports = [0-max_ports]*port_name ; List of egress ports participating in this group |
| 309 | + |
| 310 | + ;value annotations |
| 311 | + max_ports = 1*5DIGIT ; number of ports supported on the chip |
| 312 | + port_name = 1*64VCHAR ; name of the port, must be unique |
| 313 | + ; port name can be Ethernetxxx |
| 314 | + Example: |
| 315 | + > keys *TAM_IF_GROUP_TABLE* |
| 316 | + 1) "TAM_IF_GROUP_TABLE|pg1" |
| 317 | + |
| 318 | + > hgetall "TAM_IF_GROUP_TABLE|pg1" |
| 319 | + |
| 320 | + 1) "ingress-ports" |
| 321 | + 2) "Ethernet1, Ethernet3" |
| 322 | + 3) "egress-ports" |
| 323 | + 4) "Ethernet4, Ethernet2" |
| 324 | + |
| 325 | + |
273 | 326 |
|
274 | 327 | ### 3.2.2 APPL DB
|
275 | 328 |
|
@@ -461,6 +514,34 @@ sonic (config-tam)# no sampler <name>
|
461 | 514 |
|
462 | 515 | ```
|
463 | 516 |
|
| 517 | +#### 3.7.2.5 Setting up TAM interface groups |
| 518 | +- To monitor traffic between a particualr ingress and egress set of ports, the if-group must be previously created with the `if-group` command (under `config-tam`) hierarchy). It must be associated with set of egress-ports and/or ingress-ports. A port can be part of only one if-group's egress-port list. |
| 519 | +- The command syntax to create a if-group is as follows |
| 520 | +``` |
| 521 | +sonic (config-tam)# if-group P1 |
| 522 | +sonic (config-tam)# [no] if-group P1 |
| 523 | +
|
| 524 | +``` |
| 525 | +| **Attribute** | **Description** | |
| 526 | +|--------------------------|-------------------------------------| |
| 527 | +| `if-group` | Name of the interface group |
| 528 | + |
| 529 | +- The command syntax to associate ingress and egress ports to a if-group is as follows |
| 530 | +``` |
| 531 | +sonic (conf-if-Ethernet1)# if-group P1 direction ingress |
| 532 | +sonic (conf-if-Ethernet2)# if-group P1 direction ingress |
| 533 | +sonic (conf-if-Ethernet5)# if-group P1 direction egress |
| 534 | +sonic (conf-if-Ethernet6)# if-group P1 direction egress |
| 535 | +
|
| 536 | +``` |
| 537 | +| **Attribute** | **Description** | |
| 538 | +|---------------------------|-------------------------------------| |
| 539 | +| `if-group` | Name of the interface group |
| 540 | +| `direction` | To add port to ingress/egress port-list |
| 541 | + |
| 542 | + |
| 543 | +- This command updates the TAM_IF_GROUP_TABLE in CONFIG_DB. |
| 544 | + |
464 | 545 | ### 3.7.3 Show Commands
|
465 | 546 |
|
466 | 547 | #### 3.7.3.1 Listing the Switch-wide TAM attributes
|
@@ -587,8 +668,32 @@ sonic-cli# show tam features ifa
|
587 | 668 |
|
588 | 669 | Name : ifa
|
589 | 670 | Status : Active
|
| 671 | +``` |
| 672 | +#### 3.7.3.4 Listing the interface group information |
| 673 | + |
| 674 | +The following command lists the details for all queue latency monitor if-groups or for a specific if-group. |
| 675 | + |
| 676 | +``` |
| 677 | +sonic # show tam if-groups [<name>] |
| 678 | +``` |
| 679 | +Sample usage shown below. |
| 680 | + |
| 681 | +``` |
| 682 | +sonic # show tam if-groups |
| 683 | +Name ingress ports egress ports |
| 684 | +--------- ------------------------ ----------------------- |
| 685 | +P1 Ethernet1, Ethernet2 Ethernet3, Ethernet4 |
| 686 | +P2 * Ethernet5, Ethernet6 |
| 687 | +
|
| 688 | +sonic # show tam if-groups P1 |
| 689 | +Name : P1 |
| 690 | +ingress ports : Ethernet1,Ethernet2 |
| 691 | +egress ports : Ethernet3, Ethernet4 |
| 692 | +
|
590 | 693 | ```
|
591 | 694 |
|
| 695 | +- This command refers to the TAM_IF_GROUP_TABLE in CONFIG_DB. |
| 696 | + |
592 | 697 | ### 3.7.5 Debug Commands
|
593 | 698 | N/A
|
594 | 699 |
|
|
0 commit comments