API Application Mapping

From Observer GigaFlow Support | VIAVI Solutions Inc.
Jump to: navigation, search

API endpoint is: http://viavi.anuview.net/rest/?jsonRequest={“type”:”configurationout”}

This will return a few elements but the interesting ones are “Named Ports” and “Defined Applications”

Both are just json arrays, Named Ports maps the basic port/protocol to a human name, these are always the positive IDs. e.g.

"Named Ports": [{
                               "id": 393223,
                               "value": "ECHO"
               }, {
                               "id": 393730,
                               "value": "SHELL"
               }, {
                               "id": 393731,
                               "value": "PRINTER"
               }, {
                               "id": 395265,
                               "value": "NFSD"
               }, {
                               "id": 397327,
                               "value": "XGRID"
               }, {
                               "id": 399116,
                               "value": "VNC-SERVER"
               }]

If there is no name or you just want the port/protocol you can decode the ID directly using

public static int[] getProtocolPortInts(int integer) {
       int protocol = integer / 65536;
       int protocolMultiplied = integer - (integer % 65536);
       int port = integer - protocolMultiplied;
       return new int[]{protocol, port};
   }

Defined Applications are the profiler-based application mappings, these always have a negative ID, the “profileid” in each object maps to the flow object used to mark the traffic.

"Defined Applications": [{
                               "description": "Just for test",
                               "id": -212,
                               "name": "DNS TEST",
                               "profileid": -210,
                               "rank": -1
               }, {
                               "description": "Teamviewer Remote Access",
                               "id": -199,
                               "name": "Teamviewer",
                               "profileid": -197,
                               "rank": -1
               }, {
                               "description": "Yahoo Test icon ",
                               "id": -150,
                               "name": "Yahoo App ",
                               "profileid": -148,
                               "rank": -1
               }]