NavigaraNavigara
OrganizationsDistributionCompareResearch
NavigaraNavigara
OrganizationsDistributionCompareResearch
All developers

Sayeed Tasnim

Developer

Sayeed Tasnim

sayeedt@meta.com

164 commits~2 files/commit

Performance

YoY:+2680%
2026Previous year

Insights

Key patterns and highlights from this developer's activity.

Peak MonthMar'26307 performance
Growth Trend↑74%vs prior period
Avg Files/Commit2files per commit
Active Days68of 455 days
Top Repofboss164 commits

Effort Over Time

Breakdown of growth, maintenance, and fixes effort over time.

Bug Behavior

Beta

Bugs introduced vs. fixed over time.

Investment Quality

Beta

Reclassifies engineering effort based on bug attribution. Commits that introduced bugs are retrospectively counted as poor investments.

32%Productive TimeGrowth 72% + Fixes 28%
59%Maintenance Time
10%Wasted Time
How it works

Methodology

Investment Quality reclassifies engineering effort based on bug attribution data. Commits identified as buggy origins (those that introduced bugs later fixed by someone) have their grow and maintenance time moved into the Wasted Time category. Their waste (fix commits) remains counted as productive. All other commits retain their standard classification: grow is productive, maintenance is maintenance, and waste (fixes) is productive.

Relationship to Growth / Maintenance / Fixes

The standard model classifies commits as Growth, Maintenance, or Fixes. Investment Quality adds a quality lens: a commit that introduced a bug is retrospectively counted as a poor investment — the engineering time spent on it was wasted because it ultimately required additional fix work. Fix commits (Fixes in the standard model) are reframed as productive, because fixing bugs is valuable work.

Proposed API Endpoint

Currently computed client-side from commit and bug attribution data. Ideal server-side endpoint:

POST /v1/organizations/{orgId}/investment-quality
Content-Type: application/json

Request:
{
  "startTime": "2025-01-01T00:00:00Z",
  "endTime": "2025-12-31T23:59:59Z",
  "bucketSize": "BUCKET_SIZE_MONTH",
  "groupBy": ["repository_id" | "deliverer_email"]
}

Response:
{
  "productivePct": 74,
  "maintenancePct": 18,
  "wastedPct": 8,
  "buckets": [
    {
      "bucketStart": "2025-01-01T00:00:00Z",
      "productive": 4.2,
      "maintenance": 1.8,
      "wasted": 0.6
    }
  ]
}

Recent Activity

Latest analyzed commits from this developer.

