KR102113803B1 - 패킷-교환 통신 네트워크에서의 시간 측정 - Google Patents

패킷-교환 통신 네트워크에서의 시간 측정 Download PDF

Info

Publication number
KR102113803B1
KR102113803B1 KR1020167018326A KR20167018326A KR102113803B1 KR 102113803 B1 KR102113803 B1 KR 102113803B1 KR 1020167018326 A KR1020167018326 A KR 1020167018326A KR 20167018326 A KR20167018326 A KR 20167018326A KR 102113803 B1 KR102113803 B1 KR 102113803B1
Authority
KR
South Korea
Prior art keywords
packets
pki
packet
time
marking
Prior art date
Application number
KR1020167018326A
Other languages
English (en)
Other versions
KR20160098321A (ko
Inventor
마우로 코칠리오
Original Assignee
텔레콤 이탈리아 소시에떼 퍼 아찌오니
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 텔레콤 이탈리아 소시에떼 퍼 아찌오니 filed Critical 텔레콤 이탈리아 소시에떼 퍼 아찌오니
Publication of KR20160098321A publication Critical patent/KR20160098321A/ko
Application granted granted Critical
Publication of KR102113803B1 publication Critical patent/KR102113803B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/022Capturing of monitoring data by sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

통신 네트워크를 통해서 전송된 패킷 플로우 상에서 시간 측정을 수행하기 위한 방법이 개시된다. 상기 전송 노드는 패킷들을 교번하는 구간들에서 전송되는 제1 패킷들 및 제2 패킷들로 분할한다. 각 구간에서, 전송 노드는 패킷의 피처를 그 패킷이 시간 측정을 겪을 것이라는 것을 표시하는 제1 값 또는 그 패킷이 시간 측정을 겪지 않을 것이라는 것을 표시하는 제2 값으로 세팅함으로써 각 패킷을 또한 마킹한다. 상기 제1 값으로 마킹된 두 패킷들의 전송 시각들은 구간 지속시간보다 더 짧은 미리 정의된 전송-사이 시간만큼 서로 지연된다. 상기 제1 값으로 마킹된 각 패킷에 대해, 상기 전송 노드는 전송 타임스탬프를 생성하고 상기 수신 노드는 수신 타임스탬프를 생성한다. 그러면, 각 구간의 끝 이후에, 이전의 구간 동안에 전송된 상기 제1 값으로 마킹된 패킷들의 전송 타임스탬프들 및 수신 타임스탬프들을 기반으로 하여 시간 측정이 수행된다.

Description

패킷-교환 통신 네트워크에서의 시간 측정 {TIME MEASUREMENT IN A PACKET-SWITCHED COMMUNICATION NETWORK}
본 발명은 통신 네트워크의 분야에 관련된다. 특히, 본 발명은 패킷-교환 통신 네트워크에서 두 측정 포인트들 사이에서 전송된 데이터 플로우 (특히, 패킷 플로우)의 시간 측정 (특히, 지연 측정 및/또는 지터 측정)을 수행하기 위한 방법에 관련된다. 또한, 본 발명은 그런 방법을 구현하도록 구성된 네트워크 통신을 위한 노드들 및 컴퓨터들에 관련되며, 그리고 그런 노드들 및 컴퓨터들을 포함하는 컴퓨터 네트워크들에 관련된다.
패킷-교환 통신 네트워크에서, 있을 수 있는 중간 노드들을 통해서 소스 노드로부터 목적지 노드로 경로 설정된 패킷들의 모습으로 데이터가 전송된다. 예시적인 패킷-교환 네트워크들은 IP (Internet Protocol) 네트워크들, 이더넷 네트워크들 및 MPLS (Multi-Protocol Label Switching) 네트워크들이다.
패킷들은 그 목적지 노드에 항상 도달하지는 않으며, 즉, 패킷들은 네트워크를 통한 전송 동안에 손실될 수 있다. 패킷 손실은 상이한 이유들로 인한 것이다. 예를 들면, 노드 또는 링크가 고장날 수 있으며, 또는 패킷들은 노드의 포트들의 혼잡으로 인해서 노드에 의해 폐기될 수 있다. 게다가, 패킷들이 비트 오류들을 포함하기 때문에 노드에 의해서 패킷들이 폐시될 수 있을 것이다. 어느 경우에건, 패킷-교환 네트워크를 통해 데이터는 전송하여 서비스를 제공할 때에, 전송 동안에 손실된 패킷들의 레이트는 그 서비스의 서비스 품질 (QoS)에 영향을 미친다.
게다가, 패킷은 소스 노드에 의해 전송 시각에 전송되며 그리고 목적지 노드에 의해 수신 시각에 수신된다. 전송 시각과 수신 시각 사이에 경과한 시간은 일반적으로 "단방향 지연 (one-way delay)"으로 불린다. 패킷의 단방향 지연은 소스로부터 목적지까지 패킷이 지나가는, 있을 수 있는 중간 노드들의 개수, 각 노드에서 패킷의 영속 시간 (permanence time) 그리고 링크들 도중의 전파 (propagation) 시간에 주로 종속된다. 패킷들은 각 노드에 의해 홉-바이-홉 (hop-by-hop)으로 경로 설정되기 때문에, 패킷들의 지나가는, 있을 수 있는 중간 노드들의 개수 그리고 각 노드에서의 패킷들의 영속 시간 둘 모두는 예측 불가능하다. 따라서, 패킷의 단방향 지연은 거의 예측 불가능하다.
게다가, 동일한 패킷 플로우 (packet flow)의 패킷들은 상이한 단방향 지연들을 가질 수 있다. 동일한 데이터 플로우 중의 두 패킷들의 단방향 지연들 사이의 차이는 "연속적 도착들 사이 지터 (interarrival jitter)" (또는, 간단하게, "지터")로 불려진다.
패킷-교환 네트워크에 의해 통신 서비스 (특히, 호출, 컨퍼런스 콜, 비디오 컨퍼런스 등과 같은 실시간 음성 또는 데이터 서비스)가 제공될 때에, 상기 서비스를 운반하는 패킷 플로우에 영향을 미치는 패킷 손실, 단방향 지연 및 지터의 측정은 그 서비스의 최종 사용자들에 의해 감지되는 서비스 품질 (QoS)의 표시를 제공한다. 그러므로, 통신 네트워크 내 패킷 플로우들의 패킷 손실, 단방향 지연 및/또는 지터를 측정하는 것은 네트워크 오퍼레이터들의 특별한 관심 대상이다.
(본 출원인 명의의) WO 2010/072251은 전송 노드로부터 수신 노드로의 통신 네트워크를 통해 전송된 데이터 플로우의 데이터 손실을 측정하기 위한 방법을 개시한다. 데이터 플로우의 데이터 유닛들을 전송하기 이전에, 전송 노드는 상기 데이터 플로우를 블록들로 분할하기 위해 각 데이터 유닛을 마킹한다. 특히, 전송 노드는 각 데이터 유닛의 헤더의 비트를 "1" 또는 "0"으로 세팅함으로써 그 데이터 비트를 마킹한다. 상기 마킹은 블록들의 시퀀스의 결과를 가져오며, 이 경우에 "1"로 마킹된 데이터 유닛들의 블록들은 "0"으로 마킹된 데이터 유닛들의 블록들과 시간 상 교번한다. 상기 블록들은 "블록 구간 (block period)" Tb로 명명된 동일한 지속시간 (예를 들면, 5분)을 가질 수 있다.
(본 출원인 명의의) WO 2011/079857은 데이터 플로우 상의 (특히, 단방향 지연 및/또는 지터를 측정하는 용도의) 시간 측정을 수행하기 위한 방법을 개시한다. WO 2011/079857에 따르면, WO 2010/072251에 의해 개시된 상기의 마킹 동작에 추가로, 각 블록 구간에서 전송 타임스탬프들 및 수신 타임스탬프들이 생성되며, 이것들은 현재 블록의 미리 정해진 데이터 유닛들이 전송되고 수신된 시각들을 표시한다. 특히, 전송 노드는 현재 블록 구간 동안에 전송되는 패킷들을 카운트하며 그리고 매 X개의 전송된 패킷들마다 전송 타임스탬프를 생성한다. 수신 노드는 유사하게 현재 블록 구간 동안에 수신되는 패킷들을 카운트하며 그리고 매 X개의 수신된 패킷들마다 수신 타임스탬프를 생성한다. 다음의 블록 구간에서, 상기 전송 타임스탬프 및 수신 타임스탬프는 상기 미리 정의된 데이터 유닛들에 영향을 주는 단방향 지연 및 지터를 계산하기 위해 사용된다.
2013년 2월 25일의 인터넷 초안 "Coloring based IP flow performance measurement framework, draft-chen-coloring-based-ipfpm-framework-01"은 패킷 손실 및 지연 측정들을 가능하게 하기 위해서 패킷들을 상이한 컬러 블록들로 "착색 (color)"하기 위해 IP 헤더의 미사용 비트를 세팅하는 것을 개시한다. 지연 측정들을 위해, 시간 구간 내에 단일 패킷이 착색된다. 송신자는 착색된 패킷이 전송될 때에 타임스탬프를 기록하며, 수신자는 그 착색된 패킷을 탐지할 때의 타임스탬프를 기록한다. 이 두 타임스탬프들을 이용하여, 패킷 지연이 계산된다.
본 출원인은 WO 2011/079857에 의해 설명된 지연 및/또는 지연 측정들이 패킷 손실도 수신 시퀀스 오류들도 발생하지 않는, 즉, 일정 블록 구간 동안에 전송된 모든 패킷들이 그 패킷들이 전송되었던 순서와 동일한 순서로 수신될 때인 블록 구간들에 대해서만 유효한 결과들을 제공한다는 것에 주목했다.
그러나, 블록 구간에 영향을 미치는 패킷 손실이 검출될 수 있을 때에 (그리고, 그 블록 구간에 관련된 시간 측정 (time measurement)들이 그에 따라서 유효하지 않은 것으로 폐기될 수 있을 때에), 수신 시퀀스 오류들은 검출되지 않을 수 있을 것이며, 이는 수신 노드가 패킷 카운트에 관해서만 시간 측정될 패킷들에 대한 식별을 기초로 하기 때문이다. 그래서, 어떤 패킷 손실도 발생하지 않았던 블록 구간에서 수신 시퀀스 오류가 발생하고, 그리고 상기 오류가 시간 측정될 패킷에 결부되는 경우에, 상기 수신 노드는 오류를 탐지할 수 없으며, 따라서, 그 블록 구간에 관련된 시간 측정들이 유효하지 않다는 것을 인식할 수 없다.
반면에, 상기 인용된 인터넷 초안은 측정될 패킷들의 색상을 기반으로 하여 그 패킷들에 대한 식별들을 제공하며, 그러므로, 원칙적으로, 그런 패킷들에 결부된 수신 시퀀스 오류들의 경우에도 측정될 패킷들에 대한 적절한 식별을 허용한다. 그러나, 이 기술 또한 몇몇의 결점들을 나타낸다.
먼저, 측정될 패킷들의 시퀀스는 어떤 불연속성들도 가지지 않으며, 이는 측정될 패킷들 모두가 동일한 색상을 가지기 때문이다. 그러므로, 두 개의 연속적인 착색된 패킷들에 결부된 있을 수 있는 수신 시퀀스 오류는 탐지될 수 없다. 그 결과인 시간 측정은 따라서 유효하지 않지만, 그런 무효함은 탐지될 수 없다. 더욱이, 모든 후속의 시간 측정들 또한 유효하지 않으며, 이는 수신 시퀀스 오류의 발생 시에 들어온 수신 타임스탬프 오류가 착색된 패킷들의 전체 시퀀스를 따라서 전파되기 때문이다.
착색된 패킷들의 시퀀스 내에서 수신 시퀀스 오류들을 회피하기 위해서, 착색하는 구간 (즉, 두 개의 연속적인 착색된 패킷들의 전송 사이에 경과하는 시간)은, 예를 들면, 1분 또는 그 이상으로 오히려 길어야 한다. 수신 노드에서 각 착색된 패킷은 시간을 기반으로 해서만 다음의 착색된 패킷 및 이전의 착색된 패킷과 구분되기 때문에, 이것은 일정 착색 구간 동안에 수신된 착색된 패킷이 예정된 패킷이라는 것을 보증한다.
그러나, 이 방식에서 아주 감소된 개수의 패킷들의 착색되고 그리고 시간 측정되며, 따라서 불리하게도, 매우 감소된 개수의 시간 측정 샘플들이 제공된다.
위의 내용을 고려하여, 본 출원인은 패킷-교환 통신 네트워크에서 두 측정 포인트들 (노드들 또는 컴퓨터들) 사이에서 전송되는 패킷 플로우 상에서 시간 측정을 수행하기 위한 방법으로 전술한 결점들을 극복하는, 즉, 시퀀스 오류들을 수신한 것에 면역성이 있으며 그리고 적절한 개수의 시간 측정 샘플들을 제공하는 방법을 제공하는 상기 문제에 달려들었다.
다음의 설명 및 청구항들에서, "패킷 플로우 상에서 시간 측정을 수행"하는 것은 다음의 것들을 측정하는 동작을 표시할 것이다:
- 두 측정 포인트들 사이에서의 전송에 의한 상기 패킷 플로우의 패킷들에 유발된 단방향 지연 또는 양방향 지연; 및/또는
- 두 측정 포인트들 사이에서의 전송에 의한 상기 패킷 플로우의 패킷들 쌍에 유발된 지터.
게다가, 다음의 설명 및 청구항들에서, "패킷에 마킹"의 표현은 상기 패킷의 적어도 하나의 피처 (feature)를 미리 정의된 마킹 값으로, 특히 적어도 두 개의 교번하는 (alternative) 마킹 값들 중 하나로 세팅하는 동작을 나타낼 것이다. 예를 들면, 패킷을 마킹하는 동작은 상기 패킷의 하나 또는 그 이상의 비트들 (예를 들면, 그 헤더의 한 비트 또는 비트 시퀀스)을 적어도 두 개의 미리 정의된 교번하는 마킹 값들로 세팅하는 동작, 패킷의 주파수 또는 패킷의 위상을 적어도 두 개의 미리 정의된 교번하는 마킹 값들로 세팅하는 동작 등을 포함할 수 있다.
본 발명에 따르면, 상기 문제점은 통신 네트워크를 통해서 전송된 패킷 플로우 상에서 시간 측정을 수행하되, 상기 전송 노드는 상기 패킷들을 전송할 때에, 그 패킷들을 교번하는 구간들에서 전송되는 제1 패킷들 및 제2 패킷들로 분할하는, 방법에 의해 해결된다. 각 구간에서, 상기 전송 노드는 각 패킷의 피처를 상기 패킷이 시간 측정을 겪을 것이라는 것을 표시하는 제1 값 또는 상기 패킷이 시간 측정을 겪지 않을 것이라는 것을 표시하는 제2 값으로 세팅함으로써, 상기 각 패킷을 또한 마킹한다. 상기 마킹은, 상기 제1 값으로 마킹된 두 패킷들의 전송 시간들이 구간 지속시간보다 더 짧은 미리 정의된 전송-사이 (inter-transmission) 시간만큼 서로 (reciprocally) 지연되도록 수행된다. 상기 제1 값으로 마킹된 각 패킷에 대해, 상기 전송 노드는 전송 타임스탬프를 생성하며 그리고 상기 수신 노드는 수신 타임스탬프를 생성한다. 그러면, 각 구간의 종로 이후에, 이전의 구간 동안에 전송된 상기 제1 값으로 마킹된 패킷들의 전송 타임스탬프와 수신 타임스탬프를 기반으로 하여 시간 측정이 수행된다.
첫 번째 모습에 따르면, 본 발명은 제1 측정 포인트로부터 제2 측정 포인트로 통신 네트워크를 통해서 전송된 패킷 플로우 상에서 시간 측정을 수행하기 위한 방법을 제공하며, 상기 방법은:
a) 상기 제1 측정 포인트에서, 상기 패킷 플로우가 전송될 때에, 상기 패킷 플로우를 제1 구간들 동안에 전송되는 제1 패킷들 그리고 상기 제1 구간들과 시간상 교번하는 제2 구간들 동안에 전송되는 제2 패킷들로 분할하는 단계;
b) 일정 구간 동안에, 상기 제1 패킷들이 전송될 때에, 상기 제1 패킷들 중 각 한 패킷의 피처 (feature)를 시간 측정될 제1 패킷을 표시하는 제1 마킹 값 또는 시간 측정되지 않을 제1 패킷을 표시하는 제2 마킹 값 중 어느 하나로 세팅함으로써 상기 제1 측정 포인트에서 상기 제1 패킷들을 마킹하며, 상기 제1 마킹 값으로 마킹된 두 개의 제1 패킷들의 전송 시각들이 상기 구간의 지속시간 보다 더 짧은 적어도 미리 정의된 최소 전송-사이 시간만큼 서로 (reciprocally) 지연되도록 상기 마킹이 수행되며, 그리고 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 중 각 한 패킷에 대한 전송 타임스탬프를 생성하는 단계;
c) 상기 제2 측정 포인트에서, 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들을 식별하고, 그리고 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 중 각 한 패킷에 대해 수신 타임스탬프를 생성하는 단계;
d) 상기 구간의 만료 이후에, 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들의 상기 전송 타임스탬프들 및 상기 수신 타임스탬프들에 기초하여 상기 시간 측정을 수행하는 단계를 포함한다.
바람직한 실시예들에 따라서, 단계 a)는 상기 패킷들 중 각 한 패킷의 추가 피처를 상기 제1 구간들 동안에 전송될 제1 패킷을 표시하는 제3 마킹 값 또는 상기 제2 구간들 동안에 전송될 제2 패킷을 표시하는 제4 마킹 값 중 어느 하나로 세팅함으로써 상기 패킷들을 마킹하는 단계를 포함한다.
바람직하게는, 상기 패킷 플로우 중의 각 패킷은 마킹 필드를 포함하며, 상기 추가 피처는 상기 마킹 필드의 제1 마킹 서브-필드이며 그리고 상기 피처는 상기 마킹 필드의 제2 마킹 서브-필드이다.
바람직하게는, 단계 b)에서 상기 최소 전송-사이 시간은 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 사이를 추월하는 것에 결부된 수신 시퀀스 오류를 방지하기 위한 적합한 값으로 세팅된다.
몇몇의 변이들에 따라서, 상기 최소 전송-사이 시간은 상기 제1 측정 포인트로부터 상기 제2 측정 포인트까지의 상기 패킷 플로우의 평균 단방향 (one-way) 지연보다 더 길다.
다른 변이들에 따라서, 상기 최소 전송-사이 시간은 상기 제1 측정 포인트로부터 상기 제2 측정 포인트까지의 상기 패킷 플로우의 최대 단방향 지연보다 더 길다.
바람직하게는, 상기 최소 전송-사이 시간은 10밀리초보다 더 길거나 동일하다.
바람직하게는, 상기 단계 b)는, 상기 제1 패킷들 (Pki) 중 각 하나의 패킷 전송 시에:
- 상기 일정 구간이 상기 제1 구간들 중의 하나 또는 상기 제2 구간들 중 하나인가의 여부를 체크하는 단계; 그리고
- 상기 일정 구간이 상기 제1 구간들 중의 하나라면, 전송 카운터를 증가시키고, 상기 제1 마킹 값으로 마킹된 마지막 패킷의 전송 이래로 상기 최소 전송-사이 시간이 경과했는가의 여부를 체크하며, 그리고 경과한 경우에는, N 개의 전송 타임스탬프 변수들 중 하나를 상기 제1 측정 포인트의 로컬 클록에 의해 표시된 현재 시각으로 세팅하는 단계를 포함한다.
바람직하게는, 단계 d)는:
- 상기 구간이 상기 제1 구간들 중의 하나 또는 상기 제2 구간들 중 하나였는가의 여부를 체크하는 단계;
- 상기 구간이 상기 제1 구간들 중의 하나라면, 상기 시간 측정을 수행하기 위해 상기 전송 카운터 및 상기 N개의 전송 타임스탬프 변수들을 사용하는 단계; 그리고
- 상기 전송 카운터 및 상기 N개의 전송 타임스탬프 변수들을 리셋하는 단계를 포함한다.
바람직하게는, 단계 c)는, 각 패킷 (Pki)을 수신할 때에:
- 상기 패킷이 상기 제1 패킷들 중 하나 또는 상기 제2 패킷들 중 하나인가의 여부를 체크하는 단계;
- 상기 패킷이 상기 제1 패킷들 중 하나라면, 수신 카운터를 증가시키고, 상기 제1 패킷이 상기 제1 값 (Vc)로 마킹되었는가의 여부를 체크하고 그리고 마킹된 경우에, N개의 수신 타임스탬프 변수들 중 하나를 상기 제2 측정 포인트의 로컬 클록에 의해 표시된 현재 시각으로 세팅하는 단계를 포함한다.
바람직하게는, 상기 단계 d)는:
- 상기 구간이 상기 제1 구간들 중의 하나 또는 상기 제2 구간들 중 하나였는가의 여부를 체크하는 단계;
- 상기 구간이 상기 제1 구간들 중의 하나라면, 상기 시간 측정을 수행하기 위해 상기 수신 카운터 및 상기 N개의 수신 타임스탬프 변수들을 사용하는 단계; 그리고
- 상기 수신 카운터 및 상기 N개의 수신 타임스탬프 변수들을 리셋하는 단계를 포함한다.
바람직한 실시예들에 따라서, 단계 d)는 상기 구간의 지속시간의 1% 내지 50% 사이에 포함되는 미리 정해진 대기 시간만큼, 상기 구간의 끝 부분에 대해서 지연된다.
바람직하게는, 상기 단계 d)는 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 중 각 한 패킷에 대한 단방향 지연을, 상기 제1 패킷에 대해 단계 c)에서 생성된 전송 타임스탬프 및 수신 타임스탬프 사이의 차이로서 계산하는 단계를 포함한다.
두 번째 모습에 따라서, 본 발명은 통신 네트워크용의 노드를 제공하며, 상기 노드는 패킷 플로우를 추가 노드로 전송하도록 구성되며, 상기 노드는:
a) 상기 패킷 플로우가 전송될 때에, 상기 패킷 플로우를 제1 구간들 동안에 전송되는 제1 패킷들 그리고 상기 제1 구간들과 시간상 교번하는 제2 구간들 동안에 전송되는 제2 패킷들로 분할하고;
b) 일정 구간 동안에, 상기 제1 패킷들이 전송될 때에, 상기 제1 패킷들 중 각 한 패킷의 피처 (feature)를 시간 측정될 제1 패킷을 표시하는 제1 마킹 값 또는 시간 측정되지 않을 제1 패킷을 나타내는 제2 마킹 값 중 어느 하나로 세팅함으로써 상기 제1 패킷들을 마킹하도록 구성되며, 상기 제1 마킹 값으로 마킹된 두 개의 제1 패킷들의 전송 시각들이 상기 구간의 지속시간보다 더 짧은 적어도 미리 정의된 최소 전송-사이 시간만큼 서로 (reciprocally) 지연되도록 상기 마킹이 수행되며, 그리고 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 중 각 한 패킷에 대해 전송 타임스탬프를 생성한다.
세 번째 모습에 따라서, 본 발명은 통신 네트워크용의 노드를 제공하며, 상기 노드는 추가 노드로부터 패킷 플로우를 수신하도록 구성되며, 상기 패킷 플로우는, 제1 구간들 동안에 전송되는 제1 패킷들 그리고 상기 제1 구간들과 시간상 교번하는 제2 구간들 동안에 전송되는 제2 패킷들로 분할된 패킷들을 포함하며, 상기 패킷들 중 각 한 패킷은, 시간 측정될 제1 패킷을 표시하는 제1 마킹 값 또는 시간 측정되지 않을 제1 패킷을 표시하는 제2 마킹 값 중 어느 하나로 세팅된 피처를 포함하며, 상기 제2 노드는:
- 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들을 식별하고; 그리고
- 상기 제1 마킹 값으로 마킹된 상기 제1 패킷들 중 각 한 패킷에 대한 수신 타임스탬프를 생성하도록 구성된다.
네 번째 모습에 따라, 본 발명은 본 발명의 두 번째 모습에 따른 제1 노드 및 본 발명의 세 번째 모습에 따른 제2 노드를 적어도 포함하는 통신 네트워크를 제공한다.
다섯 번째 모습에 따라서, 본 발명은 적어도 하나의 컴퓨터의 메모리에 적재 가능한 컴퓨터 프로그램 제품을 제공하며, 그 컴퓨터 프로그램 제품은 적어도 하나의 컴퓨터 상에서 실행될 때에 위에서 제시된 상기 방법의 단계들을 수행하기 위한 소프트웨어 코드 부분들을 포함한다.
본 발명의 효과는 본 명세서의 해당되는 부분들에 개별적으로 명시되어 있다.
본 발명은, 예로서 주어진 것이며 한정하지는 않는 다음의 상세한 설명을, 동반하는 도면들을 참조하여 읽으면 더 명료해질 것이다.
도 1은 예시적인 패킷-교환 네트워크를 개략적으로 보여준다.
도 2는 본 발명의 실시예에 따른 패킷의 구조를 개략적으로 보여준다.
도 3a 및 도 3b는 전송 노드에서, 본 발명의 실시예에 따른 방법의 플로우도들이다.
도 4a 및 도 4b는 수신 노드에서, 본 발명의 실시예에 따른 방법의 플로우도들이다.
도 1은 본 발명의 실시예들에 따른 시간 측정을 수행하기 위한 방법이 구현될 수 있을 예시적인 패킷-교관 통신 네트워크 (CN)을 개략적으로 보여준다. 상기 통신 네트워크 (CN)는 IP 네트워크, 이더넷 네트워크, MPLS 네트워크 또는 어떤 다른 알려진 유형의 패킷-교환 통신 네트워크일 수 있다.
상기 통신 네트워크 (CN)는 어떤 알려진 토폴로지에 따른 링크들에 의해 서로 서로 연결된 복수의 노드들을 포함한다.
특히, 상기 통신 네트워크 (CN)는 제1 노드 (N1) 및 제2 노드 (N2)를 포함한다. 상기 제1 노드 (N1) (또한 이하에서 "전송 노드"로도 명명됨)는 상기 통신 네트워크 (CN)의 중간 노드들 (도 1에서는 도시되지 않음)을 아마도 통해서 상기 제2 노드 ("수신 노드"로 또한 명명됨)로 패킷 플로우 (PF)을 전송하도록 구성된다. 상기 전송 노드 (N1)는 상기 패킷 플로우 (PF)의 소스 노드 또는 소스 노드로부터 목적지 노드까지의 경로의 중간 노드 중 어느 하나일 수 있다. 유사하게, 상기 수신 노드 (N2)는 상기 패킷 플로우 (PF)의 목적지 노드 또는 상기 소스 노드로부터 목적지 노드까지의 경로의 어떤 중간 노드 중 어느 하나일 수 있다.
바람직하게는, 상기 통신 네트워크 (CN)는 관리 서버 (MS)와 협응하기에 또한 적합하다. 상기 관리 서버 (MS)는 상기 통신 네크워크 (CN)의 노드들 중 어느 하나와 연결된 단독의 서버일 수 있다. 대안으로, 상기 관리 서버 (MS)는 상기 통신 네트워크 (CN)의 노드들 중 어느 것에서나 구현될 수 있을 것이다.
본 발명의 바람직한 실시예에 따라, 상기 패킷 플로우 (PF)은 패킷들 (Pki)의 시퀀스를 포함한다.
각 패킷 (Pki)은 헤더 및 페이로드를 포함한다. 상기 페이로드는 전송될 데이터를 포함한다. 게다가, 바람직하게는, 상기 헤더는 소스 노드 주소 및 목적지 노드 주소와 같이 상기 패킷 (Pki)을 경로 설정하기 위한 정보를 포함한다. 각 패킷 (Pki)은 우선순위 필드를 또한 바람직하게 포함한다. 바람직하게는, 상기 플로우 (PF)의 패킷들 (Pki) 모두는 동일한 우선순위를 가진다.
상기 패킷 (Pki)은 마킹 필드 (MF)를 더 포함하며, 이것은 적어도 두 개의 서브-필드들, 예를 들면, 두 개의 마킹 비트들 b1 및 b1을 포함한다. 각 마킹 서브-필드 b1, b2는 두 개의 교번하는 (alternative) 마킹 값으로 세팅될 수 있다. 특히, 제1 마킹 서브-필드 b1은 두 개의 교번 마킹 값들 Va, Vb 중 어느 하나로 세팅될 수 있을 것이며, 반면에 제2 마킹 서브-필드 b2는 두 개의 교번 마킹 값들 Vc, Vd 중 어느 하나로 세팅될 수 있을 것이다. 상기 마킹 필드 (MF)는 바람직하게 상기 패킷 헤더 내에 포함된다. 상기 마킹 필드 (MF)는 예를 들면 상기 패킷 (Pki)의 형식을 지정한 프로토콜이 특정 기능을 아직 할당하지 않은 필드일 수 있다. 대안으로, 상기 마킹 필드 (MF)은 다른 사용처를 가지는 필드 내에 포함될 수 있을 것이다. 예를 들면, IP 패킷들의 경우에, 상기 마킹 필드 (MF)는 8-비트 DS (Differentiated Service) 필드 중 두 개 비트들을 포함할 수 있을 것이며, 각 비트는 두 개의 마킹 서브-필드들 중 하나를 구성한다. 그런 경우에, 상기 비트 b1의 두 교번 마킹 값들 Va 및 Vb는 각각 1 및 0 이며, 반면에 상기 비트 b2의 두 교번 마킹 값들 Vc 및 Vd는 각각 1 및 0 이다.
옵션으로, 상기 마킹 필드 (MF)는 필터 서브-필드 (상기 도면에 도시되지 않음)를 또한 포함할 수 있을 것이며, 이것은 두 개의 교번 값들 중 어느 하나로 세팅된다. 패킷 (Pki) 내 필터 서브-필드의 값은 상기 패킷 (Pki)이 마킹된 패킷 (Pki)인가 (이 경우에, 상기 마킹 서브-필드 b1, b2의 값들은 패킷 손실 및/또는 시간 측정 목적들을 위해 판독되고 프로세싱될 것이다) 또는 그렇지 않은가 (이 경우에, 상기 마킹 서브-필드 b1, b2는 무시될 것이다)의 여부를 바람직하게 표시한다. 상기 필터 서브-필드는 상기 제1 마킹 서브-필드 b1에 바람직하게 덧붙여진다.
상기 패킷들 (Pki)은 자신들의 전송 시에 상기 전송 노드 (N1)에 의해 마킹되는 것이 바람직하며, 상기 전송 노드 (N1)은 상기 제1 마킹 서브-필드 b1의 값을 Va 또는 Vb로 그리고 상기 제2 마킹 서브-필드 b2의 값을 Vc 또는 Vd로 세팅한다.
상기 전송 노드 (N1)는 특히 상기 제1 마킹 서브-필드 b1에 할당된 마킹 값 Va, Vb (예를 들면, 1 또는 0)를 이후에 "블록 구간"으로 명명될 주기 Tb로 주기적으로 변경한다. 이 방식에서, 제1 블록 구간들 (본원에서 이후에는 "짝수 블록 구간들"로 또한 명명됨) 동안에 마킹된 패킷들 Pki은 상기 제1 마킹 서브-필드 b1의 제1 마킹값 Va (예를 들면, 1)로 마킹되며, 상기 제1 블록 구간들과 시간 상 교변하는 제2 블록 구간들 (본원에서 이후에는 "홀수 블록 구간들"로 또한 명명됨) 동안에 마킹된 패킷들 Pki은 상기 제1 마킹 서브-필드 b1의 제2 마킹값 Vb (예를 들면, 0)로 마킹된다.
상기 블록 구간 Tb는 소망되는 패킷 손실 측정 레이트에 따라서, 네트워크 오퍼레이터에 의해 세팅될 수 있을 것이다 (상기 블록 구간 Tb는 패킷 손실에 대한 측정 구간이기도 하다). 예를 들면, 상기 블록 구간 Tb는 5분과 동일할 수 있다.
본 발명의 바람직한 실시예들에 따라, 각 짝수 및 홀수 블록 구간 T(k) (k=0, 1, 2, 3 등) 내에서, 상기 전송 노드 (N1)는 시간 측정될 패킷들을 시간 측정되지 않을 패킷들과 구별하기 위해서 상기 제2 마킹 서브-필드 b2의 마킹 값들 Vc, Vd (예를 들면, 1 또는 0)을 사용한다. 특히, 각 블록 구간 T(k) (k=0, 1, 2, 3 등) 동안에, 타임 측정될 패킷들 (Pki)은 상기 제2 마킹 서브-필드 b2의 제1 마킹 값 Vc (예를 들면, 1)로 마킹되며, 반면에 타임 측정되지 않을 패킷들 (Pki)은 상기 제2 마킹 서브-필드 b2의 제2 마킹 값 Vd (예를 들면, 0)로 마킹된다.
각 블록 구간 T(k) (k=0, 1, 2, 3 등) 동안에, 둘 또는 그 이상의 패킷들 (Pki)은 시간 측정될 패킷들로 마킹된다. 특히, 상기 전송 노드 (N1)는 각 패킷 (Pki)의 상기 제2 마킹 서브-필드 b2의 값 Vc 또는 Vd를 결정하여, 동일한 블록 구간 동안에 전송되고 그리고 시간 측정될 패킷들로서 마킹된 두 개의 연속적인 패킷들 (Pki)의 전송 시각들은 적어도 미리 정의된 최소 전송-사이 시간 (Tx)만큼 상호 지연될 것이라는 원칙을 적용한다. 상기 미리 정의된 최소 전송-사이 시간 (Tx)은 상기 블록 구간 (Tb)보다 더 짧으며 그리고 시간 측정될 패킷들 사이를 추월 (overtake)하는 것에 결부된 수신 시퀀스 오류들을 방지하도록 선택되며, 그리고 노드들 (N1 및 N2) 사이의 링크의 피처에 종속하며, 이는 이하에서 상세하게 설명될 것이다.
각 블록 구간 T(k) (k=0, 1, 2, 3 등) 동안에, 시간 측정될 패킷으로 마킹된 각 패킷 (Pki)에 대해, 상기 전송 측에서 전송 타임스탬프가 생성되며, 이것은 상기 패킷 (Pki)이 상기 전송 노드 (N1)에 의해 전송되는 시각을 표시하며 그리고, 유사하게, 수신 측에서 수신 타임스탬프가 생성되며, 이것은 상기 패킷 (Pki)가 상기 수신 노드 (N2)에 의해 수신된 시각을 표시한다.
그 후에, 각 블록 구간 (T(k))의 종료 이후에, 그 블록 구간 (T(k)) 동안에 전송되었고 수신되었던 시간 측정될 패킷들 (Pki)에 관련된 전송 스탬프들 및 수신 스탬프들은 바람직하게는 시간 측정들을 수행하기 위해 사용되며, 이는 이후에 상세하게 설명될 것이다.
그러므로, 유리하게도, 시간 측정될 패킷들 (Pki)은 제2 마킹 서브-필드 b2의 값에 의해 식별되며, 이것은 상기 수신 노드 (N2)가 그런 패킷들을, 패킷 손실 측정에 결부되어 있기는 하지만 시간 측정되지 않을 상기 패킷 플로우 (PF)의 다른 패킷들 (Pki)로부터 구분하는 것을 가능하게 한다. 다른 말로 하면, 상기 제2 마킹 서브-필드 b2는 상기 패킷 플로우 (PF) 내에서, 상기 수신 노드 (N2)에 의해 상기 패킷 플로우 (PF)의 나머지로부터 명백하게 구별될 수 있을 시간 측정될 패킷들 (Pki)의 "서브-플로우 (sub-flow)"을 생성하는 것을 가능하게 한다.
그러므로, 시간 측정될 패킷 그리고 시작 측정되지 않을 하나 또는 그 이상의 패킷들 사이의 추월에 결부된 수신 시퀀스 오류가 발생한다고 해도, 상기 수신 노드 (N2)는 시간 측정될 패킷을 어쨌든 적절하게 식별할 수 있을 것이며, 그러므로 관련된 수신 타임스탬프를 적절한 방식으로 생성할 수 있다. 그 수신 타임스탬프를 기반으로 하는 결과인 시간 측정은 따라서 유효한 측정이다. 그러므로 상기 시간 측정은 유리하게도 이런 유형의 수신 시퀀스 오류에 면역된다.
반면에, 전송-사이 시간 (Tx)의 적절한 선택은 시간 측정될 패킷들 사이를 추월하는 것에 결부된 수신 시퀀스 오류들을 회피하는 것을 가능하게 한다.
더욱이, 상기 제1 마킹 서브-필드 b1은 시간 측정될 패킷들 (Pki)의 "서브-플로우"에서의 주기적인 불연속성을 유리하게도 도입한다. 다른 말로 하면, 전체 패킷 플로우 (PF)와 유사하게, 시간 측정될 패킷들의 "서브-플로우" 또한 주기 Tb의 교번하는 블록들로 분할된다. 그러므로, 일정 블록 구간 (T(k))에 관련된 측정들을 무효로 하는 패킷 손실 및/또는 수신 시퀀스 오류가 발생하는 경우에, 그런 오류는 그 블록 구간의 끝에서 자동적으로 리셋되며, 이는 상기 측정들을 하기 위해 사용된 모든 파라미터들 (카운터들 및 타임스탬프들)이 상기 블록 구간의 종료 이후에 리셋되기 때문이며, 이는 이후에 상세하게 설명될 것이다.
또한, 각 블록 구간 (T(k))에 대해, 여러 시간 측정 샘플들이 유리하게도 얻어질 수 있으며, 이는 (시간 측정들을 하기 위해 사용될) 전송 타임스탬프들 및 수신 타임스탬프들이 각 블록 구간 동안에 다중의 패킷들을 위해 생성되기 때문이다. 특히, 원칙적으로 각 블록 구간 (T(k))에서 얻어질 수 있을 시간 측정 샘플들의 최대 개수는 N = Tb/Tx 이며, 여기에서 Tb는 각 블록 구간 (T(k))의 지속시간이며 그리고 Tx는 상기 언급된 최소 전송-사이 시간, 즉, 시간 측정될 패킷들로 마킹된 두 패킷들 (Pki) 사이에 경과할 최소 시간이다.
위에서 언급된 것처럼, 상기 최소 전송-사이 시간 (Tx)은 상기 노드들 (N1 및 N2) 사이의 링크의 성능을 기반으로 하여 바람직하게 선택된다. 특히, 상기 최소 전송-사이 시간 (Tx)은 시간 측정될 패킷들 사이의 추월에 결부된, 발생할 수 있는 수신 시퀀스 오류들을 실질적으로 방지하기 위해 세팅되는 것이 바람직하다.
예를 들면, 최소 전송-사이 시간 (Tx)은 N1 및 N2 사이의 평균적인 단방향 지연보다 더 길게 선택될 수 있을 것이다.
특히, 몇몇의 실시예들에 따라, 상기 최소 전송-사이 시간은 초기 값 Tx0 와 같게 우선 세팅되며, 이것은 각 블록 구간 내에 충분하게 많은 개수의 시간 측정 샘플들을 제공하기 위해 충분하게 낮을 것이며, 이는 상기 평균 단방향 지연 측정을 가능한 실제적으로 만들기 위한 것이다. 그런 초기 과정에서, 이후에 본원에서 상세하게 설명될 것처럼, 시간 측정될 패킷들 사이의 추월에 결부된 수신 시퀀스 오류들로부터 원래 면역된 평균 단방향 지연 측정만이 만들어진다. 다른 측정들 (예를 들면, 최대 및 최소 지연 그리고 지터) 모두는 대신에 일시 정지되며, 이는 그 다른 측정들은 이런 유형의 수신 시퀀스 오류에 면역되지 않으며, 그리고 그런 초기 과정에서, 그런 유형의 오류가 발생하지 않는다는 것을 보장하기에는 Tx0의 값이 너무 작을 수 있을 것이기 때문이다.
그러면, 평균 단방향 지연이 측정된 이후에 (그런 유형의 시간 측정에 관한 상세한 내용들은 이어지는 설명에서 제공될 것이다), 상기 최소 전송-사이 시간 (Tx)은 그런 값보다 더 높게 세팅되며 그리고 상기 시간 측정들은 다시 시작된다. 이 두 번째 과정에서, 또한 측정될 패킷들 사이에서 있을 수 있는 추월에 의해 정확함이 손상되는 그런 시간 측정들이 수행될 수 있다. 상기 최소의 전송-사이 시간 (Tx)를 선택하는 것은 실제로 그런 유행의 수신 시퀀스 오류를 유리하게도 방지한다.
대안으로, 최소 전송-사이 시간 (Tx)은 N1 및 N2 사이의 최대 단방향 지연보다 더 높게 선택될 수 있다.
특히, 다른 실시예들에 따르면, 상기 최소 전송-사이 시간은 초기 값 Tx0과 같게 우선 세팅되며, 이 값은 측정된 패킷들 사이의 추월에 결부된 그 수신 시퀀스 오류들이 발생하지 않는다는 것을 보장하기에 충분하게 클 것이다 (예를 들면, 몇 초). 이것은 이런 유형의 수신 시퀀스 오류들로부터 면역되지 않은, 본원에서 다음에 상세하게 설명될 것처럼, 신뢰성있는 최대 단방향 지연 측정을 제공하는 것을 가능하게 한다. 그런 초기 과정에서, 매우 감소된 개수의 시간 측정 샘플들이 얻어지며, 각 블록 구간 (Tk)에서 시간 측정된 패킷들 (Pki)의 개수는 매우 작다. 그래서, 평균 시간 측정들 (예를 들면, 평균 단방향 지연, 평균 지터 등)은 바람직하게도 이 과정에서 일시 정지된다.
그러면, 최대 단방향 지연이 측정된 이후에 (그런 유형의 시간 측정에 관한 상세한 내용은 다음의 설명에서 제공될 것이다), 상기 최소 전송-사이 시간 (Tx)은 그런 값보다 더 높게 세팅되며 그리고 시간 측정들이 다시 시작된다. 이 두 번째 과정에서, 또한 평균 시간 측정들이 수행될 수 있으며, 이제 샘플들의 개수는 실제의 평균 값들을 제공하기에 충분하게 많다.
두 노드들 사이의 링크의 평균 또는 최대 단방향 지연이 보통은 수 밀리초이기 때문에, 최소 전송-사이 시간 (Tx)은 약 10 밀리초와 같게 세팅될 수 있다. 상기 블록 구간 (Tb)이 5분이라면, 각 블록 구간 (T(x)) 동안에 제공될 수 있을 시간 측정 샘플들의 최대 개수 N은 30,000이다.
본 발명에 따른 시간 측정들을 수행하기 위한 방법이 더욱 상세하게 이제 설명될 것이다.
도 3a를 먼저 참조하면, 전송 노드에서 여러 변수들이 바람직하게 제공된다: 제1 전송 카운터 C1a, N 개의 제1 전송 타임스탬프들 TS1a(i)의 어레이, i=1, 2, … N, 제1 인덱스 i, 제2 전송 카운터 C1b, N개의 제2 전송 타임스탬프들 TS1b(j)의 어레이, j=1, 2, … N, 그리고 제2 인덱스 j. 위에서 설명된 개수 N은 원칙적으로 각 블록 구간 (T(k))에서 제공될 수 있을 시간 측정 샘플들의 최대 개수이며, 그리고 Tb/Tx와 동일하다.
그러면, 상기 전송 노드 N1은 전송될 패킷 플로우 PF의 가능한 패킷들 Pki을 위해 대기한다 (단계 301). 상기 전송 노드 N1은 상기 목적지 주소의 적어도 일부, 상기 소스 주소의 적어도 일부 그리고 옵션으로는 패킷 헤더 Hi의 다른 필드들 (예를 들면, IP 패킷들의 경우에 필드 DSCP)를 사용하여 상기 패킷 플로우 PF 중의 패킷들 Pki을 식별하는 것이 바람직하다.
패킷 Pki 이 전송되어야만 할 때에, 상기 전송 노드 N1은 현재의 블록 구간 T(k)이 짝수 블록 구간인가 또는 홀수 블록 구간인가의 여부를 바람직하게 체크하며 (단계 302), 그리고 그에 따라서 상기 패킷 Pki에 적용될 제1 마킹 서브-필드 b1의 마킹 값 Va (짝수 블록 구간들 동안) 또는 Vb (홀수 블록 구간들 동안)를 결정한다.
특히, 상기 현재 블록 구간 T(k)이 짝수 블록 구간이라면, 상기 패킷 Pki을 전송하기 이전에, 상기 노드 N1은 그 패킷의 제1 마킹 서브-필드 b1을 마킹 값 Va로 세팅하여 상기 패킷을 마킹한다 (단계 304a). 상기 패킷 Pki가 (위에서 언급된 것과 같은) 필터 서브-필드를 또한 포함한다면, 마킹된 패킷을 표시하는 값으로 단계 304a에서 세팅하는 것이 바람직하다.
또한, 상기 제1 전송 카운터 C1a는 1씩 증가하는 것이 바람직하다 (단계 305a).
그러면, 상기 노드 N1은, 자신의 제2 마킹 서브-필드 b2가 값 Vc, 즉, 시간 측정될 패킷들을 식별하는 값으로 세팅되었던 마지막 패킷 전송 이후로 최소 전송-사이 시간 Tx가 경과했는가의 여부를 바람직하게 체크한다 (step 306a).
긍정적일 때에 (시간이 경과했을 때), 상기 노드 N1은 자신의 제2 마킹 서브-필드 b2를 마킹 값 Vc, 즉, 측정될 패킷들을 표시하는 마킹 값으로 세팅하여 상기 패킷 Pki를 추가로 바람직하게 마킹한다 (서브-단계 307a). 또한, 상기 인덱스 i는 바람직하게 1씩 증가되며 (단계 308a) 그리고 N 개의 제1 전송 타임스탬프들 TS1a(i)의 어레이의 i번째 요소는 상기 전송 노드 N1의 로컬 클록에 의해 표시된 현재 시각 t*와 동일하게 세팅된다.
최소 전송-사이 시간 Tx가 경과하지 않았다면, 상기 노드 N1은 제1 마킹 서브-필드 b2를 마킹 값 Vd, 즉, 시간 측정되지 않을 패킷들을 표시하는 마킹 값으로 세팅하여 상기 패킷 Pki를 바람직하게 추가로 마킹한다 (서브-단계 310a).
상기 패킷 Pki는 그러면 N2로 전송된다 (단계 311).
단계 302에서, 현재 블록 구간 T(k)이 홀수 블록 구간인 것으로 판별된다면, 상기 전송 노드 N1은 패킷의 제1 마킹 서브-필드 b1을 상기 마킹 값 Vb로 세팅하여 상기 패킷 Pki을 마킹하며 (단계 304b), 그 후에 상기 제2 전송 카운터 C1b 그리고 N 개의 전송 타임스탬프들 TS1b(j)의 어레이의 값들을 업데이트하기 위해서 305b - 310b의 단계들을 바람직하게 수행하며 그리고 마지막으로는 상기 패킷 Pki를 전송한다 (단계 311). 현재 블록 구간 T(k)이 짝수 블록 구간이라면 단계들 305b - 310b는 단계들 305a - 310a에 기본적으로 대응한다. 그래서, 그런 단계들의 상세한 설명은 반복되지 않을 것이다.
도 3a의 흐름도의 단계들은 상기 노드 N1이 상기 패킷 플로우 PF의 패킷 Pki를 전송하는 매번마다 반복되는 것이 바람직하다.
이제 도 3b를 참조하면, 각 블록 구간 T(k)의 끝 부분에서, 막 만료된 블록 구간 T(k)이 짝수 블록 구간이었는가 또는 홀수 블록 구간이었는가의 여부가 체크된다 (단계 320).
상기 블록 구간 T(k)이 짝수 블록 구간이었다면, 상기 블록 구간 T(k)에 관련된 시간 측정들을 수행하기 위한 관련된 변수들이 Va로 마킹된 전송된 패킷들에 관련된 변수들, 즉, C1a 및 TS1a(i)이라고 결정된다.
그래서, 상기 노드 N1은 단계 305a의 마지막 반복에서 도달된 제1 전송 카운터 C1a의 값 그리고 단계 309a의 마지막 반복에서 제공된 N 개의 제1 전송 타임스탬프들 TS1a(i)의 어레이를 상기 관리 서버 MS에게 바람직하게 전송한다 (단계 321a). 상기 제1 전송 카운터 C1a, N 개의 제1 전송 타임스탬프들 TS1a(i)의 상기 어레이 그리고 인덱스 i는 그 후에 바람직하게 리셋된다 (단계 322a).
그렇지 않고, 상기 블록 구간 T(k)이 홀수 블록 구간이었다면, 상기 블록 구간 T(k)에 관련된 시간 측정들을 수행하기 위한 관련된 변수들이 Vb로 마킹된 전송된 패킷들에 관련된 변수들, 즉, C1b 및 TS1b(j)라고 결정된다.
그래서, 상기 노드 N1은 단계 305b의 마지막 반복에서 도달된 제2 전송 카운터 C1b의 값 그리고 단계 309b의 마지막 반복에서 제공된 N 개의 제2 전송 타임스탬프들 TS1b(j)의 어레이를 상기 관리 서버 MS에게 전송하는 것이 바람직하다 (단계 321b). 상기 제2 전송 카운터 C1b, N 개의 제2 전송 타임스탬프들 TS1b(j)의 상기 어레이 그리고 인덱스 j는 그 후에 바람직하게 리셋된다 (단계 322b).
블록 구간 T(k) 동안에 전송된, 제2 마킹 서브-필드 b2가 Vc로 세팅된 패킷들의 실제 개수 N*는 N보다 작을 수 있으며, 이는 상기 개수가 블록 구간 T(k) 동안의 패킷 플로우 PF의 실제의 패킷 전송 레이트에 종속하기 때문이라는 것에 주목해야 할 것이다. 그런 경우에, 상기 어레이 TS1a(i) 또는 TS1b(j)의 제1 N* 개 요소들만이 의미있는 타임스탬프 값들을 포함하며, 상기 어레이의 나머지는 초기화 값들 (즉, 0들)을 포함한다.
예를 들면, 알려진 통신 프로토콜, 예를 들어 FTP (File Transfer Protocol)를 기반으로 하여 상기 전송 노드 N1 및 상기 관리 서버 MS 사이에서 통신 세션을 설립하여, 321a 및 321b의 단계들이 수행된다. 상기 통신 세션은 상기 전송 노드 N1이나 상기 관리 서버 MS 중 어느 하나에 의해 시작될 수 있을 것이다.
또한, 상기 블록 구간 T(k)의 끝 및 다음의 블록 구간 T(k+1)의 끝 사이에 포함된 랜덤한 순간에 321a 및 321b 단계들이 수행되는 것이 바람직하며, 그 이유는 이후에 상세하게 설명될 것이다.
이제 도 4a를 참조하면, 수신하는 측에서 여러 변수들이 바람직하게 제공된다: 제1 수신 카운터 C1a, N 개의 제1 수신 타임스탬프들 TS2a(i)의 어레이, i=1, 2, … N, 제1 인덱스 i, 제2 수신 카운터 C2b, N개의 제2 수신 타임스탬프들 TS2b(j)의 어레이, j=1, 2, … N, 그리고 제2 인덱스 j. 상기 개수 N은 상기 전송하는 측에서와 동일한 것이 바람직하며, 즉, Tb/Tx와 동일한 것이 바람직하다.
그러면, 상기 수신 노드 N2는 패킷 플로우 PF의 가능한 패킷들 Pki을 위해 대기한다 (단계 401). 노드 N1과 유사하게, 또한 상기 수신 노드 N2는 패킷들의 목적지 주소의 적어도 일부, 패킷들의 소스 주소의 적어도 일부 그리고 옵션으로는 상기 패킷 헤더 Hi의 다른 필드들 (예를 들면, IP 패킷들의 경우에 필드 DSCP)를 사용하여 상기 패킷 플로우 PF 중의 패킷들 Pki을 식별하는 것이 바람직하다.
상기 패킷 플로우 PF의 패킷 Pki를 수신할 때에, 상기 패킷 Pkidl 마킹된 패킷인가의 여부를 체크하는 것이 바람직하다 (단계 402). 이 목적을 위해서, 상기 패킷 Pki의 마킹 필드 MF 내에 포함된 필터 서브-필드의 값을 체크하는 것이 바람직하다. 상기 패킷 Pki 가 마킹되지 않았다고 판별된다면, 패킷 손실 및/또는 시간 측정 목적들을 수행하기 위한 어떤 다른 동작들도 수행되지 않는다.
그렇지 않고, 상기 패킷 Pki 이 마킹된 패킷이라면, 상기 수신된 패킷 Pki의 제1 마킹 서브-필드 b1의 값이 체크되는 것이 바람직하다 (단계 403).
상기 수신된 패킷 Pki의 제1 마킹 서브-필드 b1의 값이 Va와 동일하다면, 상기 제1 수신 카운트 C2a는 바람직하게 1씩 증가된다 (단계 404a).
그러면, 상기 수신된 패킷 Pki의 제2 마킹 서브-필드 b2의 값이 체크되는 것이 바람직하다 (단계 405a). 상기 제2 마킹 서브-필드 b2의 값이 Vc (이는 측정될 패킷들을 식별한다)와 동일하다면, 상기 인덱스 i는 바람직하게 1씩 증가되며 (단계 406a) 그리고 N 개의 제1 수신 타임스탬프들 TS2a(i)의 어레이의 i번째 요소는 상기 수신 노드 N2의 로컬 클록에 의해 표시된 현재 시각 t**와 동일하게 세팅된다 (단계 407a). 그렇지 않고, 상기 제2 마킹 서브-필드 b2의 값이 Vd (이는 측정되지 않을 패킷들을 식별한다)와 동일하다면, 어떤 다른 행동들도 수행되지 않는다.
단계 403에서, 상기 수신된 패킷 Pki의 제1 마킹 서브-필드 b1의 값이 Vb와 동일하다고 판별된다면, 상기 제2 수신 카운트 C2b는 바람직하게 1씩 증가된다 (단계 404b).
그러면, 상기 수신된 패킷 Pki의 제2 마킹 서브-필드 b2의 값이 바람직하게 체크된다 (단계 405b). 상기 제2 마킹 서브-필드 b2의 값이 (측정될 패킷들을 식별하는) Vc와 동일하다면, 상기 인덱스 j는 바람직하게 1 씩 증가되며 그리고 그리고 N 개의 제1 수신 타임스탬프들 TS2b(j)의 어레이의 j번째 요소는 상기 수신 노드 N2의 로컬 클록에 의해 표시된 현재 시각 t**와 동일하게 세팅된다 (단계 407b). 그렇지 않고, 상기 제2 마킹 서브-필드 b2의 값이 Vd (이는 측정되지 않을 패킷들을 식별한다)와 동일하다면, 어떤 다른 행동들도 수행되지 않는다.
402 내지 407a/407b의 단계들은 상기 패킷 플로우 PF의 패킷 Pki가 수신되는 매번마다 바람직하게 반복된다.
이제 도 4b를 참조하면, 각 블록 구간 T(k)의 끝 부분에서, 안전 대기 시간 SWT가 경과한 이후에 (단계 420), 막 만료된 블록 구간 T(k)이 짝수 블록 구간이었는가 또는 홀수 블록 구간이었는가의 여부가 체크된다 (단계 421).
상기 블록 구간 T(k)이 짝수 블록 구간이었다면, 상기 블록 구간 T(k)에 관련된 시간 측정들을 수행하기 위한 관련된 변수들이 Va로 마킹된 수신된 패킷들에 관련된 변수들, 즉, C2a 및 TS2a(i)이라고 결정된다.
그래서, 상기 노드 N2는 단계 404a의 마지막 반복에서 도달된 제1 수신 카운터 C2a의 값 그리고 단계 407a의 마지막 반복에서 제공된 것과 같은 N 개의 제1 수신 타임스탬프들 TS2a(i)의 어레이를 상기 관리 서버 MS에게 바람직하게 전송한다 (단계 422a). 상기 제1 수신 카운터 C2a, N 개의 제1 수신 타임스탬프들 TS2a(i)의 상기 어레이 그리고 인덱스 i는 그 후에 바람직하게 리셋된다 (단계 423a).
그렇지 않고, 상기 블록 구간 T(k)이 홀수 블록 구간이었다면, 상기 블록 구간 T(k)에 관련된 시간 측정들을 수행하기 위한 관련된 변수들이 Vb로 마킹된 수신된 패킷들에 관련된 변수들, 즉, C2b 및 TS2b(j)라고 결정된다.
그래서, 상기 노드 N2는 단계 404b의 마지막 반복에서 도달된 제2 수신 카운터 C2b의 값 그리고 단계 407b의 마지막 반복에서 제공된 것과 같은 N 개의 제2 수신 타임스탬프들 TS2b(j)의 어레이를 상기 관리 서버 MS에게 전송하는 것이 바람직하다 (단계 422b). 상기 제2 수신 카운터 C2b, N 개의 제2 수신 타임스탬프들 TS2b(j)의 상기 어레이 그리고 인덱스 j는 그 후에 바람직하게 리셋된다 (단계 423b).
블록 구간 T(k) 동안에 수신된, 제2 마킹 서브-필드 b2가 Vc로 세팅된 패킷들의 실제 개수 N**는 N보다 (그리고 또한 N*보다) 작을 수 있으며, 이는 상기 개수가 블록 구간 T(k) 동안의 패킷 플로우 PF의 실제의 패킷 전송 레이트에 그리고 또한 전송 구간 T(k) 동안의 패킷 손실에 종속하기 때문이라는 것에 주목해야 할 것이다. 그런 경우에, 상기 어레이 TS2a(i) 또는 TS2b(j)의 제1 N** 개 요소들만이 의미있는 타임스탬프 값들을 포함하며, 상기 어레이의 나머지는 초기화 값들 (즉, 0들)을 포함한다.
위에서 언급된 것처럼, 도 4b의 흐름도의 단계들은 상기 블록 구간 T(k)의 끝에 대해 안전 대기 시간 SWT만큼 바람직하게 지연된다. 실제로, 통신 네트워크 CN을 통한 상기 패킷들 Pki의 전파 (propagation) 지연으로 인해서 또는 수신 시퀀스 오류로 인해서, Va로 마킹되고 짝수 블록 구간 T(k) 동안에 전송된 마지막 패킷들 Pki은 후속하는 홀수 블록 구간 T(k+1)의 시작 부분에서 상기 수신 노드 N2에 의해 수신될 수 있다. 그래서, 짝수 블록 구간 T(k)의 끝 이후에, Va로 마킹된 수신된 패킷들에 관련된 변수들 (즉, C2a 및 TS2a(i))은 여전히 변하고 있을 수 있다. 유사하게, Vb로 마킹되고 홀수 블록 구간 T(k) 동안에 전송된 마지막 패킷들은 후속하는 짝수 블록 구간 T(k+1)의 시작 부분에서 상기 수신 노드 N2에 의해 수신될 수 있다. 그래서, 홀수 블록 구간 T(k)의 끝 이후에, Vb로 마킹된 수신된 패킷들에 관련된 변수들 (즉, C2b 및 TS2b(j))은 여전히 변하고 있을 수 있다.
상기 안전 대기 시간 SWT은 Va 또는 Vb로 마킹된 패킷들에 관련된 상기 변수들이 그 변수들의 값들이 안정된 때에만 상기 관리 서버 MS로 전송되는 것을 보증한다. 이것은 그런 변수들에 기반한 패킷 손실 및 시간 측정들이 연속적인 블록 구간들 사이의 가장자리에서 발생하는 수신 시퀀스 오류들로부터 또한 면역되도록 만든다. 상기 안전 대기 시간 SWT은 상기 블록 구간 Tb의 1% 내지 50% 사이에 포함되는 것이 바람직하다. 예를 들어, 상기 블록 구간 Tb이 5분과 동일하다면, 상기 안전 대기 시간 SWT은 20% Tb, 즉, 1분과 동일할 수 있다.
예를 들면, 알려진 통신 프로토콜, 예를 들어 FTP (File Transfer Protocol)를 기반으로 하여 상기 수신 노드 N2 및 상기 관리 서버 MS 사이에서 통신 세션을 설립하여, 422a 및 422b의 단계들이 수행될 수 있다. 상기 통신 세션은 상기 수신 노드 N2나 상기 관리 서버 MS 중 어느 하나에 의해 시작될 수 있을 것이다.
또한, 상기 안전 대기 시간 SWT의 끝 및 블록 구간 T(k+1)의 끝 사이에 포함된 랜덤한 순간에 422a 및 422b 단계들이 수행되는 것이 바람직하다. 이것은 상기 관리 서버 MS가 상기 통신 노드 CN의 노드들 모두에 관련된 파라미터들을 동시에 수신하여, 상기 관리 서버 MS의 혼잡을 유발하는 것을 유리하게도 방지한다. 상기 안전 대기 시간 SWT의 끝 그리고 422a 및 422b의 단계들이 수행되는 순간 사이에 경과하는 시간은 상기 블록 구간 Tb의 1% 내지 40% 사이에 포함되는 것이 바람직하다. 예를 들어, 상기 블록 구간 Tb이 5분과 동일하다면, 상기 안전 대기 시간 SWT은 20%, 즉, 1분일 수 있다.
그래서, 각 블록 구간 T(k)의 만료 이후에, 상기 관리 서버 MS는 다음의 것들을 수신한다:
- 상기 전송 노드 N1으로부터의, C1a 또는 C1b와 동일한 전송 카운터 C1(k) 그리고 TS1a(i) (또는 TS1b(j))와 동일한 N 개의 전송 타임스탬프들 TS1a(l, k)의 어레이; 그리고
- 상기 수신 노드 N2로부터의, C2a 또는 C2b와 동일한 수신 카운터 C2(k) 그리고 TS2a(i) (또는 TS2b(j))와 동일한 N 개의 수신 타임스탬프들 TS2a(l, k)의 어레이.
각 블록 구간 T(k)의 만료 이후에, 상기 관리 서버 MS는 그 블록 구간 T(k)에 관련된 패킷 손실 PL(k)을 전송 카운터 C1(k) 및 수신 카운터 C2(k) 사이의 차이로서 계산할 수 있다. 그런 패킷 손실 측정은 시간 측정될 패킷들 및 시간 측정되지 않을 패킷들에 차별없이 결부되는 수신 시퀀스 오류로부터 유리하게도 면역된다.
또한, 각 블록 구간 T(k)의 만료 이후에, 상기 관리 서버 MS는 블록 구간 T(k) 동안에 전송된 그리고 자신들의 제2 마킹 서브-필드 b2가 Vc와 동일한 많아야 N 개 패킷들의 단방향 지연들 OWD(l, k)을 계산할 수 있다. 이 패킷들 중 각 하나의 패킷에 대해, 상기 단방향 지연 OWD(l, k)은 수신 스탬프들 TS2(l, k)의 어레이의 l번째 요소 그리고 전송 스탬프들 TS1(l, k)의 l번째 요소 사이의 차이로서 계산된다. 일단 상기 단방향 지연 OWD(l, k)이 계산되었으면, 블록 구간 T(k)에 대한 최소의 단방향 지연 OWDmin(k) 및 최대 단방향 지연 OWDmax(k)은 그런 단방향 지연들 OWD(l, k) 중의 최소 및 최대로서 계산될 수 있다.
또한, 블록 구간 T(k)에 대한 상기 단방향 지연들 OWD(l, k)이 계산되었으면, 상기 관리 서버 MS는 블록 구간 T(k) 동안에 전송된 그리고 자신들의 제2 마킹 서브-필드 b2가 Vc와 동일한 연속하는 패킷들의 각 쌍에 대한 지터 J(l, k)를 그 패킷들의 단방향 지연들 OWD(l k) 사이의 차이로서 계산할 수 있다.
일단 블록 구간 T(k)에 대해 지터들 J(l, k)이 계산되면, 그 블록 구간 T(k)에 대한 최소 지터 Jmin(k) (음) 그리고 최대 지터 Jmax(k) (양)가 그 지터들 J(l, k) 중의 최소 및 최대로서 계산될 수 있다.
(관련된 최대 및 최소 측정치들을 가지는) 그런 단방향 지연 및 지터 측정들은 그러나, 패킷 손실이 전혀 없거나, 또는 자신들의 제2 마킹 서브-필드 b2가 Vc와 동일한 패킷들, 즉, 시간 측정될 패킷들에 결부된 패킷 손실이 적어도 전혀 없는 때에만 유효한 결과들을 제공한다. 실제로, 측정될 하나 또는 그 이상의 패킷들이 블록 구간 T(k) 동안에 손실된다면, 그 블록 구간 T(k)에 대한 전송 타임 스탬프들 TS1(l, k) 수신 타임 스탬프들 TS2(l, k)의 어레이들에 미스매치가 초래되며, 이는 N**이 N*보다 더 작기 때문이다. 이것은 손실 패킷 다음의 패킷들 모두에 대한 단방향 지연 측정 그리고 그 단방향 지연 측정으로부터 유도된 시간 측정들 모두의 결과들을 바꾸며, 이는 그런 패킷들에 대해서 수신 타임스탬프가 다른 패킷의 전송 타임스탬프와 비교되기 때문이다. 그런 시간 측정들은 그러면 패킷 손실이 탐지될 때에는 폐기되는 것이 바람직하다. 바람직하게는, 시간 측정될 패킷들에 수반된 패킷 손실을 탐지하기 위해서, Vc로 마킹된 패킷들 Pki의 전송 시에만 (그리고 도 3a에서 보이는 것같은, 각 패킷 Pki의 전송 시에는 아님) 상기 전송 카운터들 C1a 및 C1b는 1씩 증가되며, 그리고 유사하게, Vc로 마킹된 패킷들 Pki의 수신 시에만 (그리고 도 4a에서 보이는 것같은, 각 패킷 Pki의 수신 시에는 아님) 상기 수신 카운터들 C2a 및 C2b는 1씩 증가된다. 그러면, 각 블록 구간 만료 이후에, Vc로 마킹된 패킷들 Pki에 관련된 패킷 손실은 전송 타임스탬프 C1a 또는 C1b 그리고 수신 타임스탬프 C2a 또는 C2b의 차이로서 바람직하게 계산된다. 구간 T(k)에 관련된 패킷 손실이 0과 상이하다면, 그 구간에 관련된 단방향 지연 및 지터 측정들 (관련된 최대 및 최소 측정들을 구비한다)은 유효하지 않은 것으로서 바람직하게 폐기된다. 몇몇의 변이들에 따르면, 측정될 것으로 마킹된 패킷들만에 대한 패킷 손실 측정은 전체 패킷 플로우 PF에 관한 패킷 손실 측정에 추가로 수행된다. 그런 경우에, 전송 카운터들 및 수신 카운터들의 두 개의 분리된 세트들, 즉, 각 블록 구간 동안에 전송되고 수신된 모든 패킷들 Pki 을 카운팅하기 위한 전송 및 수신 카운터들의 제1 세트 그리고 시간 측정될 패킷들로서 마킹된 패킷들만을 카운팅하기 위한 전송 및 수신 카운터들의 제2 세트가 구현될 것이다. 상기 제1 세트의 카운터들 (즉, 전체 패킷 플로우 PF에 관한 것임)을 이용하여 계산된 패킷 손실은 상기 패킷 플로우 PF의 행동을 표시하며, 상기 제2 세트의 카운터들 (즉, 측정될 패킷들로서 마킹된 패킷들 Pki 만에 관한 것임)을 이용하여 계산된 패킷 손실은 상기 시간 측정들의 유효함/무효함을 위해서만 바람직하게 사용된다.
유사한 이유로, 블록 구간 T(k)에서 발생하며 그리고 시간 측정될 패킷들 사이에서의 추월에 결부된 수신 시퀀스 오류들 또한 위에서 설명된 것처럼 단방향 측정의 정확함을 손상시킨다. 패킷 손실과는 상이한 그런 오류들은 탐지되지 않을 수 있을 것이다. 그러나, 최소 전송-사이 시간 Tx을 위에서 설명된 것처럼 선택하는 것은 이런 유형의 수신 시퀀스 오류를 회피하는 것을 유리하게도 가능하게 한다.
각 블록 구간 T(k)의 만료 이후에, 관리 서버 MS는 그 블록 구간 T(k)에 대해서 평균 단방향 지연 OWDav(k)을 또한 계산할 수 있다. 이 목적을 위해서, 상기 관리 서버 MS는 블록 구간 T(k) 동안에 전송된 그리고 자신들의 제2 마킹 서브-필드 b2가 Vc와 동일한 패킷들의 상기 단방향 지연들 OWD(l, k)을 위에서 설명된 것처럼 계산할 수 있으며, 그리고 그 후에 평균을 계산한다. 대안으로, 관리 서버 MS는 평균 전송 타임스탬프 TS1av(k)를 먼저 다음처럼 계산할 수 있다:
Figure 112016065989020-pct00001
그 후에 평균 수신 타임스탬프 TS2av(k)를 다음처럼 계산할 수 있다:
Figure 112016065989020-pct00002
그리고 그 후에 평균 단방향 지연 OWDav(k)을 평균 수신 타임스탬프 TS2av(k) 및 평균 전송 타임스탬프 TS1av(k) 사이의 차이로서 계산한다. 특히 유리한 변이들에 따라서, 상기 전송 노드 N1 및 수신 노드 N2 스스로는 평균 전송 타임스탬프 TS1av(k) 및 평균 수신 타임스탬프 TS2av(k)를 각각 바람직하게 계산하며, 그리고 그것들을 상기 관리 서버 MS에게 송신하며, 그 관리 서버는 그 두 개의 수신된 파라미터들 사이의 차이를 계산해야 한다.
옵션으로, 상기 전송 노드 N1 및 수신 노드 N2는 블록 구간 T(k) 동안에 전송된 마킹된 패킷들 Pki 모두에 관련된 평균 전송 타임스탬프 및 평균 수신 타임스탬프를, 그 패킷들의 제2 마킹 서브-필드 b2의 값에 독립적으로 또한 계산할 수 있다. 이것은 상기 관리 서버 MS가 Vc로 마킹된 패킷들 Pki의 서브-플로우에 관한 평균 단방향 지연 OWDav에 추가로, 전체 패킷 플로우 PF의 평균 단방향 지연을 계산하는 것을 가능하게 한다.
게다가, 상기 관리 서버 MS는 블록 구간 T(k)에 관련된 평균 지터 Jav(k)를 또한 계산할 수 있다. 이 목적을 위해서, 상기 관리 서버 MS는 평균 원 포인트 전송 지터 OPJ1av(k)를 다음처럼 바람직하게 계산한다:
Figure 112016065989020-pct00003
그 후에 평균 원 포인트 수신 지터 OPJ2av(k)를 다음과 같이 계산한다:
Figure 112016065989020-pct00004
그리고 그 후에 평균 지터 Jav(k)를 평균 원 포인트 수신 지터 OPJ2av(k) 및 평균 원 포인트 전송 지터 OPJ1av(k) 사이의 차이로서 계산한다. 특별하게 유리한 변이들에 따라서, 상기 전송 노드 N1 및 수신 노드 N2 스스로는 상기 블록 구간 T(k)에 관한 평균 원 포인트 전송 지터 OPJ1av(k) 및 평균 원 포인트 수신 지터 OPJ2av(k)를 각각 바람직하게 계산하며, 그리고 그것들을 상기 관리 서버 MS에게 송신하며, 그 관리 서버는 그 두 개의 수신된 파라미터들 사이의 차이를 계산해야만 할 뿐이다.
옵션으로, 상기 전송 노드 N1 및 수신 노드 N2는 블록 구간 T(k) 동안에 전송된 마킹된 패킷들 Pki 모두에 관련된 평균 원 포인트 전송 지터 및 평균 원 포인트 수신 지터를, 그 패킷들의 제2 마킹 서브-필드 b2의 값에 독립적으로 또한 계산할 수 있다. 이것은 상기 관리 서버 MS가 Vc로 마킹된 패킷들 Pki의 서브-플로우에 관한 평균 지터 Jav(k)에 추가로, 전체 패킷 플로우 PF의 평균 지터를 계산하도록 허용한다.
위에서 설명된 것처럼 블록 구간 T(k)에 대해 계산된 평균 단방향 지연 OWDav(k) 및 평균 지터 Jav(k)는 상기 블록 구간 T(k) 동안에 발생하는 있을 수 있는 패킷 손실에 유리하게 대항하며, 특히 시간 측정될 패킷들에 영향을 미치는 패킷 손실에 유리하게 대항한다. 실제로, 그런 패킷들이 수신 노드 N2에서 수신되기 이전에 그 패킷들 중 하나 또는 그 이상의 손실되는 경우에, 이것은 매체 지연 OWDav(k) 및 평균 지터 Jav(k)의 정확함에 약간 영향을 주며, 이는 상기 두 개의 평균 원 포인트 지터들 OPJ1av(k) 및 OPJ2av(k)은 물론이며 상기 두 평균 타임스탬프들 TS1av(k) 및 TS2av(k)이 상이한 패킷 카운트들 N*, N** 상에서 계산되기 때문이다.
또한, 위에서 설명된 것처럼 계산된 상기 평균 단방향 지연 OWDav(k) 및 평균 지터 Jav(k)는, 블록 구간 T(k) 동안에 발생하며 시간 측정되는 패킷들 사이의 추월에 결부된 있을 수 있는 수신 시퀀스 오류들에 대항하여 저항한다. 실제로, Vc 로 마킹된 패킷들이 상기 수신 노드 N2에서 수신되는 순서가 상기 전송 노드 N1에 의해서 그 패킷들이 전송되었던 순서와 상이하다면, 평균 수신 타임스탬프 TS2av(k) 그리고 평균 원 포인트 수신 지터 OPJ2av(k)의 값은 변하지 않는다 (지터의 경우에, 상기 오류가 블록 구간 T(k) 동안에 전송된, 측정될 제1 패킷 또는 마지막 패킷 중 어느 하나와 결부해야만 그 지터는 변한다). 이것은, 도 4b의 흐름도를 참조하여 위에서 설명된 것과 같이 수신 시퀀스 오류로 인해서 블록 구간 동안에 전송된 몇몇의 패킷들이 다음의 블록 구간 동안에 수신된다면 또한 일어난다.
상기의 설명에서, 단방향 측정들에 대해서만, 즉, 노드 N1으로부터 노드 N2로 전송된 패킷 플로우에 관한 측정들에 대해서만 참조가 되었다. 그런 측정들은 상기 노드들 N1 및 N2가 동기되는 경우에만, 즉, 그 노드들의 로컬 클록들이 동일한 날자 및 시간을 표시하는 경우에만 정확한 결과를 제공한다. 그러나, 많은 응용 분야들에서, 상기 노드들 N1 및 N2는 동기되지 않는다. 그런 시나리오들에서, 상기 단방향 측정들 (특히, 단방향 지연 측정들)은 부정확할 수 있을 것이며, 이는 전송 타임스탬프들 및 수신 타임스탬프들 사이에 예측할 수 없는 오프셋이 존재하기 때문이다.
그러므로, 바람직하게는, 상기 노드들 N1 및 N2가 동기되지 않는다면, 상기 노드들 N1 및 N2에 의해 제공된 전송 파라미터 및 수신 파라미터는 양방향 측정들, 특히 왕복 (round-trip) 지연 측정들을 "에뮬레이트 (emulate)"하는 양방향 지연 측정들을 제공하기 위해 사용된다.
특히, 그런 실시예들에 따라, 도 4a 및 도 4b의 흐름도들을 참조하여 위에서 설명된 것과 같은 상기 패킷 플로우 PF의 상기 수신된 패킷들 Pki을 프로세싱하는 것 외에, 상기 제2 노드 N2는 N2로부터 N1으로 전송된 패킷들 Pki'의 추가의 패킷 플로우 PF'를 또한 바람직하게 프로세싱하며, 이는 각 블록 구간 T(k)의 만료 이후에, 상기 패킷 플로우 PF'에 관련된 전송 카운터 C1(k)' 그리고 N'개의 전송 타임스탬프들 TS1'(l, k)의 어레이를 제공하기 위한 것이다. 일반적으로 상기 개수 N' (즉, 각 블록 구간 내에서 시간 측정될 플로우 PF'의 패킷들의 최대 개수)은 N (즉, 각 블록 구간 내에서 시간 측정될 플로우 PF의 패킷들의 최대 개수)과는 상이할 수 있으며, 이는 N2로부터 N1으로의 방향에서의 시간 측정들을 위한 최소 전송-사이 시간 Tx'가 N1으로부터 N2로의 방향에서의 시간 측정들을 위한 최소 전송-사이 시간 Tx와는 선험적으로 상이할 수 있기 때문이다.
각 블록 구간 T(k)의 만료 이후에 전송 카운터 C1(k)' 그리고 N'개의 전송 타임스탬프들 TS1'(l, k)의 어레이를 제공하기 위해서, 상기 제2 노드 N2는 도 3a 및 도 3b에서 보이는 단계들을 상기 패킷 플로우 PF'의 패킷들 Pki'에 기본적으로 적용한다.
유사하게, 도 3a 및 도 3b의 흐름도들을 참조하여 위에서 설명된 것처럼 상기 패킷 플로우 PF의 전송될 패킷들 Pki를 프로세싱하는 것 외에, 상기 제1 노드 N1는 상기 제2 노드 N2로부터 수신된 추가의 패킷 플로우 PF' 중의 패킷들 Pki'을 또한 바람직하게 프로세싱하며, 이는 각 블록 구간 T(k) 만료 이후에, 상기 패킷 플로우 PF'에 관련된 수신 카운터 C2(k)' 및 N'개의 수신 타임스탬프들 TS2'(l, k)의 어레이를 제공하기 위한 것이다. 이 목적을 위해서, 상기 제1 노드 N1는 도 4a 및 도 4b에서 보이는 단계들을 상기 패킷 플로우 PF'에 기본적으로 적용한다.
그 후에, 각 블록 구간 T(k)의 만료 이후에, 상기 노드들 N1 및 N2은, 상기 패킷 플로우 PF에 관련된 카운터들 및 타임스탬프들의 값들을 상기 관리 서버 MS에게 전송하는 것 외에도, 상기 패킷 플로우 PF'에 관련된 카운터들 및 타임스탬프들의 값들을 또한 전송한다.
그러면, 상기 수신된 타임스탬프들은 양방향 지연 측정들을 수행하기 위해서 바람직하게 사용된다.
특히, 평균 양방향 지연 TWDav(k)은 위에서 설명된 것처럼 계산된 패킷 플로우 PF의 평균 단방향 지연 OWDav(k) 그리고 상기 패킷 플로우 PF'에 관련된 파라미터들을 이용하여 유사한 방식으로 계산된 상기 패킷 플로우 PF'의 평균 단방향 지연 OWDav'(k)의 합으로서 바람직하게 계산된다. 평균 단방향 지연들이 전체 패킷 플로우들 PF 및 PF'에 관해서 계산되었다면 (즉, Vc로 마킹된 패킷들 및 Vd로 마킹된 패킷들 사이의 구별을 하지 않음), 전체 트래픽에 관련된 평균 양방향 지연이 또한 계산될 수 있다.
그런 평균 양방향 지연 TWDav(k)은 실제로 왕복 지연의 추정이며, 이는 그것이 N1 및 N2 사이에서 역방향으로 그리고 순방향으로 전송된 동일한 패킷에 관해서는 측정되지 않기 때문이다. 그러나, 그것은 아주 정확한 추정이며, 이는 그것이 두 개의 반대-전파 (counter-propagating) 패킷 흐름들의 많은 개수의 패킷들에 관한 평균으로서 계산되기 때문이다. 본 발명자들은 위에서 설명된 것처럼 계산된 평균 양방향 지연 TWDav(k)의 정확함은 핑 함수 (ping function)를 이용하여 계산된 왕복 지연의 정확함과 비교될 정도라고 추정했다. 그러나, 유리하게도, 상기 핑 함수와는 달리, 매체 왕복 지연의 계산은 실제의 트래픽에 관해서 수행되며 그리고 어떤 인공적인 패킷의 전송을 필요로 하지 않는다.
그러면, 최대 양방향 지연 TWDmax(k) 및 최소 양방향 지연 TWDmin(k)이 바람직하게 계산된다. 이 목적을 위해, Vc로 마킹된 패킷 플로우 PF 중 패킷들의 단방향 지연 OWD(l, k)은 위에서 설명된 것처럼 계산된다. 게다가, Vc로 마킹된 패킷 플로우 PF' 중의 패킷들의 단방향 지연들 OWD'(l, k)은 유사한 방식으로 계산된다. 그러면, 양방향 지연들 TWD(l, k)이 계산되며, 각 양방향 지연 TWD(l, k)은 패킷 플로우 PF의 어떤 패킷 Pki에 관련된 단방향 지연 OWD(l, k) 그리고 패킷 플로우 PF'의 대응하는 패킷 Pki'의 단방향 지연 OWD'(l, k)의 합이다. 바람직하게는, 상기 대응하는 패킷 Pki'는 전송 타임스탬프가, 블록 구간 T(k) 동안에 전송되고 그리고 Vc로 마킹된 패킷 흐름 PF' 중의 모든 패킷들 중에서 패킷 Pki의 수신 시각에 가장 가까운 그런 패킷으로 선택된다.
어떤 블록 구간 동안에 전송된 패킷 플로우 PF 중 패킷들 Pki의 개수는 동일한 블록 구간 동안에 전송된 패킷 플로우 PF' 중 패킷들 Pki'의 개수와는 선험적으로 상이하기 때문에 (그리고, 특히, Vc로 마킹된 패킷들의 개수는 두 플로우들에서 상이할 수 있다), 양방향 시간 측정들을 만들기 위해 어떤 블록 구간 T(k)의 끝에서 이용 가능한 전송 타임스탬프들 및 수신 타임스탬프들의 개수는 두 플로우들 PF 및 PF'에 대해 동일하지 않을 수 있다는 것에 유의할 것이다. 특히, 양방향 지연 측정을 만들기 위해 이용가능한 단방향 지연들 OWD(l, k) 및 OWD'(l, k)의 개수는 두 플로우들 PF 및 PF'에 대해서 동일하지 않을 수 있다. 그러므로, 양방향 지연들을 계산하기 위해 단방향 지연들을 적절하게 결합하기 위해서, 타임스탬프들이 생성되었고 그리고 단방향 지연이 계산되었던 Vc 마킹된 패킷들의 가장 작은 개수를 가지는 패킷 플로우 PF 또는 PF'로부터 시작하는 것이 바람직하다. 예를 들어, 어떤 블록 구간 T(k) 동안에 패킷 플로우 PF'의 패킷 레이트가 패킷 플로우 PF'의 패킷 레이트보다 더 낮았다고 가정하면, 더 많은 개수의 전송 스탬프들 및 수신 스탬프들 (그리고 그러므로 계산된 단방향 지연들 OWD(l, k)))이 상기 패킷 플로우 PF를 위해 이용 가능할 것이다. 그런 경우에, 상기 패킷 플로우 PF'를 위해 계산된 단방향 지연들 OWD'(l, k)의 어레이로부터 시작하는 것이 바람직하다. 특히, 각 계산된 단방향 지연 OWD'(l, k)에 대해, 대응하는 양방향 지연 TWD(l, k)은 전송 시각이 그 패킷의 수신 시각에 가장 가까운 패킷 플로우 PF의 패킷 Pki의 단방향 지연 OWD(l, k)을 더함으로써 계산된다. 특별하게 바람직한 변이에 따라, 문턱값이 바람직하게 고정되며, 이것은 매칭된 패킷들의 수신 타임스탬프 및 전송 타임스탬프 사이의 차이에 의해 압도되지 않을 것이다. 이것은 상기 노드들 N1 및 N2의 있을 수 있는 로컬 클럭들의 드리프트들이 오류를 증가시키는 것을 방지한다. 매칭된 패킷들의 수신 타임스탬프와 전송 타임스탬프 상의 차이가 상기 문턱값을 압도한다면, 그 매칭된 패킷들을 위해 계산된 양방향 지연은 폐기되는 것이 바람직하다.
일단 양방향 지연들 TWD(l, k)이 카운터-전파 패킷 플로우들 PF, PF'의 매칭된 패킷들의 각 쌍에 대해 계산되면, 다른 양방향 측정들이 수행될 수 있을 것이다.
예를 들어, 최대 양방향 지연 TWDmax(k), 최소 양방향 지연 TWDmin(k) 그리고 평균 양방향 지연 TWDav(k)이 상기 계산된 양방향 지연들 TWD(l, k)의 최대, 최소 및 평균으로서 계산될 수 있을 것이다.
추가로, 바람직한 변이들에 따라서, 양방향 지연 TWD(l, k)이 (예를 들어 SLA에 의해 정의될 수 있을) 어떤 값 아래에 있는 패킷들의 백분율이 추정될 수 있을 것이다.
위에서 설명된 시간 측정 방법은 패킷 플로우 PF를 블록들로 분할하기 위해서 상기 제1 마킹 서브-필드 b1의 값을 주기적으로 변경하는 것을 포함한다. 이것은 그러나 한정하지 않는다. 실제로, 본 발명의 대안의 실시예들에 따르면, 패킷 플로우 PF는 상기 제1 마킹 서브-필드 b1 없이 블록들로 분할될 수 있을 것이다. 특히, 바람직한 실시예에 따라, 상기 전송 노드 N1은 블록 구간 T(k) 및 다음의 블록 구간 T(k+1) 사이의 가장자리를 마킹하는 추가 패킷을 상기 패킷 플로우 PF 내에 주기적으로 삽입할 수 있다. 예를 들면, 상기 통신 네트워크 CN이 이더넷 네트워크이라면, 상기 추가 패킷들은 OAM 프레임들일 수 있으며, ITU-T 권고안 Y.1731 (02/2008), Chapter 8.1 (25-27면)에서 정의된 이 OAM 프레임은 프레임 손실의 측정을 허용하기 위해 현재 사용된다. 그런 실시예에 따르면, 패킷 손실은 Y.1731에의해 제공된 것처럼 블록들로 분할된 패킷 플로우 상에서 바람직하게 계산된다. 그러나, Y.1731와는 다르게, 상기 시간 측정들은 패킷 플로우를 블록들로 분할하는 OAM 패킷들 상에서 수행되지 않는다. 그런 실시예들에 따르면, 블록들로 분할된 패킷 플로우의 패킷들은 위에서 설명된 것처럼, 시간 측정될 패킷들을 시간 측정되지 않을 패킷들과 구별하기 위해서 마킹된다. 그러면, 시간 측정될 패킷들로 마킹된 패킷들 상에서 시간 측정들이 수행된다. 그래서, 시간 측정들이 인공적인 트래픽 (즉, 실제의 트래픽을 블록들로 분할하는 OAM 패킷들) 상에 수행되면서 Y.1731에 따라 실제 트래픽 상에 패킷 손실이 측정되지만, 본 발명에 따르면, 패킷 손실 측정들 그리고 시간 측정들 둘 모두는 실제 트래픽 상에서 수행된다.
일반적으로, 본 발명의 시간 측정 방법에서, 패킷 플로우 PF는 어떤 기술에 의해 블록들로 분할될 수 있으며, 그런 기술은 시간 상 교번하는 (alternating) 쪽스 블록 구간들 및 홀수 블록 구간들을 식별하는 것을 가능하게 한다. 이것은 짝수 및 홀수 블록 구간들 동안에 전송되는 패킷들에 관련된 변수들 (카운터들 및 타임스탬프들)의 이중 세트를 구현하는 것을 허용한다. 이 방식에서, 각 블록 구간에서, 변수들의 한 세트는 변하고 있으며 (도 3a 및 도 4a의 단계들) 반면에 변수들의 다른 세트는 고정된 값이며 그리고 위에서 설명된 패킷 손실 및 시간 측정들을 수행하기 위해서 그에 따라서 사용될 수 있을 것이다 (도 3b 및 도 4b의 단계들).
상기의 설명에서, 도 3a 및 도 3b의 흐름도들의 모든 단계들은 상기 전송 노드 N1에서 수행되며, 반면에 도 4a, 도 4b의 흐름도들의 모든 단계들은 상기 수신 노드 N2에서 수행되는 것으로 가정되었다. 이것은 그러나 제한하지 않는다. 실제로, 몇몇의 경우들에서, 상기 노드들에서 시간 측정을 수행하기 위한 상기 방법을 구현하는 것이 바람직하지 않거나 또는 심지어는 불가능할 수 있을 것이다. 예를 들면, 통신 네트워크의 노드들이 상기 방법 단계들을 실행하는 것을 지원하기에 필요한 기초적인 기능성들을 포함하지 않을 때에, 또는 상기 노드들이 서로 다른 벤더들이며, 따라서 그것들의 개구성은 매우 길며 비용이 드는 오퍼레이션일 때가 그런 경우이다. 그런 상황들에서, 본 발명의 대안의 실시예들에 따라서, 상기 방법 단계들의 적어도 몇몇은 상기 노드들에 연결된 전용의 컴퓨터들에서 수행되며, 이것은 이후에 본원에서 상세하게 설명될 것이다.
제1 대안의 실시예에 따라, 상기 전송 노드 N1은 상기 패킷 플로우 PF가 전송되는 포트와는 상이한 포트를 통해서 제1 컴퓨터 PC1에 바람직하게 연결된다. 유사하게, 상기 수신 노드 N2는 상기 패킷 플로우 PF가 수신된 포트와는 상이한 포트를 통해서 제2 컴퓨터 PC2에 바람직하게 연결된다. 이 제1 구현에 따라서, 상기 노드 N1은 상기 패킷 플로우 PF를 블록들로 분할하기 위해서 그리고 시간 측정될 패킷들을 식별하기 위해서 상기 패킷들 Pki을 마킹하며, 상기 시간 측정은 상기 통신 네트워크 CN에서 전송된 실제의 트래픽의 사본들 상에서 상기 컴퓨터들 PC1, PC2에 의해 수행딘다. 상기 노드 N1에서 이미 이용가능한 마킹 기능성은 상기 컴퓨터들 PC1, PC2에 의해 수행된 상기 시간 측정을 지원하기 위해 활용될 수 있을 것이다. 유리하게도, 상기 PC들 중 하나가 고장나는 경우에, 시간 측정만이 영향을 받으며, 반면에 패킷 플로우 PF의 전송은 영향을 받지 않는다.
제2 대안의 실시예에 따라, 상기 전송 노드 N1은 상기 패킷 플로우 PF가 전송된 것과 동일한 포트를 통해서 제1 컴퓨터 PC1에 바람직하게 연결된다. 유사하게, 상기 수신 노드 N2는 상기 패킷 플로우 PF가 전송된 것과 동일한 포트를 통해서 제2 컴퓨터 PC2에 바람직하게 연결된다. 다른 말로 하면, 상기 제1 컴퓨터 PC1 및 제2 컴퓨터 PC2는 상기 전송 노드 N1 및 상기 수신 노드 N2 사이에 상기 패킷 플로우 PF가 따라가는 경로 상에 배치된 패스-스루 프로브 (pass-through probe)들이다. 이 제2 대안의 실시예에 따라서, 상기 제1 컴퓨터 PC1은 도 3a 및 도 3b의 흐름도들의 모든 단계들을 수행하도록 구성되며, 상기 제2 컴퓨터 PC2는 도 4a 및 도 4b의 흐름도들의 모든 단계들을 수행하도록 구성된다. 다른 말로 하면, 이 제2 대안의 실시예에 따라서, 상기 노드들 N1, N2은 상기 시간 측정을 지원하는 어떤 동작도 수행하지 않으며, 이것은 완전히 상기 컴퓨터 PC1, PC2가 담당한다. 상기 컴퓨터들 PC1, PC2은 노드의 트래픽 프로세싱 기능들 모두에 패킷 손실 및 시간 측정 기능들을 더한 것으로 기본적으로 구현한다. 그래서, 상기 시간 측정은 상기 노드들 N1, N2에서 이용가능한 기능성에 독립적으로 구현될 수 있다. 이것은 상이한 유형들 그리고 상이한 벤더들의 노드들을 포함하는 통신 네트워크들에서 전송된 실제의 트래픽 상에서의 시간 측정을 구현하는 것을 가능하게 한다.
또한, 상기의 설명에서, 상기 노드들 N1, N2은 각자의 계산된 파라미터들 (패킷 카운트 및 타임스탬프 어레이)을 상기 관리 서버 MS로 전송하고, 이 관리 서버는 매체 지연 및 매체 지터를 계산하기 위해 그 파라미터들을 사용하는 것으로 가정되었다. 대안의 실시예들에 따라서, 패킷 손실 및 시간 측정들은 상기 노드들 N1, N2 중 하나에 의해 수행될 수 있다. 그래서, 예를 들어 상기 계산이 상기 수신 노드 N2에 의해 수행된다고 가정하면, 상기 전송 노드 N1은 상기 계산된 파라미터들을 상기 수신 노드 N2로 전송할 것이다. 그런 파라미터들은 전용의 패킷, 예를 들면, OAM 프레임 내에 삽입될 수 있을 것이다. 그래서, 그런 실시예들에 따라서, 다양한 패킷 플로우들에 관련된 시간 측정들의 계산은 상기 통신 네트워크 CN의 노드들에서 유리하게도 분배된다.

