Monitoring API

Prev Next

Overview

The swXtch.io Monitoring API allows the integration of data from various cloudSwXtch component types into third party tools for monitoring and topology purposes within a customer’s user interfaces. This section will outline the API, with examples of data results. Unless otherwise noted, these API calls are only applicable to cloudSwXtch versions 3.0.0 or greater.

Prerequisites

  • A cloudSwXtch must exist as well as two or more agents with xNICs.

  • Traffic (multicast, broadcast, SRT, RIST, or unicast) should be flowing between the cloudSwXtch and the endpoints.

    • Note: SRT, RIST and unicast require additional configuration on the cloudSwXtch.

By using a GET command, data will be provided in the response.

swXtch.io API Concepts Explained

Before you start, there are a number of key concepts and terms that are important to understand before diving into the complexities of the monitoring and topology API.

Source Address vs. Adjacent Address

In the example responses, users will notice both an source and adjacent address. A source address represents a producer’s control NIC. This is where the stream originated from.

The adjacent address represents the data NIC of either the producer/consumer that is sending out or receiving multicast data. In the monitoring API, this value is dependent on whether it is in the rxStreamLinks or the txStreamLinks section of the response.

  • Under rxStreamLinks, the adjacent address is the IP address of the producer — an endpoint sending traffic to the cloudSwXtch

  • Under txStreamLinks, the adjacent address is the IP address of the consumer — an endpoint receiving traffic from the cloudSwXtch.

In the topology API, this value is dependent on whether it is in the ingress or egress streamLinks section.

  • Under ingress, the adjacent address is the IP address of the producer — an endpoint sending traffic to the cloudSwXtch

  • Under egress, the adjacent address is the IP address of the consumer — an endpoint receiving traffic from the cloudSwXtch.

Protocol Types

In the streamLinks section of the cloudSwXtch stats example response, the API specifies the protocol of the stream.

  • xMC: multicast or broadcast

  • SRT (C): SRT Caller

  • SRT (L): SRT Listener

  • RIST (C): RIST Caller

  • RIST (L): RIST Listener

Timestamps

To track time as a running total of seconds, the Timestamps are in Unix Timestamp. This count starts at the Unix Epoch on January 1st, 1970, at UTC. At any point in time, the API can be run, and certain metrics can be obtained from the response payload by calculating certain counter and timestamp Delta values.

Monitoring API

The monitoring API allows developers to get data from the cloudSwXtch as well as data about its xNIC's. This data is broken down into 5 categories:

Topology

/api/topology/v1/topology

  • Get information about the components and streamLinks in the Topology Graph

URL:

http://<cloudSwXtch-control-IP>/api/topology/v1/topology

Example URL:

http://10.2.128.10/api/topology/v1/topology

Request:

Empty

Response:

200 - successful response

Example Response →