HashMessageDateFilesEffort
0ed9b9dThis commit **adds comprehensive unit tests** for the **IPFIX and XGS PSAMP MoD packet structures** within the `fboss/agent/packet/bcm` library. This **testing enhancement** specifically targets `IpfixHeader`, `XgsPsampTemplateHeader`, `XgsPsampData`, and `XgsPsampModPacket`, validating their serialization, deserialization, and robust handling of truncated buffers, version validation, and length mismatches. By ensuring correct round-trip functionality and real-world packet deserialization, this work significantly improves the **quality assurance** and reliability of **Broadcom-specific packet processing** for network monitoring. The new tests are integrated into the build system via `cmake/AgentPacket.cmake` and `fboss/agent/packet/bcm/test/BUCK`, with the test logic residing in `fboss/agent/packet/bcm/test/XgsPsampModTest.cpp`.Mar 303maint
eb47215This commit introduces a **new hardware test case**, `XgsModAclDrop`, within `fboss/agent/test/agent_hw_tests/AgentMirrorOnDropTests.cpp` to validate the **Mirror on Drop (MoD)** functionality on **XGS platforms**. The test specifically verifies that packets dropped by **ACL rules** are correctly captured and reported by the MoD mechanism. By simulating a DENY ACL on destination IP and sending a matching packet, it confirms a MoD packet is generated and captured. This addition enhances **testing coverage** for network diagnostic features, ensuring reliable packet capture for policy-based drops.Mar 301maint
0bbf1caThis commit introduces **new packet parsing capabilities** to the `fboss/agent/packet` module by adding data structures and serialization/deserialization logic for **IPFIX/PSAMP Mirror-on-Drop (MoD) packets**. It defines a standard `IpfixHeader` for general IPFIX messages and **Broadcom XGS-specific PSAMP MoD structures** (`XgsPsampMod`) to handle vendor-specific deviations like fixed template IDs and proprietary metadata. This **new feature** enables the FBOSS agent to correctly interpret and process these specialized monitoring packets, enhancing network diagnostics and drop visibility on Broadcom XGS platforms.Mar 307grow
8c8eba7This commit **enhances the XGS Mirror-on-Drop (MoD) test suite** by introducing robust packet deserialization and verification helpers. It adds `deserializeXgsModPacket` and `verifyXgsModCapturedPacket` functions to `AgentMirrorOnDropTests.cpp` to ensure that captured PSAMP MoD packets conform to expected formats and content. These new verification steps are integrated into all three existing MoD tests: `XgsModDefaultRouteDrop`, `XgsModAclDrop`, and `XgsModMmuDrop`, significantly **improving the reliability and coverage** of these hardware tests. Additionally, common packet values like `kPacketSrcIp_` are refactored into constants to reduce duplication and improve test readability.Mar 302maint
7026722This commit provides a **bug fix** for the **Sflow Mirror Test** (`AgentSflowMirrorTest.cpp`) to resolve `VerifySampledPacketRate` failures observed during **warm boot roundtrips**, particularly with cross-binary transitions. The core issue was inaccurate sample count verification due to cumulative counter discrepancies; the fix now uses **per-interval deltas for stats collection**, eliminating baseline offsets regardless of their source. This change also refines port handling and skips intervals with zero traffic, significantly improving the **reliability and accuracy of Sflow sampling verification** during warm boot transitions.Mar 241maint
a95b31dThis commit introduces a **new capability** by **enabling Mirror on Drop (MoD) to capture MMU drop types** on **XGS platforms**, extending its existing support for ingress drops. The `SaiTamManager` in `fboss/agent/hw/sai/switch/npu/bcm` is updated to include these new drop types via the `addXgsMirrorOnDropReport` function. To validate this, a new **integration test**, `XgsModMmuDrop`, is added to verify that MoD correctly generates packets for MMU drops caused by buffer exhaustion on TH5. This enhancement improves network observability by providing critical insights into internal packet drops, with full PSAMP packet verification to be implemented in a subsequent commit.Mar 212maint
d395d17This commit **refactors** the **test suite** by **renaming** the `XgsMod` test case within `fboss/agent/test/agent_hw_tests/AgentMirrorOnDropTests.cpp` to `XgsModDefaultRouteDrop`. This change significantly improves the **clarity and readability** of the **Agent's hardware tests**, specifically for scenarios involving the **XGS module**. The new name accurately reflects that the test verifies packet dropping behavior when there is **no matching route or a default route discard**, aligning with existing naming conventions for other drop scenarios. This **maintenance** effort ensures better understanding of test intent for future development and debugging of the **AgentMirrorOnDrop** feature.Mar 181maint
e9fb0d2This commit introduces a **new capability** to the **SaiTamManager** by integrating **SamplePacket creation** for **XGS Mirror-on-Drop (MoD) reports**. It modifies `SaiTamManager.h` to include `SaiSamplePacketManager.h` and extends the `addTam()` signature, while `SaiTamManager.cpp` now creates and associates `SaiSamplePacket` instances with TAM events when a `samplingRate` is configured. This enables **packet sampling for MoD on Tomahawk5 (TH5) platforms**, ensuring that only a fraction of dropped packets are sent to the collector, optimizing monitoring resources.Mar 152grow
365c6cbThis commit introduces a **new capability** by adding the `IngressSamplepacketEnable` attribute to the **SAI API's `SaiTamEventTraits`**. This attribute allows for **configuring ingress samplepacket enablement** on **TAM events**, enhancing their flexibility and control. The change required updates across the core `TamApi.h` definition, platform-specific implementations (BCM, Tajo, OSS), the **Fake SAI** for testing, and **tracing** mechanisms. Notably, the attribute is excluded from the `AdapterHostKey` to prevent warmboot state mismatches caused by `SAI_NULL_OBJECT_ID` when the attribute is not explicitly set. This ensures robust **TAM event management** and proper state reconciliation.Mar 1513grow
d9c5fc0This commit **refactors** the **FBOSS agent's hardware tests** by **extracting key utility functions** into reusable components. Specifically, `makeXgsModReport` for **XGS Mirror on Drop (MoD) report configuration**, `configureErspanMirror` for **ERSPAN GRE tunnel mirror setup**, and `waitForStatsToStabilize` for port statistics polling are now available. This effort improves test code organization and **simplifies future test development** within the **Mirror on Drop (MoD)** and **ERSPAN mirroring** subsystems. An existing `XgsMod` test in `AgentMirrorOnDropTests.cpp` has been updated to leverage the newly extracted `makeXgsModReport` function.Mar 151maint
8f2a4b4This commit introduces a **new test case**, `XgsModWithSampling`, within `AgentMirrorOnDropTests.cpp` to thoroughly validate **Mirror-on-Drop (MoD) sampling** functionality on **XGS platforms**. The test configures a MoD report with a specific `samplingRate` and verifies its correct application by sending packets and asserting the expected number of sampled MoD packets, thereby exercising the `SamplePacket` integration for TAM event sampling via `SAI_TAM_EVENT_ATTR_INGRESS_SAMPLEPACKET_ENABLE` on Tomahawk5 (TH5). A new helper function, `makeXgsModReport()`, is added to simplify MoD report configuration, and existing packet creation helpers are refined to support variable payload sizes. This **enhances test coverage** for a critical network monitoring feature, ensuring its reliability.Mar 151maint
17d80f7This commit introduces a **new capability** to the **Mirror-on-Drop (MOD) reporting** system by adding an optional `samplingRate` field to its configuration and state. This field, integrated into `switch_config.thrift` and `switch_state.thrift`, allows administrators to specify that only a sampled subset of MOD packets should be reported to collectors, rather than every single one. The `MirrorOnDropReport` class in `MirrorOnDropReport.h/.cpp` has been extended to accept and store this new parameter, with `ApplyThriftConfig.cpp` updated to pass the value from the configuration. This enhancement provides **resource optimization** by reducing the volume of reports and offers more granular control over MOD packet monitoring.Mar 155grow
d763a56This commit **fixes a race condition** in the **Mirror-on-Drop (MoD) feature** on **DNX/VOQ switches** by preventing the `TamManager` from spuriously tearing down and re-adding TAM objects. It achieves this by skipping collector IP resolution in `TamManager::resolveMirrorOnDropReports()` for DNX platforms, where such resolution is unnecessary and causes state changes that trigger full TAM reprogramming. Additionally, `waitForStateUpdates()` calls were added to affected `AgentMirrorOnDropDnxTest` cases to prevent future race conditions. This **bug fix** ensures **TAM stability** and resolves **flaky test failures** related to MoD on DNX.Mar 84maint
fdb50b1This commit provides a **bug fix** for a **UBSan error** occurring in the **SAI TAM (Telemetry, Analytics, and Monitoring) subsystem**. The issue stemmed from vendor-specific extension enum values, such as `SAI_TAM_TRANSPORT_TYPE_PORT`, exceeding the valid range of their base SAI enum types, leading to undefined behavior when passed as narrow enum parameters. To resolve this, the parameter types for `createTamTransport` and `createTamReport` in `SaiTamManager` have been changed from specific SAI enum types to `sai_int32_t`. This adjustment aligns the function signatures with how the SAI attribute layer already correctly handles these values, thereby improving **runtime stability** and removing redundant `static_cast` operations.Mar 22waste
0a124adThis commit introduces a **refactoring** by adding a shared helper method, `StateDelta::hasRouteOrNeighborChanges()`, to consolidate logic for detecting network state changes. This new utility encapsulates checks for modifications in **FIB maps, VLAN ARP/NDP entries, and Interface ARP/NDP entries**. The primary impact is on the **`MirrorManager`**, which now utilizes this method to identify route and neighbor changes, eliminating previously duplicated inline logic. This **code consolidation** also makes this essential detection functionality reusable for other modules, such as `TamManager` for its MirrorOnDropReport next-hop resolution, improving maintainability and consistency across the codebase.Mar 23maint
48cb44fThis commit introduces a new `NextHopResolver` template class, providing a reusable multi-stage pipeline for resolving destination IP addresses to next hop ports and MAC addresses. This **new capability** extracts common resolution logic previously embedded in `MirrorManagerImpl`, making it available for both the existing **`MirrorManager`** (for SPAN/ERSPAN) and a **future `TamManager`** (for Mirror on Drop on TH5 switches). By centralizing this complex resolution, the commit performs a significant **refactoring** that lays the groundwork for **Mirror on Drop functionality** on Tomahawk5 switches.Mar 24grow
975a07cThis commit **introduces comprehensive unit tests** for the **`TamManager`** class, specifically validating its core functionality of resolving `MirrorOnDropReport` collector IPs to MAC addresses and egress ports. The tests cover various scenarios, including successful resolution, cases where reports remain unresolved due to missing routes or neighbor entries, and dynamic updates when network conditions like routes or neighbors change. This **new testing capability** ensures the correctness and robustness of the `TamManager`'s resolution logic across both IPv4 and IPv6, and for different neighbor table types. The addition of `TamManagerTest.cpp` to the build system facilitates continuous validation of this critical component.Mar 22maint
5b49531This commit **enhances** the **Mirror-on-Drop (MoD) functionality** by integrating `TamManager`'s IP resolution with the SAI layer, primarily affecting **XGS platforms**. `SaiTamManager` now dynamically retrieves the **resolved next-hop MAC address and egress port** from `TamManager`'s `MirrorOnDropReport` state for MoD reports, rather than using hardcoded or configured values. This **new capability** updates `ApplyThriftConfig` to set the mirror port ID to 0 for NPU switches, allowing `TamManager` to handle egress port resolution dynamically, and ensures only fully resolved reports are programmed. Consequently, this improves the **accuracy and robustness** of MoD reporting by ensuring mirrored packets are sent to the correct destination based on actual network state, while also simplifying configuration by removing the need for an explicit mirror port.Mar 23grow
82e4f2eThis commit **refactors** the **MirrorManagerImpl** to centralize its next-hop, neighbor, and interface resolution logic by integrating the new `NextHopResolver` utility. The `MirrorManagerImpl` now delegates tasks like route lookup, ARP/NDP resolution, and egress port determination to `resolver_`, significantly reducing code duplication within `updateMirror()` and `resolveMirrorTunnel()`. This **refactoring** improves the maintainability and testability of the **mirroring subsystem** by abstracting complex resolution logic. Furthermore, it lays the groundwork for future use of `NextHopResolver` in `TamManager` for Mirror on Drop collector resolution.Mar 22maint
8885f71This commit introduces `TamManager`, a **new capability** acting as a `StateObserver` within the `SwSwitch` to resolve collector IP addresses for **Mirror on Drop (MoD) reports**. The `TamManager` monitors changes in `MirrorOnDropReport` entries, FIBs, and neighbor states, leveraging `NextHopResolver` to determine the correct MAC addresses and egress ports for MoD collector IPs. This **feature addition** is crucial for enabling proper forwarding of MoD reports on **Tomahawk5 (TH5) switches** running on the XGS platform, ensuring that mirrored traffic reaches its intended destination. The manager updates the `MirrorOnDropReport` state with resolved values, optimizing performance by only applying changes when resolution actually differs.Mar 23grow
0ed9b9dMar 30

