Configurar a diferenciação de tráfego

O Application Awareness ajuda a usar as conexões da Interconexão dedicada com mais eficiência usando o ponto de código do campo de serviços diferenciados (DSCP, na sigla em inglês) para a diferenciação de tráfego.

É possível configurar a diferenciação de tráfego para transferências de dados de saída da Interconexão dedicada usando o Application Awareness no Cloud Interconnect.

Quando você ativa o Application Awareness no Cloud Interconnect e marca o DSCP nos cabeçalhos IP das transferências de dados de saída para mapeá-los para classes de tráfego, as transferências de dados de saída recebem tratamento diferenciado no Cloud Interconnect.

O Application Awareness permite que você faça o seguinte:

  • Escolha um dos dois tipos de política, uma política de prioridade rígida ou uma política de porcentagem de largura de banda, para especificar como o Cloud Interconnect trata as transferências de dados de saída que são classificadas em diferentes classes de tráfego.

  • Alocar a largura de banda de transferência de dados de saída da Interconexão dedicada entre seis classes de tráfego diferentes.

  • Use os controles de ajuste da programação, além de qualquer tipo de política, para definir a largura de banda máxima que cada classe de tráfego pode usar nas transferências de dados de saída da Interconexão dedicada.

As seções a seguir descrevem o Application Awareness no Cloud Interconnect e como configurá-lo para a conexão da Interconexão dedicada.

Entre em contato com a equipe de conta para ativar o Application Awareness na Interconexão dedicada.

Antes de começar

Antes de começar, faça o seguinte:

  • Entenda as práticas recomendadas ao configurar o Cloud Interconnect, em especial, para criar conexões redundantes do Cloud Interconnect com capacidade suficiente.

  • Verifique se não há tráfego de rede na conexão da Interconexão dedicada.

  • Considere as seguintes informações sobre a configuração do Application Awareness:

    • O DSCP no cabeçalho IP do tráfego de dados de saída determina a classe de tráfego do Application Awareness para fornecer diferenciação de tráfego. Marque o DSCP nos cabeçalhos de tráfego de dados IP de saída de acordo.

    • Para marcar um DSCP específico nas transferências de dados de saída do Cloud Interconnect originadas das APIs do Google, marque o mesmo DSCP nos pacotes de solicitação de API do Google como o DSCP pretendido para o tráfego de resposta da API do Google. As APIs do Google ecoam (copiam) o DSCP do pacote IP de solicitação do cliente correspondente no tráfego de resposta, o que permite controlar o DSCP para o tráfego de resposta da API do Google.

    • Ao usar o Private Service Connect, o comportamento de eco de DSCP é compatível com as APIs do Google. É possível controlar o DSCP no tráfego de resposta da API do Google definindo o DSCP de solicitação de acordo. Isso permite controlar o DSCP nas transferências de dados de saída das APIs do Google a que você se conecta com o Private Service Connect.

    • Ao usar o Private Service Connect, o eco de DSCP não é compatível com serviços publicados hospedados na nuvem privada virtual (VPC). Portanto, o DSCP no tráfego de dados de resposta de serviços publicados hospedados na VPC não pode ser controlado com o DSCP de tráfego de solicitação. Em vez disso, os back-ends de serviço hospedados na VPC correspondentes determinam o DSCP nos pacotes de resposta.

Classes de tráfego

O Application Awareness usa o conceito de uma classe de tráfego, com base em intervalos DSCP, para diferenciar o tráfego na Interconexão dedicada. A tabela a seguir descreve as seis classes de tráfego:

Classe de tráfego Intervalo DSCP interno (binário) Intervalo DSCP interno (decimal) Descrição e exemplos
TC1 000xxx 0-7 Tráfego com melhor esforço
TC2 001xxx 8-15 Tráfego em massa

Exemplo: transferência de arquivos

TC3 010xxx 16-23 Tráfego de operações, administração e gerenciamento

Exemplos: SNMP, SSH, ping, telnet

TC4 011xxx 24-31 Streaming ou vídeo ao vivo
TC5 10xxxx 32-47 Tráfego interativo ou voltado ao usuário
TC6 11xxxx 48-63 Tráfego de controle de rede essencial

Exemplos: tráfego de controle de protocolos como BGP e BFD

Tipos de política disponíveis

O Application Awareness no Cloud Interconnect oferece dois tipos de política para determinar como as transferências de dados de saída são diferenciadas no Cloud Interconnect:

