Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Background

Protocolo de tempo de precisão (PTP)

Introduction

Protocolo

Processo De Troca De Carimbo De Data/Hora Mestre E Slave

Relógio GrandMaster

Relógio de escravos

Relógio de limite

Classes de relógio

Estados do relógio

Domínios PTP

Perfis PTP

Definição de Mensagens Básicas

Requirements

Configuração

Relógio mestre PTP no ASR900

Etapa 1. Configurar O Oscilador Interno Local

Etapa 2. Configure o PTP como Mestre no ASR900

Verificação

Relógio de escravos no cBR-8

Verificação

Restrições

O perfil G.8275.2

Relógio de escravos no RPD

Verificação

Relógio de limite no ASR900

Monitorar com SNMP

Troubleshoot

Identificar e Solucionar Problemas do PTP Master (ASR900)

Solucionar Problemas do PTP Slave (cBR-8)

DTI e PTP

Atrasos e deslocamento do relógio

Identificar e Solucionar Problemas do PTP Slave (RPD)

Informações Relacionadas

Introduction

Este documento descreve o Precision Time Protocol (PTP) usado em redes a cabo com redes cBR-8 e Remote PHY (R-PHY). O objetivo é fornecer uma compreensão global do protocolo e como configurá-lo em implantações cBR-8 e RPHY.

Prerequisites

Requirements

A Cisco recomenda que você tenha conhecimento destes tópicos:

- R-PHY.

- CCAP (Cable Access Platform, plataforma de acesso a cabo convergente) cBR-8.

Componentes Utilizados

As informações neste documento são baseadas nestas versões de software e hardware:

- cBR-8 executa a versão 16.6.1 ou posterior.

- Dispositivo PHY remoto (RPD) 1x2 da Cisco.

Tip: Consulte o artigo da cisco RPD 1x2 da Cisco para obter mais informações.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.

Background

Para conceder aos modems os slots de tempo (minislots) para transmissão em um canal upstream, o CCAP mapeia as atribuições de minislot de fluxos de saída por meio de mensagens de mapa de alocação de largura de banda de upstream (MAP). Essas mensagens MAP são enviadas no downstream e recebidas por todos os modems.

Os modems analisam essas mensagens para determinar quais minisslots são alocados para quais modems e quais são para atividades baseadas em contenção. Um modem transmite apenas o tráfego em um minislot atribuído a ele (ou em um slot de contenção se estiver fazendo uma solicitação de largura de banda ou outra atividade de manutenção da estação).

As mensagens MAP do CCAP alocam aproximadamente 2 milissegundos (ms) de tempo. O LLD (Low Latency DOCSIS, DOCSIS de baixa latência) fornece opções para reduzir esse valor abaixo de 2 ms.

É importante que o CCAP e cada modem tenham o mesmo conceito de tempo, para evitar sobreposições.

O CCAP deve garantir que não atribua um slot de tempo a um modem muito rapidamente após uma solicitação, para evitar que o modem não tenha tempo para receber a mensagem MAP e processá-la, e não tenha a chance de usar esse minislot.

Para evitar essa situação, o CCAP usa um temporizador de avanço MAP, onde não agenda tráfego para um modem até um ponto no tempo posterior ao temporizador de avanço MAP.

O elemento de temporização do DOCSIS necessário para agendamento upstream ainda está presente no R-PHY. Para vincular os RPDs ao CCAP, é usada uma CIN (Converged Interconnect Network), baseada em IP, e que pode ser dedicada ao acesso a cabo ou compartilhada por outros aplicativos.

O núcleo do CCAP lida com o agendamento upstream e a geração das mensagens do MAP. No entanto, os sinais de downstream e upstream agora se originam e terminam fisicamente no RPD, portanto, o RPD precisa ter o mesmo conceito de tempo que o núcleo do CCAP.

A Remote DOCSIS Timing Interface Specification (R-DTI) é a especificação da CableLabs que detalha como essa temporização ocorre. Para redes baseadas em Ethernet, o PTP é usado para atingir essa temporização.

Na implementação atual da Cisco, o cBR-8 e o RPD atuam como um dispositivo escravo para um relógio mestre de PTP.

Protocolo de tempo de precisão (PTP)

Introduction

O PTP permite que um relógio escravo determine seu deslocamento de tempo de um relógio mestre (diferença de tempo entre os relógios), bem como o atraso de propagação na rede de transporte entre os dois relógios.

Os dispositivos mestre e escravo trocam mensagens que incluem datadores antes que o escravo execute um algoritmo para determinar esses valores.

As fórmulas para esse cálculo assumem uma conexão simétrica entre os dois relógios.

aviso: Uma das principais causas de problemas de DOCSIS em R-PHY é criada por links PTP não simétricos que levam à instabilidade do clock.

As conexões não simétricas como Ethernet Passive Optical Network (EPON) estão listadas na especificação R-DTI para uso como CIN, mas dependem de um método de temporização diferente, atualmente não suportado pela Cisco.

O RPD deve alcançar o relógio mestre através da CIN. O cBR-8 pode acessar o relógio mestre por meio de interfaces de rede de longa distância (WAN) na placa de interface física (PIC) do supervisor ou por meio de interfaces de PIC digital (DPIC) na placa de linha do cabo (a opção DPIC foi adicionada na versão 16.8.1). Recomenda-se que o RPD não passe pelo cBR-8 para acessar o relógio mestre.

O RPD e o cBR-8 só podem funcionar como relógios escravos no software atual, embora o roadmap do cBR-8 adicione suporte para ele como um grande relógio mestre e limite.

Note: Quando o cBR-8 é configurado para usar PTP para temporização, todas as placas de linha dependem desse relógio, mesmo placas de linha com PICs de RF.

Isso significa que os problemas de estabilidade do relógio PTP afetam todos os modems em um chassi, mesmo aqueles em placas de linha CCAP (I-CCAP) integradas, quando você usa uma combinação de placas em um chassi.

Protocolo

O PTP é definido no padrão IEEE 1588-2008.