This commit **adds comprehensive unit tests** for the **IPFIX and XGS PSAMP MoD packet structures** within the `fboss/agent/packet/bcm` library. This **testing enhancement** specifically targets `IpfixHeader`, `XgsPsampTemplateHeader`, `XgsPsampData`, and `XgsPsampModPacket`, validating their serialization, deserialization, and robust handling of truncated buffers, version validation, and length mismatches. By ensuring correct round-trip functionality and real-world packet deserialization, this work significantly improves the **quality assurance** and reliability of **Broadcom-specific packet processing** for network monitoring. The new tests are integrated into the build system via `cmake/AgentPacket.cmake` and `fboss/agent/packet/bcm/test/BUCK`, with the test logic residing in `fboss/agent/packet/bcm/test/XgsPsampModTest.cpp`.

3 filesmaint
eb47215Mar 30

This commit introduces a **new hardware test case**, `XgsModAclDrop`, within `fboss/agent/test/agent_hw_tests/AgentMirrorOnDropTests.cpp` to validate the **Mirror on Drop (MoD)** functionality on **XGS platforms**. The test specifically verifies that packets dropped by **ACL rules** are correctly captured and reported by the MoD mechanism. By simulating a DENY ACL on destination IP and sending a matching packet, it confirms a MoD packet is generated and captured. This addition enhances **testing coverage** for network diagnostic features, ensuring reliable packet capture for policy-based drops.