{
    "components": {
        "10.2.128.10": {
            "general": {
                "id": "10.2.128.10",
                "name": "dsd-core-100",
                "componentKind": {
                    "code": "swxtch",
                    "displayName": "swXtch"
                }
            },
            "environment": {
                "hostname": "dsd-core-100",
                "cloud": "AZURE",
                "osDistribution": "Ubuntu 20.04",
                "region": "eastus",
                "instanceType": "Standard_D8as_v4"
            },
            "hardware": {
                "nics": {
                    "eth0": {
                        "name": "eth0",
                        "index": 2,
                        "ip": "10.2.128.10",
                        "subnetPrefix": "10.2.128.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 1500,
                        "mac": "00:0d:3a:19:cc:e1",
                        "broadcastIp": "10.2.131.255",
                        "driver": "hv_netvsc",
                        "pciAddress": "",
                        "publicIp": null,
                        "masterOf": null,
                        "vpc": null
                    },
                    "eth1": {
                        "name": "eth1",
                        "index": 3,
                        "ip": "10.2.192.116",
                        "subnetPrefix": "10.2.192.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 1500,
                        "mac": "00:0d:3a:54:0f:37",
                        "broadcastIp": "10.2.195.255",
                        "driver": "mlx5_core",
                        "pciAddress": "a6bd:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP42685s2",
                        "vpc": null
                    }
                },
                "vpcs": {}
            },
            "swxGeneral": {
                "type": "X1",
                "dataInterfaceName": "eth1",
                "controlInterfaceName": "eth0",
                "dataPort": 9999,
                "version": "dev.7f1520",
                "configuration": null,
                "services": null,
                "subscriptions": null
            },
            "parentId": null,
            "timing": {
                "Master": null,
                "LocalOffset": null,
                "RootOffset": null,
                "TimebeatPresent": null
            },
            "adaptors": [
                {
                    "id": "16704273857340480058",
                    "isConnected": false,
                    "isActive": false,
                    "alive": true,
                    "clientIp": "0.0.0.0",
                    "clientPort": 0,
                    "sourceIp": "0.0.0.0",
                    "sourcePort": 0,
                    "socketIp": "0.0.0.0",
                    "socketPort": 0,
                    "timestamp": 1724082856715428500,
                    "counters": {
                        "txPackets": 0,
                        "txBytes": 0,
                        "rxPackets": 0,
                        "rxBytes": 0,
                        "txLostPackets": 0,
                        "txLostBytes": 0,
                        "rxLostPacket": 0,
                        "rxLostBytes": 0,
                        "txRetransmittedPackets": 0,
                        "txRetransmittedBytes": 0,
                        "rxRetransmittedPackets": 0,
                        "rxRetransmittedBytes": 0
                    },
                    "info": {
                        "id": "16704273857340480058",
                        "protocol": "srt-caller",
                        "direction": "egress",
                        "streamIp": "239.4.2.3",
                        "streamPort": 5400,
                        "nodeIp": "10.2.128.37",
                        "nodePort": 5401,
                        "listenerPort": null,
                        "options": []
                    }
                },
                {
                    "id": "4777854487999137884",
                    "isConnected": false,
                    "isActive": false,
                    "alive": true,
                    "clientIp": "0.0.0.0",
                    "clientPort": 0,
                    "sourceIp": "0.0.0.0",
                    "sourcePort": 0,
                    "socketIp": "0.0.0.0",
                    "socketPort": 0,
                    "timestamp": 1724082856715423300,
                    "counters": {
                        "txPackets": 0,
                        "txBytes": 0,
                        "rxPackets": 0,
                        "rxBytes": 0,
                        "txLostPackets": 0,
                        "txLostBytes": 0,
                        "rxLostPacket": 0,
                        "rxLostBytes": 0,
                        "txRetransmittedPackets": 0,
                        "txRetransmittedBytes": 0,
                        "rxRetransmittedPackets": 0,
                        "rxRetransmittedBytes": 0
                    },
                    "info": {
                        "id": "4777854487999137884",
                        "protocol": "srt-caller",
                        "direction": "ingress",
                        "streamIp": "239.4.2.3",
                        "streamPort": 5400,
                        "nodeIp": "10.2.128.36",
                        "nodePort": 5400,
                        "listenerPort": null,
                        "options": []
                    }
                },
                {
                    "id": "5062225067104987852",
                    "isConnected": false,
                    "isActive": false,
                    "alive": true,
                    "clientIp": "0.0.0.0",
                    "clientPort": 0,
                    "sourceIp": "0.0.0.0",
                    "sourcePort": 0,
                    "socketIp": "0.0.0.0",
                    "socketPort": 6000,
                    "timestamp": 1724082856715416700,
                    "counters": {
                        "txPackets": 0,
                        "txBytes": 0,
                        "rxPackets": 0,
                        "rxBytes": 0,
                        "txLostPackets": 0,
                        "txLostBytes": 0,
                        "rxLostPacket": 0,
                        "rxLostBytes": 0,
                        "txRetransmittedPackets": 0,
                        "txRetransmittedBytes": 0,
                        "rxRetransmittedPackets": 0,
                        "rxRetransmittedBytes": 0
                    },
                    "info": {
                        "id": "5062225067104987852",
                        "protocol": "srt-listener",
                        "direction": "egress",
                        "streamIp": "225.1.1.1",
                        "streamPort": 1599,
                        "nodeIp": null,
                        "nodePort": null,
                        "listenerPort": 6000,
                        "options": []
                    }
                },
                {
                    "id": "9489213241930010873",
                    "isConnected": false,
                    "isActive": false,
                    "alive": true,
                    "clientIp": "0.0.0.0",
                    "clientPort": 0,
                    "sourceIp": "0.0.0.0",
                    "sourcePort": 0,
                    "socketIp": "0.0.0.0",
                    "socketPort": 1599,
                    "timestamp": 1724082856715406300,
                    "counters": {
                        "txPackets": 0,
                        "txBytes": 0,
                        "rxPackets": 0,
                        "rxBytes": 0,
                        "txLostPackets": 0,
                        "txLostBytes": 0,
                        "rxLostPacket": 0,
                        "rxLostBytes": 0,
                        "txRetransmittedPackets": 0,
                        "txRetransmittedBytes": 0,
                        "rxRetransmittedPackets": 0,
                        "rxRetransmittedBytes": 0
                    },
                    "info": {
                        "id": "9489213241930010873",
                        "protocol": "srt-listener",
                        "direction": "ingress",
                        "streamIp": "225.1.1.1",
                        "streamPort": 1599,
                        "nodeIp": null,
                        "nodePort": null,
                        "listenerPort": 1599,
                        "options": []
                    }
                }
            ],
            "stats": {
                "totals": {
                    "eth1": {
                        "tx": {
                            "packets": 9032846,
                            "bytes": 1734306432
                        },
                        "txRate": {
                            "packets": 1834,
                            "bytes": 352169
                        },
                        "rx": {
                            "packets": 6521926,
                            "bytes": 1252209792
                        },
                        "rxRate": {
                            "packets": 914,
                            "bytes": 175414
                        },
                        "txDrops": null,
                        "rxDrops": null,
                        "timestamp": 1724082855663650000
                    }
                },
                "streamLinks": {
                    "eth1": {
                        "ingress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.15:50226": {
                                "packets": 6521926,
                                "bytes": 1252209792,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855608192400,
                                "packetsRate": 921,
                                "bytesRates": 176757,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            }
                        },
                        "egress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.24:9999": {
                                "packets": 6491421,
                                "bytes": 1246352832,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855634894800,
                                "packetsRate": 921,
                                "bytesRates": 176765,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            },
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.5.2.4:9999": {
                                "packets": 2541425,
                                "bytes": 487953600,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855634894800,
                                "packetsRate": 921,
                                "bytesRates": 176765,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            }
                        }
                    }
                },
                "hsCounters": {
                    "eth1": []
                },
                "hsSummary": {},
                "slp": {
                    "rxSlpStats": {},
                    "txSlpStats": null
                }
            },
            "isRemote": false
        },
        "10.2.128.15": {
            "general": {
                "id": "10.2.128.15",
                "name": "DSd-agent-105",
                "componentKind": {
                    "code": "xnic",
                    "displayName": "xNIC"
                }
            },
            "environment": {
                "hostname": "DSd-agent-105",
                "cloud": "AZURE",
                "osDistribution": "Windows Server 2019 Datacenter - Microsoft Windows [Version 10.0.17763.6189]",
                "region": "eastus",
                "instanceType": "Standard_D8s_v4"
            },
            "hardware": {
                "nics": {
                    "Ethernet": {
                        "name": "Ethernet",
                        "index": 415,
                        "ip": "10.2.192.15",
                        "subnetPrefix": "10.2.192.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 4074,
                        "mac": "00:22:48:1e:61:cb",
                        "broadcastIp": "10.2.195.255",
                        "driver": "netvsc.sys",
                        "pciAddress": "34454:00:02.0",
                        "publicIp": null,
                        "masterOf": "Ethernet 626",
                        "vpc": null
                    },
                    "Ethernet 2": {
                        "name": "Ethernet 2",
                        "index": 494,
                        "ip": "10.2.128.15",
                        "subnetPrefix": "10.2.128.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 4074,
                        "mac": "00:22:48:1e:6b:5b",
                        "broadcastIp": "10.2.131.255",
                        "driver": "netvsc.sys",
                        "pciAddress": "53755:00:02.0",
                        "publicIp": null,
                        "masterOf": "Ethernet 625",
                        "vpc": null
                    }
                },
                "vpcs": {}
            },
            "swxGeneral": {
                "type": "2",
                "dataInterfaceName": "Ethernet",
                "controlInterfaceName": "Ethernet 2",
                "dataPort": 9999,
                "version": "dev.7f1520",
                "configuration": {
                    "controlInterface": "Ethernet 2",
                    "dataInterface": "Ethernet",
                    "dataPlaneSpecs": {
                        "bpfPrograms": null,
                        "verbosity": 0,
                        "virtualInterface": {
                            "ip": "172.30.0.15",
                            "mtu": 4096,
                            "name": "swxtch-tun0",
                            "subnet": "255.255.252.0",
                            "type": "tun"
                        }
                    },
                    "dataPort": 9999,
                    "ha": {
                        "bufferSizeInPackets": 131072,
                        "maxTimeToBufferPacketsMs": 50,
                        "protocol": "swxtch",
                        "removeInactiveStreamTimeoutSec": 5
                    },
                    "nicsConfig": null,
                    "overrideSrcIp": false,
                    "primarySwxtchAddress": "http://10.2.128.10:80",
                    "statsReportWait": 60,
                    "streamSpecs": null,
                    "subscriptionsPollingIntervalMs": 100,
                    "swxtch": "10.2.128.10",
                    "xnicRpcPort": 10002,
                    "xnicType": 2
                },
                "services": [
                    {
                        "name": "swXtchNic-control",
                        "isRunning": true
                    },
                    {
                        "name": "swXtchNic-data",
                        "isRunning": true
                    }
                ],
                "subscriptions": {
                    "Ethernet": {
                        "224.0.0.251": {
                            "filter": "exclude",
                            "srcList": []
                        },
                        "224.0.0.252": {
                            "filter": "exclude",
                            "srcList": []
                        },
                        "224.0.1.129": {
                            "filter": "exclude",
                            "srcList": []
                        }
                    }
                }
            },
            "parentId": "10.2.128.10",
            "timing": {
                "Master": null,
                "LocalOffset": null,
                "RootOffset": null,
                "TimebeatPresent": null
            },
            "adaptors": null,
            "stats": {
                "totals": {
                    "Ethernet": {
                        "tx": {
                            "packets": 13037688,
                            "bytes": 2503236096
                        },
                        "txRate": {
                            "packets": 1105536,
                            "bytes": 212262961
                        },
                        "rx": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rxRate": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "txDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rxDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "timestamp": 1724082852269631100
                    }
                },
                "streamLinks": {
                    "Ethernet": {
                        "ingress": {},
                        "egress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.116:3879": {
                                "packets": 6518844,
                                "bytes": 1251618048,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082852270144000,
                                "packetsRate": 0,
                                "bytesRates": 0,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            },
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.5.2.6:3879": {
                                "packets": 6518844,
                                "bytes": 1251618048,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082852270144000,
                                "packetsRate": 0,
                                "bytesRates": 0,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            }
                        }
                    }
                },
                "hsCounters": {
                    "Ethernet": [
                        {
                            "streamId": {
                                "ip": 4286775818,
                                "port": 35328
                            },
                            "pathStats": [
                                {
                                    "ingressPackets": 0,
                                    "ingressBytes": 0,
                                    "ingressPacketsRate": 0,
                                    "ingressBytesRate": 0,
                                    "missingPackets": 0,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 0,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                },
                                {
                                    "ingressPackets": 1,
                                    "ingressBytes": 275,
                                    "ingressPacketsRate": 0,
                                    "ingressBytesRate": 0,
                                    "missingPackets": 0,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 1,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                }
                            ],
                            "enqueueFailurePackets": 0,
                            "egressPackets": 1,
                            "egressBytes": 275,
                            "egressPacketsRate": 0,
                            "egressBytesRate": 0,
                            "outputStreamLoss": 0,
                            "outputStreamLossRate": 0,
                            "senderIp": "10.2.128.75"
                        },
                        {
                            "streamId": {
                                "ip": 4290970122,
                                "port": 35328
                            },
                            "pathStats": [
                                {
                                    "ingressPackets": 0,
                                    "ingressBytes": 0,
                                    "ingressPacketsRate": 0,
                                    "ingressBytesRate": 0,
                                    "missingPackets": 0,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 0,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                },
                                {
                                    "ingressPackets": 1,
                                    "ingressBytes": 275,
                                    "ingressPacketsRate": 0,
                                    "ingressBytesRate": 0,
                                    "missingPackets": 0,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 1,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                }
                            ],
                            "enqueueFailurePackets": 0,
                            "egressPackets": 1,
                            "egressBytes": 275,
                            "egressPacketsRate": 0,
                            "egressBytesRate": 0,
                            "outputStreamLoss": 0,
                            "outputStreamLossRate": 0,
                            "senderIp": "10.2.192.82"
                        }
                    ]
                },
                "hsSummary": {
                    "Ethernet": {
                        "pathSummaries": [
                            {
                                "ingressPacketsTotal": 0,
                                "ingressBytesTotal": 0,
                                "missingPacketsTotal": 0,
                                "outputStreamPacketsTotal": 0,
                                "ingressPacketsRate": 0,
                                "ingressBytesRate": 0,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 0,
                                "pathUsage": 0
                            },
                            {
                                "ingressPacketsTotal": 2,
                                "ingressBytesTotal": 550,
                                "missingPacketsTotal": 0,
                                "outputStreamPacketsTotal": 2,
                                "ingressPacketsRate": 0,
                                "ingressBytesRate": 0,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 0,
                                "pathUsage": 0
                            }
                        ],
                        "enqueueFailurePackets": 0,
                        "egressPackets": 2,
                        "egressBytes": 550,
                        "outputStreamLoss": 0,
                        "egressPacketsRate": 0,
                        "egressBytesRate": 0,
                        "outputStreamLossRate": 0
                    }
                },
                "slp": null
            },
            "isRemote": false
        },
        "10.2.128.27": {
            "general": {
                "id": "10.2.128.27",
                "name": "DSd-agent-101",
                "componentKind": {
                    "code": "xnic",
                    "displayName": "xNIC"
                }
            },
            "environment": {
                "hostname": "DSd-agent-101",
                "cloud": "AZURE",
                "osDistribution": "Ubuntu 20.04",
                "region": "eastus",
                "instanceType": "Standard_D4ds_v4"
            },
            "hardware": {
                "nics": {
                    "eth0": {
                        "name": "eth0",
                        "index": 2,
                        "ip": "10.2.128.27",
                        "subnetPrefix": "10.2.128.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 1500,
                        "mac": "60:45:bd:d5:0f:e1",
                        "broadcastIp": "10.2.131.255",
                        "driver": "mlx5_core",
                        "pciAddress": "e629:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP58921s1",
                        "vpc": null
                    },
                    "eth1": {
                        "name": "eth1",
                        "index": 3,
                        "ip": "10.2.192.24",
                        "subnetPrefix": "10.2.192.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 1500,
                        "mac": "60:45:bd:d5:0a:05",
                        "broadcastIp": "10.2.195.255",
                        "driver": "mlx5_core",
                        "pciAddress": "1681:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP5761s2",
                        "vpc": null
                    },
                    "swxtch-tun0": {
                        "name": "swxtch-tun0",
                        "index": 6,
                        "ip": "172.30.0.27",
                        "subnetPrefix": "172.30.0.0/22",
                        "subnetMask": "255.255.252.0",
                        "mtu": 4096,
                        "mac": "",
                        "broadcastIp": "172.30.3.255",
                        "driver": null,
                        "pciAddress": null,
                        "publicIp": null,
                        "masterOf": null,
                        "vpc": null
                    }
                },
                "vpcs": {}
            },
            "swxGeneral": {
                "type": "2",
                "dataInterfaceName": "eth1",
                "controlInterfaceName": "eth0",
                "dataPort": 9999,
                "version": "dev.7f1520",
                "configuration": {
                    "controlInterface": "eth0",
                    "dataInterface": "eth1",
                    "dataPlaneSpecs": {
                        "bpfPrograms": [
                            {
                                "attachPoint": "BPF_TC_INGRESS",
                                "interface": "eth1",
                                "name": "tc-ingress"
                            },
                            {
                                "attachPoint": "BPF_TC_EGRESS",
                                "interface": "eth1",
                                "name": "tc-egress"
                            },
                            {
                                "attachPoint": "BPF_TC_EGRESS",
                                "interface": "eth0",
                                "name": "tc-forwarder"
                            }
                        ],
                        "verbosity": 0,
                        "virtualInterface": {
                            "ip": "172.30.0.27",
                            "mtu": 4096,
                            "name": "swxtch-tun0",
                            "subnet": "255.255.252.0",
                            "type": "tun"
                        }
                    },
                    "dataPort": 9999,
                    "ha": {
                        "bufferSizeInPackets": 131072,
                        "maxTimeToBufferPacketsMs": 50,
                        "protocol": "swxtch",
                        "removeInactiveStreamTimeoutSec": 5
                    },
                    "nicsConfig": null,
                    "overrideSrcIp": false,
                    "primarySwxtchAddress": "http://10.2.128.10:80",
                    "statsReportWait": 60,
                    "streamSpecs": null,
                    "subscriptionsPollingIntervalMs": 100,
                    "swxtch": "10.2.128.10",
                    "xnicRpcPort": 10002,
                    "xnicType": 2
                },
                "services": [
                    {
                        "name": "swxtch-xnic-data",
                        "isRunning": true
                    },
                    {
                        "name": "swxtch-xnic-control",
                        "isRunning": true
                    }
                ],
                "subscriptions": {
                    "eth1": {
                        "224.0.0.251": {
                            "filter": "exclude",
                            "srcList": []
                        },
                        "239.1.1.2": {
                            "filter": "exclude",
                            "srcList": []
                        }
                    }
                }
            },
            "parentId": "10.2.128.10",
            "timing": {
                "Master": null,
                "LocalOffset": null,
                "RootOffset": null,
                "TimebeatPresent": null
            },
            "adaptors": null,
            "stats": {
                "totals": {
                    "eth1": {
                        "tx": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "txRate": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rx": {
                            "packets": 12811621,
                            "bytes": 2459831232
                        },
                        "rxRate": {
                            "packets": 1846,
                            "bytes": 354383
                        },
                        "txDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rxDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "timestamp": 1724082856842266400
                    }
                },
                "streamLinks": {
                    "eth1": {
                        "ingress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.116:5026": {
                                "packets": 6492383,
                                "bytes": 1246537536,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082856842280400,
                                "packetsRate": 923,
                                "bytesRates": 177177,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            },
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.5.2.6:5026": {
                                "packets": 6319238,
                                "bytes": 1213293696,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082856842280400,
                                "packetsRate": 923,
                                "bytesRates": 177206,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            }
                        },
                        "egress": {}
                    }
                },
                "hsCounters": {
                    "eth1": [
                        {
                            "streamId": {
                                "ip": 33620463,
                                "port": 41485
                            },
                            "pathStats": [
                                {
                                    "ingressPackets": 6492383,
                                    "ingressBytes": 1246537536,
                                    "ingressPacketsRate": 923,
                                    "ingressBytesRate": 177177,
                                    "missingPackets": 165,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 177731,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                },
                                {
                                    "ingressPackets": 6319238,
                                    "ingressBytes": 1213293696,
                                    "ingressPacketsRate": 923,
                                    "ingressBytesRate": 177206,
                                    "missingPackets": 173311,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 6314818,
                                    "pathUsage": 100,
                                    "outputStreamPacketsRate": 923
                                }
                            ],
                            "enqueueFailurePackets": 0,
                            "egressPackets": 6492549,
                            "egressBytes": 1246569408,
                            "egressPacketsRate": 923,
                            "egressBytesRate": 177206,
                            "outputStreamLoss": 0,
                            "outputStreamLossRate": 0,
                            "senderIp": "10.2.128.15"
                        }
                    ]
                },
                "hsSummary": {
                    "eth1": {
                        "pathSummaries": [
                            {
                                "ingressPacketsTotal": 6492383,
                                "ingressBytesTotal": 1246537536,
                                "missingPacketsTotal": 165,
                                "outputStreamPacketsTotal": 177731,
                                "ingressPacketsRate": 923,
                                "ingressBytesRate": 177177,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 0,
                                "pathUsage": 0
                            },
                            {
                                "ingressPacketsTotal": 6319238,
                                "ingressBytesTotal": 1213293696,
                                "missingPacketsTotal": 173311,
                                "outputStreamPacketsTotal": 6314818,
                                "ingressPacketsRate": 923,
                                "ingressBytesRate": 177206,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 923,
                                "pathUsage": 100
                            }
                        ],
                        "enqueueFailurePackets": 0,
                        "egressPackets": 6492549,
                        "egressBytes": 1246569408,
                        "outputStreamLoss": 0,
                        "egressPacketsRate": 923,
                        "egressBytesRate": 177206,
                        "outputStreamLossRate": 0
                    }
                },
                "slp": null
            },
            "isRemote": false
        },
        "10.5.1.4": {
            "general": {
                "id": "10.5.1.4",
                "name": "DSd-agent-201",
                "componentKind": {
                    "code": "xnic",
                    "displayName": "xNIC"
                }
            },
            "environment": {
                "hostname": "DSd-agent-201",
                "cloud": "AZURE",
                "osDistribution": "Ubuntu 20.04",
                "region": "eastus",
                "instanceType": "Standard_D4s_v4"
            },
            "hardware": {
                "nics": {
                    "eth0": {
                        "name": "eth0",
                        "index": 2,
                        "ip": "10.5.1.4",
                        "subnetPrefix": "10.5.1.0/24",
                        "subnetMask": "255.255.255.0",
                        "mtu": 1500,
                        "mac": "00:22:48:23:4c:48",
                        "broadcastIp": "10.5.1.255",
                        "driver": "mlx5_core",
                        "pciAddress": "1e1b:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP7707s1",
                        "vpc": null
                    },
                    "eth1": {
                        "name": "eth1",
                        "index": 3,
                        "ip": "10.5.2.4",
                        "subnetPrefix": "10.5.2.0/24",
                        "subnetMask": "255.255.255.0",
                        "mtu": 1500,
                        "mac": "00:22:48:23:43:76",
                        "broadcastIp": "10.5.2.255",
                        "driver": "mlx5_core",
                        "pciAddress": "6df3:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP28147s2",
                        "vpc": null
                    },
                    "swxtch-tun0": {
                        "name": "swxtch-tun0",
                        "index": 6,
                        "ip": "172.30.0.4",
                        "subnetPrefix": "172.30.0.0/24",
                        "subnetMask": "255.255.255.0",
                        "mtu": 4096,
                        "mac": "",
                        "broadcastIp": "172.30.0.255",
                        "driver": null,
                        "pciAddress": null,
                        "publicIp": null,
                        "masterOf": null,
                        "vpc": null
                    }
                },
                "vpcs": {}
            },
            "swxGeneral": {
                "type": "2",
                "dataInterfaceName": "eth1",
                "controlInterfaceName": "eth0",
                "dataPort": 9999,
                "version": "dev.7f1520",
                "configuration": {
                    "controlInterface": "eth0",
                    "dataInterface": "eth1",
                    "dataPlaneSpecs": {
                        "bpfPrograms": [
                            {
                                "attachPoint": "BPF_TC_INGRESS",
                                "interface": "eth1",
                                "name": "tc-ingress"
                            },
                            {
                                "attachPoint": "BPF_TC_EGRESS",
                                "interface": "eth1",
                                "name": "tc-egress"
                            },
                            {
                                "attachPoint": "BPF_TC_EGRESS",
                                "interface": "eth0",
                                "name": "tc-forwarder"
                            }
                        ],
                        "verbosity": 0,
                        "virtualInterface": {
                            "ip": "172.30.0.4",
                            "mtu": 4096,
                            "name": "swxtch-tun0",
                            "subnet": "255.255.255.0",
                            "type": "tun"
                        }
                    },
                    "dataPort": 9999,
                    "ha": {
                        "bufferSizeInPackets": 131072,
                        "maxTimeToBufferPacketsMs": 50,
                        "protocol": "swxtch",
                        "removeInactiveStreamTimeoutSec": 5
                    },
                    "nicsConfig": null,
                    "overrideSrcIp": false,
                    "primarySwxtchAddress": "http://10.5.1.6:80",
                    "statsReportWait": 60,
                    "streamSpecs": null,
                    "subscriptionsPollingIntervalMs": 100,
                    "swxtch": "10.5.1.6",
                    "xnicRpcPort": 10002,
                    "xnicType": 2
                },
                "services": [
                    {
                        "name": "swxtch-xnic-control",
                        "isRunning": true
                    },
                    {
                        "name": "swxtch-xnic-data",
                        "isRunning": true
                    }
                ],
                "subscriptions": {
                    "eth1": {
                        "224.0.0.251": {
                            "filter": "exclude",
                            "srcList": []
                        },
                        "239.1.1.2": {
                            "filter": "exclude",
                            "srcList": []
                        }
                    }
                }
            },
            "parentId": "10.2.128.10",
            "timing": {
                "Master": null,
                "LocalOffset": null,
                "RootOffset": null,
                "TimebeatPresent": null
            },
            "adaptors": null,
            "stats": {
                "totals": {
                    "eth1": {
                        "tx": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "txRate": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rx": {
                            "packets": 5083429,
                            "bytes": 976018368
                        },
                        "rxRate": {
                            "packets": 1847,
                            "bytes": 354719
                        },
                        "txDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "rxDrops": {
                            "packets": 0,
                            "bytes": 0
                        },
                        "timestamp": 1724082856353285592
                    }
                },
                "streamLinks": {
                    "eth1": {
                        "ingress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.116:5026": {
                                "packets": 2541784,
                                "bytes": 488022528,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082856353297892,
                                "packetsRate": 924,
                                "bytesRates": 177344,
                                "haPaths": [
                                    0
                                ],
                                "fragStats": null
                            },
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.5.2.6:5026": {
                                "packets": 2541645,
                                "bytes": 487995840,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082856353297892,
                                "packetsRate": 924,
                                "bytesRates": 177375,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            }
                        },
                        "egress": {}
                    }
                },
                "hsCounters": {
                    "eth1": [
                        {
                            "streamId": {
                                "ip": 33620463,
                                "port": 41485
                            },
                            "pathStats": [
                                {
                                    "ingressPackets": 2541784,
                                    "ingressBytes": 488022528,
                                    "ingressPacketsRate": 924,
                                    "ingressBytesRate": 177344,
                                    "missingPackets": 27,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 1526,
                                    "pathUsage": 0,
                                    "outputStreamPacketsRate": 0
                                },
                                {
                                    "ingressPackets": 2541645,
                                    "ingressBytes": 487995840,
                                    "ingressPacketsRate": 924,
                                    "ingressBytesRate": 177375,
                                    "missingPackets": 167,
                                    "missingPacketsRate": 0,
                                    "outputStreamPackets": 2540286,
                                    "pathUsage": 100,
                                    "outputStreamPacketsRate": 924
                                }
                            ],
                            "enqueueFailurePackets": 0,
                            "egressPackets": 2541812,
                            "egressBytes": 488027904,
                            "egressPacketsRate": 924,
                            "egressBytesRate": 177375,
                            "outputStreamLoss": 0,
                            "outputStreamLossRate": 0,
                            "senderIp": "10.2.128.15"
                        }
                    ]
                },
                "hsSummary": {
                    "eth1": {
                        "pathSummaries": [
                            {
                                "ingressPacketsTotal": 2541784,
                                "ingressBytesTotal": 488022528,
                                "missingPacketsTotal": 27,
                                "outputStreamPacketsTotal": 1526,
                                "ingressPacketsRate": 924,
                                "ingressBytesRate": 177344,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 0,
                                "pathUsage": 0
                            },
                            {
                                "ingressPacketsTotal": 2541645,
                                "ingressBytesTotal": 487995840,
                                "missingPacketsTotal": 167,
                                "outputStreamPacketsTotal": 2540286,
                                "ingressPacketsRate": 924,
                                "ingressBytesRate": 177375,
                                "missingPacketsRate": 0,
                                "outputStreamPacketsRate": 924,
                                "pathUsage": 100
                            }
                        ],
                        "enqueueFailurePackets": 0,
                        "egressPackets": 2541812,
                        "egressBytes": 488027904,
                        "outputStreamLoss": 0,
                        "egressPacketsRate": 924,
                        "egressBytesRate": 177375,
                        "outputStreamLossRate": 0
                    }
                },
                "slp": null
            },
            "isRemote": false
        },
        "10.5.1.6": {
            "general": {
                "id": "10.5.1.6",
                "name": "dsd-core-200",
                "componentKind": {
                    "code": "swxtch",
                    "displayName": "swXtch"
                }
            },
            "environment": {
                "hostname": "dsd-core-200",
                "cloud": "AZURE",
                "osDistribution": "Ubuntu 20.04",
                "region": "eastus",
                "instanceType": "Standard_D8s_v4"
            },
            "hardware": {
                "nics": {
                    "eth0": {
                        "name": "eth0",
                        "index": 2,
                        "ip": "10.5.1.6",
                        "subnetPrefix": "10.5.1.0/24",
                        "subnetMask": "255.255.255.0",
                        "mtu": 1500,
                        "mac": "00:22:48:24:75:06",
                        "broadcastIp": "10.5.1.255",
                        "driver": "hv_netvsc",
                        "pciAddress": "",
                        "publicIp": null,
                        "masterOf": null,
                        "vpc": null
                    },
                    "eth1": {
                        "name": "eth1",
                        "index": 3,
                        "ip": "10.5.2.6",
                        "subnetPrefix": "10.5.2.0/24",
                        "subnetMask": "255.255.255.0",
                        "mtu": 1500,
                        "mac": "00:22:48:24:77:db",
                        "broadcastIp": "10.5.2.255",
                        "driver": "mlx5_core",
                        "pciAddress": "76ac:00:02.0",
                        "publicIp": null,
                        "masterOf": "enP30380s2",
                        "vpc": null
                    }
                },
                "vpcs": {}
            },
            "swxGeneral": {
                "type": "X1",
                "dataInterfaceName": "eth1",
                "controlInterfaceName": "eth0",
                "dataPort": 9999,
                "version": "dev.7f1520",
                "configuration": null,
                "services": null,
                "subscriptions": null
            },
            "parentId": null,
            "timing": {
                "Master": null,
                "LocalOffset": null,
                "RootOffset": null,
                "TimebeatPresent": null
            },
            "adaptors": [],
            "stats": {
                "totals": {
                    "eth1": {
                        "tx": {
                            "packets": 5204581,
                            "bytes": 999279552
                        },
                        "txRate": {
                            "packets": 1844,
                            "bytes": 354105
                        },
                        "rx": {
                            "packets": 2664303,
                            "bytes": 511546176
                        },
                        "rxRate": {
                            "packets": 925,
                            "bytes": 177565
                        },
                        "txDrops": null,
                        "rxDrops": null,
                        "timestamp": 1724082855943717450
                    }
                },
                "streamLinks": {
                    "eth1": {
                        "ingress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.15:50226": {
                                "packets": 2664303,
                                "bytes": 511546176,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855918726621,
                                "packetsRate": 921,
                                "bytesRates": 176781,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            }
                        },
                        "egress": {
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.2.192.24:9999": {
                                "packets": 2663319,
                                "bytes": 511357248,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855943490143,
                                "packetsRate": 921,
                                "bytesRates": 176772,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            },
                            "Group = 239.1.1.2:3490 | Source = 10.2.128.15:50226 | Adjacent = 10.5.2.4:9999": {
                                "packets": 2541262,
                                "bytes": 487922304,
                                "protocol": "xMC",
                                "protocolStats": null,
                                "timestamp": 1724082855943490143,
                                "packetsRate": 921,
                                "bytesRates": 176772,
                                "haPaths": [
                                    1
                                ],
                                "fragStats": null
                            }
                        }
                    }
                },
                "hsCounters": {
                    "eth1": []
                },
                "hsSummary": {},
                "slp": {
                    "rxSlpStats": {},
                    "txSlpStats": null
                }
            },
            "isRemote": true
        }
    },
    "timestamp": "2024-08-19T15:54:17.4656522Z",
    "aliases": {
        "components": {},
        "sockets": {},
        "streams": {
            "225.1.1.1:1599": "SRT_L__I_225_1_1_1_1599",
            "239.4.2.3:5400": "SRT_C_239_4_2_3_1400"
        }
    }
}