As especificações completas estão disponíveis aqui: 1588-2008 - IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems.

Note: Você precisa ter usuários registrados para obter acesso total ao documento.

O PTP permite distribuir Tempo e Frequência através de uma rede:

- Hora (Sincronização): sincroniza o tempo entre os dispositivos em uma rede.

- Frequência (Sincronização): sincroniza a frequência.

O PTP usa mensagens multicast ou unicast e portas UDP 319 (para eventos) e UDP 320 (para geral)

Na implementação do CMTS, o PTP usa unicast IPv4.

O protocolo cria uma relação Master-Slave entre um relógio Grandmaster e dispositivos clientes através da rede. A maneira como o PTP escolhe um relógio para ser distribuído em uma rede é com o uso de um algoritmo chamado Best Master Clock Algorithm (BCMA).

O algoritmo determina o melhor relógio em uma rede com estas propriedades:

- Identificador (Número, construído a partir do endereço MAC do dispositivo, normalmente se parece com o formato EUI-64 (xxxx:xxFF:FExx:xxxx).

- Qualidade.

- precisão do relógio: Determina a precisão do relógio.Quanto menor o relógio, melhor (mais preciso).

Value (hex) Specification

00-1F Reserved

20 The time is accurate to within 25 ns

21 The time is accurate to within 100 ns

22 The time is accurate to within 250 ns

23 The time is accurate to within 1 µs

24 The time is accurate to within 2.5 µs

25 The time is accurate to within 10 µs

26 The time is accurate to within 25 µs

27 The time is accurate to within 100 µs

28 The time is accurate to within 250 µs

29 The time is accurate to within 1 ms

2A The time is accurate to within 2.5 ms

2B The time is accurate to within 10 ms

2C The time is accurate to within 25 ms

2D The time is accurate to within 100 ms

2E The time is accurate to within 250 ms

2F The time is accurate to within 1 s

30 The time is accurate to within 10 s

31 The time is accurate to >10 s

32–7F Reserved

80–FD For use by alternate PTP profiles

FE Unknown

FF Reserved

- clockClass:Reflete a rastreabilidade do tempo e da frequência distribuídas pelo relógio do GrandMaster.
As classes de clock são definidas pelas especificações IEEE 1588-2008 como tal:

especificação clockClass (decimal)

0 Reserved to enable compatibility with future versions.

1–5 Reserved.

6 Shall designate a clock that is synchronized to a primary reference time source. The timescale distributed shall be PTP. A clockClass 6 clock shall not be a slave to another clock in the domain.

7 Shall designate a clock that has previously been designated as clockClass 6 but that has lost the ability to synchronize to a primary reference time source and is in holdover mode and within holdover specifications. The timescale distributed shall be PTP. A clockClass 7 clock shall not be a slave to another clock in the domain.

8 Reserved.

9–10 Reserved to enable compatibility with future versions.

11–12 Reserved.

13 Shall designate a clock that is synchronized to an application-specific source of time. The timescale distributed shall be ARB. A clockClass 13 clock shall not be a slave to another clock in the domain.

14 Shall designate a clock that has previously been designated as clockClass 13 but that has lost the ability to synchronize to an application-specific source of time and is in holdover mode and within holdover specifications. The timescale distributed shall be ARB. A clockClass 14 clock shall not be a slave to another clock in the domain.

15–51 Reserved.

52 Degradation alternative A for a clock of clockClass 7 that is not within holdover specification. A clock of clockClass 52 shall not be a slave to another clock in the domain.

53–57 Reserved.

58 Degradation alternative A for a clock of clockClass 14 that is not within holdover specification. A clock of clockClass 58 shall not be a slave to another clock in the domain.

59–67 Reserved.

68–122 For use by alternate PTP profiles.

123–127 Reserved.

128–132 Reserved.

133–170 For use by alternate PTP profiles.

171–186 Reserved.

187 Degradation alternative B for a clock of clockClass 7 that is not within holdover specification. A clock of clockClass 187 may be a slave to another clock in the domain.

188–192 Reserved.

193 Degradation alternative B for a clock of clockClass 14 that is not within holdover specification. A clock of clockClass 193 may be a slave to another clock in the domain.

194–215 Reserved.

216–232 For use by alternate PTP profiles.

233–247 Reserved.

248 Default. This clockClass shall be used if none of the other clockClass definitions apply.

249–250 Reserved.

251 Reserved for version 1 compatibility; see Clause 18.

252–254 Reserved.

255 Shall be the clockClass of a slave-only clock; see 9.2.2.

- Prioridade - Um valor atribuído administrativamente (entre 0 e 255)

- Variância - A estabilidade estimada do relógio

Processo De Troca De Carimbo De Data/Hora Mestre E Slave

- O mestre envia uma mensagem de sincronização para o escravo e anota a hora (t1) em que ela foi enviada.

- O escravo recebe a mensagem de sincronização e anota a hora da recepção (t2).

- O capitão transmite ao escravo o carimbo de data e hora t1; ele incorpora o timestamp t1 em uma mensagem de Acompanhamento.

- O escravo envia uma mensagem Delay_Req ao mestre e anota a hora (t3) em que ela foi enviada.

- O mestre recebe a mensagem Delay_Req e anota a hora de recepção (t4).

- O capitão transmite ao escravo o carimbo de data e hora t4; ele o incorpora em uma mensagem Delay_Resp.

Esse processo é repetido várias vezes por segundo (normalmente de 16 a 32 vezes por segundo) para garantir uma rápida adaptação em pequenas mudanças de deslocamento.

Relógio GrandMaster

O GrandMaster se comunica com os escravos que estabeleceram sessões com o grande mestre para trocar as informações de sincronização (Time) e de sincronização com esses escravos. em teoria, um GrandMaster deve ser conectado a um PRTC (Prime Reference Time clock), como o GPS através de uma antena GPS, dessa forma, se um GrandMaster falhar e outro GrandMaster assumir, já que ambos usam a mesma referência de tempo, os escravos continuam usando a mesma referência de tempo. Se você não usar um PRTC, a falha de um relógio GrandMaster faz com que os escravos alterem a referência de tempo, o que faz com que, nos cenários CMTS, os modems fiquem off-line.

Relógio de escravos

O Slave inicia a conexão com o relógio GrandMaster. Tanto o escravo como o mestre trocam suas configurações e configurações de relógio para iniciar a negociação. Nesse caso, cBR-8 e RPD são ambos escravos de um GrandMaster PTP externo.

aviso: A implantação atual do cBR-8 (a partir de 16.10.1d) suporta apenas cBR-8 como escravo PTP. No futuro, poderemos ver limite de PTP ou mestre de PTP.

Relógio de limite

O relógio de limite sincroniza dois segmentos de rede juntos. Atua como escravo de um relógio do Grand Master (GM) no segmento 1 e atua como um relógio GM no segmento 2. Os relógios não-limite são chamados de "relógios comuns".

Classes de relógio

As classes de relógio são um dos valores usados durante a negociação para descobrir qual relógio, em uma rede com vários relógios, é o mais preciso.

As classes de clock são definidas pelo IEEE 1588-2008.

Estados do relógio

- LIVRE: Não conectado a nenhum GM remoto, usa oscilador local.

- HOLDOVER Perdeu a conexão com um GM remoto, tente recuperá-lo e tente manter o relógio anterior. Durante o estado HOLDOVER, o relógio pode começar a derivar e, se estiver se movendo para fora das especificações, ele volta para o modo FREERUN.

- ADQUIRINDO: Iniciou a negociação com a GM e trocou mensagens com a GM para determinar o atraso induzido pela rede e tentar sincronizar com o relógio GM.

- FREQ_LOCKED: O dispositivo escravo é travado para o Mestre em relação à frequência, mas não alinhado em fase.

- FASE_ALINHADO: Bloqueado ao capitão em relação à frequência e fase.

Máquina de estado para RPD:

Note: Em implantações de RPHY, o período HOLDOVER dentro das especificações suportado é de 10 horas (ou seja, quando cBR-8 ou RPD ou ambos estão no estado HOLDOVER). Durante esse período, os modems permanecem on-line. Após 10 horas de HOLDOVER, a qualidade do relógio do oscilador interno não é garantida e os modems podem ficar off-line devido ao relógio de cBR-8, RPD ou ambos estão fora da especificação.

Domínios PTP

O domínio PTP é um número que identifica um grupo de dispositivos que se comunicam juntos. Os dispositivos de escravo e mestre devem estar dentro do mesmo domínio PTP para poderem sincronizar entre si. O domínio 0 é o domínio padrão e os domínios 1-2-3 são reservados de acordo com as especificações. Outros números de domínio podem ser 4-255,

Observe que algumas variantes PTP, como G.8275.2, exigem que o domínio PTP esteja dentro do intervalo de 44 a 63, portanto, se você não usar essa variante, evite usar esse intervalo de domínios PTP, pois isso pode confundir o usuário e o dispositivo.

Perfis PTP

Os perfis PTP foram apresentados no padrão IEEE 1588-2008 e consistem em um conjunto de opções de configuração que podem ser selecionadas para atender aos requisitos de diferentes aplicativos. É possível definir perfis separados para adaptar o PTP a diferentes cenários.

Exemplos de perfis PTP comuns são:

- Perfil Telecom-2008: Perfil genérico usado antes das especificações G.8265.1. Este perfil usa números de domínio de 0 a 4. Esse perfil é suportado no cBR-8 e no RPD, no entanto, o G.8275.2 é altamente recomendado neste caso, pois ele é mais resiliente a falhas.

- G.8265.1 : perfil telecom do protocolo de tempo de precisão para sincronização de frequência

Este perfil é para aplicativos que exigem sincronização de frequência somente em redes de telecomunicações. Não abrange o alinhamento da fase e/ou a hora do dia.

O caso de uso seria para mestres e escravos PTP em redes onde os nós intermediários não fornecem suporte a PTP.

Note: Este perfil não é suportado no ambiente DOCSIS com cBR-8 e RPD

- G.8275.1 : perfil telecom do protocolo de precisão para sincronização de fase/tempo com suporte de temporização completa da rede

Esse perfil é usado em sistemas que exigem sincronização precisa de tempo e fase em redes de telecomunicações (por exemplo, rede celular 4G ou rede RPD), onde a sincronização de fase e/ou horário é necessária.

Com esse perfil, cada dispositivo de rede participa do protocolo PTP. Um relógio de limite é usado em todos os nós da cadeia entre o PTP Grandmaster e o PTP Slave, o que resulta em menor acumulação de erros de tempo através da rede.

- G.8275.2 : perfil telecom do protocolo de precisão para sincronização de tempo/fase com suporte de temporização parcial da rede

Esse perfil é baseado no suporte de temporização parcial da rede, o que significa que os nós do domínio PTP não precisam ser conectados diretamente.

Como o G.8275.1, ele é usado em sistemas que exigem sincronização precisa de tempo e fase, mas permitem operar a sincronização de tempo e fase em redes existentes. Utiliza relógios de limite onde necessário, para ajustar o sinal de tempo em toda a rede.

Informações adicionais sobre a plataforma G.8275.1 e G.8275.2 para ASR900 podem ser encontradas aqui: Guia de configuração de cronometragem e sincronização, Cisco IOS XE Everest 16.5.1 (Cisco ASR 900 Series)

Definição de Mensagens Básicas

- Sync, Follow_up, Delay_req, Delay_resp são mensagens usadas por limites e relógios comuns para comunicar informações de tempo a escravos através da rede.

- As mensagens de anúncio são trocadas por escravos e mestres para identificar o melhor relógio na rede usando o Melhor Algoritmo de Relógio Mestre (consulte Imagens 26, 27, 28 das especificações IEEE para o mecanismo detalhado).

- As mensagens de sinalização são usadas para informações não críticas.

Requirements

Esses requisitos devem ser atendidos para uma implantação correta do PTP em um cBR-8 e R-PHY em uma rede de produção:

- Use o perfil PTP G.8275.2, que garante que o PTP funcione bem mesmo que alguns elementos de rede no caminho não suportem o PTP

- Nenhum caminho multi-path de custo igual (ECMP), balanceamento de carga ou caminhos assimétricos: O PTP sempre assume que o atraso do mestre para o escravo e vice-versa é igual e em 500 microssegundos (μs)

- Configure intervalos de retardo-req e sincronização com valores -4 ou -5 (consulte o capítulo Configuração para obter mais detalhes). Valores maiores que -4 (-3, ...) podem não oferecer precisão suficiente para detectar pequenas alterações de deslocamento. Valores inferiores a -5 (-6,...) causam um impacto maior no uso da rede, mas não um ganho de precisão significativo.

- Certifique-se de que os pacotes PTP para RPDs não passem pelo cBR-8

- Verifique se há instabilidade mínima na rede IP (máx. 1 ms). A QoS PTP adequada precisa ser aplicada em todos os roteadores: O cBR-8 e o RPD enviam todos os pacotes PTP marcados com Differentiated Services Code Point (DSCP) 46 (express forwarding - EF). Verifique se o relógio do PTP Grand Master também marca os pacotes com o mesmo valor de DSCP.

- O relógio do PTP Grand Master deve ser sincronizado com o GPS e o relatório classe 6 do relógio, para uso em uma rede de produção. As configurações de laboratório podem funcionar com um PTP Grand Master autônomo Freerunning (classe de clock 58).

- O relógio PTP Grand Master deve ter uma precisão de clock de 100 nanossegundos.

- Se dois relógios do PTP Grand Master forem usados, você deverá usar o GPS para sincronizar o tempo entre eles. Ambos os Grand Masters de PTP devem ter seus relógios em 500 microssegundos (μs)

Note: Versões mais antigas do software RPD podem usar valores DSCP de 47 - Versões mais recentes usam valores DSCP de 46 (EF) em RPD, para alinhar com valores CMTS

Configuração

Esta seção descreve como configurar um relógio mestre PTP em um roteador Cisco ASR900, os relógios escravos em cBR-8 para o próprio cBR-8 e RPD e um relógio de limite em ASR900.

Relógio mestre PTP no ASR900

Há uma implementação de base de software do protocolo PTP, no Linux, chamada de ptpd. Entretanto, como baseado em software, ele não oferece precisão suficiente para que o cBR-8 e o RPD trabalhem com ele, portanto, os modems não poderão ficar on-line e a sincronização do PTP também não acontecerá. Além disso, a implementação do linux PTPd requer a marcação de tempo de hardware pela placa de rede para aumentar a precisão. Isso significa que quando você usa uma máquina virtual ou uma placa de rede que não suporta a marcação de tempo de hardware, o PTPd pode nem mesmo iniciar no Linux.

Dependendo do modelo de ASR900 em uso, ele pode ou não ter uma antena GPS. Se o ASR900 não tiver uma antena GPS, você não tem PRTC, mas ainda é capaz de executar o ASR900 como Grandmaster com um PRTC (oscilador interno) local. Isso significa que se esse ASR900 falhar e outro ASR900 assumir, o cBR-8 e o RPD perderão a referência de tempo devido ao fato de ambos os relógios não estarem em sincronia real.

Etapa 1. Configurar O Oscilador Interno Local

network-clock source quality-level QL-PRC tx

network-clock synchronization automatic

network-clock synchronization mode QL-enabled

network-clock synchronization squelch-threshold QL-PRC

network-clock quality-level tx QL-PRC ptp domain 0

network-clock input-source 1 External R0 10m

Etapa 2. Configure o PTP como Mestre no ASR900

ptp clock ordinary domain 0                             <<< DOMAIN 0 or DOMAIN 44 for G.8275.2

clock-port MASTER master [profile g8275.2]             <<< EITHER DEFAULT OR G.8275.2 PROFILE

sync interval -4

sync one-step

transport ipv4 unicast interface Lo1588 negotiation    <<< IPV4 UNICAST MODE, SOURCING PACKETS FROM LO1588 interface

interface Loopback1588

ip address 15.88.15.88 255.255.255.255

end

Note: Se não houver oscilador local ou GPS configurado como origem, o mestre do modo PTP não estará disponível.

Se você optar por usar o perfil G.8275.2 em seu ambiente em vez do padrão, você deve especificá-lo na configuração de porta de relógio (para a configuração do perfil G.8275.2 no cBR-8, consulte a seção: O perfil G.8275.2).

Observe que mesmo que o IOS-XE permita configurar o perfil G.8265.1, isso não é suportado no ambiente DOCSIS com cBR-8 e RPD.

Para obter mais referência sobre o perfil G.8275.2 no ASR900, consulte este guia: Guia de configuração de cronometragem e sincronização, Cisco IOS XE Everest 16.5.1 (Cisco ASR 900 Series)

Verificação

Esta seção fornece informações que você pode usar para verificar se sua configuração funciona corretamente.

ASR900#show ptp clock running

PTP Ordinary Clock [Domain 0]

State Ports Pkts sent Pkts rcvd Redundancy Mode

FREQ_LOCKED 1 86307034 36108234 Hot standby

PORT SUMMARY

PTP Master

Name Tx Mode Role Transport State Sessions Port Addr

MASTER unicast master Lo1588 Master 1 -

Note: Durante a primeira configuração do oscilador interno, o oscilador precisa aquecer antes de ser estável. Portanto, pode demorar um pouco antes do estado do PTP ser FREQ_LOCKED. Isso pode levar até 35 minutos.

ASR900#show ptp clock dataset parent

CLOCK [Ordinary Clock, domain 0]

Parent Clock Identity: 0x34:6F:90:FF:FE:C1:66:3F

Parent Port Number: 0

Parent Stats: No

Observed Parent Offset (log variance): 0

Observed Parent Clock Phase Change Rate: 0

Grandmaster Clock:

Identity: 0x34:6F:90:FF:FE:C1:66:3F

Priority1: 128

Priority2: 128

Clock Quality:

Class: 58

Accuracy: Within 1s

Offset (log variance): 52592

ASR900#show platform software ptpd stat stream 0

LOCK STATUS : FREERUN

SYNC Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval 0

Tx packets : 5577, Rx Packets : 0

Last Seq Number : 5577, Error Packets : 0

Delay Req Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : 0

Tx packets : 0, Rx Packets : 5353

Last Seq Number : 0, Error Packets : 0

Delay Response Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : 0

Tx packets : 5353, Rx Packets : 0

Last Seq Number : 0, Error Packets : 0

Announce Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : 0

Tx packets : 1904, Rx Packets : 0

Last Seq Number 1904 Error Packets 0

Signalling Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : 0

Tx packets : 1, Rx Packets : 1

Last Seq Number : 1, Error Packets : 0

Current Data Set

Offset from master : +0.0

Mean Path Delay : +0.0

Forward Path Delay : +0.0

Reverse Path Delay : +0.0

Steps Removed 0

General Stats about this stream

Packet rate : 0, Packet Delta (ns) : 0

Clock Stream handle : 0, Index : 0

Oper State : 0, Sub oper State : 6

Log mean sync Interval : 0, log mean delay req int : 0

Note: Por padrão, o oscilador interno ASR900 relata a classe 58. Se você usa um relógio GM de terceiros, você pode ver a classe 6 do relógio também se o relógio foi sincronizado com o GPS

Relógio de escravos no cBR-8

O cBR-8 atua como o núcleo do CCAP para o RPD, de modo que ele seja responsável pela configuração do PTP de si mesmo e dos RPDs associados.

O cBR-8 usa perfis para obter essas informações de PTP para os RPDs, e há várias opções para PTP configuráveis:

- O tipo de rastreamento de servo para cBR-8 deve ser definido como R-DTI para agilizar a sincronização de clock.

- O cBR-8 usa um endereço de loopback definido pelo usuário como a origem de seus pacotes PTP. Certifique-se de que haja um roteamento apropriado para o relógio mestre alcançar a interface de loopback. Se você não conseguir fazer ping no relógio mestre com um pacote originado do endereço de loopback, o PTP não está operacional.

- O perfil de telecomunicações G.8275.2 é recomendado porque suporta IPv4 e IPv6, e os dispositivos de comutação intermediários na CIN não precisam ter reconhecimento de PTP.

- O número de domínio PTP é escolhido pelo usuário, mas precisa ser o mesmo para o cBR-8 e os RPDs.

Os pacotes PTP são marcados com QoS mais alta pelo RPD e pelo cBR-8 para prioridade na CIN. O valor de DSCP 46/EF é usado por padrão em ambos.

ptp clock ordinary domain 0

servo tracking-type R-DTI

clock-port TOMASTER slave

announce interval -3

announce timeout 10

delay-req interval -4                                 <<< RECOMMENDED VALUE

sync interval -4                                      <<< RECOMMENDED VALUE

transport ipv4 unicast interface Lo1588 negotiation   <<< IPV4 UNICAST PACKETS SOURCED FROM THE LO1588 interface

clock source 15.88.15.88                              <<< THIS IS YOUR PTP MASTER

clock source 15.88.2.8 1                              <<< THIS IS THE ALTERNATE MASTER FOR PTP REDUNDANCY (OPTIONAL)

Neste exemplo, a porta de relógio é configurada para usar o perfil PTP padrão. Para a configuração do perfil G.8275.2, consulte a seção: O perfil G.8275.2.

Note: O valor recomendado para intervalos de sincronização e de requisição de retardo é -4 (16pps) ou -5 (32pps). Recomenda-se não usar valores superiores a -4 (-3,...). Os intervalos de anúncio podem ser definidos para qualquer intervalo menor ou igual a 0 (0,-1,-2,-3).

Com a configuração de redundância de PTP, se o mestre se tornar inalcançável, os switches cBR-8 se tornarão a origem alternativa e, assim que o mestre se tornar disponível novamente, o cBR-8 reverterá para a origem mestre.

Verificação

Verifique com esse comando se o estado é PHASE_ALIGNED e se os pacotes enviados e recebidos de contadores aumentam:

cBR-8#show ptp clock running domain 0

PTP Ordinary Clock [Domain 0]

State          Ports     Pkts sent   Pkts rcvd   Redundancy Mode

PHASE_ALIGNED  1         462249      1104590     Hot standby

PORT SUMMARY

PTP Master

Name      Tx Mode    Role    Transport   State    Sessions     Port Addr

TOMASTER  unicast    slave   Lo1588      Slave    1            15.88.15.88

SESSION INFORMATION

TOMASTER [Lo1588] [Sessions 1]

Peer addr     Pkts in    Pkts out  In Errs  Out Errs

15.88.15.88   1104590    462249    0        0

Restrições

- No momento, o cBR-8 não suporta PTP sobre MPLS, portanto, se os pacotes PTP forem marcados com MPLS, o relógio não será sincronizado. Há uma solicitação de aprimoramento para que este recurso seja suportado e você pode seguir eventuais atualizações neste link: CSCvj02809.

- Como perfil PTP, você pode usar o padrão (como feito até agora) ou especificar o perfil G.8275.2 (recomendado), conforme descrito na próxima seção. Observe que mesmo que o IOS-XE permita configurar o perfil G.8265.1, isso não é suportado no ambiente DOCSIS com cBR-8 e RPD.

O perfil G.8275.2

Você pode configurar o perfil G.8275.2 no escravo cBR-8 com uma origem GM dessa forma:

ptp clock ordinary domain 44

servo tracking-type R-DTI

clock-port TOMASTER slave profile g8275.2   <<<<<<<<<<

announce interval -3

announce timeout 10

delay-req interval -4

sync interval -4

transport ipv4 unicast interface Lo1588 negotiation

clock source 15.88.15.88

Note: quando a origem PTP não está diretamente conectada e há mais de um salto entre eles, é recomendável usar o perfil G.8275.2

Como mencionado anteriormente neste artigo, o limite de PTP ainda não é suportado no cBR-8. No entanto, se quiser configurar o perfil G.8275.2 no escravo cBR-8 com duas fontes GM, você precisa usar a definição de domínio de limite desta maneira:

ptp clock boundary domain 44

servo tracking-type R-DTI

clock-port slave1 profile g8275.2

<...>

transport ipv4 unicast interface Lo1588 negotiation

clock source 15.88.15.88        <<< THIS IS YOUR PTP MASTER

clock-port slave2 profile g8275.2

<...>

transport ipv4 unicast interface Lo1588 negotiation

clock source 15.88.2.8          <<< THIS IS THE ALTERNATE MASTER FOR PTP REDUNDANCY

Note: Apesar da palavra-chave de limite, o cBR-8 funciona como um relógio comum. Essa configuração de limite deve e só pode ser usada neste caso específico: configuração de PTP redundante com 2 GMs usando o perfil g8275.2 no escravo cBR-8.

Relógio de escravos no RPD

Apesar desta ser a configuração de RPD, ela precisa ser inserida no próprio cBR-8, já que o cBR-8 provisiona o dispositivo de telefone remoto.

ptp r-dti 1

[profile G.8275.2]                    <-- ONLY IF SPECIFIED IN THE cBR-8 PTP CONFIGURATION

ptp-domain 0

clock-port 1

clock source ip 15.88.15.88           <-- THIS IS YOUR PTP MASTER

clock source ip 15.88.2.8 alternate   <-- THIS IS THE ALTERNATE MASTER FOR PTP REDUNDANCY (OPTIONAL)

sync interval -4

announce interval -3

Caution: o número de domínio ptp deve ser o mesmo que configurado no mestre PTP.

Caution: Se o comando ethernet <index> não estiver configurado em clock-port <number>, o índice ethernet padrão é igual ao número da porta do relógio configurado. Isso mapeia as portas físicas no RPD (a ethernet 1 mapeia para vbh0, ethernet 2 para vbh1). Se essa configuração não corresponder à porta física usada no RPD, ela não será sincronizada com o relógio.

Note: Os intervalos para sincronização e anúncio são especificados na escala log2.

Value Log calculation Value in seconds

-5   2^-5        1/32s

-4   2^-4        1/16s

-3   2^-3        1/8s

-2   2^-2        1/4s

-1   2ˆ-1        1/2s

0    2^0         1s

1    2^1         2s

2    2^2         4s

3    2^3         8s

4    2^4         16s

5    2^5         32s

Verificação

Esses comandos emitidos do console RPD podem ser usados para verificar o status do PTP, que deve estar em PHASE_LOCK e SUB_SYNC, e os contadores de sincronização, solicitação de atraso e resposta de atraso que precisam aumentar:

# ssh 10.6.17.9 -l admin

R-PHY>ena

R-PHY#show ptp clock 0 state

apr state : PHASE_LOCK       <<<

clock state : SUB_SYNC       <<<

current tod : 1506419132 Tue Sep 26 09:45:32 2017

active stream : 0

==stream 0 :

port id : 0

master ip : 15.88.15.88

stream state : PHASE_LOCK    <<< Stream state must be PHASE_LOCK

Master offset : 1212         <<< Master offset (in ns) must be as close to 0 as possible

Path delay : -81553

Forward delay : -80341       <<< Forward delay and reverse delay must be within 500us of each other

Reverse delay : -77791       <<< Forward delay and reverse delay must be within 500us of each other

Freq offset : -86279

1Hz offset : -615

R-PHY#show ptp clock 0 statistics

<output omitted>

streamId  msgType           rx          rxProcessed     lost        tx

0        SYNC              8585001     8584995         0           0          <<<<<<

0        DELAY REQUEST     0           0               0           8585000    <<<<<<

0        P-DELAY REQUEST   0           0               0           0

0        P-DELAY RESPONSE  0           0               0           0

0        FOLLOW UP         0           0               0           0

0        DELAY RESPONSE    8584998     8584998         5           0          <<<<<<

0        P-DELAY FOLLOWUP  0           0               0           0

0        ANNOUNCE          536571      536571          0           0

0        SIGNALING         5593        5593            0           5591

0        MANAGEMENT        0           0               0           0

TOTAL                    17712163    17712157        5           8590591

Note: PHASE_LOCK é o estado correto quando tudo funciona. Consulte a seção Estado do relógio para obter outros estados e suas definições.

aviso: Houve problemas com a estabilidade do clock nos RPDs com grandes alterações no retardo da rede entre o PTP mestre e o RPD (alterações em mais de 5 ms). O RPD pode voltar à temporização freerun, o que pode fazer com que vários problemas, como modems, fiquem off-line. RPD versões V6.7 e superiores, filtre grandes pacotes de jitter e ajuste o limite de atraso para melhorar a estabilidade do PTP.

Relógio de limite no ASR900

Suponha que você queira configurar um relógio de limite como mestre alternativo para cBR-8 e RPD, caso o relógio mestre falhe ou se torne inalcançável. Esse relógio de limite usa uma fonte mestre diferente para fins de redundância (neste exemplo, 15.88.200.8). A configuração do relógio mestre neste cenário não é diferente da descrita anteriormente, portanto ela é omitida nesta seção.

ptp clock boundary domain 0

clock-port TO-MASTER slave

sync interval -5

transport ipv4 unicast interface Lo2008 negotiation

clock source 15.88.200.8      <<< THE PTP MASTER (Different from PTP master described above)

clock source 15.88.20.8 1     <<< AN ALTERNATE MASTER USED FOR REDUNDANCY (OPTIONAL)

clock-port TO-SLAVE master

transport ipv4 unicast interface Lo1588 negotiation

interface Loopback1588

ip address 15.88.2.9 255.255.255.255

end

Monitorar com SNMP

Para monitorar o número de sessões de ptp no ASR900 e cBR-8 com SNMP, você pode usar:

Objeto - cPtpClockPortNumOfAssociatedPorts

OID - 1.3.6.1.4.1.9.9.760.1.2.7.1.10

Troubleshoot

Esta seção fornece informações que você pode usar para solucionar problemas de sua configuração.

Identificar e Solucionar Problemas do PTP Master (ASR900)

No mestre, o mais importante é garantir que o PTP tenha uma fonte de relógio de rede para o clock, seja uma antena GPS (preferencial) ou um oscilador local.

Para garantir que o network-clock source funcione como esperado, você pode usar o comando:

ASR900#show network-clocks synchronization

Symbols: En - Enable, Dis - Disable, Adis - Admin Disable

NA - Not Applicable

* - Synchronization source selected

# - Synchronization source force selected

& - Synchronization source manually switched

Automatic selection process : Enable

Equipment Clock : 2048 (EEC-Option1)

Clock Mode : QL-Enable

ESMC : Enabled

SSM Option : 1

T0 : Internal

Hold-off (global) : 300 ms

Wait-to-restore (global) : 300 sec

Tsm Delay : 180 ms

Revertive : No

Nominated Interfaces

Interface SigType Mode/QL Prio QL_IN ESMC Tx ESMC Rx

*Internal NA NA/Dis 251 QL-SEC NA NA   <<<<<

External R0 10M NA/Dis 1 QL-FAILED NA NA

Gi0/2/5 NA Sync/En 1 QL-FAILED QL-PRC -

Solucionar Problemas do PTP Slave (cBR-8)

No cBR-8 como escravo, o que é importante observar é que ele suporta apenas as interfaces SUP DPIC para se conectar ao PTP mestre (a partir de agora), portanto não use a interface Gig0 ou as interfaces RPHY PIC, pois o PTP pode não funcionar através dessas interfaces.

Note: Consulte o Guia de configuração do software do dispositivo PHY remoto da Cisco para obter mais informações.

Durante a negociação PTP inicial, pode levar até 35 minutos para que o cBR-8 ajuste e alinhe seu relógio ao relógio do mestre PTP. Durante esse tempo, o relógio é visto no estado ADQUIRINDO no cBR-8:

cBR-8#show ptp clock running

PTP Ordinary Clock [Domain 0]

State      Ports     Pkts sent     Pkts rcvd     Redundancy Mode

ACQUIRING  1         687           1995          Hot standby

PORT SUMMARY

PTP Master

Name       Tx Mode     Role     Transport    State           Sessions   Port Addr

TOMASTER   unicast     slave    Lo1588       Uncalibrated    1          15.88.15.88

Se o estado de AQUISIÇÃO permanecer lá por mais de 35 minutos, pode indicar que o relógio mestre de PTP não é muito preciso e se desloca para frente e para trás, o que faz com que o cBR não seja capaz de AQUISIR corretamente. Isso pode ser visto com um servidor Linux com PTPd, por exemplo.

O relógio PTP no cBR-8 e no RPD deve fazer a sincronização de fase com o mestre antes que você solucione qualquer problema de DOCSIS. Há uma variedade de comandos que podem mostrar esse estado junto com as contagens de pacotes. Você deseja ver pacotes incrementados para sincronização, solicitação de atraso e resposta de atraso nesta saída:

cBR-8#show platform software ptpd stat stream 0

LOCK STATUS : PHASE LOCKED                          <<<<<<< must be PHASE LOCKED

SYNC Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : -5, Acting Interval -5

Tx packets : 0,  Rx Packets : 24074045            <<<<<<< Rx Packets must increase

Last Seq Number : 42454,  Error Packets : 0       <<<<<<< Last Seq Number must increase

Delay Req Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : -5

Tx packets : 24077289, Rx Packets : 0             <<<<<<< Tx Packets must increase

Last Seq Number : 0, Error Packets : 0

Delay Response Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : -5, Acting Interval : -5

Tx packets : 0, Rx Packets : 23983049             <<<<<<< Rx Packets must increase

Last Seq Number : 31420, Error Packets : 0        <<<<<<< Last Seq Number must increase

Announce Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : -3, Acting Interval : -3

Tx packets : 0, Rx Packets :  6030915             <<<<<<< Rx Packets must increase

Last Seq Number 44276 Error Packets 0             <<<<<<< Last Seq Number must increase

Signalling Packet Stats

Time elapsed since last packet: 0.0

Configured Interval : 0, Acting Interval : 0

Tx packets : 9944, Rx Packets : 9521              <<<<<<< Tx Packets and Rx Packets must increase

Last Seq Number : 0, Error Packets : 0

<output omitted>

O número do fluxo pode ser verificado sob o comando já introduzido show ptp clock running domain 0, na seção SESSION INFORMATION. A primeira sessão listada é stream 0, a segunda é stream 1 e assim por diante.

Se alguns dos contadores não aumentarem, há uma chance de haver um problema de rede e é recomendável verificar a perda de pacotes.

DTI e PTP

Para configurar o PTP no cBR-8, o DTI do relógio de cabo deve ser DESABILITADO; caso contrário, esta mensagem é exibida:

%[PTP]: NetSync source already configured. PTP slave configuration not allowed.

Além disso, uma eventual placa de linha I-CMTS inserida no mesmo chassi, depende da temporização PTP. Portanto, uma possível interrupção no relógio PTP GM também pode afetar os modems localizados atrás de uma placa de linha I-CMTS.

Atrasos e deslocamento do relógio

Para verificar o deslocamento do relógio mestre, e quais são os atrasos no caminho de encaminhamento para o mestre e o caminho inverso, você pode usar esse comando introduzido antes e filtrar pela seção Conjunto de dados atual.

O deslocamento do mestre deve ser o mais próximo de 0 possível e o retardo do caminho de encaminhamento deve ser o mais igual possível ao retardo do caminho inverso.

Aqui está um exemplo com bons valores, em comparação com valores incorretos capturados durante uma condição problemática:

----------------- GOOD -----------------

cBR-8#show platform software ptpd stat stream 0 | s Current Data Set

Current Data Set

Offset from master : -0.000000313

Mean Path Delay    : +0.000025042

Forward Path Delay : +0.000024729

Reverse Path Delay : +0.000024660

--------------- NOT GOOD ---------------

cBR-8#show platform software ptpd stat stream 0 | s Current Data Set

Current Data Set

Offset from master :  +0.002812485

Mean Path Delay    :  +0.000022503

Forward Path Delay :  +0.002834302

Reverse Path Delay :  -0.002789295

Os valores são expressos em segundos (portanto, o dígito menos significativo, o mais à direita, é nanossegundo), e o deslocamento do mestre é calculado como o atraso médio do caminho, menos o atraso do caminho de encaminhamento.

O atraso médio do caminho é calculado como a média entre forward e reverse: (retardo de caminho de avanço + retardo de caminho reverso) / 2.

No mundo ideal, o deslocamento do mestre seria 0, já que o retardo do caminho de encaminhamento seria igual ao retardo do caminho inverso, o que faz com que ambos sejam iguais ao retardo médio do caminho.

Dependendo da assimetria entre o caminho de encaminhamento e o caminho inverso, você pode ter um deslocamento negativo do mestre (se o retardo do caminho inverso for maior que o retardo do caminho de encaminhamento), ou um deslocamento positivo (se o retardo do caminho reverso for menor que o retardo do caminho de encaminhamento).

Se o valor de deslocamento for muito grande, ou você observar valores altamente flutuantes, é possivelmente um problema de variação de sinal ou um relógio mestre não preciso.

Quanto maior a tremulação, mais tempo o RPD ou o cBR-8 leva para entrar no estado PHASE_ALIGNED e mais tempo leva para se recuperar de uma situação de HOLDOVER.

As configurações de vários caminhos influenciam muito o jitter (devido ao fato de que alguns pacotes usam o caminho A e alguns pacotes usam o caminho B com atrasos diferentes, que é visto pelo cBR-8 e RPD como jitter), portanto, é necessário que o tráfego PTP use um único caminho (não balanceado de carga em vários links).

Identificar e Solucionar Problemas do PTP Slave (RPD)

No RPD, todos os comandos interessantes estão sob o comando show ptp umbrella:

R-PHY#show ptp clock 0 state

apr state : PHASE_LOCK

clock state : SUB_SYNC

current tod : 1506426304 Tue Sep 26 11:45:04 2017

active stream : 0

==stream 0 :

port id : 0

master ip : 15.88.15.88

stream state : PHASE_LOCK

Master offset : 6010

Path delay : -78442

Forward delay : -72432

Reverse delay : -81353

Freq offset : -86206

1Hz offset : -830

R-PHY#show ptp clock 0 statistics

AprState 6 :

2@0-00:14:54.347 3@0-00:14:15.945 2@0-00:06:24.766

1@0-00:06:15.128 0@0-00:03:59.982 4@0-00:03:40.782

ClockState 5 :

5@0-00:06:49.252 4@0-00:06:46.863 3@0-00:06:43.016

2@0-00:06:25.017 1@0-00:06:24.728

BstPktStrm 3 :

0@0-00:14:45.560 4294967295@0-00:14:07.272 0@0-00:06:15.160

StepTime 1 :

406874666@0-00:05:46.080

AdjustTime 99 :

427@0-02:05:11.705 -414@0-02:04:10.705 -396@0-02:03:09.705

145@0-02:02:08.705 -157@0-02:00:06.705 327@0-01:58:04.705

-195@0-01:57:03.705 -46@0-01:56:02.705 744@0-01:55:01.705

streamId msgType rx rxProcessed lost tx

0 SYNC 246417 246417 4294770689 0

0 DELAY REQUEST 0 0 0 118272

0 P-DELAY REQUEST 0 0 0 0

0 P-DELAY RESPONSE 0 0 0 0

0 FOLLOW UP 0 0 0 0

0 DELAY RESPONSE 117165 117165 4294902867 0

0 P-DELAY FOLLOWUP 0 0 0 0

0 ANNOUNCE 82185 82184 4294901761 0

0 SIGNALING 78 78 0 78

0 MANAGEMENT 0 0 0 0

TOTAL 445845 445844 12884575317 118350

R-PHY#show ptp clock 0 config

Domain/Mode : 0/OC_SLAVE

Priority 1/2/local : 128/255/128

Profile : 001b19000100-000000 E2E

Total Ports/Streams : 1 /1

--PTP Port 1, Enet Port 1 ----

Port local Address :10.6.17.9

Unicast Duration :300 Sync Interval : -5

Announce Interval : -3 Timeout : 11

Delay-Req Intreval : -4 Pdelay-req : -4

Priority local :128 COS: 6 DSCP: 47

==Stream 0 : Port 1 Master IP: 15.88.15.88

Note: Para obter mais desempenho de RPD, consulte o artigo Troubleshoot RPD DOCSIS Throughput Performance Issues (Solução de problemas de desempenho de throughput de RPD)

Informações Relacionadas

- Protocolo Precision Time - Wikipédia

- 1588-2008 - IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems (Padrão IEEE para um protocolo de sincronização de relógio de precisão para sistemas de medição e controle de rede)

- G.8265.1 : perfil telecom do protocolo de precisão para sincronização de frequência

- G.8275.1 : perfil telecom do protocolo de precisão para sincronização de fase/tempo com suporte de temporização completa da rede

- G.8275.2 : perfil telecom do protocolo de precisão para sincronização de tempo/fase com suporte de temporização parcial da rede

- Guia de configuração de cronometragem e sincronização, Cisco IOS XE Everest 16.5.1 (Cisco ASR 900 Series)

- Guia de configuração do software do dispositivo PHY remoto da Cisco para o software RPD 1x2 da Cisco 1.1

- Solucionar problemas de desempenho de throughput do DOCSIS RPD