요약
- RFC 3357은 순서가 보존된 단방향 손실 샘플에서 손실 거리와 손실 기간을 도출함으로써, 다섯 건의 고립된 손실이 더 이상 연속된 다섯 건의 손실과 동일하게 보이지 않도록 했습니다.
- 패턴은 패킷 유형, 방향, 샘플링, 타임아웃, 시계 및 계측기에 따라 조건부로 유지되었으며, 관찰된 시퀀스를 기술할 뿐 원인을 찾아내거나 사용자 영향을 입증하지는 않았습니다.
각각 백 개의 패킷으로 이루어진 두 개의 스트림을 생각해 봅시다. 두 스트림 모두에서 다섯 개의 패킷이 선언된 손실 임계값에 앞서 도착하지 않습니다. 대시보드는 양쪽 모두 5퍼센트의 손실을 보고합니다.
첫 번째 스트림에서는 사라진 패킷마다 성공적인 전달이 앞뒤로 둘러싸고 있습니다. 두 번째 스트림에서는 다섯 개가 모두 연속해서 사라집니다. 산술은 같습니다. 그러나 복구 기회는 같지 않습니다. 음성 디코더는 주변 소리를 이용해 고립된 공백을 은폐할 수 있지만, 사용 가능한 이력 자체가 사라지면 어려움을 겪습니다. 전송 계층 송신자는 동일한 개수라도 시간에 걸쳐 흩어진 경우와 다르게 묶음에 반응할 수 있습니다. 집계는 정확히 셈했음에도 중요한 부분을 버려 두었습니다.
2002년 8월에 Informational RFC로 공개된 RFC 3357,One-way Loss Pattern Sample Metrics가 다룬 문제가 바로 이것이었습니다. Rajeev Koodli와 R. Ravikanth는 새로운 범용 품질 점수를 제안하지 않았습니다. 그들은 기존의 IP Performance Metrics 결과, 즉 전달됨 또는 손실로 표시된 패킷 시퀀스를 가져와 그 표시들의 순서가 무엇을 드러낼 수 있는지 물었습니다.
이 구분이 역사적으로 중요했던 이유는 인터넷 측정이 관찰과 요약을 분리할 만큼 규율 있게 발전하고 있었기 때문입니다. RFC 2330은 IPPM 프레임워크를 제공했습니다. 단일 관찰(single)을 정의하고, 명시된 조건 아래 샘플을 수집한 뒤 통계를 계산하라는 것이었습니다. RFC 2680은 그 구조를 단방향 패킷 손실에 적용했습니다. 한 엔드포인트에서 다른 엔드포인트로 지정된 시각에 보내진 Type-P 패킷은 도착하면 0, 선택된 임계값 안에 도착하지 않으면 1의 값을 받았습니다.
이 0 또는 1의 판정은 의도적으로 좁게 정의되었습니다. 패킷 유형, 발신지, 목적지, 시각 및 측정 방법에 의존했습니다. 패킷은 네트워크에서 실제로 드롭될 수도, 임계값보다 늦게 도착할 수도, 측정 호스트의 자원이 소진되어 손실처럼 보일 수도 있었습니다. RFC 2680은 패킷 유형, 손실 임계값, 시계 보정 및 경로 정보를 결과와 함께 제시할 것을 요구했습니다. 그 샘플은 통상 포아송 간격의 테스트 시각을 사용했으며, 이후 평균 손실 비율 같은 통계가 이어졌습니다.
평균은 유용합니다. 샘플 대비 몇 개의 관찰이 손실로 분류되었는지 답합니다. 그러나 평균에는 기억이 없습니다. 동일한 다섯 개의 1을 아흔다섯 개의 0 사이에서 재배열해도 비율은 변하지 않습니다. 따라서 RFC 3357은 기존의 손실 판정을 유지하면서, 경쟁하는 손실 정의를 새로 만드는 대신 두 개의 파생된 관점을 추가했습니다.
첫 번째는 손실 거리였습니다. 연속적인 테스트 패킷에 연속된 시퀀스 번호를 부여합니다. 패킷이 손실되면 이전에 손실된 패킷의 시퀀스 번호를 뺍니다. 패킷 20이 손실되고 다음 손실 패킷이 50이라면 거리는 30입니다. 샘플 안에 앞선 손실이 없으므로 처음 관찰된 손실의 거리는 0입니다.
거리는 간격을 검사 가능하게 만듭니다. 거리 1은 샘플링된 두 패킷이 연속해서 손실되었음을 의미합니다. 더 큰 값은 손실 사이에 성공적인 관찰이 있었음을 보여줍니다. 그러나 그 단위는 샘플링된 패킷이지 자동으로 밀리초나 초가 아닙니다. 거리를 경과 시간으로 환산하려면 전송 일정이 필요합니다. 드문 불규칙한 샘플과 조밀한 주기적 미디어 스트림은 서로 매우 다른 간격을 나타내면서도 같은 시퀀스 거리를 줄 수 있습니다.
두 번째 관점은 손실 기간(loss period)이었습니다. 손실된 패킷이 성공적으로 수신된 패킷 뒤에 오면 새 기간이 시작됩니다. 연속해서 손실된 패킷들은 같은 번호의 기간에 머무르며, 수신된 패킷은 기간 0에 배정됩니다. 수신, 손실, 수신, 수신, 손실, 수신, 손실, 수신, 손실, 손실의 시퀀스에서 손실 기간은 네 개입니다. 마지막 두 개의 누락된 패킷은 두 기간이 아니라 하나의 기간에 속합니다.
이 선택은 모든 묶음에 같은 중요성이 있다고 가장하지 않으면서 묶음을 드러냈습니다. RFC 3357은 파생된 스트림들로부터 선택된 제약 델타에 기반한 가시적 손실률, 손실 기간의 개수, 각 기간의 길이, 기간 간 간격을 기술했습니다. 각 통계는 서로 다른 질문에 답합니다. 기간의 수가 많다고 해서 손실이 넓게 흩어져 있었음이 입증되지는 않습니다. 일부 기간 자체에 긴 버스트가 담겨 있을 수 있기 때문입니다. 임계값이 조건이 된 “가시적” 손실은 선택된 제약과 애플리케이션 모델에 상대적으로만 가시적입니다.
저자들의 예는 이 편집적 요점을 구체적으로 만들었습니다. 동일한 1퍼센트의 손실은 정기적인 100패킷 간격으로 흩어질 수도 있고, 연속적인 손실이 애플리케이션이 은폐할 수 있는 한계보다 가깝게 몰릴 수도 있습니다. 백분율만으로는 그 차이를 나타낼 수 없습니다. 그러나 RFC 3357 역시 그것만으로 지각을 판정할 수는 없습니다. 코덱 상태, 오류 은폐, 플레이아웃 버퍼, 재전송, 프레임 의존성 및 사용자의 내성이 여전히 결과를 좌우합니다.
따라서 샘플링은 각주가 아니었습니다. RFC 3357은 파생된 정의들이 서로 다른 샘플링 방법으로 작동할 수 있다고 밝힌 뒤, 포아송 샘플링이 VoIP나 TCP에는 적절한 값을 내지 않을 수 있다고 경고했습니다. 무작위로 드문 프로브 스트림은 실제 주기적 애플리케이션이 지나갈 짧은 버스트를 놓칠 수 있습니다. 반대로 주기적 스트림은 다른 주기적 프로세스와 동조하거나 예측 가능해질 수 있습니다.
세 달 뒤에 공개된 RFC 3432는 주기적 성능 스트림을 형식화했습니다. 능동 테스트가 고정 비트레이트 미디어와 유사해지도록 허용하고, 예측 가능성을 줄이기 위해 무작위 시작 시각을 사용하며, 테스트 기간을 제한하고, 레이트, 패킷 크기 및 타이밍 조건을 보고하도록 요구했습니다. 그 교훈은 주기적 샘플링이 포아송 샘플링을 이겼다는 것이 아니었습니다. 각각은 서로 다른 모집단의 사건을 비춥니다. 샘플링 방식은 주장의 일부였습니다.
이후 IPPM 작업은 이 원칙을 넓혔습니다. RFC 7312는 링크 기술이나 관찰 목표가 샘플링 가능한 범위를 제약하는 경우를 포함한 고급 스트림 및 샘플링 설계를 다루었습니다. RFC 7680은 이어서 RFC 2680을 폐기(obsolete)하고 새 프레임워크에 맞춰 기본 단방향 손실 메트릭을 갱신했습니다. 역사적 연쇄가 중요합니다. RFC 3357의 패턴 논리는 1999년의 기본 메트릭에서 파생된 것이며, 현재의 측정은 현재의 기본 및 샘플링 사양을 참조해야 합니다.
이 개념은 운영 보고로도 흘러 들어갔지만, 정의는 달랐습니다. RFC 3611은 미디어 품질에 유용한 런 길이 인코딩과 버스트/갭 메트릭을 포함하는 RTCP 확장 보고서를 추가했습니다. 수신기는 총량만이 아니라 손실이나 폐기가 어디에서 나타났는지를 보고할 수 있었습니다. 이후 RFC 7003은 지터 버퍼에서 발생하는 버스트 및 갭폐기(discard)메트릭을 위한 RTCP XR 블록을 규정했습니다. 네트워크가 전달했지만 너무 늦어서 버려진 패킷은, IPPM 임계값 전에 결코 수신되지 않은 패킷과 동일한 관찰이 아닙니다. 둘 다 재생을 해치더라도 그렇습니다.
전송 계층 제어는 또 하나의 경계를 만들었습니다. RFC 5348의 TCP-Friendly Rate Control은 한 왕복 시간 안에 발생한 하나 이상의 손실을 자신의 송신률 방정식을 위한 하나의 손실 이벤트로 묶습니다. 이 정의는 하나의 혼잡 사건이 컨트롤러에 의해 반복적으로 계산되지 않도록 합니다. 이것은 샘플링된 스트림에서 연속된 위치에 기반한 RFC 3357의 손실 기간의 별칭이 아닙니다. 비슷한 단어가 서로 다른 제어 루프에 쓰일 수 있습니다.
패킷 재정렬은 또 하나의 주의를 제공합니다. RFC 4737은 다른 순서로 도착하는 패킷에 대한 메트릭을 정의합니다. 측정 프로세스는 늦은 도착, 재정렬 및 손실을 어떻게 구분할지 결정해야 합니다. 선언된 대기 임계값과 병합 방법이 없으면, 일시적으로 부재한 패킷이 손실로 계산되었다가 나중에 재정렬로 나타날 수 있습니다. 그러한 규칙이 트레이스와 함께 보존될 때에만 트레이스는 조사를 뒷받침할 수 있습니다.
이후 RFC 6390은 더 넓은 메트릭 설계 규율을 밝혔습니다. 입력, 단위, 측정 지점, 타이밍, 샘플링, 타당성, 불확실성 및 의도된 용도를 문서화하라는 것입니다. RFC 6390은 일부 애플리케이션은 짧은 고손실 기간에 민감하면서 고립된 손실은 견디는 경우가 있음을 명시적으로 관찰합니다. 이름이 정밀하게 들린다고 해서 메트릭이 신뢰할 수 있는 것은 아닙니다. 그 매개변수와 한계가 측정의 일부입니다.
이는 운영자에게 명확한 통제 지점을 만듭니다. 두 손실 패턴 결과를 비교하기 전에, 발신지와 목적지, 방향, 패킷 유형과 크기, 관찰 구간, 샘플링 일정과 레이트, 손실 임계값, 시퀀스 부여, 시계 상태 및 계측기 용량을 일치시키십시오. 최종 비율뿐 아니라 순서가 보존된 결과를 보존하십시오. 어떤 가시적 손실 통계에 사용된 델타를 기록하십시오. 데이터가 능동 프로브에서 왔는지, 실제 애플리케이션에서 왔는지, RTP 수신기, 지터 버퍼 또는 전송 계층 컨트롤러에서 왔는지 식별하십시오.
같은 규율이 상업적 주장을 제한합니다. 버스트는 이 관찰된 샘플에서 손실이 몰려 있었다는 주장을 뒷받침할 수 있습니다. 그것만으로 어떤 큐, 링크, 라우터, 접속 사업자 또는 엔드포인트가 그것을 야기했는지 특정할 수 없습니다. 계약이 동일한 메트릭과 조건을 정의하지 않는 한 SLA 위반을 입증할 수 없습니다. 하나의 경로와 구간으로 전 모집단의 사용자 경험을 확립할 수 없습니다. 원인 규명에는 시간상 정렬된 토폴로지, 큐, 인터페이스, 라우팅, 호스트 및 애플리케이션 증거가 필요합니다.
능동 측정은 또한 측정 대상에 영향을 미칩니다. RFC 3357은 부주의하게 보내진 테스트 트래픽이 서비스 거부에 기여할 수 있고, 결과가 정보를 노출할 수 있으며, 위조된 측정이 오도할 수 있다고 경고합니다. 안전한 대응은 제한된 트래픽, 보호된 기록, 명시적인 권한 부여입니다. 각 패킷이 작다고 해서 프로브가 중립적이라고 가정하는 것이 아닙니다.
RFC 3357의 지속적인 기여는 유행하는 점수가 아닙니다. 평균이 시퀀스를 흉내 내지 못하게 막은 것입니다. 손실 비율, 손실 거리, 손실 기간 및 애플리케이션 결과는 서로 다른 계층에 속합니다. 각각은 정확하면서도 서로 대체 불가능할 수 있습니다.
이 독해는 또한 Lu Heng이 공개한 두 개의 분석 렌즈를 사용합니다. “Minimum Initial Specification”은 작고 재사용 가능한 정의를 먼저 두고 용도별 지역 결정을 뒤따르게 하는 것을 선호합니다. 하나의 기본 손실 싱글턴이 하나의 통계가 모든 애플리케이션을 지배하지 않으면서 여러 파생 동작을 지탱할 수 있다는 것입니다. “Reality Layers”는 관찰된 패킷 트레이스, 메트릭 라벨, 운영적 설명, 상업적 주장, 사용자의 경험을 분리합니다. 이 렌즈들은 편집적 해석이며, RFC 3357의 저작 또는 의도에 대한 주장이 아닙니다.
두 스트림 모두에서 다섯 개의 패킷이 사라졌습니다. 그것들이 홀로 빠졌는지 함께 빠졌는지 보여줄 수 있는 것은 순서가 보존된 기록뿐이었습니다.
출처
- RFC 3357: One-way Loss Pattern Sample Metrics
- RFC 3357의 RFC Editor 기록
- RFC 3357의 IETF Datatracker 기록
- RFC 3357의 IETF Datatracker 이력
- RFC 2330: Framework for IP Performance Metrics
- RFC 2330의 RFC Editor 기록
- RFC 2680: A One-way Packet Loss Metric for IPPM
- RFC 2680의 RFC Editor 기록
- RFC 3432: Network performance measurement with periodic streams
- RFC 3611: RTP Control Protocol Extended Reports
- RFC 5348: TCP Friendly Rate Control
- RFC 6390: Guidelines for Considering New Performance Metric Development
- RFC 7003: RTCP XR Burst/Gap Discard Metrics
- RFC 7312: Advanced Stream and Sampling Framework
- RFC 7680: A One-Way Loss Metric for IPPM
- RFC 4737: Packet Reordering Metrics
- Lu Heng: Minimum Initial Specification
- Lu Heng: Reality Layers
회원 브리핑
프로필 심층 컨텍스트
올바른 멤버십 등급으로 로그인하면 전체 브리핑과 출처 노트를 볼 수 있습니다.
Strategic Circle 전용
Strategic Circle
모든 독자에게 공개됩니다. 가입 후 로그인하면 프로필 브리핑를 열람할 수 있습니다.
Strategic Circle 가입하기Leadership Alliance 전용
Leadership Alliance
자격을 갖춘 IP 자산 소유자 및 운영진을 위한 콘텐츠입니다. 로그인하면 Leadership Alliance 브리핑을 열람할 수 있습니다.
Leadership Alliance 가입하기