Claims (17)

  1. 제1 측정 포인트 (N1)로부터 제2 측정 포인트 (N2)로 통신 네트워크 (CN)를 통해서 전송된 패킷 플로우 (PF) 상에서 시간 측정을 수행하기 위한 방법으로, 상기 방법은:
    a) 상기 제1 측정 포인트 (N1)에서, 상기 패킷 플로우 (PF)가 전송될 때에, 상기 패킷 플로우 (PF)를 제1 구간들 (T(0), T(2), T(4), …) 동안에 전송되는 제1 패킷들 (Pki) 그리고 상기 제1 구간들 (T(0), T(2), T(4), …)과 시간상 교번하는 제2 구간들 (T(1), T(3), …) 동안에 전송되는 제2 패킷들로 분할하는 단계;
    b) 일정 구간 (T(k)) 동안에, 상기 제1 패킷들 (Pki)이 전송될 때에, 상기 제1 패킷들 (Pki) 중 각 한 패킷의 피처 (feature)를 시간 측정될 제1 패킷 (Pki)을 표시하는 제1 마킹 값 (Vc) 또는 시간 측정되지 않을 제1 패킷 (Pki)을 표시하는 제2 마킹 값 (Vd) 중 어느 하나로 세팅함으로써 상기 제1 측정 포인트 (N1)에서 상기 제1 패킷들 (Pki)을 마킹하며, 상기 제1 마킹 값 (Vc)으로 마킹된 두 개의 제1 패킷들 (Pki)의 전송 시각들이 상기 구간 (T(k))의 지속시간 (Tb)보다 더 짧은 적어도 미리 정의된 최소 전송-사이 시간 (Tx) 만큼 서로 (reciprocally) 지연되도록 상기 마킹이 수행되며, 그리고 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki) 중 각 한 패킷에 대한 전송 타임스탬프를 생성하는 단계;
    c) 상기 제2 측정 포인트 (N2)에서, 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki)을 식별하고, 그리고 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki) 중 각 한 패킷에 대해 수신 타임스탬프를 생성하는 단계;
    d) 상기 구간 (T(k))의 만료 이후에, 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki)의 상기 전송 타임스탬프들 및 상기 수신 타임스탬프들에 기초하여 상기 시간 측정을 수행하는 단계를 포함하는, 시간 측정 수행 방법.
  2. 제1항에 있어서,
    상기 단계 a)는 상기 패킷들 (Pki) 중 각 한 패킷의 추가 피처를 상기 제1 구간들 (T(0), T(2), T(4), …) 동안에 전송될 제1 패킷 (Pki)을 표시하는 제3 마킹 값 (Va) 또는 상기 제2 구간들 (T(1), T(3), …) 동안에 전송될 제2 패킷 (Pki)을 표시하는 제4 마킹 값 (Vb) 중 어느 하나로 세팅함으로써 상기 패킷들 (Pki)을 마킹하는 단계를 포함하는, 시간 측정 수행 방법.
  3. 제2항에 있어서,
    상기 패킷 플로우 (PF) 중의 각 패킷 (Pki)은 마킹 필드 (MF)를 포함하며,
    상기 추가 피처는 상기 마킹 필드 (MF)의 제1 마킹 서브-필드 (b1)이며 그리고 상기 피처는 상기 마킹 필드 (MF)의 제2 마킹 서브-필드 (b2)인, 시간 측정 수행 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    단계 b)에서 상기 최소 전송-사이 시간 (Tx)은 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 사이를 추월하는 것에 결부된 수신 시퀀스 오류를 방지하기 위한 적합한 값으로 세팅되는, 시간 측정 수행 방법.
  5. 제4항에 있어서,
    상기 최소 전송-사이 시간 (Tx)은 상기 제1 측정 포인트 (N1)로부터 상기 제2 측정 포인트 (N2)까지의 상기 패킷 플로우 (PF)의 평균 단방향 (one-way) 지연보다 더 긴, 시간 측정 수행 방법.
  6. 제4항에 있어서,
    상기 최소 전송-사이 시간 (Tx)은 상기 제1 측정 포인트 (N1)로부터 상기 제2 측정 포인트 (N2)까지의 상기 패킷 플로우 (PF)의 최대 단방향 지연보다 더 긴, 시간 측정 수행 방법.
  7. 제4항에 있어서,
    상기 최소 전송-사이 시간 (Tx)은 10밀리초보다 더 길거나 동일한, 시간 측정 수행 방법.
  8. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 단계 b)는, 상기 제1 패킷들 (Pki) 중 각 하나의 패킷 전송 시에:
    - 상기 일정 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나 또는 상기 제2 구간들 (T(1), T(3), …) 중 하나인가의 여부를 체크하는 단계; 그리고
    - 상기 일정 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나라면, 전송 카운터 (C1a)를 증가시키고, 상기 제1 마킹 값 (Vc)으로 마킹된 마지막 패킷 (Pki)의 전송 이래로 상기 최소 전송-사이 시간 (Tx)이 경과했는가의 여부를 체크하며, 그리고 경과한 경우에는, N 개의 전송 타임스탬프 변수들 (TS1a(i)) 중 하나를 상기 제1 측정 포인트 (N1)의 로컬 클록에 의해 표시된 현재 시각 (t*)으로 세팅하는 단계를 포함하는, 시간 측정 수행 방법.
  9. 제8항에 있어서,
    상기 단계 d)는:
    - 상기 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나 또는 상기 제2 구간들 (T(1), T(3), …) 중 하나였는가의 여부를 체크하는 단계;
    - 상기 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나라면, 상기 시간 측정을 수행하기 위해 상기 전송 카운터 (C1a) 및 상기 N개의 전송 타임스탬프 변수들 (TS1a(i))을 사용하는 단계; 그리고
    - 상기 전송 카운터 (C1a) 및 상기 N개의 전송 타임스탬프 변수들 (TS1a(i))을 리셋하는 단계를 포함하는, 시간 측정 수행 방법.
  10. 제8항에 있어서,
    상기 단계 c)는, 각 패킷 (Pki)을 수신할 때에:
    - 상기 패킷 (Pki)이 상기 제1 패킷들 (Pki) 중 하나 또는 상기 제2 패킷들 (Pki) 중 하나인가의 여부를 체크하는 단계;
    - 상기 패킷 (Pki)이 상기 제1 패킷들 (Pki) 중 하나라면, 수신 카운터 (C2a)를 증가시키고, 상기 제1 패킷 (Pki)이 상기 제1 마킹 값 (Vc)로 마킹되었는가의 여부를 체크하고 그리고 마킹된 경우에, N개의 수신 타임스탬프 변수들 (TS2a(i)) 중 하나를 상기 제2 측정 포인트 (N2)의 로컬 클록에 의해 표시된 현재 시각 (t**)으로 세팅하는 단계를 포함하는, 시간 측정 수행 방법.
  11. 제10항에 있어서,
    상기 단계 d)는:
    - 상기 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나 또는 상기 제2 구간들 (T(1), T(3), …) 중 하나였는가의 여부를 체크하는 단계;
    - 상기 구간 (T(k))이 상기 제1 구간들 (T(0), T(2), T(4), …) 중의 하나라면, 상기 시간 측정을 수행하기 위해 상기 수신 카운터 (C2a) 및 상기 N개의 수신 타임스탬프 변수들 (TS2a(i))을 사용하는 단계; 그리고
    - 상기 수신 카운터 (C2a) 및 상기 N개의 수신 타임스탬프 변수들 (TS2a(i))을 리셋하는 단계를 포함하는, 시간 측정 수행 방법.
  12. 제11항에 있어서,
    상기 단계 d)는 상기 구간 (T(k))의 지속시간 (Tb)의 1% 내지 50% 사이에 포함되는 미리 정해진 대기 시간만큼, 상기 구간 (T(k))의 끝 부분에 대해서 지연되는, 시간 측정 수행 방법.
  13. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 단계 d)는 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki) 중 각 한 패킷에 대한 단방향 지연을, 상기 제1 패킷 (Pki)에 대해 단계 c)에서 생성된 전송 타임스탬프 및 수신 타임스탬프 사이의 차이로서 계산하는 단계를 포함하는, 시간 측정 수행 방법.
  14. 통신 네트워크 (CN)용의 노드 (N1)로서,
    상기 노드 (N1)는 패킷 플로우 (PF)를 추가 노드 (N2)로 전송하도록 구성되며, 상기 노드 (N1)는:
    a) 상기 패킷 플로우 (PF)가 전송될 때에, 상기 패킷 플로우 (PF)를 제1 구간들 (T(0), T(2), T(4), …) 동안에 전송되는 제1 패킷들 (Pki) 그리고 상기 제1 구간들 (T(0), T(2), T(4), …)과 시간상 교번하는 제2 구간들 (T(1), T(3), …) 동안에 전송되는 제2 패킷들로 분할하고;
    b) 일정 구간 (T(k)) 동안에, 상기 제1 패킷들 (Pki)이 전송될 때에, 상기 제1 패킷들 (Pki) 중 각 한 패킷의 피처 (feature)를 시간 측정될 제1 패킷 (Pki)을 표시하는 제1 마킹 값 (Vc) 또는 시간 측정되지 않을 제1 패킷 (Pki)을 나타내는 제2 마킹 값 (Vd) 중 어느 하나로 세팅함으로써 상기 제1 패킷들 (Pki)을 마킹하도록 구성되며,
    상기 제1 마킹 값 (Vc)으로 마킹된 두 개의 제1 패킷들 (Pki)의 전송 시각들이 상기 구간 (T(k))의 지속시간 (Tb)보다 더 짧은 적어도 미리 정의된 최소 전송-사이 시간 (Tx) 만큼 서로 (reciprocally) 지연되도록 상기 마킹이 수행되며, 그리고 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki) 중 각 한 패킷에 대해 전송 타임스탬프를 생성하는, 통신 네트워크용 노드.
  15. 통신 네트워크 (CN)용의 노드 (N2)로서,
    상기 노드 (N2)는 추가 노드 (N1)로부터 패킷 플로우 (PF)를 수신하도록 구성되며,
    상기 패킷 플로우 (PF)는, 제1 구간들 (T(0), T(2), T(4), …) 동안에 전송되는 제1 패킷들 (Pki) 그리고 상기 제1 구간들 (T(0), T(2), T(4), …)과 시간상 교번하는 제2 구간들 (T(1), T(3), …) 동안에 전송되는 제2 패킷들로 분할된 패킷들 (Pki)을 포함하며,
    상기 패킷들 (Pki) 중 각 한 패킷은, 시간 측정될 제1 패킷 (Pki)을 표시하는 제1 마킹 값 (Vc) 또는 시간 측정되지 않을 제1 패킷 (Pki)을 표시하는 제2 마킹 값 (Vd) 중 어느 하나로 세팅된 피처를 포함하며,
    상기 노드 (N2)는:
    - 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki)을 식별하고; 그리고
    - 상기 제1 마킹 값 (Vc)으로 마킹된 상기 제1 패킷들 (Pki) 중 각 한 패킷에 대한 수신 타임스탬프를 생성하도록 구성된, 통신 네트워크용 노드.
  16. 통신 네트워크 (CN)로,
    제14항에 따른 제1 노드 (N1) 및 제15항에 따른 제2 노드 (N2)를 적어도 포함하는 통신 네트워크.
  17. 적어도 하나의 컴퓨터의 메모리에 프로그램을 저장하는 컴퓨터 판독가능 저장매체로서,
    상기 프로그램은 상기 적어도 하나의 컴퓨터 상에서 실행될 때에 제1항 내지 제3항 중 어느 한 항의 방법의 단계들을 수행하기 위한 소프트웨어 코드 부분들을 포함하는, 컴퓨터 판독가능 저장매체.