1 filesmaint
0bbf1caMar 30

This commit introduces **new packet parsing capabilities** to the `fboss/agent/packet` module by adding data structures and serialization/deserialization logic for **IPFIX/PSAMP Mirror-on-Drop (MoD) packets**. It defines a standard `IpfixHeader` for general IPFIX messages and **Broadcom XGS-specific PSAMP MoD structures** (`XgsPsampMod`) to handle vendor-specific deviations like fixed template IDs and proprietary metadata. This **new feature** enables the FBOSS agent to correctly interpret and process these specialized monitoring packets, enhancing network diagnostics and drop visibility on Broadcom XGS platforms.

7 filesgrow
8c8eba7Mar 30

This commit **enhances the XGS Mirror-on-Drop (MoD) test suite** by introducing robust packet deserialization and verification helpers. It adds `deserializeXgsModPacket` and `verifyXgsModCapturedPacket` functions to `AgentMirrorOnDropTests.cpp` to ensure that captured PSAMP MoD packets conform to expected formats and content. These new verification steps are integrated into all three existing MoD tests: `XgsModDefaultRouteDrop`, `XgsModAclDrop`, and `XgsModMmuDrop`, significantly **improving the reliability and coverage** of these hardware tests. Additionally, common packet values like `kPacketSrcIp_` are refactored into constants to reduce duplication and improve test readability.