Cloud Information

/swxtch/monitoring/v1/info/cloud

  • Get information of the cloud for which the cloudSwXtch is installed on

URL:

http://<cloudSwXtch-control-IP>/swxtch/monitoring/v1/info/cloud

Example URL:

http://10.2.128.10/swxtch/monitoring/v1/info/cloud

Request:

Empty

Response:

200 - successful operation

Example Response:

{
    "azureData": {
        "subscriptionId": "b10209ad-ad22-4c26-8aef-be93b2f0bb58",
        "managedResourceGroupName": "saDevNetwork",
        "resourceGorupName": "saDevNetwork",
        "sku": null,
        "billingFields": null,
        "plan": "byol-001"
    },
    "awsData": null,
    "gcpData": null,
    "ociData": null,
    "alibabaData": null
}

cloudSwXtch Information

/swxtch/monitoring/v1/info/swxtch

  • Get information on the cloudSwXtch

URL:

curl http://<cloudSwXtch-control-IP>/swxtch/monitoring/v1/info/swxtch

Example URL:

http://10.2.128.10/swxtch/monitoring/v1/info/swxtch

Request:

Empty

Response:

200 - successful response

Example Response:

{
    "cloudSwxtchVersion": "3.0.0",
    "planType": "dsd-core-100",
    "cloudProvider": "AZURE",
    "ipAddr": "10.2.128.10",
    "swxtchGuid": "213de388-ccb5-4d93-9159-3fa9ad5585ea",
    "swxtchName": "dsd-core-100",
    "hostName": "dsd-core-100",
    "numCores": 1,
    "numXnics": null,
    "numBridges": null,
    "replStatus": "running",
    "authorized": true,
    "isMarketplace": true,
    "remainingDays": null,
    "license": null,
    "entitlements": {
        "maxClientCount": 40,
        "maxBridgeCount": 2,
        "bandwidthMbps": 25000,
        "enableMesh": true,
        "enableUnicast": true,
        "enableHA": true,
        "enableClockSync": true,
        "enableBridge": true,
        "enableWxckedEye": true,
        "enableAllowsMajorVersionUpdate": true,
        "enableTachyonLive": false
    },
    "subnetDataPrefix": "10.2.192.0/22",
    "subnetCtrlPrefix": "10.2.128.0/22",
    "dataGatewayIp": "10.2.192.1",
    "ctrlIp": "10.2.128.10",
    "ctrlPort": 10802,
    "gatewayMacAddr": "12:34:56:78:9a:bc",
    "replInfo": {
        "ctrlIp": "127.0.0.1",
        "ctrlPort": 9996,
        "dataIp": "10.2.192.116",
        "dataPort": 9999,
        "dataMac": "AA06VA83"
    },
    "licenseType": null,
    "licenseExpiryDate": null,
   

cloudSwXtch Stats

/swxtch/monitoring/v1/stats/swxtch

  • Get status of the cloudSwXtch

URL:

curl http://<cloudSwXtch-control-IP>/swxtch/monitoring/v1/stats/swxtch

Example URL:

http://10.2.128.10/swxtch/monitoring/v1/stats/swxtch

Request: Empty 

Response

200 - successful response

Example Response —>

{
    "host": "10.2.192.116",
    "sequence": 9907,
    "rxCount": 18717937,
    "txCount": 21711090,
    "rxBytes": 3593894567,
    "txBytes": 4168642226,
    "rxBridgeBytes": 0,
    "rxBridgeCount": 0,
    "txBridgeBytes": 0,
    "txBridgeCount": 0,
    "timestamp": 1723834796290675315,
    "dropsByByteLimit": 0,
    "dropsByCountLimit": 0,
    "rxMeshPktCount": 0,
    "rxMeshBytes": 0,
    "txMeshPktCount": 0,
    "txMeshBytes": 0,
    "rxUnicastPktCount": 0,
    "rxUnicastBytes": 0,
    "txUnicastPktCount": 0,
    "txUnicastBytes": 0,
    "streams": {
        "rxStreamLinks": [
            {
                "packets": 13159186,
                "bytes": 2526563712,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723829520431370897,
                "groupAddress": "239.1.1.2:3490",
                "adjacentAddress": "10.2.192.15:57795",
                "sourceAddress": "10.2.128.15:57795"
            },
            {
                "packets": 3927329,
                "bytes": 754047168,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723834796288368432,
                "groupAddress": "239.1.1.2:3490",
                "adjacentAddress": "10.2.192.15:57449",
                "sourceAddress": "10.2.128.15:57449"
            },
            {
                "packets": 63503,
                "bytes": 12192576,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723834796288368432,
                "groupAddress": "239.1.1.3:3490",
                "adjacentAddress": "10.2.192.24:50583",
                "sourceAddress": "10.2.192.24:50583"
            }
        ],
        "txStreamLinks": [
            {
                "packets": 21258,
                "bytes": 4081536,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723834796289254064,
                "groupAddress": "239.1.1.3:3490",
                "adjacentAddress": "10.2.192.11:9999",
                "sourceAddress": "10.2.192.24:50583"
            },
            {
                "packets": 13136117,
                "bytes": 2522134464,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723829520439529491,
                "groupAddress": "239.1.1.2:3490",
                "adjacentAddress": "10.2.192.24:9999",
                "sourceAddress": "10.2.128.15:57795"
            },
            {
                "packets": 3927319,
                "bytes": 754045248,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723834796276642010,
                "groupAddress": "239.1.1.2:3490",
                "adjacentAddress": "10.2.192.24:9999",
                "sourceAddress": "10.2.128.15:57449"
            },
            {
                "packets": 3069122,
                "bytes": 589271424,
                "protocol": "xMC",
                "protocolstats": null,
                "fragStats": null,
                "timestamp": 1723834796289254064,
                "groupAddress": "239.1.1.2:3490",
                "adjacentAddress": "10.2.192.11:9999",
                "sourceAddress": "10.2.128.15:57449"

            }
        ]
    }
}

For definitions of source/adjacent addresses and protocol types, see swXtch.io API Concepts explained above.

xNIC Totals

/swxtch/monitoring/v1/stats/xnicsTotals

  • Get status of the xNIC totals

URL:

curl http://<cloudSwXtch-control-IP>/swxtch/monitoring/v1/stats/xnicsTotals

Example URL:

http://10.2.128.10/swxtch/monitoring/v1/stats/xnicsTotals

Request:

Empty 

Response

200 - successful response

Example Response:

{
    "activeConnectionCount": null,
    "byteCounters": {
        "rxMulticastCount": 0,
        "rxTotalCount": 7885695384,
        "txMulticastCount": 0,
        "txTotalCount": 3500298564
    },
    "cloudSwxtchVersion": null,
    "dataAddress": null,
    "hostAddress": null,
    "latencies": null,
    "maxActiveConnections": null,
    "osDistribution": null,
    "packetCounters": {
        "-": 0,
        "rxDroppedCount": 0,
        "rxMulticastCount": 0,
        "rxTotalCount": 41070499,
        "txDroppedCount": 0,
        "txIgmpCount": 0,
        "txMulticastCount": 0,
        "txTotalCount": 18228612
    },
    "rxHaCounters": [],
    "rxMulticastGroups": [],
    "timestamp": 1723835599071011224,
    "txMulticastGroups": [],
    "xNicMode": null,
    "xNicType": null
}

xNIC Stats

/swxtch/monitoring/v1/stats/xnics

  • Get status of the xNICs

URL:

curl http://<cloudSwXtch-control-IP>/swxtch/monitoring/v1/stats/xnics

Example URL:

http://10.2.128.10/swxtch/monitoring/v1/stats/xnics

Request:

Empty 

Response

200- successful response

Example Response —>

{
    "10.2.128.13": {
        "activeConnectionCount": 2,
        "byteCounters": {
            "rxMulticastCount": 0,
            "rxTotalCount": 6170369908,
            "txMulticastCount": 0,
            "txTotalCount": 2832
        },
        "cloudSwxtchVersion": "dev.ac84d0",
        "dataAddress": "10.2.192.11",
        "hostAddress": "10.2.128.13",
        "latencies": {
            "buckets": {},
            "count": 0,
            "sum": 0
        },
        "maxActiveConnections": 2,
        "osDistribution": "Ubuntu 20.04",
        "packetCounters": {
            "-": 0,
            "rxDroppedCount": 0,
            "rxMulticastCount": 0,
            "rxTotalCount": 32137435,
            "txDroppedCount": 0,
            "txIgmpCount": 0,
            "txMulticastCount": 0,
            "txTotalCount": 22
        },
        "rxHaCounters": [
            {
                "byteCount": 1976033472,
                "destinationCount": 0,
                "groupIp": "239.1.1.3",
                "packetCount": 10291841,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1109021376,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 5776153,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1976052480,
                "destinationCount": 0,
                "groupIp": "239.1.1.3",
                "packetCount": 10291940,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1109027520,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 5776185,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
        ],
        "timestamp": 1723837738833165495,
        "txMulticastGroups": [
            {
                "byteCount": 294,
                "destinationCount": 0,
                "groupIp": "255.255.255.255",
                "packetCount": 2,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 89,
                "destinationCount": 0,
                "groupIp": "255.255.255.255",
                "packetCount": 1,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
        ],
        "xNicMode": "HA",
        "xNicType": "t2"
    },
    "10.2.128.15": {
        "activeConnectionCount": 2,
        "byteCounters": {
            "rxMulticastCount": 0,
            "rxTotalCount": 59072,
            "txMulticastCount": 0,
            "txTotalCount": 2546472892
        },
        "cloudSwxtchVersion": "dev.ac84d0",
        "dataAddress": "10.2.192.15",
        "hostAddress": "10.2.128.15",
        "latencies": {
            "buckets": {},
            "count": 0,
            "sum": 0
        },
        "maxActiveConnections": 2,
        "osDistribution": "Windows Server 2019 Datacenter - Microsoft Windows [Version 10.0.17763.6189]",
        "packetCounters": {
            "-": 0,
            "rxDroppedCount": 0,
            "rxMulticastCount": 0,
            "rxTotalCount": 340,
            "txDroppedCount": 0,
            "txIgmpCount": 0,
            "txMulticastCount": 0,
            "txTotalCount": 13262608
        },
        "rxHaCounters": [
            {
                "egressByteCount": 275,
                "egressPacketCount": 1,
                "enqueueFailureCount": 0,
                "groupIp": {
                    "ip": 4286775818,
                    "port": 35328
                },
                "outputStreamLossCount": 0,
                "paths": [
                    {
                        "ingressByteCount": 275,
                        "ingressPacketCount": 1,
                        "missingPacketCount": 0,
                        "usedPacketCount": 0
                    },
                    {
                        "ingressByteCount": 275,
                        "ingressPacketCount": 1,
                        "missingPacketCount": 0,
                        "usedPacketCount": 1
                    }
                ],
                "senderIp": "10.2.128.75"
            },
            {
                "egressByteCount": 275,
                "egressPacketCount": 1,
                "enqueueFailureCount": 0,
                "groupIp": {
                    "ip": 4290970122,
                    "port": 35328
                },
                "outputStreamLossCount": 0,
                "paths": [
                    {
                        "ingressByteCount": 275,
                        "ingressPacketCount": 1,
                        "missingPacketCount": 0,
                        "usedPacketCount": 0
                    },
                    {
                        "ingressByteCount": 275,
                        "ingressPacketCount": 1,
                        "missingPacketCount": 0,
                        "usedPacketCount": 1
                    }
                ],
                "senderIp": "10.2.192.82"
            }
        ],
        "rxMulticastGroups": [
            {
                "byteCount": 1925,
                "destinationCount": 0,
                "groupIp": "10.2.131.255",
                "packetCount": 7,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1116,
                "destinationCount": 0,
                "groupIp": "10.2.195.255",
                "packetCount": 9,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
        ],
        "timestamp": 1723837734873976100,
        "txMulticastGroups": [
            {
                "byteCount": 1273105920,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 6630760,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1273105920,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 6630760,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
        ],
        "xNicMode": "Normal",
        "xNicType": "t2"
    },
    "10.2.128.27": {
        "activeConnectionCount": 2,
        "byteCounters": {
            "rxMulticastCount": 0,
            "rxTotalCount": 6094630132,
            "txMulticastCount": 0,
            "txTotalCount": 3968082038
        },
        "cloudSwxtchVersion": "dev.ac84d0",
        "dataAddress": "10.2.192.24",
        "hostAddress": "10.2.128.27",
        "latencies": {
            "buckets": {},
            "count": 0,
            "sum": 0
        },
        "maxActiveConnections": 2,
        "osDistribution": "Ubuntu 20.04",
        "packetCounters": {
            "-": 0,
            "rxDroppedCount": 0,
            "rxMulticastCount": 0,
            "rxTotalCount": 31742957,
            "txDroppedCount": 0,
            "txIgmpCount": 0,
            "txMulticastCount": 0,
            "txTotalCount": 20667102
        },
        "rxHaCounters": [
            {
                "egressByteCount": 1273770240,
                "egressPacketCount": 6634220,
                "enqueueFailureCount": 0,
                "groupIp": {
                    "ip": 33620463,
                    "port": 41485
                },
                "outputStreamLossCount": 0,
                "paths": [
                    {
                        "ingressByteCount": 1273767936,
                        "ingressPacketCount": 6634208,
                        "missingPacketCount": 11,
                        "usedPacketCount": 18
                    },
                    {
                        "ingressByteCount": 1273770240,
                        "ingressPacketCount": 6634220,
                        "missingPacketCount": 0,
                        "usedPacketCount": 6634202
                    }
                ],
                "senderIp": "10.2.128.15"
            }
        ],
        "rxMulticastGroups": [
            {
                "byteCount": 1771408320,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 9226085,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1273770240,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 6634220,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1775448576,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 9247128,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1273767936,
                "destinationCount": 0,
                "groupIp": "239.1.1.2",
                "packetCount": 6634208,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
                "updateTime": "0001-01-01T00:00:00Z"
        ],
        "timestamp": 1723837738670810658,
        "txMulticastGroups": [
            {
                "byteCount": 1984039872,
                "destinationCount": 0,
                "groupIp": "239.1.1.3",
                "packetCount": 10333541,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 1984039872,
                "destinationCount": 0,
                "groupIp": "239.1.1.3",
                "packetCount": 10333541,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            },
            {
                "byteCount": 111,
                "destinationCount": 0,
                "groupIp": "255.255.255.255",
                "packetCount": 1,
                "protocolType": 0,
                "sourceIp": "",
                "sourcePort": 0,
                "updateTime": "0001-01-01T00:00:00Z"
            }
        ],
        "xNicMode": "HA",
        "xNicType": "t2"
    }
}