KR1020167018326A 2013-12-17 2013-12-17 패킷-교환 통신 네트워크에서의 시간 측정 KR102113803B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/076892 WO2015090364A1 (en) 2013-12-17 2013-12-17 Time measurement in a packet-switched communication network

Publications (2)

Publication Number Publication Date
KR20160098321A KR20160098321A (ko) 2016-08-18
KR102113803B1 true KR102113803B1 (ko) 2020-05-22

Family

ID=49917046

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167018326A KR102113803B1 (ko) 2013-12-17 2013-12-17 패킷-교환 통신 네트워크에서의 시간 측정

Country Status (8)

Country Link
US (1) US10027567B2 (ko)
EP (1) EP3085019B1 (ko)
JP (1) JP6279741B2 (ko)
KR (1) KR102113803B1 (ko)
CN (1) CN105830393B (ko)
AR (1) AR098784A1 (ko)
BR (1) BR112016012877B1 (ko)
WO (1) WO2015090364A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180367432A1 (en) * 2015-12-10 2018-12-20 Telecom Italia S.P.A. Traffic monitoring in a communication network
WO2017114580A1 (en) * 2015-12-30 2017-07-06 Telecom Italia S.P.A. Performance measurement in a packet-switched communication network
US10831760B2 (en) * 2016-09-13 2020-11-10 Viavi Solutions Inc. Data stream monitoring
US10812601B2 (en) * 2017-03-07 2020-10-20 Flash Networks Ltd. Method and system for signaling and radio connection optimization over a cellular network
KR101962346B1 (ko) 2017-06-14 2019-03-27 고려대학교 산학협력단 Sdn 기반 경로 지연 시간 측정 방법
DE102017219209A1 (de) * 2017-10-26 2019-05-02 Continental Automotive Gmbh Verfahren zum Erkennen eines fehlerhaften Zeitstempels einer Ethernet-Nachricht und Steuereinheit für ein Kraftfahrzeug
CN110233770B (zh) * 2018-03-06 2023-01-06 华为技术有限公司 网络流量标记及测量方法、节点
IT201800004914A1 (it) * 2018-04-27 2019-10-27 Misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto
EP3785402A1 (en) 2018-04-27 2021-03-03 Telecom Italia S.p.A. Enabling a performance measurement in a packet-switched communication network
WO2020016216A1 (en) * 2018-07-18 2020-01-23 Telecom Italia S.P.A. Performance measurement in a packet-switched communication network
IT201800010131A1 (it) * 2018-11-07 2020-05-07 Telecom Italia Spa Abilitazione di una misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto
EP3657758B1 (de) * 2018-11-20 2021-05-26 Siemens Aktiengesellschaft Verfahren zur funktional sicheren verbindungsidentifizierung
US11075824B2 (en) 2019-06-19 2021-07-27 128 Technology, Inc. In-line performance monitoring
CN112217686B (zh) 2019-07-12 2022-12-27 华为技术有限公司 一种评估往返时延的系统、方法及装置
CN112398557B (zh) * 2019-08-16 2022-06-28 华为技术有限公司 时延统计方法、装置、存储介质及系统
WO2021051418A1 (en) * 2019-09-21 2021-03-25 Huawei Technologies Co., Ltd. Methods and network nodes for reliability measurement
IT201900022458A1 (it) * 2019-11-29 2021-05-29 Telecom Italia Spa Misura di perdita di pacchetti round-trip in una rete di comunicazioni a commutazione di pacchetto
CN111162971B (zh) * 2019-12-30 2022-05-06 视联动力信息技术股份有限公司 一种时延确定方法及装置
IT202000004624A1 (it) * 2020-03-04 2021-09-04 Telecom Italia Spa Misura di perdite di pacchetti in una rete di comunicazioni a commutazione di pacchetto
CN113708985B (zh) 2020-05-20 2023-01-06 华为技术有限公司 一种流量的检测方法、装置及系统
CN116781499A (zh) * 2022-03-11 2023-09-19 华为技术有限公司 网络性能测量方法、系统及装置
WO2023247652A1 (en) 2022-06-24 2023-12-28 Telecom Italia S.P.A. Performance measurement on live traffic transmitted through a packet-switched communication network

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005057098A1 (de) * 2005-11-30 2007-05-31 Siemens Ag Verfahren zur Vorbereitung einer Verbindungsweiterschaltung in einem Funk-Kommunikationssystem
CN101026504B (zh) * 2006-02-24 2011-05-11 华为技术有限公司 一种网络性能测量方法
JP4924057B2 (ja) * 2007-01-24 2012-04-25 富士通株式会社 ルータ、その方法及びそれを用いた管理サーバ
JP2009130786A (ja) * 2007-11-27 2009-06-11 Nec Corp 通信装置、通信システム、および、通信装置間の通信品質監視方法
KR101597255B1 (ko) * 2009-12-29 2016-03-07 텔레콤 이탈리아 소시에떼 퍼 아찌오니 통신 네트워크에서 시간 측정 수행
JP5661941B2 (ja) * 2010-11-05 2015-01-28 テレコム・イタリア・エッセ・ピー・アー 通信ネットワークにおけるデータ・フローに関する測定
KR101947783B1 (ko) * 2012-05-22 2019-02-13 텔레콤 이탈리아 소시에떼 퍼 아찌오니 패킷-교환 통신 네트워크에서 패킷 흐름 상 타임 측정

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Capello M Cociglio L Castaldell Telecom Italia a Tempia Bonda A: "A packet based method for passive performance monitoring", 2013.02.25.
Chen H Liu Y Yin Huawei Technologies M: "Coloring based IP Flow Performance Measurement Framework", 2013.02.25.