2 filesmaint
7026722Mar 24

This commit provides a **bug fix** for the **Sflow Mirror Test** (`AgentSflowMirrorTest.cpp`) to resolve `VerifySampledPacketRate` failures observed during **warm boot roundtrips**, particularly with cross-binary transitions. The core issue was inaccurate sample count verification due to cumulative counter discrepancies; the fix now uses **per-interval deltas for stats collection**, eliminating baseline offsets regardless of their source. This change also refines port handling and skips intervals with zero traffic, significantly improving the **reliability and accuracy of Sflow sampling verification** during warm boot transitions.

1 filesmaint
a95b31dMar 21

This commit introduces a **new capability** by **enabling Mirror on Drop (MoD) to capture MMU drop types** on **XGS platforms**, extending its existing support for ingress drops. The `SaiTamManager` in `fboss/agent/hw/sai/switch/npu/bcm` is updated to include these new drop types via the `addXgsMirrorOnDropReport` function. To validate this, a new **integration test**, `XgsModMmuDrop`, is added to verify that MoD correctly generates packets for MMU drops caused by buffer exhaustion on TH5. This enhancement improves network observability by providing critical insights into internal packet drops, with full PSAMP packet verification to be implemented in a subsequent commit.

2 filesmaint
d395d17Mar 18

This commit **refactors** the **test suite** by **renaming** the `XgsMod` test case within `fboss/agent/test/agent_hw_tests/AgentMirrorOnDropTests.cpp` to `XgsModDefaultRouteDrop`. This change significantly improves the **clarity and readability** of the **Agent's hardware tests**, specifically for scenarios involving the **XGS module**. The new name accurately reflects that the test verifies packet dropping behavior when there is **no matching route or a default route discard**, aligning with existing naming conventions for other drop scenarios. This **maintenance** effort ensures better understanding of test intent for future development and debugging of the **AgentMirrorOnDrop** feature.

1 filesmaint
e9fb0d2Mar 15

This commit introduces a **new capability** to the **SaiTamManager** by integrating **SamplePacket creation** for **XGS Mirror-on-Drop (MoD) reports**. It modifies `SaiTamManager.h` to include `SaiSamplePacketManager.h` and extends the `addTam()` signature, while `SaiTamManager.cpp` now creates and associates `SaiSamplePacket` instances with TAM events when a `samplingRate` is configured. This enables **packet sampling for MoD on Tomahawk5 (TH5) platforms**, ensuring that only a fraction of dropped packets are sent to the collector, optimizing monitoring resources.

2 filesgrow
365c6cbMar 15