Prioridade rígida

Um tipo de política de prioridade rígida atribui um nível de prioridade a cada classe de tráfego para transferências de dados de saída. As transferências de dados de saída de maior prioridade são atribuídas à classe de tráfego TC6, enquanto as transferências de dados de saída de menor prioridade são atribuídas à classe de tráfego TC1.

A diferenciação de prioridade rígida não exige que você especifique configurações específicas da classe, porque a prioridade de cada classe de tráfego é predefinida. No entanto, para evitar a falta de classes de tráfego de menor prioridade durante eventos de congestionamento, recomendamos que você especifique um perfil de modelagem de tráfego para limitar a largura de banda máxima usada por cada uma das classes de tráfego de maior prioridade.

Porcentagem de largura de banda

Um tipo de política de porcentagem de largura de banda permite especificar a participação de largura de banda de destino que cada classe de tráfego pode usar durante eventos de congestionamento no Cloud Interconnect. A atribuição de porcentagens a cada classe de tráfego ajuda a garantir que cada classe de tráfego possa usar a participação especificada da largura de banda do Cloud Interconnect durante eventos de congestionamento no Cloud Interconnect.

Se a largura de banda excedente estiver disponível porque uma classe de tráfego não está usando totalmente a participação atribuída, a largura de banda restante será compartilhada igualmente entre todas as outras classes de tráfego.

Controle de ajuste da programação

Além dos dois tipos de política, o Application Awareness também oferece controles de ajuste da programação que permitem especificar a largura de banda máxima que cada classe de tráfego pode usar. É possível usar controles de ajuste da programação com políticas de prioridade rígida e com políticas de porcentagem de largura de banda.

Configurar um tipo de política de prioridade rígida

Siga as etapas abaixo para configurar um tipo de política de prioridade rígida.

gcloud

Use o comando a seguir:

gcloud compute interconnects application-awareness \
    configure-strict-priority-policy INTERCONNECT_NAME \
    --profile-description=DESCRIPTION \
    --enabled

Substitua:

  • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
  • DESCRIPTION: uma descrição do perfil para o Application Awareness

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "aaiEnabled":true,
  "applicationAwareInterconnect":
    {
      "profileDescription": "DESCRIPTION",
      "strictPriorityPolicy":{}
  },
}

Substitua DESCRIPTION por uma descrição desse perfil.

Configurar um tipo de política de prioridade rígida com um perfil de modelagem de tráfego

Também é possível configurar um tipo de política de prioridade rígida com um perfil de modelagem de tráfego. Recomendamos que você use um perfil de ajuste da programação para ajudar a garantir que as classes de tráfego de menor prioridade não sejam privadas devido a classes de tráfego de maior prioridade durante eventos de congestionamento.

Siga as etapas abaixo para configurar um tipo de política de prioridade rígida com um perfil de ajuste da programação. Especifique um valor numérico que represente a porcentagem máxima de largura de banda para cada classe de tráfego incluída. É possível definir o perfil de modelagem de tráfego para um subconjunto ou todas as seis classes de tráfego, de TC1 a TC6.

gcloud

  1. Use o comando a seguir para configurar a política de prioridade rígida:

    gcloud compute interconnects application-awareness \
        configure-strict-priority-policy INTERCONNECT_NAME \
        --profile-description=DESCRIPTION \
        --enabled
    

    Substitua:

    • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
    • DESCRIPTION: uma descrição do perfil para o Application Awareness
  2. Use o comando a seguir para configurar o perfil de ajuste da programação:

    gcloud compute interconnects application-awareness \
        configure-shaper-average-percentage INTERCONNECT_NAME \
        --profile-description=DESCRIPTION \
        --bandwidth-percentages="TC1=TC1_SHAPE_PERCENTAGE,TC2=TC2_SHAPE_PERCENTAGE,TC3=TC3_SHAPE_PERCENTAGE,TC4=TC4_SHAPE_PERCENTAGE,TC5=TC5_SHAPE_PERCENTAGE,TC6=TC6_SHAPE_PERCENTAGE" \
        --enabled
    

    Substitua:

    • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
    • DESCRIPTION: uma descrição do perfil para o Application Awareness
    • TC1_SHAPE_PERCENTAGE ... TC6_SHAPE_PERCENTAGE: um valor numérico que representa a porcentagem média de forma para cada classe de tráfego. Cada valor precisa ser menor ou igual a 100. É possível definir o perfil de modelagem de tráfego para um subconjunto ou todas as seis classes de tráfego, de TC1 a TC6.

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "aaiEnabled": true,
  "applicationAwareInterconnect":
    {
      "profileDescription": "DESCRIPTION",
      "strictPriorityPolicy": {},
      "shapeAveragePercentages": [
          {
            "trafficClass": "TC1",
            "percentage": TC1_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC2",
            "percentage": TC2_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC3",
            "percentage": TC3_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC4",
            "percentage": TC4_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC5",
            "percentage": TC5_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC6",
            "percentage": TC6_SHAPE_PERCENTAGE
          }
        ]
    }
}

