Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
  1. Ubuntu 16.04
  2. apt-get install  kea-dhcp4-server
  3. install library  : kea-sdnc-notify.so  (/usr/local/lib)
    1. this library is built from source (hacked up copy of kea-pxe-replace4-mod)
    2. creates the hook which listens on pkt4_send
    3. sends an HTTP POST via libcurl if message is DHCPACK (that is response to client after Discover/Offer/Request)
    4. POST has macaddr, msg_name,  yiaddr (yiaddr is the one we want in SDNC)
    5. No response required since we are not re-writing the packet

 

  1. install conf files:
    1. /etc/kea/kea-dhcp4.conf

                                                    i.     This file sets ups the giaddr and ip blocks to be served

                                                   ii.     In the demo its 192.0.2.0/24

    1. /etc/kea/kea-sdnc-notify.conf

                                                    i.     This file sets the desintation url

                                                   ii.     For testing “http://localhost/sdnc.php?macaddr=”

                                                  iii.     For ONAP it would be a DMaaP TOPIC

  1. Start kea-dhcp4-server
  2. Logs in /var/log/kea-dhcp4.log

View file
nameonap-archiving-and-restore.mp4
height250

View file
namemso.config.20180810.tar
height250



            "vnf-id": "12312f32-cdcb-47cc-a6e5-822b849cc58e",

            "vnf-name": "zRegionOne05",

            "vnf-type": "vcpesvc_rescust_0529a/vcpevsp_vgw_0412 0",

            "service-id": "

{
"requestDetails": {
"modelInfo": {
"modelInvariantId": "a3ebfaf2-3dea-43b0-bb8e-566f95735230",
"modelType": "service",
"modelName": "vcpesvc_rescust_0412a",
"modelVersion": "1.0",
"modelVersionId": "dc316752-561f-48a3-8354-d873c813735d"
},
"requestInfo": {
"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
"source": "VID",
"instanceName": "vcpe_svc_vcpesvc_rescust_0412a_201805101152",
"suppressRollback": true,
"requestorId": "vCPE-Robot"
},
"subscriberInfo": {
"globalSubscriberId": "SDN-ETHERNET-INTERNET",
"subscriberName": "Kaneohe"
},
"cloudConfiguration": {
"tenantId": "1e097c6713e74fd7ac8e4295e605ee1e",
"lcpCloudRegionId": "RegionOne"
},
"requestParameters": {
"alaCarte": false,
"subscriptionServiceType": "vCPE",
"userParams": [
{
"name": "BRG_WAN_MAC_Address",
"value": "fa:16:3e:c0:34:ef"
}
],
"aLaCarte": false
},
"project": {
"projectName": "Project-Demonstration"
},
"owningEntity": {
"owningEntityId": "520cc603-a3c4-4ec2-9ef4-ca70facd79c0",
"owningEntityName": "OE-Demonstration"
}
}
}

----------------------------------------------------------

Yes. I’ve kept SNIRO Functionality, all that is needed is to add a user param of Name:”Homing_Solution” Value:“sniro” when instantiating the vCPE service. If ”Homing_Solution” user param is omitted, or has value:”oof” it will use new homing/OOF flow. To use OOF the userParam “Customer_Location” is also needed.

Here is an example rest request, with user param highlighted:

{
   "requestDetails":
      {
         "modelInfo":
            {
               "modelType":"service",
               "modelInvariantUuid":"uuid-miu-svc-011-abcdef",
               "modelVersionId":"ASDC_TOSCA_UUID",
               "modelName":"SIModelName1",
               "modelVersion":"2"
            },
         "subscriberInfo":
            {
               "globalSubscriberId":"SDN-ETHERNET-INTERNET",
               "subscriberName":"Kaneohe"
            },
         "requestInfo":
            {
               "instanceName":"VCPE1",
               "source":"VID",
               "suppressRollback":"false",
               "productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
            },          "cloudConfiguration":
            {
               "lcpCloudRegionId":"cloudowner_mdt1",
               "tenantId":"8b1df54faa3b49078e3416e21370a3ba"
            },
            "owningEntity": {
               "owningEntityId": "randomStrings",
               "owningEntityName": "randomStrings"
            },
            "requestParameters": {
                  "subscriptionServiceType":"123456789",
                  "aLaCarte":"false",
                  "userParams":
                     [
                        {
                           "name":"BRG_WAN_MAC_Address",
                           "value":"brgmac"
                        },
                        {
                           "name": "Customer_Location",
                           "value": {
                              "customerLatitude": "32.897480",
                              "customerLongitude": "-97.040443",
                              "customerName": "some_company"
                          }
                        },
                        {
                           "name":"Homing_Solution",
                           "value":"sniro"
                        }
                     ]
            }
      }
}

Cheers,

Marcus Williams

IRC @ mgkwill

Network Software Engineer


View file
nameservice-VcpesvcInfra0529a-csar.csar
height250


View file
nameservice-VcpesvcInfra0412a-csar.csar
height250
Intel Corp. – Network Platforms Group