This commit introduces a **new capability** by adding the `IngressSamplepacketEnable` attribute to the **SAI API's `SaiTamEventTraits`**. This attribute allows for **configuring ingress samplepacket enablement** on **TAM events**, enhancing their flexibility and control. The change required updates across the core `TamApi.h` definition, platform-specific implementations (BCM, Tajo, OSS), the **Fake SAI** for testing, and **tracing** mechanisms. Notably, the attribute is excluded from the `AdapterHostKey` to prevent warmboot state mismatches caused by `SAI_NULL_OBJECT_ID` when the attribute is not explicitly set. This ensures robust **TAM event management** and proper state reconciliation.

13 filesgrow
d9c5fc0Mar 15

This commit **refactors** the **FBOSS agent's hardware tests** by **extracting key utility functions** into reusable components. Specifically, `makeXgsModReport` for **XGS Mirror on Drop (MoD) report configuration**, `configureErspanMirror` for **ERSPAN GRE tunnel mirror setup**, and `waitForStatsToStabilize` for port statistics polling are now available. This effort improves test code organization and **simplifies future test development** within the **Mirror on Drop (MoD)** and **ERSPAN mirroring** subsystems. An existing `XgsMod` test in `AgentMirrorOnDropTests.cpp` has been updated to leverage the newly extracted `makeXgsModReport` function.

1 filesmaint
8f2a4b4Mar 15

This commit introduces a **new test case**, `XgsModWithSampling`, within `AgentMirrorOnDropTests.cpp` to thoroughly validate **Mirror-on-Drop (MoD) sampling** functionality on **XGS platforms**. The test configures a MoD report with a specific `samplingRate` and verifies its correct application by sending packets and asserting the expected number of sampled MoD packets, thereby exercising the `SamplePacket` integration for TAM event sampling via `SAI_TAM_EVENT_ATTR_INGRESS_SAMPLEPACKET_ENABLE` on Tomahawk5 (TH5). A new helper function, `makeXgsModReport()`, is added to simplify MoD report configuration, and existing packet creation helpers are refined to support variable payload sizes. This **enhances test coverage** for a critical network monitoring feature, ensuring its reliability.

1 filesmaint
17d80f7Mar 15

This commit introduces a **new capability** to the **Mirror-on-Drop (MOD) reporting** system by adding an optional `samplingRate` field to its configuration and state. This field, integrated into `switch_config.thrift` and `switch_state.thrift`, allows administrators to specify that only a sampled subset of MOD packets should be reported to collectors, rather than every single one. The `MirrorOnDropReport` class in `MirrorOnDropReport.h/.cpp` has been extended to accept and store this new parameter, with `ApplyThriftConfig.cpp` updated to pass the value from the configuration. This enhancement provides **resource optimization** by reducing the volume of reports and offers more granular control over MOD packet monitoring.

5 filesgrow
d763a56Mar 8

This commit **fixes a race condition** in the **Mirror-on-Drop (MoD) feature** on **DNX/VOQ switches** by preventing the `TamManager` from spuriously tearing down and re-adding TAM objects. It achieves this by skipping collector IP resolution in `TamManager::resolveMirrorOnDropReports()` for DNX platforms, where such resolution is unnecessary and causes state changes that trigger full TAM reprogramming. Additionally, `waitForStateUpdates()` calls were added to affected `AgentMirrorOnDropDnxTest` cases to prevent future race conditions. This **bug fix** ensures **TAM stability** and resolves **flaky test failures** related to MoD on DNX.

4 filesmaint
fdb50b1Mar 2

This commit provides a **bug fix** for a **UBSan error** occurring in the **SAI TAM (Telemetry, Analytics, and Monitoring) subsystem**. The issue stemmed from vendor-specific extension enum values, such as `SAI_TAM_TRANSPORT_TYPE_PORT`, exceeding the valid range of their base SAI enum types, leading to undefined behavior when passed as narrow enum parameters. To resolve this, the parameter types for `createTamTransport` and `createTamReport` in `SaiTamManager` have been changed from specific SAI enum types to `sai_int32_t`. This adjustment aligns the function signatures with how the SAI attribute layer already correctly handles these values, thereby improving **runtime stability** and removing redundant `static_cast` operations.

2 fileswaste
0a124adMar 2