Also Published As

Publication number Publication date
CN105830393A (zh) 2016-08-03
JP2017504246A (ja) 2017-02-02
BR112016012877A2 (ko) 2017-08-08
CN105830393B (zh) 2019-06-18
BR112016012877B1 (pt) 2022-08-30
US10027567B2 (en) 2018-07-17
AR098784A1 (es) 2016-06-15
JP6279741B2 (ja) 2018-02-14
WO2015090364A1 (en) 2015-06-25
US20170244623A1 (en) 2017-08-24
EP3085019A1 (en) 2016-10-26
EP3085019B1 (en) 2018-06-20
KR20160098321A (ko) 2016-08-18

Similar Documents

Publication Publication Date Title
KR102113803B1 (ko) 패킷-교환 통신 네트워크에서의 시간 측정
US9699062B2 (en) Performance measurement of a link of a packet-switched communication network
CN101272290B (zh) Ip网络中路径拥塞状态的测量方法和测量装置
KR101443237B1 (ko) 통신 네트워크에서의 데이터 흐름에 대한 측정
US9806976B2 (en) Time measurement on a packet flow in a packet-switched communication network
KR20100016364A (ko) 한 네트워크 구성요소의 클록을 다른 네트워크 구성요소의 클록과 동기화시키기 위한 방법 및 이를 위한 네트워크 구성요소
US9762464B2 (en) Measurement on data traffic in a communication network
EP3398296B1 (en) Performance measurement in a packet-switched communication network
US20140369218A1 (en) Measurement on a data flow in a communication network
EP3529952B1 (en) Performance measurement in a packet-switched communication network
US11218393B2 (en) Performance measurement on a multipoint packet flow
US11611495B2 (en) Enabling a performance measurement in a packet-switched communication network

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right