VPP-AGENT restful 接口测试样例

MP2 接口测试

1、 traffic rule

# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k

# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]},{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -k

# DELETE all
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k

2、 dns rule direct

# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example1.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k

# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example2.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -k

3、 dns rule

# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRuleId":"59f12f7f-b887-48d1-935f-55a0cc5f010f","domainName":"www.example2.com","ipAddressType":"IP_V4","ipAddress":"192.168.2.2","ttl":1}' -k

# PUT (注意 ttl 修改无效)
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules/59f12f7f-b887-48d1-935f-55a0cc5f010f" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRuleId":"59f12f7f-b887-48d1-935f-55a0cc5f010f","domainName":"www.example3.com","ipAddressType":"IP_V4","ipAddress":"192.168.2.3","ttl":3}' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/dns_rules/59f12f7f-b887-48d1-935f-55a0cc5f010f" -H 'Content-type: application/json' -H 'Accept: application/json' -k

4、 acl rule

# GET
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"aclType":"WHITE","ueTagList":[{"ueTag":"","type":"SUPI","value":"466920100001103"}]}' -k

# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"aclType":"WHITE","ueTagList":[{"ueTag":"","type":"SUPI","value":"466920100001104"}]}' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k

5、 bw rule

# GET
curl -X GET -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k

# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k

# POST
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25667","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]},{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k

# POST (application)
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25668","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k

# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["4"],"sourceIp":"192.168.2.2","sourcePort":["4"]}]}' -k

# PUT
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25667" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["1"],"sourceIp":"192.168.2.1","sourcePort":["1"]},{"destinationIp":"192.168.2.2","destinationPort":["2"],"sourceIp":"192.168.2.2","sourcePort":["2"]}]}' -k

# PUT (application)
curl -X PUT -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25668" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25667" -H 'Content-type: application/json' -H 'Accept: application/json' -k

# DELETE
curl -X DELETE -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k

6、 ue info

# GET
curl -X GET -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/ueinformation/query/ue_id?type=ipaddress&value=192.168.1.1" -H 'Content-type: application/json' -H 'Accept: application/json' -k

MEP接口测试

  1. traffic rule :

    # POST
    curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k
    
    # PUT
    curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"trafficRuleId":"5a901ad1-2f39-4fe9-b254-3ad27101e548","action":"DROP","priority":1,"trafficFilter":[{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]},{"ipAddressType":"IP_V4","dstAddress":["2.2.2.2/24"],"dstPort":["21"],"protocol":["TCP"],"srcAddress":["1.1.1.1/24"],"srcPort":["12"]}]}' -k
    
    # DELETE
    curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/traffic_rules/5a901ad1-2f39-4fe9-b254-3ad27101e548" -H 'Content-type: application/json' -H 'Accept: application/json' -k
    
  2. DNS redirect rule :

# POST
curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example6.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k

# PUT
curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"dnsRedirectRuleId":"58f12f7f-b887-48d1-935f-55a0cc5f010e","domainName":"www.example6.com","ipAddressType":"IP_V4","dnsServerIp":"192.168.2.1"}' -k

# DELETE
curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/dnsredirect_rules/58f12f7f-b887-48d1-935f-55a0cc5f010e" -H 'Content-type: application/json' -H 'Accept: application/json' -k
  1. ACL rule :

# GET
curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k

# PUT
curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"ueTagList":[{"ueTag":"68:91:d0:69:17:3e","type":"IMSI","value":"466920100001103"}],"aclType":"WHITE"}' -k

# DELETE
curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/10301/acl_rule" -H 'Content-type: application/json' -H 'Accept: application/json' -k
  1. BW rule :

    # GET
    curl -X GET -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
    
    # POST
    curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]},{"destinationIp":"192.168.2.1","destinationPort":["2"],"sourceIp":"192.168.2.1","sourcePort":["2"]}]}' -k
    
    # POST (application)
    curl -X POST -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd25666","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k
    
    # PUT
    curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd2541f","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01","sessionFilter":[{"destinationIp":"192.168.2.1","destinationPort":["1"],"sourceIp":"192.168.2.1","sourcePort":["1"]},{"destinationIp":"192.168.2.2","destinationPort":["2"],"sourceIp":"192.168.2.2","sourcePort":["2"]}]}' -k
    
    # PUT (application)
    curl -X PUT -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"bwAllocationRuleId":"c8233b6f-537c-4d99-93b4-bfc78cd2541f","requestType":1,"appName":"1030","fixedAllocation":1,"fixedBWPriority":1,"allocationDirection":"01"}' -k
    
    # DELETE
    curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules/c8233b6f-537c-4d99-93b4-bfc78cd25666" -H 'Content-type: application/json' -H 'Accept: application/json' -k
    
    # DELETE (application)
    curl -X DELETE -v -i "https://172.18.20.215:9191/mp2/v1/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -k
    
  2. UE info

# GET
curl -X GET -v -i "https://172.18.20.215:9191/mp2/v1/ueinformation/query/ue_id?type=ipaddress&value=192.168.1.1" -H 'Content-type: application/json' -H 'Accept: application/json' -k

带宽控制串入 5GS 测试

################ 5M
### 下行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "00" }' -k

### 上行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "01" }' -k

### both
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 8000, "allocationDirection": "10" }' -k

################# 8M
### 下行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDirection": "00" }' -k

### 上行
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDirection": "01" }' -k

### both
curl -X POST -v -i "https://127.0.0.1:9191/mp2/v1/meps/123/applications/1030/bw_allocation_rules" -H 'Content-type: application/json' -H 'Accept: application/json' -d '{"mepId": "123", "appName": "1030", "bwAllocationRuleId": "094e2e22", "sessionFilter": [{"sourceIp": "", "sourcePort": "", "supi": "", "gpsi": "", "destinationIp": "192.168.2.1", "destinationPort":"", "protocol": ""}], "fixedBWPriority": 1, "fixedAllocation": 640000, "allocationDiresction": "10" }' -k