This commit introduces a **refactoring** by adding a shared helper method, `StateDelta::hasRouteOrNeighborChanges()`, to consolidate logic for detecting network state changes. This new utility encapsulates checks for modifications in **FIB maps, VLAN ARP/NDP entries, and Interface ARP/NDP entries**. The primary impact is on the **`MirrorManager`**, which now utilizes this method to identify route and neighbor changes, eliminating previously duplicated inline logic. This **code consolidation** also makes this essential detection functionality reusable for other modules, such as `TamManager` for its MirrorOnDropReport next-hop resolution, improving maintainability and consistency across the codebase.

3 filesmaint
48cb44fMar 2

This commit introduces a new `NextHopResolver` template class, providing a reusable multi-stage pipeline for resolving destination IP addresses to next hop ports and MAC addresses. This **new capability** extracts common resolution logic previously embedded in `MirrorManagerImpl`, making it available for both the existing **`MirrorManager`** (for SPAN/ERSPAN) and a **future `TamManager`** (for Mirror on Drop on TH5 switches). By centralizing this complex resolution, the commit performs a significant **refactoring** that lays the groundwork for **Mirror on Drop functionality** on Tomahawk5 switches.

4 filesgrow
975a07cMar 2

This commit **introduces comprehensive unit tests** for the **`TamManager`** class, specifically validating its core functionality of resolving `MirrorOnDropReport` collector IPs to MAC addresses and egress ports. The tests cover various scenarios, including successful resolution, cases where reports remain unresolved due to missing routes or neighbor entries, and dynamic updates when network conditions like routes or neighbors change. This **new testing capability** ensures the correctness and robustness of the `TamManager`'s resolution logic across both IPv4 and IPv6, and for different neighbor table types. The addition of `TamManagerTest.cpp` to the build system facilitates continuous validation of this critical component.

2 filesmaint
5b49531Mar 2

This commit **enhances** the **Mirror-on-Drop (MoD) functionality** by integrating `TamManager`'s IP resolution with the SAI layer, primarily affecting **XGS platforms**. `SaiTamManager` now dynamically retrieves the **resolved next-hop MAC address and egress port** from `TamManager`'s `MirrorOnDropReport` state for MoD reports, rather than using hardcoded or configured values. This **new capability** updates `ApplyThriftConfig` to set the mirror port ID to 0 for NPU switches, allowing `TamManager` to handle egress port resolution dynamically, and ensures only fully resolved reports are programmed. Consequently, this improves the **accuracy and robustness** of MoD reporting by ensuring mirrored packets are sent to the correct destination based on actual network state, while also simplifying configuration by removing the need for an explicit mirror port.

3 filesgrow
82e4f2eMar 2

This commit **refactors** the **MirrorManagerImpl** to centralize its next-hop, neighbor, and interface resolution logic by integrating the new `NextHopResolver` utility. The `MirrorManagerImpl` now delegates tasks like route lookup, ARP/NDP resolution, and egress port determination to `resolver_`, significantly reducing code duplication within `updateMirror()` and `resolveMirrorTunnel()`. This **refactoring** improves the maintainability and testability of the **mirroring subsystem** by abstracting complex resolution logic. Furthermore, it lays the groundwork for future use of `NextHopResolver` in `TamManager` for Mirror on Drop collector resolution.

2 filesmaint
8885f71Mar 2

This commit introduces `TamManager`, a **new capability** acting as a `StateObserver` within the `SwSwitch` to resolve collector IP addresses for **Mirror on Drop (MoD) reports**. The `TamManager` monitors changes in `MirrorOnDropReport` entries, FIBs, and neighbor states, leveraging `NextHopResolver` to determine the correct MAC addresses and egress ports for MoD collector IPs. This **feature addition** is crucial for enabling proper forwarding of MoD reports on **Tomahawk5 (TH5) switches** running on the XGS platform, ensuring that mirrored traffic reaches its intended destination. The manager updates the `MirrorOnDropReport` state with resolved values, optimizing performance by only applying changes when resolution actually differs.

3 filesgrow

Work Patterns

Beta

Commit activity distribution by hour and day of week. Shows when this developer is most active.

Collaboration

Beta

Developers who frequently work on the same files and symbols. Higher score means stronger code collaboration.

NavigaraNavigara
OrganizationsDistributionCompareResearch