Substitua TC1_SHAPE_PERCENTAGE ... TC6__SHAPE_PERCENTAGE por um valor numérico que represente a porcentagem máxima de largura de banda para cada classe de tráfego. É possível definir o perfil de modelagem de tráfego para um subconjunto ou todas as seis classes de tráfego, de TC1 a TC6.

Para evitar falhas de rede, inclua o tráfego de controle de rede, como BGP e BFD, na classe de prioridade strict_policy mais alta.

Configurar a porcentagem de largura de banda

Siga as etapas abaixo para configurar a política de porcentagem de largura de banda.

gcloud

Use o comando a seguir:

gcloud compute interconnects application-awareness \
    configure-bandwidth-percentage-policy INTERCONNECT_NAME \
    --profile-description=DESCRIPTION \
    --bandwidth-percentages="TC1=TC1_PERCENTAGE,TC2=TC2_PERCENTAGE,TC3=TC3_PERCENTAGE,TC4=TC4_PERCENTAGE,TC5=TC5_PERCENTAGE,TC6=TC6_PERCENTAGE" \
    --enabled

Substitua:

  • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
  • DESCRIPTION: uma descrição do perfil para o Application Awareness
  • TC1_PERCENTAGE ... TC6_PERCENTAGE: um valor numérico que representa a porcentagem de largura de banda para cada classe de tráfego. Cada valor precisa ser menor ou igual a 100.

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "aaiEnabled": true,
  "applicationAwareInterconnect":
    {
      "profileDescription": "DESCRIPTION",
      "bandwidthPercentagePolicy": {
        "bandwidthPercentages": [
          {
            "trafficClass": "TC1",
            "percentage": TC1_PERCENTAGE
          },
          {
            "trafficClass": "TC2",
            "percentage": TC2_PERCENTAGE
          },
          {
            "trafficClass": "TC3",
            "percentage": TC3_PERCENTAGE
          },
          {
            "trafficClass": "TC4",
            "percentage": TC4_PERCENTAGE
          },
          {
            "trafficClass": "TC5",
            "percentage": TC5_PERCENTAGE
          },
          {
            "trafficClass": "TC6",
            "percentage": TC6_PERCENTAGE
          }
        ]
    }
  }
}

Substitua:

  • DESCRIPTION: uma descrição desse perfil.
  • TC1_PERCENTAGE ... TC6_PERCENTAGE: um valor numérico diferente de zero que representa a porcentagem de cada classe de tráfego. As porcentagens de largura de banda de todas as classes de tráfego precisam somar 100.

Configurar a porcentagem de largura de banda com um perfil de ajuste da programação

Também é possível configurar uma política de porcentagem de largura de banda com um perfil de modelagem de tráfego. Um perfil de ajuste da programação ajuda a definir a largura de banda máxima que cada classe de tráfego pode consumir.

Siga as etapas abaixo para configurar uma política de porcentagem de largura de banda com um perfil de ajuste da programação. Um valor diferente de zero precisa ser especificado para cada classe de tráfego, e as porcentagens de largura de banda de todas as classes de tráfego precisam somar 100.

