Skip to content

Pull L2VPN's status from OXP, update sdx controller if status changes #487

@congwang09

Description

@congwang09

Make LC periodically pulls status from OXP, and then update sdx controller if status changes. Possible l2vpn status are:
“up” if the L2VPN is operational,
“down” if the L2VPN is not operational due to topology issues/lack of path, or endpoints being down,
“error” when there is an error with the L2VPN,
“under provisioning” when the L2VPN is still being provisioned by the OXPs,
“maintenance” when the L2VPN is being affected by a network maintenance.

Example l2vpn status API query response:

$ docker compose exec -it mininet curl -s "http://ampath:8181/api/kytos/sdx/l2vpn/1.0/"  | jq -r
{
  "9527364d53ad48": {
    "name": "SDX-L2VPN-AMPATH_vlan_4094_4",
    "id": "9527364d53ad48",
    "creation_date": "2025-11-12T14:15:57",
    "last_modified": "2025-11-12T14:15:57",
    "status": "up",
    "state": "enabled",
    "endpoints": [
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath1:50",
        "vlan": 4094
      },
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath1:40",
        "vlan": 4
      }
    ]
  },
  "a59f6683fc144f": {
    "name": "SDX-L2VPN-AMPATH_vlan_4094_1",
    "id": "a59f6683fc144f",
    "creation_date": "2025-11-12T14:15:58",
    "last_modified": "2025-11-12T14:15:58",
    "status": "up",
    "state": "enabled",
    "endpoints": [
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath2:50",
        "vlan": 4094
      },
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath2:40",
        "vlan": 1
      }
    ]
  },
  "b115722f4a1542": {
    "name": "SDX-L2VPN-AMPATH_vlan_untagged_1",
    "id": "b115722f4a1542",
    "creation_date": "2025-11-12T14:15:42",
    "last_modified": "2025-11-12T14:15:43",
    "status": "up",
    "state": "enabled",
    "endpoints": [
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath3:50",
        "vlan": "untagged"
      },
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath1:40",
        "vlan": 1
      }
    ]
  },
  "d608a27a29704d": {
    "name": "SDX-L2VPN-AMPATH_vlan_999_2",
    "id": "d608a27a29704d",
    "creation_date": "2025-11-12T14:15:54",
    "last_modified": "2025-11-12T14:15:55",
    "status": "up",
    "state": "enabled",
    "endpoints": [
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath3:50",
        "vlan": 999
      },
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath1:40",
        "vlan": 2
      }
    ]
  },
  "f5ad3e36514640": {
    "name": "SDX-L2VPN-AMPATH_vlan_4094_3",
    "id": "f5ad3e36514640",
    "creation_date": "2025-11-12T14:15:55",
    "last_modified": "2025-11-12T14:15:56",
    "status": "up",
    "state": "enabled",
    "endpoints": [
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath3:50",
        "vlan": 4094
      },
      {
        "port_id": "urn:sdx:port:ampath.net:Ampath1:40",
        "vlan": 3
      }
    ]
  }
}

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions