Skip to content

IO2SourceID map (was hwmap) ideas for nic based readout

Alessandro Thea edited this page Apr 4, 2023 · 3 revisions

Example of (minimal) information required to steer incoming udp streams to queues.

| RO src id | det strm | det slot | det crate | det id |     host     | phys card (idx) | iface (idx) |    src ip    |
|-----------|----------|----------|-----------|--------|--------------|-----------------|-------------|--------------|
|         0 |        0 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.30 |
|         1 |        1 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.30 |
|         2 |        2 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.30 |
|         3 |        3 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.30 |
|         4 |       64 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.31 |
|         5 |       65 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.31 |
|         6 |       66 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.31 |
|         7 |       67 |        1 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.31 |
|         8 |        0 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.24 |
|         9 |        1 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.24 |
|        10 |        2 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.24 |
|        11 |        3 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.24 |
|        12 |       64 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.25 |
|        13 |       65 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.25 |
|        14 |       66 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.25 |
|        15 |       67 |        3 |         5 |      3 | np02-srv-001 |               0 |           0 | 10.73.139.25 |

This information needs to be injected into the configuration structure below (that needs to be expanded)

       {
            "data": {
                "card_id": 0,
                "dest_ip": "10.73.139.22",
                "eal_arg_list": "-l 0-1 -n 3 -- -m [0:1].0 -j",
                "ip_sources": [
                    {
                        "id": 0,
                        "ip": "10.73.139.30",
                        "lcore": 1,
                        "rx_q": 0
                    },
                    {
                        "id": 1,
                        "ip": "10.73.139.31",
                        "lcore": 1,
                        "rx_q": 1
                    },
                    {
                        "id": 2,
                        "ip": "10.73.139.25",
                        "lcore": 1,
                        "rx_q": 2
                    },
                    {
                        "id": 3,
                        "ip": "10.73.139.24",
                        "lcore": 2,
                        "rx_q": 3
                    },
                    {
                        "id": 4,
                        "ip": "10.73.139.28",
                        "lcore": 2,
                        "rx_q": 4
                    },
                    {
                        "id": 5,
                        "ip": "10.73.139.29",
                        "lcore": 2,
                        "rx_q": 5
                    }
                ],
                "rx_cores": [
                    {
                        "lcore_id": 1,
                        "rx_qs": [
                            0,
                            1,
                            2
                        ]
                    },
                    {
                        "lcore_id": 2,
                        "rx_qs": [
                            3,
                            4,
                            5
                        ]
                    }
                ],
                "with_drop_flow": false
            },
            "match": "nic_reader"
        }