gcloud

  1. Use o comando a seguir para configurar a política de porcentagem de largura de banda:

    gcloud compute interconnects application-awareness \
        configure-bandwidth-percentage-policy INTERCONNECT_NAME \
        --profile-description=DESCRIPTION \
        --bandwidth-percentages="TC1=TC1_PERCENTAGE,TC2=TC2_PERCENTAGE,TC3=TC3_PERCENTAGE,TC4=TC4_PERCENTAGE,TC5=TC5_PERCENTAGE,TC6=TC6_PERCENTAGE" \
        --enabled
    

    Substitua:

    • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
    • DESCRIPTION: uma descrição do perfil para o Application Awareness
    • TC1_PERCENTAGE ... TC6_PERCENTAGE: um valor numérico que representa a porcentagem de largura de banda para cada classe de tráfego. Cada valor precisa ser menor ou igual a 100.
  2. Use o comando a seguir para configurar o perfil de ajuste da programação:

    gcloud compute interconnects application-awareness \
        configure-shaper-average-percentage INTERCONNECT_NAME \
        --profile-description=DESCRIPTION \
        --bandwidth-percentages="TC1=TC1_SHAPE_PERCENTAGE,TC2=TC2_SHAPE_PERCENTAGE,TC3=TC3_SHAPE_PERCENTAGE,TC4=TC4_SHAPE_PERCENTAGE,TC5=TC5_SHAPE_PERCENTAGE,TC6=TC6_SHAPE_PERCENTAGE" \
        --enabled
    

    Substitua:

    • INTERCONNECT_NAME: o nome da interconexão a ser corrigida
    • DESCRIPTION: uma descrição do perfil para o Application Awareness
    • TC1_SHAPE_PERCENTAGE ... TC6_SHAPE_PERCENTAGE: um valor numérico que representa a porcentagem média de forma para cada classe de tráfego. Cada valor precisa ser menor ou igual a 100. É possível definir o perfil de modelagem de tráfego para um subconjunto ou todas as seis classes de tráfego, de TC1 a TC6.

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "aaiEnabled": true,
  "applicationAwareInterconnect":
    {
      "profileDescription": "DESCRIPTION",
      "bandwidthPercentagePolicy": {
        "bandwidthPercentages": [
          {
            "trafficClass": "TC1",
            "percentage": TC1_PERCENTAGE
          },
          {
            "trafficClass": "TC2",
            "percentage": TC2_PERCENTAGE
          },
          {
            "trafficClass": "TC3",
            "percentage": TC3_PERCENTAGE
          },
          {
            "trafficClass": "TC4",
            "percentage": TC4_PERCENTAGE
          },
          {
            "trafficClass": "TC5",
            "percentage": TC5_PERCENTAGE
          },
          {
            "trafficClass": "TC6",
            "percentage": TC6_PERCENTAGE
          }
        ]
    },
      "shapeAveragePercentages": [
          {
            "trafficClass": "TC1",
            "percentage": TC1_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC2",
            "percentage": TC2_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC3",
            "percentage": TC3_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC4",
            "percentage": TC4_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC5",
            "percentage": TC5_SHAPE_PERCENTAGE
          },
          {
            "trafficClass": "TC6",
            "percentage": TC6_SHAPE_PERCENTAGE
          }
        ]
    }
}

Substitua:

  • DESCRIPTION: uma descrição desse perfil
  • TC1_PERCENTAGE ... TC6_PERCENTAGE: um valor numérico que representa a porcentagem de cada classe de tráfego
  • TC1_SHAPE_PERCENTAGE ... TC6_SHAPE_PERCENTAGE: um valor numérico que representa a porcentagem média de forma para cada classe de tráfego. Cada valor precisa ser menor ou igual a 100. É possível definir o perfil de modelagem de tráfego para um subconjunto ou todas as seis classes de tráfego, de TC1 a TC6.

Para evitar falhas de rede, inclua o tráfego de controle de rede, como BGP e BFD, na configuração de porcentagem de largura de banda apropriada.

Excluir políticas de diferenciação de tráfego

Para excluir políticas de diferenciação de tráfego, siga estas etapas.

gcloud

Use o comando a seguir:

gcloud compute interconnects application-awareness delete INTERCONNECT_NAME

Substitua INTERCONNECT_NAME pelo nome da interconexão em que você configurou uma política de diferenciação de tráfego.

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "applicationAwareInterconnect":
  {
    "profileDescription": null,
    "strictPriorityPolicy": null,
    "bandwidthPercentagePolicy": null,
    "shapeAveragePercentages": null
  }
}

Desativar a diferenciação de tráfego

Para desativar a diferenciação de tráfego, siga estas etapas:

gcloud

Use o comando a seguir:

gcloud compute interconnects application-awareness update INTERCONNECT_NAME \
    --no-enabled

Substitua INTERCONNECT_NAME pelo nome da interconexão a ser atualizada.

API

Envie o seguinte objeto JSON para o interconnects.patch endpoint:

{
  "aaiEnabled": false
}

A seguir