Condividi tramite


API di posizionamento del circuito ExpressRoute

L'API di posizionamento del circuito partner ExpressRoute consente ai partner ExpressRoute di effettuare il provisioning della connettività del circuito in una coppia di porte specifica. In particolare, se un partner ExpressRoute gestisce più coppie di porte in un'unica posizione di peering, può usare questa API per selezionare la coppia di porte che faciliterà il circuito ExpressRoute.

Questa API usa il tipo di risorsa expressRouteCrossConnection. Per altre informazioni, vedere Sviluppo e integrazione dell'API CrossConnection di ExpressRoute.

Registrare la sottoscrizione del provider al tipo di risorsa expressRouteProviderPort

Per usare l'API di posizionamento del circuito, è prima necessario registrare la sottoscrizione per accedere al tipo di risorsa porta.

  1. Accedere ad Azure e selezionare la sottoscrizione che si vuole registrare.

    Connect-AzAccount 
    
    Select-AzSubscription -Subscription "<SubscriptionID or SubscriptionName>"
    
  2. Registrare la sottoscrizione.

    Register-AzProviderFeature -FeatureName AllowExpressRoutePorts -ProviderNamespace Microsoft.Network
    

Dopo la registrazione, assicurarsi che il provider di risorse Microsoft.Network sia registrato nella sottoscrizione. La registrazione di un provider di risorse configura la sottoscrizione per l'utilizzo del provider di risorse.

Workflow

  1. I clienti di ExpressRoute condividono la chiave del servizio del circuito ExpressRoute di destinazione.

  2. Il partner ExpressRoute esegue un get usando l'API expressRouteProviderPorts per identificare la proprietà PortPairDescription della coppia di porte di destinazione. Il partner ExpressRoute può eseguire una query su un elenco di PortPairDescriptions in tutte le coppie di porte nella sottoscrizione oppure definire l'ambito della query per un percorso di peering specifico.

  3. Dopo aver identificato portPairDescription di destinazione, il partner ExpressRoute esegue GET/PUT expressRouteCrossConnection per spostare il circuito ExpressRoute nella coppia di porte di destinazione.

I partner ExpressRoute gestiscono la configurazione di livello 2 e livello 3 eseguendo operazioni REST sulla risorsa expressRouteCrossConnections.

Passaggi di sviluppo e integrazione delle API

GET usando l'API expressRouteProviderPorts per elencare le coppie di porte

Il partner ExpressRoute può elencare tutte le coppie di porte all'interno della sottoscrizione del provider di destinazione oppure elencare le coppie di porte all'interno di un percorso di peering specifico,

Per ottenere un elenco di tutte le coppie di porte per un provider

https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteProviderPorts?api-version={api-version}
{
    "parameters": {
      "api-version": "2021-12-01",
      "subscriptionId": "subid"
    },
    "responses": {
        "200": {
          "body": {
            "value": [
              {
                "portPairDescriptor": "bvtazureixpportpair1",
                "id": "/subscriptions/subid/providers/Microsoft.Network/ExpressRouteProviderPort/bvtazureixpportpair1",
                "type": "Microsoft.Network/expressRouteProviderPort",
                "location": "uswest",
                "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"",
                "properties": {
                    "portPairDescriptor": "bvtazureixpportpair",
                    "primaryAzurePort": "bvtazureixp01a",
                    "secondaryAzurePort": "bvtazureixp01b",
                    "peeringLocation": "SiliconValley",
                    "overprovisionFactor": 4,
                    "portBandwidthInMbps": 4000,
                    "usedBandwidthInMbps": 2500,
                    "remainingBandwidthInMbps": 1500
                }
              },
              {
                "portPairDescriptor": "bvtazureixpportpair2",
                "id": "/subscriptions/subid/providers/Microsoft.Network/ ExpressRouteProviderPort/bvtazureixpportpair2",
                "type": "Microsoft.Network/expressRouteProviderPort",
                "location": "uswest",
                "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"",
                "properties": {
                    "portPairDescriptor": "bvtazureixpportpair2",
                    "primaryAzurePort": "bvtazureixp02a",
                    "secondaryAzurePort": "bvtazureixp02b",
                    "peeringLocation": "seattle",
                    "overprovisionFactor": 4,
                    "portBandwidthInMbps": 4000,
                    "usedBandwidthInMbps": 1200,
                    "remainingBandwidthInMbps": 1800
                }
              }
            ]
          }
        }
      }
    }
  }
}

Codice di stato della risposta

  • 200 (OK) La richiesta ha esito positivo. Recupera l'elenco di porte.
  • 4XX (richiesta non valida) Una delle convalide non è riuscita, ad esempio: Il provider subid non è valido.

