케이블 모뎀의 시간 오프셋(Ranging Offset)은 CMTS(Cable Modem Termination System)와 연결된 케이블 모뎀 간의 왕복 지연 시간을 나타내는 값입니다.이 값은 케이블 모뎀이 온라인 상태일 때 초기 범위 지정 프로세스의 일부로 CMTS 및 케이블 모뎀에 의해 계산됩니다.CMTS 및 케이블 모뎀은 올바른 시간 차감을 정확하게 파악하여 케이블 모뎀의 업스트림 전송이 적절한 시간에 CMTS에 도착할 때 올바르게 동기화되도록 하는 것이 중요합니다.
일부 케이블 모뎀은 초기 범위를 수행할 때 DOCSIS 사양의 특정 부분을 위반할 수 있으며 실제 값보다 훨씬 작은 음수 시간 오프셋 또는 시간 오프셋을 생성할 수 있습니다.케이블 모뎀에 0이 표시되거나 음수가 표시되면 DOCSIS를 준수하지 않고 모뎀에서 얻은 결과를 잘못 캐싱하여 마지막으로 사용한 타이밍 오프셋을 오프라인으로 전환한 다음 다시 등록 설정 시 해당 타이밍 오프셋을 다시 사용합니다.이 문제의 원인 및 권장 조치 과정에 대해 이 문서에서 설명합니다.문제의 원인은 CMTS가 아니라 케이블 모뎀의 동작 때문입니다.
문제의 가장 해로운 영향의 대부분은 CMTS에서 케이블 인터페이스 명령 케이블 맵 advance static을 구성함으로써 해결할 수 있지만, 케이블 모뎀 공급업체는 케이블 모뎀 펌웨어의 최신 버전을 공급하여 부정적인 타이밍 오프셋 문제를 실제로 해결할 책임이 있습니다.
CMTS에 연결하려면 케이블 모뎀을 완료해야 하는 다양한 프로세스에 대한 기본적인 지식을 갖추고 있어야 합니다.
이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.
CMTS와 케이블 모뎀 간의 왕복 지연을 나타내는 시간 오프셋은 일반적으로 네 가지 주요 요소에 의해 결정됩니다.
CMTS에서 케이블 모뎀의 물리적 거리
다운스트림 변조 체계 및 인터레브 깊이
업스트림 변조 체계 및 채널 폭
케이블 모뎀 및 펌웨어 모델
연결된 CMTS에서 show cable modem 명령을 실행하여 특정 케이블 모뎀의 시간 오프셋 값을 볼 수 있습니다.다음은 일반적인 시스템에서 이 명령의 출력 예입니다.
CMTS# show cable modem Interface Prim Online Timing Rec QoS CPE IP address MAC address Sid State Offset Power Cable3/0/U0 2 online 3011 0.75 5 0 10.1.1.52 0001.9659.4461 Cable3/0/U0 3 online 2647 0.50 7 0 10.1.1.40 0001.9659.5370 Cable3/0/U0 4 online 3011 0.25 5 0 10.1.1.48 0001.9659.4415 Cable3/0/U0 5 online 3007 0.25 6 0 10.1.1.11 0001.9659.43fd
시간 오프셋은 DOCSIS 틱 단위의 1/64로 계산됩니다.틱(tick)은 6.25 마이크로초 단위로 정의되며, 이를 통해 1개의 시간 오프셋 단위가 97.65625나노초와 같습니다.
시간 오프셋은 CMTS에 연결하기 위해 케이블 모뎀을 완료해야 하는 초기 범위 프로세스의 일부로 계산됩니다.시간 오프셋이 파생된 초기 범위 프로세스의 부분은 아래 그림 1에 나와 있습니다.이 그림에는 이 문서와 관련이 없는 초기 범위의 구성 요소가 몇 가지 누락되어 있습니다.
그림 1
그림 1에는 두 개의 타임라인이 있습니다.최상위 타임라인은 CMTS에 따라 시스템 타임스탬프를 표시합니다.아래쪽 타임라인은 케이블 모뎀에 따라 시스템 타임스탬프를 표시합니다.단순성을 위해 이 타임라인을 0에서 시작하고 가상의 타임 단위를 사용합니다.처음에 케이블 모뎀은 시스템 타임스탬프가 무엇인지 알지 못합니다.
케이블 모뎀은 CMTS가 전송한 SYNC 메시지를 올바른 시스템 타임스탬프와 함께 듣기 위해 기다려야 현재 타임스탬프가 무엇인지 알 수 있습니다.SYNC 메시지에서 발생한 전파 지연으로 인해 케이블 모뎀이 시스템 타임스탬프가 0이라는 SYNC 메시지를 수신할 때까지 CMTS의 타임스탬프가 3으로 증가했습니다.
다이어그램의 다음 메시지는 케이블 모뎀에서 타임스탬프 9에서 초기 범위 요청을 보내도록 명령하는 MAP 메시지입니다. 케이블 모뎀은 CMTS에서 타임스탬프 9가 언제 발생하는지 알지 못하기 때문에 자체 클럭에 따라 타임스탬프 9에서 초기 범위 요청을 보내야 합니다.
CMTS는 초기 범위 지정 요청이 CMTS 타임스탬프 9에서 16 사이에 언제라도 도착할 수 있을 것으로 예상하고 있습니다. 초기 범위 지정 요청을 수신하도록 할당된 이 시간을 초기 범위 지정 간격이라고 하며 케이블 플랜트의 가장 먼 지점에서 CMTS와 케이블 모뎀 간의 전파 지연을 수용할 만큼 커야 합니다.
케이블 모뎀은 내부 타임스탬프가 "9"인 경우 초기 범위 지정 요청을 전송하지만 초기 범위 지정 요청이 CMTS에 도달할 때까지 CMTS의 타임스탬프는 15입니다. 따라서 CMTS는 이 케이블 모뎀의 시간 오프셋을 15 - 9 = 6단위로 계산할 수 있습니다.
CMTS는 Ranging Response(범위 지정 응답) 메시지를 보내 이 Time Offset(시간 오프셋) 값을 케이블 모뎀에 전달합니다.케이블 모뎀이 이 이 메시지를 수신하면 CMTS로 전송되는 향후 메시지에 적절한 시간 오프셋을 추가할 수 있습니다.
아래의 그림 2에서 CMTS가 특정 타임스탬프에서 일부 데이터를 전송하도록 케이블 모뎀에 명령하면 모뎀이 시간 오프셋을 고려합니다.그림에서 MAP 메시지는 CMTS에서 Timestamp 70의 일부 데이터를 전송하도록 케이블 모뎀으로 전송됩니다. 케이블 모뎀이 시간 오프셋 6을 고려하는 경우 케이블 모뎀이 타임 스탬프 70 - 6 = 64로 데이터를 전송함을 의미합니다. 전송 속도는 타임스탬프 70에 CMTS에 도착합니다.
그림 2
케이블 모뎀이 어떤 이유로든 온라인 상태에서 오프라인 상태로 전환될 경우 CMTS에 다시 연결하려면 초기 범위를 다시 수행해야 합니다.이 과정에서 일부 케이블 모뎀은 두 번째로 온라인 상태가 될 때 원래 시간 오프셋을 기억하여 "사기"를 합니다.부정행위가 초기 범위를 더 빠르게 한다고 생각할 수도 있지만, 사실 이것은 모뎀이 온라인 상태로 돌아가는 데 걸리는 시간을 개선할 수 없다.실제로 CMTS에 대해 초기 범위 지정 패킷이 "너무 일찍" 도착하면 다른 모뎀의 데이터가 손실되고, CM이 다시 연결하려고 시도해도 성공하지 못합니다.초기 범위 지정 패킷이 광범위한 기회의 시작에 정확히 도달하면 CMTS는 시간 오프셋이 0으로 표시되지만 더 나은 연결 기회를 제공하지 않습니다.
이 섹션에서는 이러한 케이블 모뎀이 온라인으로 전환될 때 DOCSIS 사양을 위반하는 방법에 대한 세부 정보를 다룹니다.
그림 3은 모뎀이 초기 범위 지정을 수행할 때 원래 시간 오프셋을 기억하는 이벤트 순서를 보여줍니다.이 다이어그램에서는 CMTS와 케이블 모뎀 간의 전파 지연이 모뎀이 오프라인 상태로 전환된 후 다시 온라인 상태로 전환되는 시간 사이에 변경되지 않는다고 가정합니다.
그림 3
다이어그램에서 케이블 모뎀은 타임스탬프 88에 초기 범위 요청을 전송하도록 지시됩니다. 케이블 모뎀은 이전 시간 오프셋을 기억하므로 88 - 6 = 82에 범위 요청을 전송하기로 결정합니다. 즉, 케이블 모뎀의 초기 범위 지정 요청이 타임스탬프 88에 CMTS에 도착합니다. 따라서 CMTS는 이 케이블 모뎀의 시간 오프셋이 0이라고 간주합니다.다음 show cable modem 출력에서 MAC 주소가 00ff.de4d.b3ef인 모뎀은 이러한 종류의 동작을 나타냅니다.
CMTS# show cable modem Interface Prim Online Timing Rec QoS CPE IP address MAC address Sid State Offset Power Cable3/0/U0 2 online 3011 0.75 5 0 10.1.1.52 0001.9659.4461 Cable3/0/U0 3 online 2647 0.50 7 0 10.1.1.40 0020.4001.5370 Cable3/0/U0 4 online 0 0.00 5 0 10.1.1.57 00ff.de4d.b3ef Cable3/0/U0 5 online 3011 0.25 5 0 10.1.1.48 0001.9659.4415
아시다시피, HFC 네트워크의 전파 지연 또는 레이턴시는 CMTS에서 모뎀으로, 그리고 백으로 가는 파이버 및 동축 거리를 통과하는 빛의 속도로 정의됩니다.이 속도는 온도에 따라 달라지며, HFC 네트워크에서 일반적으로 장거리에 따라 달라지며, 매우 정확한 타이밍 해상도는 매일 수백 개의 시간 틱(ticks)에 따라 달라집니다.업스트림 또는 다운스트림 경로의 전달 지연 또는 대기 시간이 모뎀이 오프라인 상태가 되는 시간 사이에 변경된 다음 다시 온라인 상태로 전환하려고 하면 모뎀이 기억하는 시간 오프셋은 유효하지 않습니다.전파 지연이 증가하면 모뎀이 다시 온라인 상태가 될 때 이벤트 순서가 그림 4와 같이 나타날 수 있습니다.
그림 4
그림 4에서 CMTS는 케이블 모뎀의 타이밍 오프셋이 2라고 생각합니다. 이는 케이블 모뎀 표시 출력에 보고된 타이밍 오프셋이 가능한 최소 왕복 시간보다 짧은 시간을 표시하는 실제 실상 시나리오를 나타냅니다.케이블 모뎀이 타이밍 오프셋을 1000보다 크게 보고할 경우 그림 4의 케이블 모뎀과 같이 작동할 수 있습니다. 다음 show cable modem에서 MAC 주소 00ff.de4d.b3ef가 있는 모뎀을 출력하면 이러한 동작이 표시됩니다.
CMTS# show cable modem Interface Prim Online Timing Rec QoS CPE IP address MAC address Sid State Offset Power Cable3/0/U0 2 online 3011 0.75 5 0 10.1.1.52 0001.9659.4461 Cable3/0/U0 3 online 2647 0.50 7 0 10.1.1.40 0020.4001.5370 Cable3/0/U0 4 online 35 0.00 5 0 10.1.1.57 00ff.de4d.b3ef Cable3/0/U0 5 online 3011 0.25 5 0 10.1.1.48 0001.9659.4415
CMTS와 케이블 모뎀 간의 경로 전파 지연이 모뎀이 오프라인 상태가 된 후 다시 온라인 상태가 되는 시간 사이에 약간 감소하는 경우도 있습니다.그림 5에 나와 있습니다.
그림 5
그림 5에서 CMTS는 초기 범위 지정 간격이 시작되기 전에 2개 단위인 타임스탬프 86에서 케이블 모뎀 범위 지정 요청을 수신합니다.CMTS가 이 Ranging Request(범위 지정 요청)를 계속 수신하고 해석할 수 있다고 가정하면 CMTS는 케이블 모뎀의 시간 오프셋이 음수인 2로 간주합니다. 이는 show cable modem 출력에 보고된 시간 오프셋이 음수인 실제 실물 시나리오를 나타냅니다.다음 show cable modem에서 MAC 주소 00ff.de4d.b3ef가 있는 모뎀의 출력에는 이러한 종류의 동작이 표시됩니다.
CMTS# show cable modem Interface Prim Online Timing Rec QoS CPE IP address MAC address Sid State Offset Power Cable3/0/U0 2 online 3011 0.75 5 0 10.1.1.52 0001.9659.4461 Cable3/0/U0 3 online 2647 0.50 7 0 10.1.1.40 0020.4001.5370 Cable3/0/U0 4 online -93 0.00 5 0 10.1.1.57 00ff.de4d.b3ef Cable3/0/U0 5 online 3011 0.25 5 0 10.1.1.48 0001.9659.4415
음수나 잘못된 시간 오프셋을 생성하는 모뎀으로 인해 발생하는 주요 문제는 12.0(9)SC, 12.1(2)EC1, 12.1(1a) 및 12.1(1a)T 이후 버전의 Cisco IOS® 소프트웨어 릴리스를 실행하는 Cisco CMTS 제품에서 기본적으로 활성화되는 동적 맵 고급 알고리즘의 중단입니다.
Dynamic Map Advance 알고리즘은 CMTS에서 가장 먼 케이블 모뎀의 시간 오프셋을 동적으로 확인하여 케이블 모뎀의 업스트림 성능을 크게 향상시킵니다.CMTS는 이 정보를 사용하여 업스트림 대역폭을 요청하는 케이블 모뎀과 CMTS가 실제로 케이블 모뎀에 이 대역폭을 할당하는 시간 사이의 지연 시간을 줄일 수 있습니다.
그림 6은 Dynamic Map Advance 알고리즘이 최대 타이밍 오프셋을 사용하는 방법을 보여줍니다.각 케이블 모뎀의 왕복 지연 시간은 다이어그램에 나와 있습니다.각 모뎀에 대해 보고된 시간 오프셋을 보면 CMTS에서 가장 먼 모뎀의 시간 오프셋을 계산할 수 있습니다.
그림 6을 클릭하여 Dynamic Map Advance 알고리즘이 최대 타이밍 오프셋을 사용하는 방법을 확인합니다.
CMTS에서 가장 먼 케이블 모뎀이 부정적인 시간 오프셋 문제를 나타낼 경우 CMTS는 이 케이블 모뎀이 실제 케이블보다 CMTS에 더 가깝다고 생각합니다.다른 방법으로 show cable modem 출력에 있는 이 모뎀의 시간 오프셋이 실제보다 훨씬 작습니다.즉, Dynamic Map-Advance 알고리즘이 모든 케이블 모뎀의 최대 왕복 지연 시간을 계산할 때 CMTS에서 모뎀의 실제 거리를 제대로 고려하지 않습니다.이렇게 하면 이 가장 먼 모뎀의 연결 문제가 발생합니다.
그림 7은 시스템의 가장 먼 케이블 모뎀에 잘못된 시간 차감이 있는 상황을 보여줍니다.가장 먼 모뎀의 실시간 오프셋이 30이지만 시간 오프셋은 -2로 보고됩니다. 즉, 동적 맵 고급 알고리즘은 시스템의 가장 먼 모뎀이 시간 오프셋 20을 가진 모뎀이라고 인식합니다. 이렇게 하면 시스템에 가장 먼 모뎀이 동적 맵 고급 컷오프 포인트를 넘어 시스템에 배치됩니다.
그림 7을 비디오로 보려면 여기를 클릭하십시오.
12.0(10)SC 이후 버전의 Cisco IOS 소프트웨어, 12.1(2)EC1, 12.1(2) 및 12.1(2)T에는 부정적인 시간 오프셋이 있는 케이블 모뎀으로부터 동적 맵 고급 알고리즘을 보호하는 메커니즘이 포함되어 있습니다.케이블 모뎀이 음수의 시간 오프셋과 함께 온라인 상태가 되면 CMTS는 다음과 같은 오류 메시지를 기록합니다.
%UBR7200-4-BADTXOFFSET: Bad timing offset -2 detected for cable modem 00ff.0bad.caf3
이 메시지가 CMTS에 표시되면 모뎀 공급업체에 문의하여 문제가 없는 펌웨어 버전을 요청해야 합니다.
부정적인 시간 오프셋 문제가 있는 케이블 모뎀이 연결을 유지하도록 하려면 CMTS에 연결된 모든 케이블 모뎀에서 DOCSIS 호환 펌웨어를 실행할 때까지 동적 맵 고급 알고리즘을 꺼야 합니다.특정 다운스트림 포트에서 동적 맵 고급을 비활성화하려면 CMTS에서 다음 명령을 입력합니다.
CMTS# conf t Enter configuration commands, one per line. End with CNTL/Z. CMTS(config)# interface cable 3/0 !--Specify the Cable interface affected CMTS(config-if)# cable map-advance static CMTS(config-if)# end CMTS#
동적 맵 고급 기능이 꺼져 있는지 확인하려면 show controller cable X/Y 업스트림 Z의 출력에서 Map Advance(Static) 줄을 찾습니다. 여기서 X/Y는 케이블 다운스트림 포트 번호이고 Z는 활성 업스트림 포트입니다.
CMTS# show controller cable 3/0 upstream 0 Cable3/0 Upstream 0 is up Frequency 25.008 MHz, Channel Width 1.600 MHz, QPSK Symbol Rate 1.280 Msps Spectrum Group is overridden SNR 33.640 dB Nominal Input Power Level 1 dBmV, Tx Timing Offset 2817 Ranging Backoff automatic (Start 0, End 3) Ranging Insertion Interval automatic (60 ms) Tx Backoff Start 0, Tx Backoff End 4 Modulation Profile Group 1 Concatenation is enabled part_id=0x3137, rev_id=0x03, rev2_id=0xFF nb_agc_thr=0x0000, nb_agc_nom=0x0000 Range Load Reg Size=0x58 Request Load Reg Size=0x0E Minislot Size in number of Timebase Ticks is = 8 Minislot Size in Symbols = 64 Bandwidth Requests = 0x2F Piggyback Requests = 0x22 Invalid BW Requests= 0x0 Minislots Requested= 0x50D Minislots Granted = 0x50D Minislot Size in Bytes = 16 Map Advance (Static) : 3480 usecs UCD Count = 122 DES Ctrl Reg#0 = C000C043, Reg#1 = 0
동적 map-advance가 비활성화된 후에도 BDTXOFFSET 오류 메시지가 표시될 수 있지만 케이블 모뎀은 연결을 유지할 수 있어야 합니다.
그림 5에서 볼 수 있듯이, 음수의 시간 오프셋이 있는 케이블 모뎀은 올바른 시간 전에 초기 범위 요청을 전송할 수 있습니다.이러한 조기 전송은 다른 케이블 모뎀에서 보내는 데이터를 방해할 수 있습니다.즉, 초기 범위 지정 요청과 다른 케이블 모뎀에서 보낸 데이터가 모두 손상되어 손실됩니다.
최악의 경우는 음수의 시간 오프셋을 표시하는 케이블 모뎀이 다른 모뎀의 유효한 데이터 전송을 덮어쓰는 초기 범위 지정 요청을 몇 초마다 전송한다는 것입니다.이러한 방식으로 작동하는 하나의 모뎀은 심각한 문제가 아닐 수 있지만 이러한 방식으로 작동하는 여러 모뎀은 상당한 데이터 손실의 원인이 될 수 있습니다.
이 문제를 해결하는 유일한 방법은 케이블 모뎀 공급업체에 연락하여 부정적인 시간 오프셋 문제의 영향을 받지 않는 펌웨어 버전을 가져오는 것입니다.이 문제를 방지하기 위해 CMTS에 구성할 수 있는 항목이 없습니다.
음수 시간 오프셋의 가장 드문 대체 원인 중 하나는 두 개 이상의 CMTS 디바이스가 공통 케이블 세그먼트를 지원하는 것입니다.특정 케이블 세그먼트에 대해 동일한 업스트림 주파수 설정으로 두 CMTS를 설정한 경우 한 CMTS가 다른 CMTS에 연결하는 케이블 모뎀에서 초기 범위 요청을 "초과"할 수 있습니다.이 초기 범위 지정 요청은 초기 범위 지정 간격 내에서 임의의 시간에 수신될 수 있으므로 케이블 모뎀에 대해 잘못된 시간 오프셋이 계산됩니다.
이 문제의 일반적인 증상은 show cable modem 명령이 오프라인 또는 init(r1) 상태의 여러 케이블 모뎀을 음수, 매우 작은 양수 또는 매우 큰 양의 시간 오프셋을 표시합니다.아래 샘플 출력에서 이 범주에 속하는 모뎀은 굵게 표시됩니다.
CMTS# show cable modem Interface Prim Online Timing Rec QoS CPE IP address MAC address Sid State Offset Power Cable3/0/U0 1 online 2801 -0.50 5 0 10.1.1.44 0001.9607.3831 Cable3/0/U0 2 offline 103 0.75 5 0 10.1.1.52 0001.9659.4461 Cable3/0/U0 3 online 2647 0.50 7 0 10.1.1.40 0020.4001.5370 Cable3/0/U0 4 init(r1) -93 0.00 5 0 10.1.1.57 00ff.de4d.b3ef Cable3/0/U0 5 online 3091 0.25 5 0 10.1.1.48 0001.9659.4415 Cable3/0/U0 6 online 2811 1.25 5 0 10.1.1.24 0002.fdfa.0a35 Cable3/0/U0 7 offline 17291 1.00 5 0 10.1.1.33 0050.7366.1fb9 Cable3/0/U0 8 online 2816 1.00 5 0 10.1.1.11 0001.9659.43fd
SID 2가 있는 모뎀은 타이밍 오프셋이 1000보다 훨씬 적게 표시되고, SID 4가 있는 모뎀은 음수 시간 오프셋을 표시하고, SID 7이 있는 모뎀은 대부분의 모뎀보다 훨씬 큰 타이밍 오프셋을 표시합니다.
이 문제를 해결하는 방법은 두 CMTS가 서로 다른 업스트림 주파수를 사용하도록 구성하는 것입니다.동일한 케이블 세그먼트의 두 장치가 동일한 업스트림 주파수를 동시에 사용해서는 안 됩니다.그러나 물리적으로 분리된 케이블 세그먼트에 연결된 경우 동일한 업스트림 주파수를 사용하여 두 개의 개별 디바이스를 동시에 사용할 수 있습니다.