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áfegoTC1.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 corrigidaDESCRIPTION: 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
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 \ --enabledSubstitua:
INTERCONNECT_NAME: o nome da interconexão a ser corrigidaDESCRIPTION: uma descrição do perfil para o Application Awareness
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" \ --enabledSubstitua:
INTERCONNECT_NAME: o nome da interconexão a ser corrigidaDESCRIPTION: uma descrição do perfil para o Application AwarenessTC1_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, deTC1aTC6.
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 corrigidaDESCRIPTION: uma descrição do perfil para o Application AwarenessTC1_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
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" \ --enabledSubstitua:
INTERCONNECT_NAME: o nome da interconexão a ser corrigidaDESCRIPTION: uma descrição do perfil para o Application AwarenessTC1_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.
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" \ --enabledSubstitua:
INTERCONNECT_NAME: o nome da interconexão a ser corrigidaDESCRIPTION: uma descrição do perfil para o Application AwarenessTC1_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, deTC1aTC6.
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 perfilTC1_PERCENTAGE ... TC6_PERCENTAGE: um valor numérico que representa a porcentagem de cada classe de tráfegoTC1_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, deTC1aTC6.
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
}