{
    "vnfd": [
        {
            "id": "ba145e82-626b-11e5-998d-6cb3113b406f",
            "name": "ping-vnfd",
            "short-name": "ping-vnfd",
            "vendor": "RIFT.io",
            "description": "This is an example RIFT.ware VNF",
            "version": "1.0",
            "internal-vld": [
                {
                    "id" : "ba1478fe-626b-11e5-998d-6cb3113b406f",
                    "name": "fabric",
                    "short-name": "fabric",
                    "description": "Virtual link for internal fabric",
                    "type": "ELAN"
                }
            ],
            "connection-point": [
                {
                    "name": "ping-vnfd/cp0",
                    "type": "VPORT"
                },
                {
                    "name": "ping-vnfd/cp1",
                    "type": "VPORT"
                }
            ],
            "vdu": [
                {
                    "id": "ba14a504-626b-11e5-998d-6cb3113b406f",
                    "name": "iovdu",
                    "count": 2,
                    "vm-flavor": {
                        "vcpu-count": 4,
                        "memory-mb": 1638,
                        "storage-gb": 16
                    },
                    "guest-epa": {
                        "trusted-execution": true,
                        "mempage-size": "PREFER_LARGE",
                        "cpu-pinning-policy": "DEDICATED",
                        "cpu-thread-pinning-policy": "AVOID",
                        "numa-node-policy": {
                            "node-cnt": 2,
                            "mem-policy": "PREFERRED",
                            "node": [
                                {
                                    "id": 1,
                                    "vcpu": [ 0, 1 ],
                                    "memory-mb": 8192
                                }
                            ]
                        }
                    },
                    "hypervisor-epa": {
                            "type": "PREFER_KVM"
                    },
                    "host-epa": {
                        "cpu-model": "PREFER_SANDYBRIDGE",
                        "cpu-arch": "PREFER_X86_64",
                        "cpu-vendor": "PREFER_INTEL",
                        "cpu-socket-count": "PREFER_TWO",
                        "cpu-feature": [ "PREFER_AES", "PREFER_CAT" ]
                    },
                    "image": "rw_openstack.qcow2",
                    "internal-connection-point": [
                        {
                            "id": "ba153744-626b-11e5-998d-6cb3113b406f",
                            "type": "VPORT"
                        },
                        {
                            "id": "ba15577e-626b-11e5-998d-6cb3113b406f",
                            "type": "VPORT"
                        }
                    ],
                    "internal-interface": [
                        {
                            "name": "eth0",
                            "vdu-internal-connection-point-ref": "ba153744-626b-11e5-998d-6cb3113b406f",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        },
                        {
                            "name": "eth1",
                            "vdu-internal-connection-point-ref": "ba15577e-626b-11e5-998d-6cb3113b406f",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        }
                    ],
                    "external-interface": [
                        {
                            "name": "eth0",
                            "vnfd-connection-point-ref": "ping-vnfd/cp0",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        },
                        {
                            "name": "eth1",
                            "vnfd-connection-point-ref": "ping-vnfd/cp1",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        }
                    ]
                }
            ],
            "monitoring-param": [
                {
                    "id": "ping-tx-rate-mp",
                    "name": "Ping Transmit Rate",
                    "description": "Ping transmit rate",
                    "group-tag": "group-1",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "GAUGE",
                    "units": "gbps"
                },
                {
                    "id": "ping-rc-rate-mp",
                    "name": "Ping Receive Rate",
                    "description": "Ping receive rate",
                    "group-tag": "group-1",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "GAUGE",
                    "units": "gbps"
                },
                {
                    "id": "ping-packet-size-mp",
                    "name": "Ping Packet Size",
                    "description": "Ping packet size",
                    "group-tag": "group-2",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "GAUGE",
                    "units": "gbps"
                }
            ],
            "rw-vnfd:control-param": [
                {
                    "id": "ping-transmit-rate-cp1",
                    "name": "Transmit Rate",
                    "description": "Ping transmit rate",
                    "group-tag": "group-3",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "step-value": 1,
                    "units": "gbps",
                    "widget-type": "GAUGE",
                    "url": "https://%s/api/operations/set-control-param",
                    "operation": "POST",
                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"ping-transmit-rate-cp1\",\"value\":10} }"
                },
                {
                    "id": "ping-packet-size-cp1",
                    "name": "Ping Packet Size",
                    "description": "Packet size",
                    "group-tag": "group-4",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "step-value": 1,
                    "units": "gbps",
                    "widget-type": "GAUGE",
                    "url": "https://%s/api/operations/set-control-param",
                    "operation": "POST",
                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"ping-packet-size-cp1\",\"value\":10 } }"
                }
            ],
            "rw-vnfd:action-param" : [
                {
                    "id": "start-vnfr",
                    "name": "Start PING",
                    "description": "Start the PUNG VNFR",
                    "group-tag": "start-vnfr",
                    "url": "https://%s/api/operations/start-vnfr",
                    "operation": "POST",
                    "payload": "{\"start-vnfr\": { \"id\": \"%s\" }  }"
                },
                {
                    "id": "stop-vnfr",
                    "name": "Stop PING",
                    "description": "Stop the PING VNFR",
                    "group-tag": "stop-vnfr",
                    "url": "https://%s/api/operations/stop-vnfr",
                    "operation": "POST",
                    "payload": "{\"stop-vnfr\": { \"id\": \"%s\" }  }"
                }
            ]
        },
        {
            "id": "ba1947da-626b-11e5-998d-6cb3113b406f",
            "name": "pong-vnfd",
            "short-name": "pong-vnfd",
            "vendor": "RIFT.io",
            "description": "This is an example RIFT.ware VNF",
            "version": "1.0",
            "internal-vld": [
                {
                    "id" : "ba1478fe-626b-11e5-998d-6cb3113b406f",
                    "name": "fabric",
                    "short-name": "fabric",
                    "description": "Virtual link for internal fabric",
                    "type": "ELAN"
                }
            ],
            "connection-point": [
                {
                    "name": "pong-vnfd/cp0",
                    "type": "VPORT"
                },
                {
                    "name": "pong-vnfd/cp1",
                    "type": "VPORT"
                }
            ],
            "vdu": [
                {
                    "id": "ba14a504-626b-11e5-998d-6cb3113b406f",
                    "name": "iovdu",
                    "count": 2,
                    "vm-flavor": {
                        "vcpu-count": 4,
                        "memory-mb": 1638,
                        "storage-gb": 16
                    },
                    "guest-epa": {
                        "trusted-execution": true,
                        "mempage-size": "PREFER_LARGE",
                        "cpu-pinning-policy": "DEDICATED",
                        "cpu-thread-pinning-policy": "AVOID",
                        "numa-node-policy": {
                            "node-cnt": 2,
                            "mem-policy": "PREFERRED",
                            "node": [
                                {
                                    "id": 1,
                                    "vcpu": [ 0, 1 ],
                                    "memory-mb": 8192
                                }
                            ]
                        }
                    },
                    "hypervisor-epa": {
                            "type": "PREFER_KVM"
                    },
                    "host-epa": {
                        "cpu-model": "PREFER_SANDYBRIDGE",
                        "cpu-arch": "PREFER_X86_64",
                        "cpu-vendor": "PREFER_INTEL",
                        "cpu-socket-count": "PREFER_TWO",
                        "cpu-feature": [ "PREFER_AES", "PREFER_CAT" ]
                    },
                    "image": "rw_openstack.qcow2",
                    "internal-connection-point": [
                        {
                            "id": "ba153744-626b-11e5-998d-6cb3113b406f",
                            "type": "VPORT"
                        },
                        {
                            "id": "ba15577e-626b-11e5-998d-6cb3113b406f",
                            "type": "VPORT"
                        }
                    ],
                    "internal-interface": [
                        {
                            "name": "eth0",
                            "vdu-internal-connection-point-ref": "ba153744-626b-11e5-998d-6cb3113b406f",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        },
                        {
                            "name": "eth1",
                            "vdu-internal-connection-point-ref": "ba15577e-626b-11e5-998d-6cb3113b406f",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        }
                    ],
                    "external-interface": [
                        {
                            "name": "eth0",
                            "vnfd-connection-point-ref": "pong-vnfd/cp0",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        },
                        {
                            "name": "eth1",
                            "vnfd-connection-point-ref": "pong-vnfd/cp1",
                            "virtual-interface": {
                                "type": "VIRTIO"
                            }
                        }
                    ]
                }
            ],
            "monitoring-param": [
                {
                    "id": "pong-tx-rate-mp",
                    "name": "Pong Transmit Rate",
                    "description": "Pong transmit rate",
                    "group-tag": "group-1",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "GAUGE",
                    "units": "gbps"
                },
                {
                    "id": "pong-rx-rate-mp",
                    "name": "Pong Receive Rate",
                    "description": "Pong receive rate",
                    "group-tag": "group-1",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "GAUGE",
                    "units": "gbps"
                },
                {
                    "id": "pong-packet-size-mp",
                    "name": "Pong Packet Size",
                    "description": "Pong packet size",
                    "group-tag": "group-2",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 10,
                    "widget-type": "TEXTBOX",
                    "units": "mb"
                }
            ],
            "rw-vnfd:control-param" : [
                {
                    "id": "pong-receive-rate-cp1",
                    "name": "Pong Receive Rate",
                    "description": "Pong receive rate",
                    "group-tag": "group-3",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 0,
                    "step-value": 1,
                    "units": "gbps",
                    "widget-type": "GAUGE",
                    "url": "https://{host}/api/operations/vnfr-control-param/",
                    "operation": "POST",
                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"pong-receive-rate-cp1\",\"value\":10} }"
                },
                {
                    "id": "pong-packet-size-cp1",
                    "name": "Pong Packaet Size",
                    "description": "Packet size",
                    "group-tag": "group-4",
                    "min-value": 0,
                    "max-value": 100,
                    "current-value": 0,
                    "step-value": 1,
                    "units": "gbps",
                    "widget-type": "GAUGE",
                    "url": "https://%s/api/operations/set-control-param",
                    "operation": "POST",
                    "payload": "{\"set-control-param\":{\"id\":\"%s\",\"obj-code\":\"VNFR\",\"control-id\":\"pong-packet-size-cp1\",\"value\":10 } }"
                }
            ],
            "rw-vnfd:action-param" : [
                {
                    "id": "start-vnfr",
                    "name": "Start PONG",
                    "description": "Start the PONG VNFR",
                    "group-tag": "start-vnfr",
                    "url": "https://%s/api/operations/start-vnfr",
                    "operation": "POST",
                    "payload": "{\"start-vnfr\": { \"id\": \"%s\" }  }"
                },
                {
                    "id": "stop-vnfr",
                    "name": "Stop PONG",
                    "description": "Stop the PONG VNFR",
                    "group-tag": "stop-vnfr",
                    "url": "https://%s/api/operations/stop-vnfr",
                    "operation": "POST",
                    "payload": "{\"stop-vnfr\": { \"id\": \"%s\" }  }"
                }
            ]
       }
   ]
}