Per ottenere un elenco di tutte le coppie di porte in base alla posizione

https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteProviderPorts?location={locationName}&api-version={api-version}
{
  "parameters": {
    "api-version": "2021-12-01",
    "locationName": "SiliconValley",
    "subscriptionId": "subid"
  },
  "responses": {
    "200": {
      "body": {
        "value": [
          {
            "portPairDescriptor": "bvtazureixpportpair1",
            "id": "/subscriptions/subid/providers/Microsoft.Network/ ExpressRouteProviderPort /bvtazureixpportpair1",
            "type": "Microsoft.Network/expressRouteProviderPort",
            "location": "uswest",
            "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"",
            "properties": {
              "portPairDescriptor": "bvtazureixpportpair",
              "primaryAzurePort": "bvtazureixp01a",
              "secondaryAzurePort": "bvtazureixp01b",
              "peeringLocation": "SiliconValley",
              "overprovisionFactor": 4,
              "portBandwidthInMbps": 4000,
              "usedBandwidthInMbps": 2500,
              "remainingBandwidthInMbps": 1500
            }
          }
        ]
      }
    }
  }
}

Codice di stato della risposta

  • 200 (OK) La richiesta ha esito positivo. Recupera l'elenco di porte.
  • 4XX (richiesta non valida) Una delle convalide non è riuscita, ad esempio: il subid del provider non è valido o la posizione non è valida.

Per ottenere una coppia di porte specifica usando l'ID descrittore della coppia di porte.

https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteProviderPorts/{portPairDescriptor}?api-version={api-version}

{
  "parameters": {
    "api-version": "2021-12-01",
    "portPairDescriptor": " bvtazureixpportpair1",
    "subscriptionId": "subid"
  },
  "responses": {
    "200": {
      "body": {
        "value": [
          {
            "portPairDescriptor": "bvtazureixpportpair1",
            "id": "/subscriptions/subid/providers/Microsoft.Network/ExpressRouteProviderPort/bvtazureixpportpair1",
            "type": "Microsoft.Network/expressRouteProviderPort",
            "location": "uswest",
            "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"",
            "properties": {
              "portPairDescriptor": "bvtazureixpportpair",
              "primaryAzurePort": "bvtazureixp01a",
              "secondaryAzurePort": "bvtazureixp01b",
              "peeringLocation": "SiliconValley",
              "overprovisionFactor": 4,
              "portBandwidthInMbps": 4000,
              "usedBandwidthInMbps": 2500,
              "remainingBandwidthInMbps": 15
            }
          }
        ]
      }
    }
  }
}

Descrizione del codice di stato

  • 200 (OK) La richiesta ha esito positivo. Recupera i dettagli della porta.
  • 204 La coppia di porte con l'ID descrittore indicato non è disponibile.
  • 4XX (richiesta non valida) Una delle convalide non è riuscita. Ad esempio: Il provider subid non è valido.

Spostare un circuito ExpressRoute di destinazione in una coppia di porte specifica

Dopo aver identificato il portPairDescriptor della coppia di porte di destinazione, il partner ExpressRoute può usare l'API ExpressRouteCrossConnection per spostare il circuito ExpressRoute in una coppia di porte specifica.

Attualmente questa API viene usata dai provider per aggiornare lo stato del provisioning del circuito. Questa stessa API verrà usata dai provider per aggiornare la coppia di porte del circuito.

Attualmente primaryAzurePort e secondaryAzurePort sono proprietà di sola lettura. Ora sono stati disabilitate le proprietà di sola lettura per queste porte.

https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}?api-version={api-version}
{
"parameters": {
    "api-version": "2021-12-01",
    "crossConnectionName": "The name of the cross connection",
    "subscriptionId": "subid"
  }
},
{
Request   "body": {
    " primaryAzurePort ": " bvtazureixp03a"
     "secondaryAzurePort": "bvtazureixp03b",
  }
}
Response:
{
  "name": "<circuitServiceKey>",
  "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/<circuitServiceKey>",
  "type": "Microsoft.Network/expressRouteCrossConnections",
  "location": "brazilsouth",
  "properties": {
    "provisioningState": "Enabled",
    "expressRouteCircuit": {
      "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1"
    },
    "peerings": [],
    "peeringLocation": "SiliconValley",
    "bandwidthInMbps": 1000,
    "primaryAzurePort": "bvtazureixp03a",
    "secondaryAzurePort": "bvtazureixp03b",
    "sTag": 2,
    "serviceProviderProvisioningState": "NotProvisioned"
  }
}

Passaggi successivi

Per altre informazioni su tutte le API REST di ExpressRoute, vedere API REST di ExpressRoute.