KR20160014650A - 패킷-교환 통신 네트워크 링크의 성능 측정 - Google Patents

패킷-교환 통신 네트워크 링크의 성능 측정 Download PDF

Info

Publication number
KR20160014650A
KR20160014650A KR1020157035438A KR20157035438A KR20160014650A KR 20160014650 A KR20160014650 A KR 20160014650A KR 1020157035438 A KR1020157035438 A KR 1020157035438A KR 20157035438 A KR20157035438 A KR 20157035438A KR 20160014650 A KR20160014650 A KR 20160014650A
Authority
KR
South Korea
Prior art keywords
packet
node
packets
packet flow
block period
Prior art date
Application number
KR1020157035438A
Other languages
English (en)
Other versions
KR102059986B1 (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 KR20160014650A publication Critical patent/KR20160014650A/ko
Application granted granted Critical
Publication of KR102059986B1 publication Critical patent/KR102059986B1/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/50Testing arrangements
    • 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/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • 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/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

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

Abstract

통신 네트워크의 두 개의 노드들 사이에 있는 링크의 성능 측정을 수행하기 위한 방법이 개시된다. 측정을 시작하기 전에, 시작 시각 및 패킷 전송 속도를 포함하는 측정 모드 정보가 상기 두 개의 노드들 모두에 제공된다. 상기 시작 시각에, 제1 노드는 상기 시작 시각 및 상기 패킷 전송 속도에 의해 결정되는 전송 시각들을 갖는 패킷들을 포함하는 패킷 흐름을 생성하고 상기 패킷 흐름을 나머지 노드에 전송한다. 상기 패킷 흐름은 짝수 블록 주기들 및 홀수 블록 주기들 동안 전송되는 교번하는(alternating) 블록들로 나누어진다. 각각의 블록 주기에서, 상기 패킷 흐름이 수신되는 동안, 상기 패킷 흐름의 행동을 나타내는 변수는 상기 패킷 흐름의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써 갱신된다. 그 다음, 상기 블록 주기의 끝 부분에 상기 변수에 의해 도달된 값을 사용하여, 상기 블록 주기 동안의 상기 패킷 흐름의 성능을 나타내는 파라미터가 산출된다.

Description

패킷-교환 통신 네트워크 링크의 성능 측정{Performance measurement of a link of a packet-switched communication network}
본 발명은 통신 네트워크 분야에 관한 것이다. 특히, 본 발명은 패킷-교환(packet-switched) 통신 네트워크에서 두 개의 측정 포인트들 간의 링크의 성능 측정(특히, 패킷 손실 측정 및/또는 지연(delay) 측정 및/또는 지터(jitter) 측정)을 수행하기 위한 방법에 관한 것이다. 또한, 본 발명은 그러한 방법을 구현하도록 구성된 통신 네트워크 용의 노드들 및 컴퓨터들에 관한 것이며, 그리고 그러한 노드들 및 컴퓨터들을 포함하는 컴퓨터 네트워크들에 관한 것이다.
패킷-교환 통신 네트워크에서, 가능한 중간 노드들을 통해 소스 노드로부터 목적지 노드로 라우팅되는 패킷들의 형태로 데이터가 전송된다. 예시적인 패킷-교환 네트워크들은 IP (Internet Protocol) 네트워크들, 이더넷 네트워크들, 그리고 MPLS (Multi-Protocol Label Switching) 네트워크들이다.
패킷들은 항상 그 목적지 노드에 도착하는 것은 아니다. 즉, 패킷들은 네트워크를 통한 전송 중에 손실될 수 있다. 패킷들의 손실은 서로 다른 이유들로 인한 것이다. 예를 들면, 노드 또는 링크가 고장날 수 있을 것이며, 그럼으로써 그 고장이 우회(bypassed)되거나 수리될 때까지 전체 패킷의 손실을 초래한다. 대안적으로, 패킷들은 노드의 포트들의 혼잡으로 인해 그 노드에 의해 폐기될 수 있다. 게다가, 패킷들은 비트 오류들을 포함하고 있기 때문에 노드에 의해 폐기될 수 있다. 어떤 경우이든, 패킷-교환 네트워크를 통해 데이터를 전송함으로써 서비스가 제공될 때, 전송 중 패킷들의 손실 레이트(rate)는 그 서비스의 서비스 품질(quality of service; QoS)에 영향을 미친다.
게다가, 패킷은 소스 노드에 의해 전송 시각에 전송되며, 그리고 목적지 노드에 의해 수신 시각에 수신된다. 전송 시각 및 수신 시각 사이에 경과한 시간은 보통 "단-방향 지연(one-way delay)"으로 불린다. 패킷의 단-방향 지연은 다음의 식으로 주어진다 :
[수학식 1]
OWD = Trx - Ttx
이 경우, Trx는 상기 패킷의 전송 시각이며, Ttx는 상기 패킷의 수신 시각이다. 패킷의 단-방향 지연은 주로, 소스로부터 목적지까지 상기 패킷이 지나간 가능한(possible) 중간 노드들의 개수, 각각의 노드에서 상기 패킷의 영속(permanence) 시간, 그리고 링크들을 따르는 전파(propagation) 시간에 따라 달라진다. 패킷들이 각각의 노드에 의해 홉 단위로 (hop-by-hop) 라우팅되기 때문에, 패킷들이 지나가는 가능한 중간 노드들의 개수 그리고 각각의 노드에서의 패킷들의 영속 시간 모두 예측할 수 없다. 따라서 패킷의 단-방향 지연은 거의 예측 불가능하다.
게다가, 동일한 패킷 흐름의 패킷들은 서로 다른 단-방향 지연들을 가질 수 있다. 동일한 데이터 흐름 중 두 개의 패킷들의 단-방향 지연들에서의 차이는 "단-방향 도착 간격 지터(one-way interarrival jitter)" (또는, 간략하게 "단-방향 지터")로 명명된다. 특히, Ttx1 및 Ttx2가 제1 패킷에 대한 전송 시각 및 제2 패킷에 대한 전송 시각이고, Trx1 및 Trx2가 상기 제1 패킷에 대한 수신 시각 및 상기 제2 패킷에 대한 수신 시각이면, 상기 단-방향 지터는 다음과 같이 표현될 수 있다 :
[수학식 2]
OWJ = (Trx1 - Trx2) - (Ttx1 - Ttx2)
통신 서비스(특히, 호출, 컨퍼런스 호출, 비디오 컨퍼런스 등과 같은 실-시간 음성 또는 데이터 서비스)가 패킷-교환 네트워크에 의해 제공될 때, 그 서비스를 운반하는 패킷 흐름에 영향을 미치는 단-방향 지연, 단-방향 지터 및 패킷 손실의 측정치는 상기 서비스의 최종 사용자들이 감지하는 서비스 품질(QoS)의 표시(indication)를 제공한다. 그러므로 통신 네트워크에서 패킷 흐름들의 단-방향 지연, 단 방향 지터 및/또는 패킷 손실을 측정하는 것은 네트워크 운영자들에게 특히 관심대상이다.
(본원의 출원인과 동일인 출원인의) WO 2010/072251은 통신 네트워크를 통해서 전송 노드로부터 수신 노드로 전송된 데이터 흐름의 데이터 손실을 측정하기 위한 방법을 개시한다. 상기 데이터 흐름의 데이터 유닛들을 전송하기 이전에, 상기 전송 노드는 상기 데이터 흐름을 블록들로 분할하기 위해서 각 데이터 유닛을 마킹한다. 특히, 상기 전송 노드는 각 데이터 유닛의 헤더의 비트를 "1" 또는 "0"으로 세팅함으로써 각 데이터 유닛을 마킹한다. 상기 마킹은 일련의 블록들을 야기하며, 이 경우에 "1"로 마킹된 데이터 유닛들의 블록들은 "0"으로 마킹된 데이터 유닛들의 블록들과 시간이 흐름에 따라 교번한다. 상기 블록들은 "블록 주기(block period)" Tb (예를 들면, 5분)으로 명명된 동일한 지속시간을 가질 수 있을 것이다. 또한, 상기 전송 노드는 "1"로 마킹된 데이터 유닛이 전송될 때마다 제1 카운터 C1을 1씩 증가시키며, 그리고 "0"으로 마킹된 데이터 유닛이 전송될 때마다 제2 카운터 C0을 1씩 증가시킨다. 상기 마킹된 데이터 유닛들은 그 후에 상기 수신 노드에서 수신된다. 상기 수신 노드가 데이터 유닛을 수신할 때마다, 그 데이터 유닛의 마킹을 체크하며, 그 마킹이 "1" 이라면 제3 카운터 C'1을 증가시키며 그리고 그 마킹이 "0" 이라면 제4 카운터 C'0을 증가시킨다. 상기 카운터들 C1, C0, C'1 및 C'0의 값들은 주기적으로 검출되며 그리고 그 검출된 값들은 각 블록 주기에서 데이터 손실을 계산하기 위해서 사용된다.
(본원의 출원인과 동일인 출원인의) WO 2011/079857은 통신 네트워크의 전송 노드로부터 수신 노드로 전송된 데이터 흐름상에서 시간 측정(time measurement)을 수행하기 위한 (특히, 단-방향 지연 및/또는 단-방향 지터를 측정하기 위한) 방법을 개시한다. WO 2011/079857에 따르면, 전송 노드에서, WO 2010/072251에 의해서 개시된 상기의 마킹 동작에 추가하여, 각각의 블록 주기에 전송 타임스탬프 또한 생성되며, 이는 현재 블록의 미리 정해진 데이터 유닛(예를 들면, 상기 현재 블록의 제1 데이터 유닛)이 전송된 시각을 나타낸다. 수신 노드에서, 각각의 블록 주기에 수신 타임스탬프가 생성되며, 이는 현재 블록의 미리 정해진 데이터 유닛이 수신된 시각을 나타낸다. 각각의 블록 주기에서, 상기 전송 타임스탬프 그리고 상기 수신 타임스탬프는 상기 현재 블록의 미리 정의된 데이터 유닛에 영향을 미치는 단-방향 지연을 계산하기 위해서 사용된다. 연이은 데이터 유닛들에 대해 생성되는 전송 타임스탬프 및 수신 타임스탬프는 단-방향 지터 계산을 가능하게 한다.
단-방향 지연 및 단-방향 지터를 측정하는 것 대신에, 두 개의 노드들 사이의 양방향 링크를 따라 앞뒤로(back and forth) 전송되는 패킷들의 양-방향 지연 및 양-방향 지터를 측정하는 것이 공지되어 있다. 양-방향 측정들은 상기 두 개의 노드들 간의 동기화 결여에 영향을 받지 않기 때문에, 양-방향 측정치들은 본질적으로 단-방향 측정들보다 더 정확하다. 이러한 측정들은 통상적으로 애드혹( ad hoc ) 패킷들 상에서, 즉 그 측정을 수행하기 위해 상기 두 개의 노드들 중 하나의 노드에 의해 특별히 생성된 인위적 패킷들(artificial packets) 상에서 수행된다.
일반적으로, IP 네트워크들에서의 양-방향 지연 및 양-방향 지터는 RFC 792 에 의해 정의된(1981년 9월) 공지된 프로토콜인 ICMP(Internet Control Message Protocol)에 기초하여, 공지된 Ping 함수를 애드혹 패킷들에 적용함으로써 측정된다. 상기 Ping 함수는 상기 두 개의 노드들 중 하나의 노드에서 ICMP 패킷들의 시퀀스를 생성하는 것을 가능하게 한다. 각각의 ICMP 패킷은 패킷 시퀀스 넘버, 그리고 상기 ICMP 패킷이 전송된 시각을 나타내는 전송 타임스탬프를 포함한다. 그리고 각각의 ICMP 패킷은 상기 링크를 따라 앞뒤로 전송된다. 그 패킷을 만든 동일 노드에서 각각의 ICMP 패킷이 수신될 때, 수신 타임스탬프가 생성된다. 상기 패킷 시퀀스 넘버는 상기 수신된 패킷들을 식별하는 것과, 그리고 가능한 수신 시퀀스 에러들을 검출하는 것을 가능하게 한다. 상기 전송 타임스탬프 및 상기 수신 타임스탬프는 양-방향 지연 및 양-방향 지터를 계산하는 것을 가능하게 한다.
뿐만 아니라, RFC 4656 에 의해 정의된(2006년 9월) 공지된 프로토콜 OWAMP(One-Way Active Measurement Protocol), 그리고 RFC 5357 에 의해 정의된(2008년 10월) 공지된 프로토콜 TWAMP (Two-Way Active Measurement Protocol)은 각각, "실제" 패킷들과 유사한 인위적 패킷들(즉, 실제로 사용자 트래픽을 전달하는 패킷들) 상에서 IP 네트워크들에서의 단-방향 측정들 및 양-방향 측정들을 수행하는 것을 가능하게 한다. Ping 함수와 다르게, TWAMP 프로토콜은 원격 노드에 있는 두 개의 추가 타임스탬프들을 각각의 인위적 패킷으로 삽입하는 것을 가능하게 한다 : 이 때, 하나의 타임스탬프는 상기 패킷이 상기 원격 노드에서 수신된 시각을 나타내며, 하나의 타임스탬프는 상기 패킷이 상기 원격 노드에 의해 재전송되는 시각을 나타낸다. 이는 상기 양-방향 지연 및 지터 계산에 있어, 상기 원격 노드에서의 패킷들의 처리 시간을 고려하는 것을 가능하게 한다.
본 출원인은 실제 패킷들 상에서보다 인위적 패킷들 상에서 패킷 손실, 지연 및/또는 지터를 측정하는 것이 많은 장점들을 갖는다는 것을 인식하였다.
우선, 일반적으로 실제 패킷들의 전송 속도는 예측 불가능한 방식으로 가변적이다. 이에 따라, 그러한 패킷들에 대한 상기 측정들을 수행할 책임이 있는 컴퓨터들 또는 상기 노드들에서 이용가능한 계산 자원들(computational resources)이 그 측정들을 수행하기에 충분할 것인지의 여부를 예측하는 것은 불가능하다. 대신 인위적 패킷들 상에서 상기 측정들을 수행하는 것은 상기 패킷 전송 속도를 그 측정을 수행하는 컴퓨터들 또는 상기 노드들에서 이용가능한 계산 자원들의 양에 맞게 조정하는 것을 가능하게 한다.
게다가, 실제 패킷들은 측정 정확도를 악화시킬 수 있는 수신 시퀀스 에러가 발생하기 쉬울 수 있다. 인위적 패킷들을 대신 사용하는 것은 임의의 수신 시퀀스 에러를 방지하도록 상기 인위적 패킷들의 전송 속도(또는 연이은 패킷들의 전송-간격 시간(inter-transmission time))를 적절하게 선택할 수 있게 한다.
뿐만 아니라, 일반적으로, 실제 패킷들에 대해 측정들을 수행하는 것은 그 측정들을 수행하기 위해 필요한 정보를 포함하도록 상기 패킷들(특히, 패킷 헤더)을 수정하는 것을 필요로 한다. 그러나 일반적으로 국제 표준에 의해 패킷 형식이 정의되어 있기 때문에, 그러한 수정들은 매우 좁은 제약을 조건으로 수행된다. 인위적 패킷들은 그 대신, 상기 측정들을 수행하기 위해 필요한 모든 정보를 포함하도록, 매우 유연한 방식으로 맞춤화(customized)/조정될 수 있다. 예를 들면, 그러한 정보는 상기 패킷들의 페이로드뿐만 아니라 헤더로도 삽입될 수 있다. 반면, 유리하게는, 측정 목적을 위해 인위적 패킷들이 사용될 때, 사용자 트래픽을 운반하는 실제 패킷들은 변경되지 않은 상태로 남아있다.
게다가, 실제 패킷들은 클라이언트의 결정에 의해 변경될 수 있으며(예를 들어, 목적지 또는 소스 주소의 변경), 이는 그 측정들을 수행할 책임이 있는 노드들이, 측정될 패킷들을 식별할 수 없도록 만들 수 있다. 이러한 변경들은 네트워크 운영자에게 통지될 것이며, 그렇지 않는다면 상기 네트워크 운영자는 상기 노드들을 적절하게 재구성할 수 없다. 인위적 패킷들을 대신 사용하는 것은 네트워크 운영자가 그 측정들에 관한 모든 양상들을, 특히 측정될 패킷들의 특징들을, 바로 제어할 수 있게 해준다.
상술한 인위적 패킷들에 기초한 지연 및/또는 지터를 측정하기 위해 공지된 기법들(즉, Ping 및 OWAMP/TWAMP)은 전술한 장점들을 제공하는 반면, 추가의 단점들을 나타낸다.
공지된 Ping 함수에 관해서, 이는 공지된 프로토콜인 ICMP에 기초한 패킷들에만 적용될 수 있다. 뿐만 아니라, 이는 오직 양-방향 지연 및 양-방향 지터 측정들만을 제공한다. 게다가, 그 양-방향 지연 및 양-방향 지터 측정들은 상기 원격 노드에서의 인위적 패킷들의 처리 시간을 고려하지 않기 때문에, 상당히 부정확하다.
공지된 프로토콜들인 OWAMP/TWAMP에 관해서, OWAMP는 단-방향 측정들을 가능하게 하며, TWAMP는 상기 원격 노드에서의 인위적 패킷들의 처리 시간을 고려하는 것을 허용한다. 상술한 바와 같이, 후자의 기능은 TWAMP에 따라, 각각의 인위적 패킷이 상기 원격 노드에서 수신 및 재전송될 때 두 개의 추가 타임스탬프들을 상기 각각의 인위적 패킷으로 삽입함으로써 구현된다. 그러나 불리하게도, 그러한 추가 스탬프들 및 패킷 시퀀스 넘버들의 삽입 및 처리는 그 측정에 관여되는 노드들에서의 계산량(computational effort)을 증가시킨다. 게다가, OWAMP/TWAMP에 기초한 측정들은 본질적으로, 발신(originating) 노드에 의해(그리고 또한 TWAMP에서는 상기 원격 노드에 의해) 생성된 상기 전송 타임스탬프 및 상기 패킷이 실제로 전송된 시각 사이에 예측 불가능한 불일치(mismatch)가 존재한다는 점에서 정확하지 않다.
게다가, Ping 함수와 프로토콜들 OWAMP/TWAMP 모두, 중간 성능 측정들(intermediate performance measurement)을 수행하는 것을 가능하게 하지 않는다. 즉 상기 인위적 패킷들을 발신하는 노드 및 그 패킷들을 수신하고 재-전송하는 원격 노드 사이의 링크 중 일부분 상에서의 성능 측정들을 수행하는 것을 가능하게 하지 않는다.
상기의 내용을 고려하여, 본 출원인은 인위적 트래픽(artificial traffic)에 기초하여 패킷-교환 통신 네트워크에서의 두 개의 측정 포인트들 (노드들 또는 컴퓨터들) 사이의 링크 상에서 성능 측정을 수행하기 위한 방법을 제공하는 상기 문제점에 도전하며, 전술한 결점들 중 적어도 하나를 극복한다. 즉, Ping 및 OWAMP/TWAMP 보다 더 정확한 측정들을 제공하고, 상기 링크의 하나 이상의 부분들 상에서의 중간 성능 측정들을 가능하게 한다.
다음의 설명에서 그리고 청구범위에서, "인위적 패킷들(artificial packets)" 또는 "애드혹( ad hoc ) 패킷들"의 표현은 측정 목적을 위해 특별히 생성되고 전송되는, 따라서 어떠한 사용자 트래픽도 전달하지 않는 패킷들을 의미할 것이다. 그러한 인위적 패킷들은 임의의 공지된 프로토콜에 따라, 특히 ISO-OSI 또는 TCP/IP 프로토콜 스택의 4 계층 또는 전송 계층의 임의의 공지된 프로토콜에 따라 포맷팅될 수 있다. 예를 들면, 상기 인위적 패킷들은 TCP/IP 프로토콜 스택의 공지된 UDP(User Datagram Protocol)에 따라 포맷팅될 수 있다.
뿐만 아니라, 다음의 설명에서 그리고 청구범위에서, "링크"란 용어는 통신 네트워크의 두 개의 노드들 간의 연결을 의미할 것이며, 이 때 이러한 연결은 물리적 연결 및 논리적 연결 중 하나일 수 있으며, 가능하다면 다수의 중간(intermediate) 노드들 또는 하나 이상의 중간 네트워크들을 포함한다.
또한, 다음의 설명에서 그리고 청구범위에서, "링크의 성능 측정을 수행하는 것"이란 표현은 다음의 것들을 측정하는 동작을 의미할 것이다 :
- 상기 링크 상으로 전송된 패킷 흐름상에 유발된 패킷 손실;
- 상기 링크 상으로의 전송에 의해 상기 패킷 흐름의 패킷들 상에 유발된 단-방향 지연 또는 양-방향 지연; 및/또는
- 상기 링크 상으로의 전송에 의해 한 쌍의 패킷들 상에 유발된 단-방향 지터 또는 양-방향 지터.
또한, 다음의 설명에서 그리고 청구범위에서, "패킷을 마킹 (marking a packet)"이란 표현은 패킷의 특징을 미리 정의된 마킹 값으로, 특히, 적어도 두 개의 교번하는 마킹 값들 중 하나로 세팅하는 동작을 의미할 것이다. 예를 들면, 패킷을 마킹하는 동작은 패킷의 하나 이상의 비트들(예를 들어, 패킷 헤더의 비트 시퀀스 또는 1 bit)을 적어도 두 개의 미리 정의된 교번 마킹 값들 중 하나로 세팅하는 동작, 그것의 주파수 또는 그것의 위상을 적어도 두 개의 미리 정의된 교번 마킹 값들 중 하나로 세팅하는 동작 등을 포함할 수 있다.
제1 양상에 따르면, 본 발명은 통신 네트워크의 제1 노드 및 제2 노드를 연결하는 링크의 성능 측정을 수행하는 방법을 제공하며, 상기 방법은 :
a) 성능 측정을 시작하기 전에, 적어도 측정 시작 시각 및 패킷 전송 속도를 포함하는 측정 모드 정보를 상기 제1 노드 및 상기 제2 노드에게 제공하는 단계;
b) 상기 측정 시작 시각에, 패킷 흐름을 생성하고 상기 패킷 흐름을 상기 제1 노드로부터 상기 제2 노드로 전송하는 단계로서, 상기 패킷 흐름은 다수의 패킷들을 포함하며, 상기 다수의 패킷들의 전송 시각들은 상기 측정 시작 시각 및 상기 패킷 전송 속도에 의해 결정되고, 상기 생성하고 전송하는 단계는 제1 블록 주기들 동안은 제1 패킷들을, 그리고 시간이 흐름에 따라 상기 제1 블록 주기들과 교번하는 제2 블록 주기들 동안은 제2 패킷들을 생성하고 전송하는 단계를 포함하는, 단계;
c) 상기 제1 블록 주기들 또는 상기 제2 블록 주기들의 블록 주기에서, 상기 패킷 흐름이 상기 제2 노드에서 수신되는 동안, 상기 패킷 흐름의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기 동안의 상기 패킷 흐름의 행동을 나타내는 변수를 갱신하는 단계; 및
d) 상기 제1 블록 주기들 또는 상기 제2 블록 주기들의 다음에 이어지는 블록 주기에서, 상기 블록 주기의 끝 부분에 상기 변수에 의해 도달된 값을 사용하여, 상기 블록 주기 동안의 상기 패킷 흐름의 성능을 나타내는 파라미터를 산출하는 단계를 포함한다.
바람직하게는, 상기 단계 b)는 상기 제1 패킷들을 제1 마킹 값으로 마킹하는 단계 및 상기 제2 패킷들을 제2 마킹 값으로 마킹하는 단계를 포함한다.
더 바람직하게는, 상기 패킷 흐름의 각각의 패킷은 마킹 필드를 포함하며, 상기 마킹 필드는 상기 제1 패킷들에서 상기 제1 마킹 값으로 세팅되고 상기 제2 패킷들에서 상기 제2 마킹 값으로 세팅되며, 상기 마킹 필드는 상기 패킷의 헤더 또는 페이로드(payload) 중 하나에 포함된다.
미리 정해진 트래픽 프로파일에 따라, 상기 패킷 전송 속도는 시간이 흐름에 따라 가변적이거나 또는 상수이다.
바람직하게는, 상기 단계 a)에서, 상기 측정 모드 정보는 블록 주기 기간 Tb를 더 포함하며, 그리고 상기 단계 b)에서, 상기 제1 블록 주기들 및 상기 제2 블록 주기들은 상기 블록 주기 기간 Tb와 동일한 기간을 갖는다.
유익하게는, 상기 단계 a)에서, 상기 측정 모드 정보는 패킷 유형을 더 포함하며, 그리고 상기 단계 b)에서, 상기 패킷들은 상기 패킷 유형의 패킷들이다.
유리한 실시예들에 따르면, 상기 단계 a)에서, 상기 측정 모드 정보는 : 패킷 손실 측정, 단-방향 지연 측정들, 단-방향 지터(jitter) 측정들 및 양-방향 지연 측정들 중에서 선택되는 성능 측정 유형을 더 포함한다.
바람직하게는 :
- 상기 단계 c)는 상기 블록 주기 동안 상기 제2 노드에서 수신되는 상기 패킷 흐름의 패킷들의 개수를 카운팅하는 단계를 더 포함하며; 그리고
- 상기 단계 d)에서, 상기 산출하는 단계는 :
상기 측정 모드 정보에 포함된 상기 패킷 전송 속도에 기초하여, 상기 블록 주기 동안 상기 제1 노드에 의해 전송된 상기 패킷 흐름의 패킷들의 개수를 카운팅하는 단계; 및
상기 블록 주기 동안 상기 제1 노드에 의해 전송된 상기 패킷 흐름의 패킷들의 계산된 개수 및 상기 블록 주기(T(k)) 동안 상기 제2 노드에서 수신된 상기 패킷 흐름의 패킷들의 카운팅된 개수에 기초하여, 상기 블록 주기 동안 상기 패킷 흐름에 의해 발생된 패킷 손실을 계산하는 단계를 포함한다.
실시예들에 따르면 :
- 상기 단계 c)에서, 상기 갱신하는 단계는 상기 블록 주기 동안 상기 패킷 흐름의 각각의 패킷의 수신 시 :
각각의 수신 시각을 검출하는 단계;
상기 측정 모드 정보에 포함된 상기 측정 시작 시각 및 상기 패킷 전송 속도에 기초하여 각각의 전송 시각을 계산하는 단계; 및
상기 검출된 수신 시각 및 상기 계산된 전송 시각의 차이로서 각각의 단-방향 지연을 계산하는 단계를 포함하며;
- 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기 동안 상기 패킷 흐름의 각각의 패킷의 수신 시 : 누적 단-방향 지연, 최대 단-방향 지연 변수, 최소 단-방향 지연 변수 및 임계 지연 카운터 중 적어도 하나를 갱신하기 위해 상기 각각의 단-방향 지연을 사용하는 단계를 포함하고; 그리고
- 상기 단계 d)에서, 상기 산출하는 단계는 : 상기 블록 주기 동안의 상기 패킷 흐름의 평균 단-방향 지연, 상기 블록 주기 동안의 상기 패킷 흐름의 최대 단-방향 지연, 상기 블록 주기 동안의 상기 패킷 흐름의 최소 단-방향 지연, 그리고 상기 블록 주기 T(k) 내에서 각각의 단-방향 지연들이 임계 단-방향 지연 보다 높은 패킷들의 개수 또는 백분율 중 적어도 하나를 산출하기 위해, 상기 블록 주기의 끝 부분에서 상기 누적 단-방향 지연, 상기 최대 단-방향 지연 변수, 상기 최소 단-방향 지연 변수 및 상기 임계 지연 카운터 중 적어도 하나에 의해 도달된 값을 사용하는 단계를 포함한다.
실시예들에 따르면 :
- 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기 동안 상기 패킷 흐름의 연이은 패킷들의 각각의 쌍의 수신 시 :
상기 연이은 두 개의 패킷들의 수신들 간의 경과 시간을 검출하는 단계;
상기 측정 모드 정보에 포함된 상기 패킷 전송 속도에 기초하여, 상기 연이은 두 개의 패킷들의 전송들 간의 경과 시간을 계산하는 단계; 및
상기 수신들 간의 상기 검출된 경과 시간 및 상기 전송들 간의 상기 계산된 경과 시간에 기초하여 각각의 단-방향 지터를 계산하는 단계를 포함하고,
- 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기 동안 상기 패킷 흐름의 연이은 패킷들의 각각의 쌍의 수신 시 :
최대 단-방향 지터 변수, 최소 단-방향 지터 변수, 최대 임계 지터 카운터 및 최소 임계 지터 카운터 중 적어도 하나를 갱신하기 위해, 상기 각각의 단-방향 지터를 사용하는 단계를 포함하며; 그리고
- 상기 단계 d)에서, 상기 산출하는 단계는 :
상기 블록 주기 동안의 상기 패킷 흐름의 최대 단-방향 지터, 상기 블록 주기 동안의 상기 패킷 흐름의 최소 단-방향 지터, 상기 블록 주기 내에서 각각의 단-방향 지터들이 최대 임계 단-방향 지터 보다 높은 연이은 패킷들의 쌍들의 개수 또는 백분율, 그리고 상기 블록 주기 내에서 각각의 단-방향 지터들이 최소 임계 단-방향 지터 보다 낮은 연이은 패킷들의 쌍들의 개수 또는 백분율 중 적어도 하나를 산출하기 위해, 상기 블록 주기의 끝 부분에서 상기 최대 단-방향 지터 변수, 상기 최소 단-방향 지터 변수, 상기 최대 임계 지터 카운터 및 상기 최소 임계 지터 카운터 중 적어도 하나에 의해 도달된 값을 사용하는 단계를 포함한다.
바람직한 변형들에 따르면, 본 방법은 :
b') 상기 측정 시작 시각에, 추가 패킷 흐름을 생성하고 상기 추가 패킷 흐름을 상기 제2 노드로부터 상기 제1 노드로 전송하는 단계로서, 상기 추가 패킷 흐름은 다수의 추가 패킷들을 포함하며, 상기 다수의 추가 패킷들의 전송 시각들은 상기 측정 시작 시각 및 상기 패킷 전송 속도에 의해 결정되고, 상기 생성하고 전송하는 단계는 상기 제1 블록 주기들 동안은 제1 추가 패킷들을, 그리고 상기 제2 블록 주기들 동안은 제2 추가 패킷들을 생성하고 전송하는 단계를 포함하는, 단계;
c') 상기 블록 주기에서, 상기 추가 패킷 흐름이 상기 제1 노드에서 수신되는 동안, 상기 추가 패킷 흐름의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기 동안의 상기 추가 패킷 흐름의 행동을 나타내는 추가 변수를 갱신하는 단계; 및
d') 상기 다음에 이어지는 블록 주기에서, 상기 블록 주기의 끝 부분에 상기 추가 변수에 의해 도달된 값을 사용하여, 상기 블록 주기 동안의 상기 추가 패킷 흐름의 성능을 나타내는 추가 파라미터를 산출하는 단계를 더 포함한다.
바람직하게는 :
- 상기 단계 d)에서, 상기 산출하는 단계는 상기 제1 노드로부터 상기 추가 파라미터를 수신하는 단계 및 상기 파라미터 및 상기 추가 파라미터를 사용하여 상기 링크의 성능을 나타내는 양-방향 성능 파라미터를 산출하는 단계를 포함한다.
제1 변형들에 따르면, 상기 단계 b)는 상기 제1 노드에 의해 수행되며, 바람직하게는, 상기 단계 c) 및 상기 단계 d)는 상기 제2 노드에 의해 수행된다.
제2 변형들에 따르면, 상기 단계 b)는 상기 제1 노드에 연결된 제1 컴퓨터에 의해 수행되며, 상기 단계 c) 및 상기 단계 d)는 상기 제2 노드에 연결된 제2 컴퓨터에 의해 수행된다.
특히 바람직한 실시예들에 따르면, 본 방법은 상기 링크의 일부분의 중간 성능 측정을 수행하는 단계를 더 포함하며, 이 때, 상기 링크의 일부분은 제1 측정 포인트가 있는 제1 단부 및 제2 측정 포인트가 있는 제2 반대편 단부를 가지며, 상기 중간 성능 측정은 :
e) 상기 패킷 흐름이 상기 링크의 일부분의 상기 제1 단부로부터 전송되는 동안, 상기 제1 측정 포인트에서, 상기 블록 주기 동안의 상기 패킷 흐름의 전송에 관한 전송 변수를 결정(determining)하기 위해 상기 패킷 흐름을 처리하는 단계;
f) 상기 패킷 흐름이 상기 링크의 일부분의 상기 제2 단부에서 수신되는 동안, 상기 제2 측정 포인트에서, 상기 블록 주기 동안의 상기 패킷 흐름의 수신에 관한 수신 변수를 결정하기 위해 상기 패킷 흐름을 처리하는 단계;
g) 상기 다음에 이어지는 블록 주기에서, 상기 전송 변수 및 상기 수신 변수를 사용하여, 상기 블록 주기 동안의 상기 링크의 일부분의 성능을 나타내는 파라미터를 산출하는 단계를 포함한다.
제2 양상에 따르면, 본 방법은 통신 네트워크를 위한 노드를 제공하며, 상기 노드는 :
- 적어도 측정 시작 시각 및 패킷 전송 속도를 포함하는 측정 모드 정보를 수신하는 단계;
- 다수의 패킷들을 포함하는 패킷 흐름을 추가 노드로부터 수신하는 단계로서, 상기 다수의 패킷들의 전송 시각들은 상기 측정 시작 시각 및 상기 패킷 전송 속도에 의해 결정되며, 상기 패킷 흐름은 상기 제1 블록 주기들 동안 수신되는 제1 패킷들, 그리고 시간이 흐름에 따라 상기 제1 블록 주기들과 교번하는 제2 블록 주기들 동안 수신되는 제2 패킷들을 포함하는, 단계;
- 상기 제1 블록 주기들 또는 상기 제2 블록 주기들의 블록 주기에서, 상기 패킷 흐름이 상기 제2 노드에서 수신되는 동안, 상기 패킷 흐름의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기 동안의 상기 패킷 흐름의 행동을 나타내는 변수를 갱신하는 단계; 및
- 상기 제1 블록 주기들 또는 상기 제2 블록 주기들의 다음에 이어지는 블록 주기에서, 상기 블록 주기의 끝 부분에 상기 변수에 의해 도달된 값을 사용하여, 상기 블록 주기 동안의 상기 패킷 흐름의 성능을 나타내는 파라미터를 산출하는 단계를 수행하도록 구성된다.
제3 양상에 따르면, 본 발명은 상기에 기재된 바와 같은 노드를 포함하는 통신 네트워크를 제공한다.
제4 양상에 따르면, 본 발명은 적어도 하나의 컴퓨터의 메모리에서 탑재 가능한 컴퓨터 프로그램 제품을 제공하며, 상기 컴퓨터 프로그램 제품은 적어도 하나의 컴퓨터상에서 실행될 때 상기에 기재된 바와 같은 방법의 단계들을 수행하기 위한 소프트웨어 코드 부분들을 포함한다.
본 발명의 효과는 본 명세서에 해당되는 부분들에 개별적으로 명시되어 있다.
본 발명은 첨부된 도면들을 참조하여 읽어질, 예로서 주어진 것이며 제한하는 것이 아닌, 다음의 상세한 설명으로부터 더 명백해질 것이다.
도 1은 예시적인 패킷-교환 네트워크를 개략적으로 도시한다.
도 2는 본 발명의 실시예에 따른 패킷의 구조를 개략적으로 도시한다.
도 3은 전송 측에서의, 본 발명의 실시예에 따른 방법의 흐름도이다.
도 4는 수신 측에서의, 본 발명의 실시예에 따른 방법의 제1 흐름도이다.
도 5a 및 도 5b는 도 4의 흐름도 중 두 단계들을 더 자세히 설명하는 흐름도들이다.
도 6은 수신 측에서의, 본 발명의 실시예에 따른 방법의 제2 흐름도이다.
도 7은 도 1의 예시적 패킷-교환 네트워크를 제2 시나리오로 개략적으로 도시한다.
도 8은 수신 측에서의, 본 발명의 추가 실시예에 따른 방법의 제1 흐름도이다.
도 9는 도 8의 흐름도의 단계를 더 자세히 설명하는 흐름도이다.
도 10은 수신 측에서의, 본 발명의 추가 실시예에 따른 방법의 제2 흐름도이다.
도 1은 예시적인 패킷-교환 통신 네트워크(communication network; CN)를 개략적으로 도시하며, 이 네트워크에서, 본 발명의 실시예들에 따른 성능 측정을 수행하기 위한 방법이 구현될 수 있다. 상기 통신 네트워크(CN)는 IP 네트워크, 이더넷 네트워크, MPLS 네트워크 또는 임의의 공지된 다른 유형의 패킷-교환 통신 네트워크일 수 있다.
상기 통신 네트워크(CN)는 임의의 공지된 토폴로지(topology)에 따른 링크들에 의해 서로 상호 연결된 복수의 노드들을 포함한다.
특히, 상기 통신 네트워크(CN)는 제1 노드(N1) 및 제2 노드(N2)를 포함한다. 바람직하게는, 상기 제1 노드(N1) 및 제2 노드(N2) 각각은 라우터, 스위치 등과 같은 통신 기기를 포함한다. 또한, 옵션으로, 상기 제1 노드(N1) 및 제2 노드(N2) 각각은 각각의 컴퓨터(도 1에 도시되어 있지 않음)에 연결되며, 이는 이후에 더 상세히 설명될 것이다. 상기 제1 노드(N1) 및 제2 노드(N2)는 링크(L)에 의해 연결된다. 상기 링크(L)는 다이렉트 링크일 수 있으며, 또는 상기 네트워크(CN)의 중간 노드들(도면에 도시되어 있지 않음)을 통과할 수 있다. 바람직하게는, 상기 링크(L)는 양방향 링크이다.
바람직하게는, 상기 통신 네트워크(CN)는 관리 서버(management server; MS)와 협동하기에도 적합하다. 상기 관리 서버(MS)는 상기 통신 네트워크(CN)의 노드들 중 임의의 노드에 연결된 독립형 (stand-alone) 서버일 수 있다. 대안적으로, 상기 관리 서버(MS)는 상기 통신 네트워크(CN)의 노드들 중 임의의 노드에서 구현될 수 있다.
바람직하게는, 상기 제1 노드(N1)는 애드혹( ad hoc ) 패킷들(Pk)의 패킷 흐름(PF1)을, 즉, 측정 목적을 위해 특별히 생성되고 따라서 어떠한 사용자 트래픽도 운반하지 않는 패킷들을 생성하고, 상기 링크(L)를 통해서 상기 제2 노드(N2)에 전송하도록 구성된다. 상기 통신 네트워크(CN)가 IP 네트워크라면, 바람직하게는, 상기 패킷들(Pk)은 공지된 UDP 프로토콜에 따라 포맷팅된다.
도 2에 도시된 바와 같이, 각각의 패킷(Pk)은 헤더(H) 및 페이로드(Pl)를 포함한다. 바람직하게는, 상기 헤더(H)는 소스 노드 주소 및 목적지 노드 주소와 같이, 상기 패킷(Pk)을 라우팅하기 위한 정보를 포함한다. 또한 상기 패킷(Pk)은 마킹 필드(marking field; MF)를 더 포함하며, 이 필드는 두 개의 교번하는(alternative) 마킹 값들(Va, Vb) 중 하나의 값으로 세팅될 수 있다. 상기 마킹 필드(MF)는 상기 패킷(Pk)의 헤더(H)에 포함되거나 또는 상기 페이로드(Pl)에 포함될 수 있다(도 2에는 후자가 도시되어 있다). 예를 들어, 상기 마킹 필드(MF)는 단일 비트를 포함할 수 있으며, 그리고 그것의 두 개의 교번 마킹 값들(Va, Vb)은 각각 1과 0일 수 있다.
바람직하게는, 상기 패킷 흐름(PF1)의 패킷들(Pk)은 상기 제1 노드(N1)에 의한 패킷들의 생성 및 전송 시에 마킹되며, 상기 제1 노드는 상기 마킹 필드(MF)의 값을 상기 두 개의 교번하는 마킹 값들(Va, Vb) 중 하나의 값으로 적절히 세팅한다. 이후 더 자세히 설명되는 바와 같이, 상기 제1 노드(N1)는 상기 마킹 필드(MF)에 할당된 마킹 값(Va, Vb)(예를 들어, 1 또는 0)을 주기 Tb로 주기적으로 변경하며, 이 주기 Tb는 이하에서 "블록 주기(block period)"로 명명될 것이다. 이 방식에서, 제1 블록 주기들 (또한 이하에서는 "짝수 블록 주기들(even block period)"로 명명된다) 동안에 마킹된 패킷들(Pk)은 제1 마킹 값(Va)(예를 들어, 1)으로 마킹되며, 반면에 시간이 흐름에 따라 상기 제1 블록 주기들과 교번하는 제2 블록 주기들(또한 이하에서는 "홀수 블록 주기들(odd block period)"로 명명된다) 동안에 마킹된 패킷들(Pk)은 제2 마킹 값(Vb)(예를 들어, 0)으로 마킹된다.
본 발명의 실시예들에 따르면, 상기 링크(L)의 임의의 성능 측정을 수행하기 전에, 바람직하게는, 상기 노드들(N1, N2) 모두 측정 모드 정보가 제공된다. 바람직하게는, 상기 측정 모드 정보는 다음의 데이터 중 하나 이상을 포함한다 :
- 상기 링크(L)의 성능 측정이 시작될 날짜 및 시간을 나타내는, 즉 상기 제1 노드(N1)가 상기 패킷 흐름(PF1)을 생성하고 그 패킷 흐름(PF1)을 상기 링크(L)를 따라 상기 제2 노드(N2)에 전송하는 것을 시작할 날짜 및 시간을 나타내는, 측정 시작 시각(T start ) ;
- 상기 링크(L)의 성능 측정이 중단될 날짜 및 시간을 나타내는, 즉 상기 제1 노드(N1)가 상기 패킷 흐름(PF1)을 생성하고 그 패킷 흐름(PF1)을 상기 링크(L)를 따라 상기 제2 노드(N2)에 전송하는 것을 중단할 날짜 및 시간을 나타내는, 측정 종료 시각(T end );
- 패킷 유형, 즉 상기 제1 노드(N1)에 의해 생성된 패킷 흐름(PF1)을 구성할 상기 애드혹 패킷들(Pk)의 유형 및 길이;
- 패킷 전송 속도(transmission rate), 즉 상기 제1 노드(N1)가 상기 패킷 흐름(PF1)의 패킷들을 전송할 전송 속도. 상기 패킷 전송 속도는 미리 정해진 트래픽 프로파일에 따라 시간이 흐름에 따라 가변적이거나 상수일 수 있다;
- 블록 주기 Tb (예를 들어, 블록 주기는 5분일 수 있다); 그리고
- 다음의 성능 측정들 중 하나 이상을 포함할 수 있는 성능 측정 유형 : 패킷 손실 측정, 단-방향 지연 측정들 및 단-방향 지터 측정들. 다음으로, 바람직하게는, 상기 단-방향 지연 측정들은 다음 중 하나 이상을 포함한다 : 평균 단-방향 지연, 최대 및 최소 단-방향 지연, 임계 단-방향 지연 백분율. 또한, 바람직하게는, 상기 단-방향 지터 측정들은 다음 중 하나 이상을 포함한다 : 평균 단-방향 지터, 최대 및 최소 단-방향 지터, 최대 및 최소 임계 단-방향 지터 백분율.
성능 측정 유형이 임계 단-방향 지연 백분율을 포함한다면, 바람직하게는, 상기 측정 모드 정보는 단-방향 임계 지연(threshold one-way delay; OWDth)도 포함한다.
또한, 상기 성능 측정 유형이 상기 최대 및 최소 임계 단-방향 지터 백분율을 포함한다면, 바람직하게는, 상기 측정 모드 정보는 (양(positive)의) 최대 임계 단-방향 지터(maximum threshold one-way jitter; OWJthmax) 및 (음(negative)의) 최소 임계 단-방향 지터(minimum threshold one-way jitter; OWJthmin)를 포함한다.
상기 측정 모드 정보는 상기 네트워크 운영자에 의해 생성될 수 있으며, 상기 관리 서버(MS)를 통해 상기 제1 노드(N1) 및 상기 제2 노드(N2)에 바로 전송될 수 있다. 대안적으로, 상기 제1 노드(N1)는 상기 관리 서버(MS)로부터 상기 측정 모드 정보를 수신하고, 이를 상기 제2 노드(N2)에 포워드할 수 있다. 상기 측정 모드 정보는 제1 측정 세션에 앞서 구성 단계 중에, 상기 노드들(N1, N2)에게 한번만 제공될 수 있다. 대안적으로, 상기 측정 모드 정보는 각각의 성능 측정 세션의 시작 전에 상기 노드들(N1, N2)에게 발송될 수 있다. 다른 실시예들에 따르면, 측정 모드 정보의 "고정적(static)" 부분(예를 들어, 패킷 유형, 패킷 전송 속도 및 블록 주기를 포함)은 예비 구성 단계 중에 상기 노드들(N1, N2)에게 제공되는 반면, 상기 측정 모드 정부의 "가변적" 부분(예를 들어, 측정 시작 시각, 측정 종료 시각 및 성능 측정 유형)은 새로운 성능 측정 세션이 시작되어야 할 때마다 노드들(N1, N2)에게 제공된다.
이제, 도 3 , 도 4, 도 5a, 도 5b 및 도 6의 흐름도를 참조하여, 각각의 성능 측정 세션 동안 상기 제1 노드(N1) 및 상기 제2 노드(N2)의 동작이 상세하게 기술될 것이며, 이는 상기 측정 모드 정보에 명시된 성능 측정 유형이 다음을 포함한다는 비-제한적 가정 하에 이뤄진다 : 패킷 손실 측정, (평균 단-방향 지연, 최대 및 최소 단-방향 지연, 임계 단-방향 지연 백분율을 포함하는) 단-방향 지연 측정들, 그리고 (평균 단-방향 지터, 최대 및 최소 단-방향 지터, 최대 및 최소 임계 단-방향 지터 백분율을 포함하는) 단-방향 지터 측정들. 오직 이러한 측정들 유형들의 서브-세트만이 측정 세션 내에서 요구될 수 있기 때문에 이는 비-제한적이다.
특히, 도 3을 참조하여, 각각의 블록 주기인 T(k) (k = 0, 1, 2, 3 등)의 초기에, 바람직하게는, 상기 제1 노드(N1)는 현재 블록 주기 T(k)가 짝수 블록 주기(k = 0, 2, 4 등)인지 또는 홀수 블록 주기(k = 1, 3, 5 등)인지 여부를 체크하며(단계 31), 그리고 상기 블록 주기 T(k) 동안에 생성되고 전송될 패킷들에 적용될 마킹 값 Va(짝수 블록 주기들 동안) 또는 Vb(홀수 블록 주기들 동안)를 그 체크 결과에 따라 결정한다.
그 다음, 현재 블록 주기 T(k)가 짝수 블록 주기라면, 바람직하게는, 상기 제1 노드(N1)는 패킷들(Pk)을 생성하기 시작한다(단계 32a). 바람직하게는, 상기 제1 노드(N1)는 상기 패킷 흐름(PF1)의 패킷들(Pk)의 헤더(Hi)에 목적지 주소(즉, 상기 제2 노드(N2)의 주소), 소스 주소(즉, 제1 노드(N1) 자신의 주소), 그리고 옵션으로는, 상기 패킷 헤더(Hi)의 다른 필드들(예를 들면, IP 패킷들의 경우 필드 DSCP)을 삽입한다.
각각의 패킷(Pk)을 전송하기 이전에, 바람직하게는, 상기 제1 노드(N1)는 값 Va로 마킹함으로써 그 패킷을 마킹한다(단계 33a). 즉, 상기 제1 노드(N1)는 패킷의 마킹 필드(MF)를 Va와 동일하게 세팅한다. 그 다음 상기 패킷(Pk)은 상기 링크(L)를 따라 상기 제2 노드(N2)에 전송된다(단계 34a). 바람직하게는, 상기 제1 노드(N1)는 자신의 로컬 클록에 의해 표시된 시간 Tloc 와 상기 측정 모드 정보에 명시된 측정 시작 시각 T start 이 동일하면, 상기 패킷 흐름(PF1)의 첫 번째 패킷(Pk)을 전송한다. 그 다음의 패킷들(Pk)은 상기 제1 노드(N1)가 상기 측정 모드 정보에 지정된 패킷 전송 속도에 기초하여 결정한 전송 시각에 전송된다.
바람직하게는, 단계 32a 내지 단계 34a는 상기 블록 주기 T(k)의 끝 부분까지 반복된다(단계 35a).
단계 31에서, 상기 블록 주기 T(k)가 홀수 블록 주기라고 판단된다면, 바람직하게는, 상기 제1 노드(N1)는 패킷들(Pk)을 생성하기 시작한다(단계 32b). 패킷(Pk)을 전송하기 이전에, 바람직하게는, 상기 제1 노드(N1)는 값 Vb로 마킹함으로써 그 패킷을 마킹한다(단계 33b). 즉, 상기 제1 노드(N1)는 패킷의 마킹 필드(MF)를 Vb와 동일하게 세팅한다. 그 다음 상기 패킷(Pk)은 상기 링크(L)를 따라 상기 제2 노드(N2)에 전송된다(단계 34b). 상술한 바와 같이, 패킷들(Pk)은 상기 제1 노드(N1)가 상기 측정 모드 정보에 지정된 패킷 전송 속도에 기초하여 결정한 전송 시각에 전송된다.
바람직하게는, 단계 32b 내지 단계 34b는 상기 블록 주기 T(k)의 끝 부분까지 반복된다(단계 35b).
상기 제1 노드(N1)의 로컬 클록에 의해 표시된 시간 Tloc 와 상기 측정 모드 정보에 명시된 측정 종료 시각 T end 이 동일하면, 바람직하게는, 상기 제1 노드(N1)는 도 3에 도시된 알고리즘의 실행을 중단한다.
상기 제2 노드(N2)에 관하여, 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 시간 Tloc 와 상기 측정 모드 정보에 명시된 측정 시작 시각 T start 이 동일하면, 바람직하게는, 상기 제2 노드(N2)는 도 4에 도시된 알고리즘을 실행하기 시작한다. 이하에서는, 상기 제1 노드(N1) 및 상기 제2 노드(N2)가 서로 동기화되어있다고, 즉 상기 노드들의 로컬 클록들은 동일한 날짜와 동일한 시간을 나타낸다고 가정한다.
도 4를 참조하면, 각각의 블록 주기 T(k)의 초기에, 바람직하게는, 상기 제2 노드(N2) 또한 현재 블록 주기 T(k)가 짝수 블록 주기인지 또는 홀수 블록 주기인지 여부를 판단한다(단계 41).
그 다음, 현재 블록 주기 T(k)가 짝수 블록 주기라면, 바람직하게는, 제1 수신 카운터 C(a)는 0으로 초기화된다(단계 42a). 뿐만 아니라, 단계 42a에서, 바람직하게는, 제1 누적 단-방향 지연 OWDcum(a), 제1 최소 단-방향 지연 OWDmin(a), 그리고 제1 최대 단-방향 지연 OWDmax(a) 또한 0으로 초기화된다. 또한, 단계 42a에서, 바람직하게는, 제1 첫 번째-패킷 수신 타임스탬프 Trxfirst(a), 제1 마지막-패킷 수신 타임스탬프 Trxlast(a), 제1 최소 단-방향 지터 OWJmin(a), 그리고 제1 최대 단-방향 지터 OWJmax(a) 또한 0으로 초기화된다. 추가로, 단계 42a에서, 바람직하게는, 제1 임계 지연 카운터 CDth(a), 제1 최소 임계 지터 카운터 CJthmin(a), 그리고 제1 최대 임계 지터 카운터 CJthmax(a) 또한 0으로 초기화된다.
그 다음, 상기 제2 노드(N2)는 상기 제1 노드(N1)로부터 상기 패킷 흐름(PF1)의 패킷들(Pk)을 수신하기 시작한다. 바람직하게는, 상기 제2 노드(N2)는 상기 패킷 흐름(PF1)의 패킷들(Pk)의 목적지 주소의 적어도 일부, 소스 주소의 적어도 일부, 그리고 옵션으로는 상기 패킷 헤더(Hi)의 다른 필드들(예를 들어, IP 패킷들의 경우 필드 DSCP)을 사용함으로써, 상기 패킷들을 식별한다.
상기 패킷 흐름(PF1)의 패킷(Pk)을 수신할 때, 바람직하게는, 상기 제1 수신 카운터 C(a)는 1이 증가된다(단계 44a).
그 다음, 바람직하게는, 상기 제1 누적 단-방향 지연 OWDcum(a), 상기 제1 임계 지연 카운터 CDth(a), 상기 제1 최소 단-방향 지연 OWDmin(a), 그리고 상기 제1 최대 단-방향 지연 OWDmax(a)이 갱신되며(단계45a), 이는 도 5a의 흐름도를 참조하여 더 자세히 기술될 것이다. 그 다음, 바람직하게는, 상기 제1 첫 번째-패킷 수신 타임스탬프 Trxfirst(a), 상기 제1 마지막-패킷 수신 타임스탬프 Trxlast(a), 상기 제1 최소 임계 지터 카운터 CJthmin(a), 상기 제1 최대 임계 지터 카운터 CJthmax(a), 상기 제1 최소 단-방향 지터 OWJmin(a), 그리고 상기 제1 최대 단-방향 지터 OWJmax(a)가 갱신되며(단계 46a), 이는 도 5b의 흐름도를 참조하여 더 자세히 기술될 것이다.
바람직하게는, 단계 43a 내지 단계 46a는 상기 블록 주기 T(k)의 끝 부분까지, 상기 패킷 흐름(PF1)의 패킷(Pk)이 수신될 때마다 반복된다(단계 47a).
단계 41에서, 상기 블록 주기 T(k)가 홀수 블록 주기라고 판단된다면, 바람직하게는, 제2 수신 카운터 C(b)는 0으로 초기화된다(단계 42b). 뿐만 아니라, 단계 42b에서, 바람직하게는, 제2 누적 단-방향 지연 OWDcum(b), 제2 최소 단-방향 지연 OWDmin(b), 그리고 제2 최대 단-방향 지연 OWDmax(b) 또한 0으로 초기화된다. 또한, 단계 42b에서, 바람직하게는, 제2 첫 번째-패킷 수신 타임스탬프 Trxfirst(b), 제2 마지막-패킷 수신 타임스탬프 Trxlast(b), 제2 최소 단-방향 지터 OWJmin(b), 그리고 제2 최대 단-방향 지터 OWJmax(b) 또한 0으로 초기화된다. 추가로, 단계 42b에서, 바람직하게는, 제2 임계 지연 카운터 CDth(b), 제2 최소 임계 지터 카운터 CJthmin(b), 그리고 제2 최대 임계 지터 카운터 CJthmax(b) 또한 0으로 초기화된다.
상기 패킷 흐름(PF1)의 각각의 패킷(Pk)을 수신할 때, 바람직하게는, 상기 제2 수신 카운터 C(b)는 1이 증가된다(단계 44b).
그 다음, 바람직하게는, 상기 제2 누적 단-방향 지연 OWDcum(b), 상기 제2 임계 지연 카운터 CDth(b), 상기 제2 최소 단-방향 지연 OWDmin(b), 그리고 상기 제2 최대 단-방향 지연 OWDmax(b)이 갱신되며(단계45b), 이는 도 5a의 흐름도를 참조하여 더 자세히 기술될 것이다. 그 다음, 바람직하게는, 상기 제2 첫 번째-패킷 수신 타임스탬프 Trxfirst(b), 상기 제2 마지막-패킷 수신 타임스탬프 Trxlast(b), 상기 제2 최소 임계 지터 카운터 CJthmin(b), 상기 제2 최대 임계 지터 카운터 CJthmax(b), 상기 제2 최소 단-방향 지터 OWJmin(b), 그리고 상기 제2 최대 단-방향 지터 OWJmax(b)가 갱신되며(단계 46b), 이는 도 5b의 흐름도를 참조하여 더 자세히 기술될 것이다.
바람직하게는, 단계 43b 내지 단계 46b는 상기 블록 주기 T(k)의 끝 부분까지, 상기 패킷 흐름(PF1)의 패킷(Pk)이 수신될 때마다 반복된다(단계 47b).
도 4의 흐름도는 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 로컬 시각 Tloc 가 상기 측정 모드 정보에 명시된 상기 측정 종료 시각 T end 과 동일할 때까지, 각각의 블록 주기 T(k)에 대해 반복된다.
도 5a는 단계 45a를(그리고 단계 45b를) 더 자세히 도시한다. 단계 45i에서(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다), 바람직하게는, 단-방향 지연 OWD(i)은 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기 패킷(Pk)의 수신 시각 Trx, 그리고 상기 제1 노드(N1)에 의한 동일 패킷(Pk)의 전송 시각 Ttx 간의 차이로서 계산된다(단계 501). 상기 성능 측정 세션을 시작하기 전에 상기 제2 노드(N2)는 상기 제1 노드(N1)와 공유하는 상기 측정 모드 정보로부터 상기 패킷(Pk)의 전송 시각 Ttx을 도출할 수 있기 때문에, 상기 패킷(Pk)의 전송 시각 Ttx는 상기 제2 노드(N2)에 의해 선험적으로(a priori) (즉, 그러한 정보를 상기 제1 노드(N1)로부터 명시적으로 수신할 필요 없이) 공지되어 있음을 주목해야한다. 특히, 유리하게는, 상기 제2 노드(N2)는 상기 측정 모드 정보에 명시된 측정 시작 시각 Tstart, 블록 주기 Tb, 그리고 패킷 전송 속도로부터 각각의 패킷(Pk)의 전송 시각 Ttx를 도출할 수 있다. 예를 들면, 일정한 패킷 전송 속도의 경우, 각각의 패킷(Pk)의 전송 시각은 상기 수신 카운터(즉, 짝수 블록 주기들인 경우 C(a), 그리고 홀수 블록 주기들인 경우 C(b))의 현재 값에 1을 감소시키고 상기 패킷 전송 속도로 나눈 값만큼씩 증가되는, 현재 블록 주기 T(k)의 시작 시각 (Tstart + k*Tb )과 동일하다. 유리하게는, 이는 상기 제2 노드(N2)가 상기 측정 세션동안 상기 패킷 흐름(PF1)의 패킷(Pk) 하나하나가 상기 제1 노드(N1)에 의해 전송될 시간을 예측할 수 있게 한다. 그러므로, 유리하게는, 상기 제2 노드(N2)는 상기 패킷 흐름(PF1)의 각 패킷(Pk)의 수신 시, 그 각각의 수신 패킷(Pk)에 의해 발생되는 단-방향 지연을, 상기 제1 노드(N1)로부터 어떠한 정보도 수신할 필요 없이(상기 측정 세션의 시작 전에 수신된 상기 측정 모드 정보는 제외), 독자적으로 계산할 수 있다.
그 다음, 단계 501에서 계산된 단-방향 지연 OWD(i)이 상기 측정 모드 정보에 명시된 임계 단-방향 지연 OWDth 보다 높은지의 여부가 확인된다(단계 502). 긍정일 때, 단계 42i(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)에서 초기화된 임계 지연 카운터 CDth(i)는 1 씩 증가된다(단계 503). 부정일 때, 상기 임계 지연 카운터 CDth(i)의 값은 변경되지 않는다. 어떠한 임계 지연 측정도 필요하지 않다면, 단계 502 및 단계503은 생략된다.
그 다음, 단계 42i (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)에서 초기화된 상기 누적 단-방향 지연 OWDcum(i)은 단계 501에서 계산된 상기 단-방향 지연 OWD(i) 만큼 증가된다(단계 504).
따라서 상기 패킷(Pk)이 현재 블록 주기 T(k) 중에 수신된 첫 번째 패킷이라면(단계 505), 바람직하게는, 단계 42i (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)에서 초기화된 최소 단-방향 지연 OWDmin(i)은 단계 501에서 계산된 상기 단-방향 지연 OWD(i) 과 동일하도록 세팅되고(단계 506), 그리고 또한, 바람직하게는, 단계 42i (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)에서 초기화된 최대 단-방향 지연 OWDmax(i)는 단계 501에서 계산된 상기 단-방향 지연 OWD(i) 과 동일하도록 세팅된다(단계507).
그렇지 않으면, 상기 패킷(Pk)이 현재 블록 주기 T(k) 중에 수신된 첫 번째 패킷이 아니라면, 바람직하게는, 단계 501에서 계산된 상기 단-방향 지연 OWD(i)가 상기 최소 단-방향 지연 OWDmin(i) 보다 낮은지 여부가 확인된다(단계 508). 긍정인 경우, 바람직하게는, 상기 최소 단-방향 지연 OWDmin(i)의 현재 값은 단계 501에서 계산된 상기 단-방향 지연 OWD(i)로 교체된다(단계 508a). 부정인 경우, 상기 최소 단-방향 지연 OWDmin(i)의 현재 값은 교체되지 않으며, 그리고 단계 501에서 계산된 상기 단-방향 지연 OWD(i)가 상기 최대 단-방향 지연 OWDmax(i)의 현재 값보다 높은지 여부가 확인된다(단계 509). 긍정인 경우, 바람직하게는, 상기 최대 단-방향 지연 OWDmax(i)의 현재 값은 단계 501에서 계산된 상기 단-방향 지연 OWD(i)로 교체된다(단계 507). 부정인 경우, 상기 최대 단-방향 지연 OWDmax(i)의 현재 값은 교체되지 않는다.
그러므로, 각각의 블록 주기 T(k)의 끝 부분에서, 상기 임계 지연 카운터 CDth(i)는, 지연이 상기 임계 단-방향 지연 OWDth 보다 큰, 상기 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)의 개수를 저장하며, 상기 누적 단-방향 지연 OWDcum(i)은 상기 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)에 의해 발생된 모든 단-방향 지연들의 합을 저장하고, 상기 최소 단-방향 지연 OWDmin(i)은 상기 블록 주기 T(k) 동안 전송되고 수신된 "가장 빠른" 패킷(Pk)에 의해 발생된 단-방향 지연을 저장하고, 이와 반대로, 상기 최대 단-방향 지연 OWDmax(i)은 상기 블록 주기 T(k) 동안 전송되고 수신된 "가장 느린"패킷(Pk)에 의해 발생된 단-방향 지연을 저장한다. 이 때, "i"는 T(k)가 짝수 블록 주기(k = 0, 2, 4 등)라면 "a"이며, T(k)가 홀수 블록 주기(k = 1, 3, 5 등)라면 "b"이다.
도 5b는 단계 46a를 (그리고 단계 46b를) 더 자세히 도시한다. 단계 46i에서(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다), 패킷(Pk)이 그 블록 주기 T(k) 중에 수신된 첫 번째 패킷인지 여부가 먼저 확인된다(단계510).
상기 패킷(Pk)이 현재 블록 주기 T(k) 중에 수신된 첫 번째 패킷이라면, 바람직하게는, 단계 42i에서 초기화된 첫 번째-패킷 수신 타임스탬프 Trxfirst(i)는 (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다), 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기 패킷(Pk)의 수신 시각 Trx 와 같도록 세팅된다(단계 511). 뿐만 아니라, 바람직하게는, 단계 42i에서 초기화된 마지막-패킷 수신 타임스탬프 Trxlast(i) 는(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다), 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기와 동일한 패킷(Pk) 수신 시각으로 세팅된다(단계512).
그렇지 않다면, 상기 패킷(Pk)이 현재 블록 주기 T(k) 중에 수신된 첫 번째 패킷이 아니라면, 바람직하게는, 단-방향 지터 OWJ(i) (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)는, Trx-Trxlast(i)(즉, 상기 패킷(Pk)의 수신 그리고 이전 패킷의 수신 사이의 경과 시간) 및 Dtx (상기 패킷(Pk)의 전송 및 그 이전 패킷(Pk)의 전송 사이의 경과 시간) 간의 차이로 계산된다(단계 513). 상기 성능 측정 세션을 시작하기 전에 상기 제2 노드(N2)는 상기 제1 노드(N1)와 공유하는 상기 측정 모드 정보로부터 상기 패킷(Pk)의 경과 시간 Dtx을 도출할 수 있기 때문에, 상기 패킷(Pk)의 전송 및 그 이전 패킷의 전송 사이의 경과 시간 Dtx는 상기 제2 노드(N2)에 의해 선험적으로(a priori) (즉, 그러한 정보를 상기 제1 노드(N1)로부터 수신할 필요 없이) 공지되어 있음을 주목해야한다. 특히, 상기 패킷 전송 속도가 일정한 경우, Dtx는 상기 패킷 전송 속도의 역(reciprocal)(즉, 역수(multiplicative inverse))과 같으며, 상기 패킷 흐름(PF1)의 연이은 패킷들(Pk)의 모든 쌍들에 대해 동일한 값을 갖는다. 유리하게는, 이는 상기 제2 노드(N2)가 상기 패킷 흐름(PF1)의 연이은 패킷들(Pk)의 각각의 쌍의 전송 간에 경과할 시간을, 상기 제1 노드(N1)로부터 어떠한 명백한 정보도 수신할 필요 없이(상기 측정 세션의 시작 전에 수신된 상기 측정 모드 정보는 제외), 예측할 수 있게 한다.
그런 다음, 바람직하게는, 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)가 상기 측정 모드 정보에서 명시된 최대 임계 단-방향 지터(maximum threshold one-way jitter; OWJthmax) 보다 높은지의 여부가 확인된다(단계 514). 긍정인 경우, 단계 42i에서 초기화된 상기 최대 임계 지터 카운터 CJthmax(i) (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)는 1이 증가된다(단계 514a). 그렇지 않다면, 상기 최대 임계 지터 카운터 CJthmax(i)의 값은 변하지 않으며, 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)가 상기 측정 모드 정보에서 명시된 최소 임계 단-방향 지터 OWJthmin 보다 낮은지의 여부가 확인된다(단계 515). 긍정인 경우, 단계 42i에서 초기화된 상기 최소 임계 지터 카운터 CJthmin(i) (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다)는 1이 증가된다(단계 515a). 그렇지 않다면, 상기 최소 임계 지터 카운터 CJthmin(i)의 값은 변하지 않는다. 바람직하게는, 임계 지터 백분율 측정들이 요구되지 않는다면, 단계 514 내지 515a는 생략된다.
그런 다음, 마지막-패킷 수신 타임스탬프 Trxlast(i)는 현재 수신된 패킷(Pk)의 수신 시각으로 갱신된다. 즉, 상기 마지막-패킷 수신 타임스탬프 Trxlast(i)는 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기 패킷(Pk)의 수신 시각 Trx와 동일하게 세팅된다(단계 516).
그런 다음, 상기 현재 수신된 패킷(Pk)이 현재 블록 주기 T(k) 동안 수신된 두 번째 패킷인지 여부, 즉 상기 단-방향 지터 OWJ(i)가 첫 번째 패킷에 대해 계산되었는지 여부가 확인된다(단계 517). 긍정인 경우, 바람직하게는, 단계 42i에서 (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다) 초기화된 상기 최소 단-방향 지터 OWJmin(i)는 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)와 동일하게 세팅되며(단계 518), 그리고 또한 바람직하게는, 단계 42i에서 (T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다) 초기화된 상기 최대 단-방향 지터 OWJmax(i)는 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)와 동일하게 세팅된다(단계 519).
그렇지 않다면, 상기 패킷(Pk)이 현재 블록 주기 T(k) 동안 수신된 두 번째 패킷이 아니라면, 바람직하게는, 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)가 상기 최소 단-방향 지터 OWJmin(i)의 현재 값보다 낮은지의 여부가 확인된다(단계520). 긍정인 경우, 상기 최소 단-방향 지터 OWJmin(i)의 현재 값은 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)로 교체된다(단계 520a). 부정인 경우, 상기 최소 단-방향 지터 OWJmin(i)의 현재 값은 교체되지 않으며, 그리고 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)가 상기 최대 단-방향 지터 OWJmax(i)의 현재 값 보다 높은지의 여부가 확인된다(단계 521). 긍정인 경우, 바람직하게는, 상기 최대 단-방향 지터 OWJmax(i)의 현재 값은 단계 513에서 계산된 상기 단-방향 지터 OWJ(i)로 교체된다(단계 519). 부정인 경우, 상기 최대 단-방향 지터 OWJmax(i)의 현재 값은 교체되지 않는다.
따라서 각각의 블록 주기 T(k)의 끝 부분에서, 상기 최대 임계 지터 카운터 CJthmax(i) 는 단-방향 지터가 (양(positive)의) 상기 최대 임계 단-방향 지터 OWJthmax 보다 큰, 상기 블록 주기 T(k) 동안 전송되고 수신된 연이은 패킷들(Pk)의 쌍들의 개수를 저장하며, 상기 최소 임계 지터 카운터 CJthmin(i)는 단-방향 지터가 (음(negative)의) 상기 최소 임계 단-방향 지터 OWJthmin 보다 작은, 상기 블록 주기 T(k) 동안 전송되고 수신된 연이은 패킷들(Pk)의 쌍들의 개수를 저장하며, 상기 첫 번째-패킷 수신 타임스탬프 Trxfirst(i)는 현재 블록 주기 T(k) 동안 전송되고 수신된 첫 번째 패킷(Pk)의 수신 시각을 저장하고, 마지막-패킷 수신 타임스탬프 Trxlast(i) 는 현재 블록 주기 T(k) 동안 전송되고 수신된 마지막 패킷(Pk)의 수신 시각을 저장하고, 상기 최소 단-방향 지터 OWJmin(i) 는 상기 블록 주기 T(k) 동안 전송되고 수신된 연이은 패킷들(Pk)의 쌍들에 의해 발생된 최소 단-방향 지터를 저장하며, 이와 반대로, 상기 최대 단-방향 지터 OWJmax(i)는 상기 블록 주기 T(k) 동안 전송되고 수신된 연이은 패킷들(Pk)의 쌍들에 의해 발생된 최대 단-방향 지터를 저장한다. 이 때, "i"는 T(k)가 짝수 블록 주기(k = 0, 2, 4 등)라면 "a"이며, T(k)가 홀수 블록 주기(k = 1, 3, 5 등)라면 "b"이다.
이제 도 6을 참조하면, 다음에 이어지는 블록 주기 T(k+1) 에 대해, 상기 블록 주기 T(k+1)이 짝수 블록 주기인지 또는 홀수 블록 주기인지 여부가 판단된다(단계601).
상기 블록 주기 T(k+1)가 짝수 블록 주기라면, Va로 마킹된 패킷들과 관련된 변수들의 값들이 현재 변화중일 수 있으며, 반면 Vb로 마킹된 패킷들과 관련된 변수들의 값들은 현재 일정하여서 이에 따라 상기 블록 주기 T(k)에 대한 성능 측정들을 제공하기 위해 사용될 수 있다는 것이 판단된다.
따라서 바람직하게는, 패킷 손실 PL(k)은 상기 블록 주기 T(k) 동안 상기 제1 노드(N1)에 의해 전송된 패킷들의 개수 Ctx, 그리고 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 수신 카운터 C(b)의 값 간의 차이로서 계산된다. 상기 제2 노드(N2)는 상기 성능 측정 세션을 시작하기 전에 상기 제1 노드(N1)와 공유하는 상기 측정 모드 정보로부터 상기 패킷들의 개수 Ctx 를 도출할 수 있기 때문에, 상기 제1 노드(N1)에 의해 전송된 패킷들의 개수 Ctx 는 상기 제2 노드(N2)에 의해 선험적으로(a priori) (즉, 그러한 정보를 상기 제1 노드(N1)로부터 명시적으로 수신할 필요 없이) 공지되어 있음을 주목해야한다. 특히, 유리하게는, 상기 제2 노드(N2)는 상기 측정 모드 정보에 명시된 블록 주기 Tb 및 패킷 전송 속도에 기반하여 상기 전송된 패킷들의 개수 Ctx를 도출할 수 있다. 예를 들면, 상기 패킷 전송 속도가 일정한 경우, 상기 패킷들의 개수 Ctx는 Tb를 그 패킷 전송 속도로 나눈 것과 같으며, 모든 블록 주기들 T(k)에 대해 동일한 값을 갖는다. 유리하게는, 이는 상기 제2 노드(N2)가 각각의 블록 주기 T(k) 동안 상기 제1 노드(N1)에 의해 전송될 패킷 흐름(PF1)의 패킷(Pk) 개수를 예측할 수 있게 한다. 그러므로 유리하게는, 상기 제2 노드(N2)는 각각의 블록 주기 T(k)에서 상기 패킷 흐름(PF1)의 패킷 손실 PL(k)을, 상기 제1 노드(N1)로부터 어떠한 정보도 수신할 필요 없이(상기 측정 세션의 시작 전에 수신된 상기 측정 모드 정보는 제외), 독자적으로 계산할 수 있다.
뿐만 아니라, 바람직하게는, 평균 단-방향 지연 OWDav(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 누적 단-방향 지연 OWDcum(b)의 값을 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 수신 카운터 C(b)의 값으로 나눈 값으로서 계산된다(단계 603a).
뿐만 아니라, 바람직하게는, 최소 단-방향 지연 OWDmin(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 최소 단-방향 지연 OWDmin(b)의 값과 동일하게 세팅되며(단계 604a), 이와 반대로, 바람직하게는, 최대 단-방향 지연 OWDmax(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 최대 단-방향 지연 OWDmax(b)의 값과 동일하게 세팅된다(단계 605a).
또한, 바람직하게는, 평균 단-방향 지터 OWJav(k)는 다음의 방정식에 따라 계산된다(단계 606a) :
[수학식 3]
Figure pct00001
이 때, Dtxav는 상기 블록 주기 T(k) 동안 상기 제1 노드(N1)에 의한, 상기 패킷 흐름(PF1)의 두 개의 연이은 패킷들(Pk)의 전송 간의 평균 경과 시간이다. 상기 제2 노드(N2)는 상기 성능 측정 세션을 시작하기 전에 상기 제1 노드(N1)와 공유하는 상기 측정 모드 정보로부터 상기 시간 Dtxav을 도출할 수 있기 때문에, 상기 시간 Dtxav 는 상기 제2 노드(N2)에 의해 선험적으로(a priori) (즉, 그러한 정보를 상기 제1 노드(N1)로부터 수신할 필요 없이) 공지되어 있음을 주목해야한다. 특히, 상기 측정 모드 정보에 명시된 패킷 전송 속도가 일정하다면, 상기 평균 시간 Dtxav은 상기 Dtx 시간과 동일하다(도 5b의 단계 513 참조). 즉, 상기 평균 시간 Dtxav은 상기 패킷 전송 속도의 역(즉, 역수)과 같다. 따라서 유리하게는, 상기 제2 노드(N2)는 상기 블록 주기 T(k) 동안 수신되는 연이은 패킷들(Pk)의 쌍들에 영향을 미치는 평균 단-방향 지터를, 상기 제1 노드(N1)로부터 어떠한 정보도 수신할 필요 없이(상기 측정 세션의 시작 전에 수신된 상기 측정 모드 정보는 제외), 독자적으로 계산할 수 있다.
또한 바람직하게는, 최소 단-방향 지터 OWJmin(k)은 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 최소 단-방향 지터 OWJmin(b)의 값과 동일하게 세팅되며, 반면 최대 단-방향 지터 OWJmax(k)은 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 최대 단-방향 지터 OWJmax(b)의 값과 동일하게 세팅된다.
뿐만 아니라, 바람직하게는, 단-방향 지연이 상기 측정 모드 정보에 명시된 상기 임계 단-방향 지연 OWDth 보다 큰, 상기 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)의 백분율 %OWDth(k)은, 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 임계 지연 카운터 CDth(b)의 값을 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 수신 카운터 C(b)로 나눈 값으로 계산된다(단계609a).
뿐만 아니라, 바람직하게는, 단-방향 지터가 상기 측정 모드 정보에 명시된 (음(negative)의) 상기 최소 임계 단-방향 지터 OWJthmin 보다 낮은, 상기 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)의 쌍들의 백분율 %OWJthmin(k)은 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 최소 임계 지터 카운터 CJthmin(b)의 값을 C(b) - 1 로 나눈 값으로 계산된다(단계 601a). 또한, 바람직하게는, 단-방향 지터가 상기 측정 모드 정보에 명시된 (양(positive)의) 상기 최대 임계 단-방향 지터 OWJthmax 보다 높은, 상기 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)의 쌍들의 백분율 %OWJthmax(k)은 상기 블록 주기 T(k)의 끝 부분에 도달한 상기 제2 최대 임계 지터 카운터 CJthmax(b)의 값을 C(b) - 1 로 나눈 값으로 계산된다(단계 611a).
단계 601에서 상기 블록 주기 T(k+1)가 홀수 블록 주기라고 판단된다면, Va로 마킹된 패킷들과 관련된 변수들의 값들은 현재 일정하며, 이에 따라 상기 블록 주기 T(k)에 대한 성능 측정들을 제공하기 위해 사용될 수 있다고 판단된다. 반면, Vb로 마킹된 패킷들과 관련된 변수들의 값들은 현재 변화중일 수 있다고 판단된다.
따라서 바람직하게는, 상기 블록 주기 T(k)와 관련된 상기 패킷 손실 PL(k), 단-방향 지연들인 OWDav(k), OWDmin(k), OWDmax(k), 단-방향 지터들인 OWJav(k), OWJmin(k), OWJmax(k), 그리고 임계 백분율들인 %OWDth(k), %OWJthmax(k), %OWJthmin(k)은 Va로 마킹된 패킷들에 관한 변수들을 사용하여 계산된다(단계들 602b 내지 611b). 단계들 602b 내지 611b은, Vb로 마킹된 패킷들에 관한 변수들 대신에 Va로 마킹된 패킷들에 관한 변수들에 적용된다는 점을 제외하고는, 상기에 기술된 단계들 602a 내지 611a 과 실질적으로 유사하다. 그러므로 상세한 설명은 반복되지 않을 것이다.
바람직하게는, 도 6의 알고리즘이 수행되는 시간은 블록 주기 T(k+1)의 시작 시각에 대해 안전 대기 시간(safety wait time; SWT) 만큼 지연된다. 실제로, 상기 링크(L)를 따르는 상기 패킷들(Pk)의 전파 지연으로 인해 또는 수신 시퀀스 에러로 인해, 짝수 블록 주기 T(k) 동안 상기 제1 노드(N1)에 의해 전송되는 Va로 마킹된 마지막 패킷들은 그 다음의 홀수 블록 주기 T(k+1)의 초기에 상기 제2 노드(N2)에 의해 수신될 수 있다. 그러므로 홀수 블록 주기 T(k+1)의 초기에, Va로 마킹된 패킷들에 관한 변수들은 여전히 변화할 수 있다. 이와 유사하게, 홀수 블록 주기 T(k) 동안 상기 제1 노드(N1)에 의해 전송되는 Vb로 마킹된 마지막 패킷들은 그 다음의 짝수 블록 주기 T(k+1)의 초기에 상기 제2 노드(N2)에 의해 수신될 수 있다. 그러므로 짝수 블록 주기 T(k+1)의 초기에, Vb로 마킹된 패킷들에 관한 변수들은 여전히 변화할 수 있다. 상기 안전 대기 시간 SWT는, 상기 Va 또는 Vb로 마킹된 패킷들에 대한 변수들은 그 값들이 상기 블록 주기 T(k+1) 중 안정화된 때에만 패킷 손실, 단-방향 지연들, 단-방향 지터들 및 백분율을 계산하는데 사용된다는 것을 보장한다. 바람직하게는, 상기 안전 대기 시간 SWT는 상기 블록 주기 Tb의 1 % 내지 50% 사이에 포함된다. 예를 들면, 상기 블록 주기 Tb가 5분이라면, 상기 안전 대기 시간 SWT는 Tb의 20%, 즉 1분일 수 있다.
또한, 상기 안전 대기 시간 SWT는 상술한 바와 같이 수행되는 최대/최소 지연 측정들, 최대/최소 지터 측정들, 그리고 임계 지연 및 지터 백분율 측정들이, 연이은 블록 주기들 사이의 경계에서 발생하는 가능한 시퀀스 에러들에 영향을 받지 않도록 만든다(대신에, 상술한 바와 같이 수행되는 평균 지연 및 지터, 그리고 패킷 손실 측정들은 본질적으로 임의의 시퀀스 에러에 영향을 받지 않는다). 이와 관련하여, 특히 바람직한 변형들에 따르면, 상기 패킷 흐름(PF1)의 패킷 전송 속도는 임의의 수신 시퀀스 에러를 방지하도록 선택된다. 특히, 바람직하게는, 상기 패킷 전송 속도는 상술한 연이은 패킷들(Pk)의 전송 간의 경과 시간 Dtx(상기의 도 5b의 단계 513 참조)이 미리 정해진 단-방향 지연보다 길도록 선택된다. Dtx의 값은 상기 링크(L)의 전송 특징들에 따라 달라진다. 예를 들면, Dtx는 (수신 시퀀스 에러들을 고려하지 않고 측정된) 평균 단-방향 지연 OWDav(k) 또는 (매우 낮은 패킷 전송 속도, 즉 수신 시퀀스 에러가 발생할 수 없다는 것을 보장하는 패킷 전송 속도를 사용하여 측정된) 최대 단-방향 지연 OWDmax(k) 보다 더 높게 선택될 수 있다.
그 다음, 옵션으로, 상기 블록 주기 T(k)에 대한 상기 패킷 손실 PL(k), 단-방향 지연들인 OWDav(k), OWDmin(k), OWDmax(k), 단-방향 지터들인 OWJav(k), OWJmin(k), OWJmax(k), 그리고 임계 백분율들인 %OWDth(k), %OWJthmax(k), %OWJthmin(k)은 관리 서버(management server; MS)에 전송될 수 있으며(이 단계는 도면들에 도시되지 않았다), 상기 관리 서버는 이들이 상기 네트워크 운영자에 의해 액세스될 수 있도록 저장한다. 이 단계는 예를 들어, 공지된 통신 프로토콜(예를 들면, FTP(File Transfer Protocol))에 기반하여 상기 제2 노드(N2) 및 상기 관리 서버(MS) 간의 통신 세션을 확립함으로써 수행될 수 있다. 상기 통신 세션은 상기 제2 노드(N2) 및 상기 관리 서버(MS) 중 하나에 의해 시작될 수 있다.
바람직하게는, 도 6의 흐름도에 도시된 단계들은 각각의 블록 주기에서 반복되며, 각각의 반복은 이전 블록 주기에 대한 성능 측정치들을 제공한다.
상술된 방법은 많은 이점들을 갖는다.
먼저, 상술된 바와 같이 상기 제2 노드(N2)에 의해 계산된 전송 시각들은, 상기 패킷 흐름(PF1)의 패킷들(Pki)이 상기 제1 노드(N1)에 의해 실제로 전송된 시간을 매우 정확한 방식으로 나타내기 때문에, 상기 성능 측정들(특히, 상기 지연 및 지터 측정들)은 매우 정확하다. 그러므로 유리하게는, (예를 들어, 전송 전 패킷 처리에 의해 주입된 예측 불가능한 오프셋들로 인한) 예상 전송 시각들 및 실제 전송 시각들 간의 불일치로 인해 가능한 부정확한 정보들이 방지된다.
옵션으로, 상기 측정 모드 정보부터 시작하는 상기 제2 노드(N2)에 의해 계산되는 예상 전송 시각들 Ttx, 그리고 상기 패킷들의 실제 전송 시각들 간의 매칭에 대한 확인(check)이 제공될 수 있다. 바람직하게는, 예를 들어 이 확인은 상기 제1 노드가, 상기 패킷 흐름(PF1)의 전송이 상기 측정 모드 정보를 완전히 따른다는(compliant) 것을 보장할 수 없는 경우 수행된다. 이 확인을 수행하는 동안, 바람직하게는, 확인 평균 단-방향 지연(check average one-way delay)은 상기 측정 모드 정보에 기초한 상기 제2 노드(N2)에 의해 결정된 전송 시각들 Ttx를 사용하는 대신에(도 5a의 단계 501 참조), 상기 제1 노드(N1)의 로컬 클록에 의해 표시된 실제 전송 시각들을 사용하여 계산된다. 바람직하게는, 이러한 계산은 다음과 같이 수행된다 :
- 상기 제1 노드(N1)에서, 평균 전송 시각은 블록 주기 T(k) 동안 전송된 모든 패킷들(Pk)의 전송 시각들의 합을, 상기 블록 주기 T(k) 동안 전송된 패킷들의 개수로 나눈 것으로서 계산된다;
- 상기 제2 노드(N2)에서, 평균 수신 시각은 상기 블록 주기 T(k) 동안 수신된 모든 패킷들(Pk)의 수신 시각들의 합을, 상기 블록 주기 T(k) 동안 수신된 패킷들의 개수로 나눈 것으로서 계산된다;
- 평균 전송 시각은 상기 제1 노드(N1)에 의해 상기 제2 노드(N2)에게 전송된다; 그리고
- 상기 제2 노드(N2)에서, 상기 확인 평균 단-방향 지연(check average one-way delay)은 상기 평균 수신 시각 및 상기 평균 전송 시각 간의 차이로서 계산된다.
그 다음, 상기 확인 평균 단-방향 지연, 그리고 도 6의 흐름도의 단계 603a/603b에서 계산된 평균 단-방향 지연 OWDav(k) 간의 차이로서 에러가 계산된다. 이러한 에러가 주어진 임계값보다 낮다면, 상술한 바와 같은 상기 제2 노드(N2)에 의해 수행되는 최소 및 최대 지연 측정들과 최소 및 최대 지터 측정들뿐만 아니라 상기 임계 지연 및 지터 백분율 측정들은 정확한 것으로 간주된다. 그렇지 않으면, 이러한 측정은 신뢰할 수 없는 것으로서 삭제된다.
상술된 본 방법의 또 다른 이점은, 상기 링크(L)의 성능 측정은 그 측정 세션 동안 상기 제1 노드(N1)로부터의 어떠한 정보 수신도 없이 수신 측에서(즉, 상기 제2 노드(N2)에 의해 또는 상기 제2 노드(N2)에 연결된 컴퓨터에 의해) 수행된다는 것이다. 실제로, 상기 측정이 시작되기 전에 상기 제2 노드(N2)에게 제공되는 상기 측정 모드 정보는, 상기 제2 노드(N2)가 패킷 손실, (평균, 최소 및 최대) 단-방향 지연, (평균, 최소 및 최대) 단-방향 지터 및 임계 백분율들의 계산을 위해 필요한 모든 전송 카운터들 및 전송 시각들을 독자적으로 도출할 수 있도록 하는, 패킷 흐름(PF1)에 대한 정보를 포함한다. 따라서 전송 카운터들 및 전송 시각들을 상기 제1 노드(N1)로부터 상기 제2 노드(N2)로 전송하기 위해 (또는, 상기 노드들 모두(N1, N2)로부터, 그 계산들을 수행하는 상기 네트워크 관리자(NM)와 같은 중앙 개체로 카운터들 및 시간들을 전송하기 위해) 필요한 추가 대역폭이 필요하지 않다.
뿐만 아니라, 최대/최소 지연 및 지터의 측정은 수신 측에서의 매우 감소된 계산량을 요한다. 실제로, 모든 패킷들(Pk)의 전송 시각들이 선험적으로(a priori) 공지되어 있기 때문에, 상기 수신 측에서, 상기 단-방향 지연 OWD(i) 및 단-방향 지터 OWJ(i)가 계산되며(도 5a의 단계 501 및 도 5b의 단계 513 참고), 상기 단-방향 지연 OWD(i) 및 단-방향 지터 OWJ(i)는 각각의 패킷(Pk)을 수신할 때 상기 블록 주기 T(k)에 대한 최소/최대 지연 및 지터를 저장하는 변수들의 값들을 갱신하기 위해 사용된다(도 5a의 단계 506 내지 단계509, 그리고 도 5b의 단계 518 내지 단계 521 참고). 따라서 유리하게는, 블록 주기 T(k) 동안 수신되는 모든 패킷들(Pk)의 모든 수신 시각들을 저장할 필요가 없다. 대신에 이는, 단-방향 지연 OWD(i) 및 단-방향 지터 OWJ(i)의 계산이 상기 제1 노드(N1)로부터 수신된 전송 시각들을 사용하여 귀납적으로(a posteriori) 수행되는 경우 필요할 것이다.
게다가, 본 발명의 방법은 인공 트래픽 상에서 수행되기 때문에, 실제 트래픽에 적용되는 기술들을 이용하여 인공 트래픽에 적용되는 공지된 기술들의 이점들과 동일한 이점들을 나타낸다. 그 이점들은, 측정될 트래픽의 특징들을 운영자가 제어할 수 있다는 사실로부터 주로 도출된다.
우선, 유리하게는, 상기 패킷 흐름(PF1)의 패킷 전송 속도는 상기 수신 측에서 이용가능한 계산 자원들에 맞게 조정될 수 있으며, 이 때 성능 측정들이 (상기 제2 노드(N2)에 의해, 또는 상기 제2 노드(N2)에 연결된 PC에 의해(이는 이후에 더 자세히 설명될 것이다)) 수행된다. 예를 들면, (일반적으로 실제 트래픽의 전송 속도(1 Gbps 내지 10 Gbps 일 수 있다)보다 훨씬 낮은) 300 Mbps 내지 400 Mbps에 해당하는 패킷 전송 속도는 상기 제2 노드(N2)에 연결된 PC에 의해 상술된 모든 성능 측정들을 수행하는 것을 가능하게 하며, 이는 이후에 더 자세히 설명될 것이다.
게다가, 상기 패킷 흐름(PF1)의 패킷 전송 속도는 임의의 수신 시퀀스 에러를 방지하도록 조정될 수 있다. 뿐만 아니라, 상기 패킷 흐름(PF1)의 패킷들은, 상기 패킷들(Pk)의 헤더 및 페이로드 중 어느 하나에 포함될 수 있는 마킹 필드(MF)를 포함하도록 매우 유연한 방식으로 맞춤화(customized)/조정될 수 있다. 게다가, 유리하게는, 상기 노드들(N1, N2) 사이의 사용자 트래픽을 운반하는 실제 패킷들은 변하지 않는다.
상술한 실시예에서, 링크(L)의 성능이 오직 상기 제1 노드(N1)로부터 상기 제2 노드(N2)로의 방향으로만 측정된다는 것이 가정되었다. 다른 실시예들에서는, 역 방향(즉, 상기 제2 노드(N2)로부터 상기 제1 노드(N1)로)으로의 링크(L) 성능 또한 측정된다. 도 7을 참조하면, 이런 취지로, 바람직하게는, 상기 제2 노드(N2)는 애드혹 패킷들(Pk)의 추가 패킷 흐름(PF2)을 생성하고, 이들을 상기 제1 노드(N1)에 전송한다. 바람직하게는, 상기 제2 노드(N2)에 의해 생성되고 전송되는 추가 패킷 흐름(PF2)은, 측정 세션을 시작하기 전에 상기 제1 노드(N1) 및 상기 제2 노드(N2)에 의해 교환되는 측정 모드 정보를 따른다. 특히, 상기 추가 패킷 흐름(PF2)의 전송은 상기 측정 모드 정보에 명시된 측정 시작 시각 Tstart 에서 시작하며, 상기 추가 패킷 흐름(PF2)의 패킷들(Pk)은 상기 측정 모드 정보에 명시된 유형의 패킷들이며, 상기 측정 모드 정보에 명시된 패킷 전송 속도로 전송된다. 게다가, 상기 추가 패킷 흐름(PF2)의 패킷들(Pk)은 상기 측정 모드 정보에 명시된 블록 주기 Tb로 시간이 흐름에 따라 교번하는 마킹 값들(Va, Vb)로 마킹된다. 따라서 상기 패킷 흐름(PF1)과 상기 추가 패킷 흐름(PF2)은 실질적으로 동일하다. 특히, 상기 제1 노드(N1)가 상기 패킷 흐름(PF1)의 패킷(Pk)을 전송할 때마다, (상기 두 개의 노드들이 동기화되어있다고 가정할 때) 그와 동시에, 상기 제2 노드(N2)는 상기 추가 패킷 흐름(PF2)의 패킷(Pk)을 전송한다.
바람직하게는, 이러한 실시예들에 따르면, 전송 측에서의 상기 제2 노드(N2)의 행동은 도 3의 흐름도를 참조하여 상술한 상기 제1 노드(N1)의 행동과 동일하다. 뿐만 아니라, 바람직하게는, 수신 측에서의 상기 제2 노드(N2)의 행동은 도 4, 도 5a, 도 5b 및 도 6의 흐름도들을 참조하여 상술한 것과 동일하다. 이러한 단계들(단계들의 상세한 설명은 이하에서 반복되지 않을 것이다)의 실행 결과로서, 바람직하게는, 상기 제2 노드(N2)는 각각의 블록 주기 T(k) 동안, 상기 추가 패킷 흐름(PF2)에 대한 패킷 손실 PL1(k), 평균 단-방향 지연 OWDav1(k), 최소 단-방향 지연 OWDmin1(k), 최대 단-방향 지연 OWDmax1(k), 평균 단-방향 지터 OWJav1(k), 최소 단-방향 지터 OWJmin1(k), 최대 단-방향 지터 OWJmax1(k), 임계 지연 백분율 %OWDth1(k), 최소 임계 지터 백분율 %OWJthmin1(k), 그리고 최대 임계 지터 백분율 %OWJthmax1(k)을 계산한다.
상기 제1 노드(N1)에 관해, 전송 측에서의 상기 제1 노드(N1)의 행동은 도 3의 흐름도를 참조하여 상술한 바와 동일하다. 뿐만 아니라, 바람직하게는, 도 4, 도 5a, 도 5b 및 도 6의 흐름도들에 도시된 단계들은 상기 제1 노드(N1)가 상기 제2 노드(N2)로부터 수신하는 상기 추가 패킷 흐름(PF2)의 패킷들(Pk)에 적용된다는 점을 제외하고, 수신 측에서의 상기 제1 노드(N1)의 행동은 그러한 흐름도들을 참조하여 상술한 바와 동일하다. 이러한 단계들(단계들의 상세한 설명은 이하에서 반복되지 않을 것이다)의 실행 결과로서, 바람직하게는, 각각의 블록 주기 T(k) 동안, 상기 추가 패킷 흐름(PF2)에 대한 패킷 손실 PL2(k), 평균 단-방향 지연 OWDav2(k), 최소 단-방향 지연 OWDmin2(k), 최대 단-방향 지연 OWDmax2(k), 평균 단-방향 지터 OWJav2(k), 최소 단-방향 지터 OWJmin2(k), 최대 단-방향 지터 OWJmax2(k), 임계 지연 백분율 %OWDth2(k), 최소 임계 지터 백분율 %OWJthmin2(k), 그리고 최대 임계 지터 백분율 %OWJthmax2(k)을 계산한다.
그러므로 다른 노드(N2, N1)로부터 각각의 패킷 흐름(PF2, PF1)을 수신하는 각각의 노드(N1, N2)는, 오로지 상기 수신 패킷들의 로컬 프로세싱에 기초하고 상기 측정 모드 정보로부터 도출 가능한 정보를 사용하여, 들어오는(incoming) 방향으로의 링크(L)에 대한 성능 측정들을 독자적으로 제공할 수 있다. 상기 노드들(N1, N2) 사이에서 (카운터들 및 타임스탬프들과 같은) 정보의 추가 교환은 필요하지 않으며(상기 측정 모드 정보는 제외), 상기 노드들(N1, N2)이 그것들의 카운터들 및 타임스탬프들을 중앙 개체에 제공할 필요도 없다.
상기 설명에서, 상기 제1 노드(N1) 및 상기 제2 노드(N2)는 상호 동기화되어 있다고 가정되었다. 즉, 상기 노드들(N1, N2)의 로컬 클록들은 항상 동일한 날짜 및 시간을 나타낸다고 가정되었다. 그러나 보다 일반적으로는, 통신 네트워크 노드들의 로컬 클록들 간에는 불일치가 존재할 수 있다. 이러한 불일치는 도 6의 흐름도의 단계들 603a/b, 604a/b, 605a/b 및 609a/b에 따라 수행되는 단-방향 지연 측정들(평균 단-방향 지연 OWDav(k), 최대 단-방향 지연 OWDmax(k), 최소 단-방향 지연 OWDmin(k) 및 임계 지연 백분율 %OWDth(k))에 에러를 도입한다. 실제로 이러한 측정들은 모두, 도 5a에 도시된 흐름도의 단계 501에서 계산된 각각의 수신 패킷(Pk)의 단-방향 지연 값에 기초한다. 상기에서 설명한 바와 같이, 이러한 값은 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기 패킷(Pk)의 수신 시각(Trx), 그리고 상기 제2 노드(N2)가 상기 측정 모드 정보로부터 도출한 예상 전송 시각(Ttx) 간의 차이로서 계산된다. 상기 제1 노드(N1) 및 상기 제2 노드(N2)가 동기화되지 않은 경우, 이러한 차이는 상기 두 개의 노드들의 로컬 클록들 간의 불일치가 증가함에 따라 증가하는 에러의 영향을 받는다.
본 발명의 특히 바람직한 실시예에 따르면, 상기 제1 노드(N1) 및 상기 제2 노드(N2)가 정렬되지 않은(misaligned) 경우, 상기 제1 노드(N1) 및 상기 제2 노드(N2) 중 적어도 하나(예를 들어, 상기 제2 노드(N2))는 양-방향 지연 측정을 수행하며, 이는 이하에서 더 자세히 기술될 것이다.
상기 제2 노드(N2)가 양-방향 지연 측정을 수행할 수 있도록 하기 위해, 바람직하게는, 측정 세션 전에 상기 제2 노드(N2)에게 제공되는 상기 측정 모드 정보는, 상술한 임계 단-방향 지연 OWDth를 포함하는 대신에, 임계 양-방향 지연 TWDth , 그리고 양-방향 지연이 상기 임계 양-방향 지연 TWDth (예를 들어, 5 %)을 초과할 수 있는 패킷들(Pk)의 최대 백분율을 나타내는 임계 양-방향 지연 백분율 %TWDth 을 포함한다. 상기 임계 양-방향 지연 TWDth 및 상기 임계 양-방향 지연 백분율 %TWDth의 값들은 네트워크 운영자 및 고객 사이에 규정된 서비스 수준 협약(Service Level Agreement; SLA)에 정의되어 있다. 또한, 이러한 실시예들에 따르면, 바람직하게는, 상기 패킷 흐름(PF1) 및 상기 추가 패킷 흐름(PF2) 모두가 각각의 블록 주기 T(k) 동안 주어진 개수의 패킷들(Nb)을 포함하도록, 상기 측정 모드 정보에 명시된 패킷 전송 속도는 일정하다. 이 때, 상기 주어진 패킷 개수(Nb)는 상기 블록 주기 Tb를 상기 패킷 전송 속도로 나눈 것과 같다.
이러한 특히 바람직한 실시예에 따르면, 도 7에 도시된 바와 같이, 상기 제1 노드(N1)는 상기 패킷 흐름(PF1)을 상기 제2 노드(N2)에 전송하며, 이와 동시에, 상기 제2 노드(N2)는 상기 추가 패킷 흐름(PF2)을 상기 제1 노드(N1)에 전송한다. 상기 노드들(N1, N2)의 전송 측들에서의 동작은 도 3에 도시된 것과 유사하며, 따라서 이는 반복되지 않을 것이다.
상기 노드들(N1, N2)의 (특히, 상기 제2 노드의) 수신 측들에서의 동작은 도 8, 도 9 및 도 10의 흐름도들에 도시되어 있다. 편의상, 상기 노드들(N1, N2)은 오직 지연 측정들만을 수행한다고 가정한다. 패킷 손실 및 지터 측정들은 기피되며, 어떤 경우에는, 도 4, 도 5b 및 도 6에 도시된 바와 같이 각각의 노드(N1, N2)에 의해 수행될 수 있다.
상기 제2 노드(N2)의 로컬 클록에 의해 표시된 시간 Tloc 이 상기 측정 모드 정보에 명시된 측정 시작 시각 Tstart과 같으면, 바람직하게는, 상기 제2 노드(N2)는 도 8에 도시된 알고리즘을 실행하기 시작한다.
특히, 각각의 블록 주기 T(k)의 초기에, 바람직하게는, 상기 제2 노드(N2)는 현재 블록 주기 T(k)가 짝수 블록 주기인지 또는 홀수 블록 주기인지 여부를 판단한다(단계41').
그런 다음, 현재 블록 주기 T(k)가 짝수 블록 주기(k = 0, 2, 4 등)라면, 바람직하게는, 제1 수신 카운터 C(a)는 0으로 초기화된다(단계 42a'). 뿐만 아니라, 단계 42a'에서, 바람직하게는, 제1 최대 단-방향 지연 어레이 DM(a), 제1 누적 단-방향 지연 OWDcum(a), 제1 최소 단-방향 지연 OWDmin(a) 및 제1 최대 단-방향 지연 OWDmax(a) 또한 0으로 초기화된다. 바람직하게는, 상기 제1 최대 단-방향 지연 어레이 DM(a)는 N 개의 요소들을 포함하며, 이 경우 N 개는 Nb의 %TWDth와 같다. 예를 들어, Nb가 100이고 %TWDth이 5 %라면, 상기 최대 단-방향 지연 어레이 DM(a)는 5 개의 요소들을 포함한다.
그 다음, 상기 제2 노드(N2)는 상기 제1 노드(N1)로부터 상기 패킷 흐름(PF1)의 패킷들(Pk)을 수신하기 시작한다. 바람직하게는, 상기 제2 노드(N2)는 상기 패킷 흐름(PF1)의 패킷들(Pk)의 목적지 주소의 적어도 일부, 소스 주소의 적어도 일부, 그리고 옵션으로는 상기 패킷 헤더(Hi)의 다른 필드들(예를 들어, IP 패킷들의 경우 필드 DSCP)을 사용함으로써, 상기 패킷들을 식별한다.
상기 패킷 흐름(PF1)의 패킷(Pk)을 수신할 때(단계 43a'), 바람직하게는, 상기 제1 수신 카운터 C(a)는 1이 증가된다(단계 44a').
그 다음, 바람직하게는, 상기 제1 최대 단-방향 지연 어레이 DM(a), 상기 제1 누적 단-방향 지연 OWDcum(a), 상기 제1 최소 단-방향 지연 OWDmin(a) 및 상기 제1 최대 단-방향 지연 OWDmax(a)이 갱신되며(단계 45a'), 이는 도 9의 흐름도를 참조하여 더 자세히 기술될 것이다.
바람직하게는, 단계 43a' 내지 단계 45a'는 상기 블록 주기 T(k)의 끝 부분까지, 상기 패킷 흐름(PF1)의 패킷(Pk)이 수신될 때마다 반복된다(단계 47a').
단계 41에서, 상기 블록 주기 T(k)가 홀수 블록 주기(k = 1, 3, 5 등)라고 판단된다면, 바람직하게는, 제2 수신 카운터 C(b)는 0으로 초기화된다(단계 42b'). 뿐만 아니라, 단계 42b'에서, 바람직하게는, 제2 최대 단-방향 지연 어레이 DM(b), 제2 누적 단-방향 지연 OWDcum(b), 제2 최소 단-방향 지연 OWDmin(b) 및 제2 최대 단-방향 지연 OWDmax(b) 또한 0으로 초기화된다. 바람직하게는, 상기 제2 최대 단-방향 지연 어레이 DM(b)는 상기 제1 최대 단-방향 지연 어레이 DM(a)와 유사하게, N 개의 요소들을 포함한다.
상기 패킷 흐름(PF1)의 각각의 패킷(Pk)을 수신할 때, 바람직하게는, 상기 제2 수신 카운터 C(b)는 1이 증가된다(단계 44b').
그 다음, 바람직하게는, 상기 제2 최대 단-방향 지연 어레이 DM(b), 상기 제2 누적 단-방향 지연 OWDcum(b), 상기 제2 최소 단-방향 지연 OWDmin(b) 및 상기 제2 최대 단-방향 지연 OWDmax(b)이 갱신되며(단계 45b'), 이는 도 9의 흐름도를 참조하여 더 자세히 기술될 것이다.
바람직하게는, 단계 43b' 내지 단계 45b'는 상기 블록 주기 T(k)의 끝 부분까지, 상기 패킷 흐름(PF1)의 패킷(Pk)이 수신될 때마다 반복된다(단계 47b').
도 8의 흐름도는 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 로컬 시각 Tloc 가 상기 측정 모드 정보에 명시된 상기 측정 종료 시각 T end 과 동일할 때까지, 각각의 블록 주기 T(k)에 대해 반복된다.
도 9는 단계 45a'를(그리고 단계 45b'를) 더 자세히 도시한다. 단계 45i'에서(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다), 바람직하게는, 상기 단-방향 지연 OWD(i)은 상기 제2 노드(N2)의 로컬 클록에 의해 표시된 상기 패킷(Pk)의 수신 시각 Trx, 그리고 상기 제1 노드(N1)에 의한 동일 패킷(Pk)의 전송 시각 Ttx 간의 차이로서 계산된다(단계 501'). 단계 501에 대한 상기의 고려사항들은 필요한 부분만 약간 수정하여 단계 501' 에 적용된다.
그 다음, 단계 501'에서 계산된 상기 단-방향 지연 OWD(i)이 상기 최대 단-방향 지연 어레이 DM(i)에 의해 저장된 N 개의 값들 중 최솟값 보다 높은지의 여부가 확인된다(단계 502')(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다). 긍정인 경우, 상기 최대 단-방향 지연 어레이 DM(i)의 최솟값은 단계 501'에서 계산된 상기 단-방향 지연 OWD(i)으로 덮어씌워진다(단계503'). 부정인 경우, 상기 최대 단-방향 지연 어레이 DM(i)는 변경되지 않는다. 바람직하게는, 또한 단계 503'은, 단계 502'의 다음 반복 시 상기 최대 단-방향 지연 어레이 DM(i)의 최솟값의 식별을 용이하게하기 위해, 상기 최대 단-방향 지연 어레이 DM(i)를 오름차순 또는 내림차순 중 하나에 따라 정리하는 단계도 포함한다.
그런 다음, 단계 42i에서(T(k)가 짝수 블록 주기라면 "i"는 "a"이며, T(k)가 홀수 블록 주기라면 "i"는 "b"이다) 초기화된 상기 누적 단-방향 지연 OWDcum(i), 상기 최소 단-방향 지연 OWDmin(i) 및 상기 최대 단-방향 지연 OWDmax(i)이 갱신된다(단계 504' 내지 단계 508a'). 단계 504' 내지 단계 508a' 는 기본적으로 도 5의 단계 504 내지 단계 508a에 대응한다. 그러므로 상세한 설명은 반복되지 않을 것이다.
따라서 각각의 블록 주기 T(k)의 끝 부분에서, 상기 최대 단-방향 지연 어레이 DM(i)는 그 블록 주기 T(k) 동안 전송되고 수신된 N개의 "가장 느린" 패킷들(Pk)의 단-방향 지연들을 저장하며, 상기 누적 단-방향 지연 OWDcum(i)은 그 블록 주기 T(k) 동안 전송되고 수신된 패킷들(Pk)에 의해 발생되는 모든 단-방향 지연들의 합을 저장하고, 상기 최소 단-방향 지연 OWDmin(i)은 그 블록 주기 T(k) 동안 전송되고 수신된 "가장 빠른"패킷(Pk)에 의해 발생되는 단-방향 지연을 저장하며, 이와 반대로, 상기 최대 단-방향 지연 OWDmax(i)은 그 블록 주기 T(k) 동안 전송되고 수신된 "가장 느린" 패킷(Pk)에 의해 발생된 단-방향 지연을 저장한다. 이 때, "i"는 T(k)가 짝수 블록 주기(k = 0, 2, 4 등)라면 "a"이며, T(k)가 홀수 블록 주기(k = 1, 3, 5 등)라면 "b"이다.
이제 도 10을 참조하면, 다음에 이어지는 블록 주기 T(k+1) 의 초기에, 상기 블록 주기 T(k+1)이 짝수 블록 주기인지 또는 홀수 블록 주기인지 여부가 판단된다(단계 601').
상기 블록 주기 T(k+1)가 짝수 블록 주기(k = 0, 2, 4 등)라면, Va로 마킹된 패킷들과 관련된 변수들의 값들이 현재 변화중일 수 있으며, 반면 Vb로 마킹된 패킷들과 관련된 변수들의 값들은 현재 일정하여서 이에 따라 상기 블록 주기 T(k)에 대한 성능 측정들을 제공하기 위해 사용될 수 있다는 것이 판단된다.
따라서 바람직하게는, 평균 단-방향 지연 OWDav1(k)는 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 누적 단-방향 지연 OWDcum(b)의 값을 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 수신 카운터 C(b)로 나눈 것으로서 계산된다(단계 602a'). 또한 바람직하게는, 최소 단-방향 지연 OWDmin1(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 최소 단-방향 지연 OWDmin(b)의 값으로 세팅되는 반면(단계 603a'), 바람직하게는, 최대 단-방향 지연 OWDmax1(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 최대 단-방향 지연 OWDmax(b)의 값으로 세팅된다(단계 604a'). 뿐만 아니라, 바람직하게는, 최소 최대 단-방향 지연 OWDminmax1(k)은 상기 블록 주기 T(k)의 끝 부분에서의 상기 제2 최대 단-방향 지연 어레이 DM(b)의 N 개의 요소들 중 최솟값으로서 결정된다(단계 605a').
단계 601'에서, 상기 블록 주기 T(k+1)가 홀수 블록 주기(k = 1, 3, 5 등)라고 판단된다면, Va로 마킹된 패킷들과 관련된 변수들의 값들은 현재 일정하고, 이에 따라 상기 블록 주기 T(k)에 대한 성능 측정들을 제공하기 위해 사용될 수 있다고 판단된다. 반면 Vb로 마킹된 패킷들과 관련된 변수들의 값들은 현재 변화중일 수 있다.
따라서 바람직하게는, 상기 블록 주기 T(k)에 대한 상기 평균 단-방향 지연 OWDav1(k), 상기 최소 단-방향 지연 OWDmin1(k), 상기 최대 단-방향 지연 OWDmax1(k), 그리고 상기 최소 최대 단-방향 지연 OWDminmax1(k)은 Va로 마킹된 패킷들과 관련된 변수들을 사용하여 계산된다(단계 602b' 내지 단계 605b'). 단계 602b' 내지 단계 605b' 는, Vb로 마킹된 패킷들에 관한 변수들 대신에 Va로 마킹된 패킷들에 관한 변수들에 적용된다는 점을 제외하고는, 상기에 기술된 단계 602a' 내지 단계 605a' 와 실질적으로 유사하다. 그러므로 상세한 설명은 반복되지 않을 것이다.
상기 제2 노드(N2)는 상술한 바와 같이 상기 패킷 흐름(PF1)을 처리하는 반면, 상기 제1 노드(N1)는 블록 주기 T(k+1)에서, 상기 블록 주기 T(k)동안 상기 제2 패킷 흐름(PF2)에 대한 평균 단-방향 지연 OWDav2(k), 최소 단-방향 지연 OWDmin2(k), 최대 단-방향 지연 OWDmax2(k), 그리고 최소 최대 단-방향 지연 OWDminmax2(k)을 제공함으로써, 유사한 방식으로 상기 추가 패킷 흐름(PF2)을 처리한다. 바람직하게는, 상기 제1 노드(N1)는 이러한 파라미터들을 상기 제2 노드(N2)에 전송하며, 상기 제2 노드(N2)는 이들을 수신한다(단계 606').
그런 다음, 바람직하게는, 상기 제2 노드(N2)는 평균 양-방향 지연 TWD(k)을, 상기 패킷 흐름(PF1)에 대한 상기 평균 단-방향 지연 OWDav1(k) 및 상기 추가 패킷 흐름(PF2)에 대한 상기 평균 단-방향 지연 OWDav2(k)의 합으로서 계산한다(단계 607').
그 다음, 바람직하게는, 상기 제2 노드(N2)는 최대 양-방향 지연 TWDmax(k)을 다음의 두 개의 항들 중 최댓값으로서 계산한다(단계 608') :
- 상기 패킷 흐름(PF1)에 대한 상기 최대 단-방향 지연 OWDmax1(k) 및 상기 추가 패킷 흐름(PF2)에 대한 상기 평균 단-방향 지연 OWDav2(k)의 합; 그리고
- 상기 추가 패킷 흐름(PF2)에 대한 상기 최대 단-방향 지연 OWDmax2(k) 및 상기 패킷 흐름(PF1)에 대한 상기 평균 단-방향 지연 OWDav1(k)의 합.
옵션으로는, 단계 608'에서, 상기 제2 노드(N2)는 또한 이론적 최대 양-방향 지연을, 상기 패킷 흐름(PF1)에 대한 상기 최대 단-방향 지연 OWDmax1(k) 및 상기 추가 패킷 흐름(PF2)에 대한 상기 최대 단-방향 지연 OWDmax2(k)의 합으로서 계산할 수도 있다.
그 다음, 바람직하게는, 상기 제2 노드(N2)는 최소 양-방향 지연 TWDmin(k)을 다음의 두 개의 항들 중 최솟값으로서 계산한다(단계 609') :
- 상기 패킷 흐름(PF1)에 대한 상기 최소 단-방향 지연 OWDmin1(k) 및 상기 추가 패킷 흐름(PF2)에 대한 상기 평균 단-방향 지연 OWDav2(k)의 합; 그리고
- 상기 패킷 흐름 PF2 에 대한 상기 최소 단-방향 지연 OWDmin2(k) 및 상기 패킷 흐름 PF1 에 대한 상기 평균 단-방향 지연 OWDav1(k)의 합.
옵션으로는, 단계 609'에서, 상기 제2 노드(N2)는 또한 이론적 최소 양-방향 지연을, 상기 패킷 흐름 PF1에 대한 상기 최소 단-방향 지연 OWDmin1(k) 및 상기 패킷 흐름 PF2 에 대한 상기 최소 단-방향 지연 OWDmin2(k)의 합으로서 계산할 수도 있다.
그 다음, 바람직하게는, 상기 제2 노드(N2)는 최소 최대 양-방향 지연 TWDminmax(k)을 다음의 두 개의 항들 중 최댓값으로서 계산한다(단계 610') :
- 상기 제1 패킷 흐름(PF1)에 대한 상기 최소 최대 단-방향 지연 OWDminmax1(k) 및 상기 추가 패킷 흐름(PF2)에 대한 상기 평균 단-방향 지연 OWDav2(k)의 합; 그리고
- 상기 제2 패킷 흐름(PF2)에 대한 상기 최소 최대 단-방향 지연 OWDminmax2(k) 및 상기 패킷 흐름(PF1)에 대한 상기 평균 단-방향 지연 OWDav1(k)의 합.
그 다음, 바람직하게는, 상기 제2 노드(N2)는 단계 610'에서 계산된 상기 최소 최대 양-방향 지연 TWDminmax(k)이 상기 측정 모드 정보에서 명시된 상기 임계 양-방향 지연 TWDth 보다 높은지의 여부를 판단한다(단계 612'). 부정인 경우, %TWDth 패킷들보다 적은 패킷들이 상기 임계 양-방향 지연 TWDth 보다 높은 양-방향 딜레이를 나타낸다는 점에서, 네트워크 운영자 및 고객 사이에 규정된 SLA가 충족된다고 판단된다(단계 612'). 그렇지 않다면, %TWDth 패킷들보다 많은 패킷들이 상기 임계 양-방향 지연 TWDth 보다 높은 양-방향 딜레이를 나타낸다는 점에서, 네트워크 운영자 및 고객 사이에 규정된 SLA가 충족되지 않는다고 판단된다(단계 614').
유리하게는, 도 10의 흐름도에 따라 수행되는 양-방향 지연 측정들은 상기 제1 노드(N1) 및 상기 제2 노드(N2)의 로컬 클록들 간의 가능한 불일치의 영향을 받지 않는다. 실제로, 유리하게는, 단계 607', 단계 608', 단계 609' 및 단계 610'에서 수행되는 단-방향 지연 측정들 사이에 추가된 것들은 이러한 불일치를 보완한다. 왜냐하면 각각의 추가된 것과 관련된 상기 두 개의 단-방향 지연 측정들은, 동일한 절대 값을 갖고 반대 부호(양 및 음)를 갖는 에러들의 영향을 받기 때문이다.
더 나아가, 단계 608', 단계 609' 및 단계 610'에서 계산되는 최대 양-방향 지연, 최소 양-방향 지연 및 최소 최대 양-방향 지연은 공지된 왕복 지연 측정들과 동일한 결과를 제공하지 않는다는 것을 주의하여야 한다. 실제로, 이러한 공지된 방법들에서, 왕복 지연 또는 양-방향 지연은 링크(L)를 따라 앞뒤로(back and forth) 전송되는 각각의 단일 패킷들에 대해, 상기 링크의 두 개의 반대 방향을 따르는 동일 패킷의 전송 시 상기 동일 패킷에 의해 발생되는 단-방향 지연들을 부가함으로써, 계산된다. 그 대신에, 본 발명의 실시예들에 따른 양-방향 지연 측정들은 구별되는, 역전파 패킷 흐름들 PF1, PF2에 대한 단-방향 지연 측정기준들(metrics)의 추가에 기초한다. 본 출원인은 이 접근법이 충분히 정확한 결과를 제공하며, 도입된 부정확성은 공지된 왕복 지연 측정 방법들의 부정확성에 필적한다고 예측하고 있다.
뿐만 아니라, 상술한 상기 양-방향 지연 측정들은 상기 제1 노드(N1) 및 상기 제2 노드(N2) 간의 정보 교환을 필요로 하지만, 각 블록 주기에서 아주 적은 정보만이 교환될 필요가 있다(단계 606' 참조). 그러므로 유리하게는, 이러한 정보 교환은 상기 링크(L) 상에 최소 대역폭 사용량을 수반한다.
상술한 성능 측정 방법들은 상기 패킷 흐름(PF1)(그리고 PF2)의 패킷들(Pk)을 카밍하는 단계를 포함하며, 특히, 상기 패킷 흐름(PF1)(그리고 PF2)을 블록들로 나누기 위해 마킹 값을 주기적으로 변경하는 단계를 포함한다. 그러나 이는 제한적이지 않다. 실제로, 본 발명의 대안적 실시예들에 따르면, 상기 패킷 흐름(PF1)(그리고 PF2)은 패킷들(Pk)을 마킹하지 않고 블록들로 나누어질 수 있다. 특히, 바람직한 실시예에 따르면, 상기 제1 노드(N1)는 상기 패킷 흐름(PF1)에, 블록 주기 T(k) 및 그 다음의 블록 주기 T(k+1) 사이의 경계를 마킹하는 추가 패킷을 주기적으로 삽입할 수 있다. 이러한 경우, 유리하게는, 도 10에서 도시된 상기 양-방향 지연 측정들을 수행하기 위해 상기 제2 노드(N2)에서 필요한 상기 단-방향 지연 측정들은 그러한 경계를 정하는(delimiting) 패킷 범위 내에서 상기 제2 노드(N2)에 전송될 수 있다.
일반적으로, 본 발명의 시간 측정 방법에서, 상기 패킷 흐름(PF1)(그리고 PF2)은 임의의 기법에 의해 블록들로 나누어질 수 있으며, 이 때 상기 임의의 기법은 시간이 흐름에 따라 교번하는 짝수 블록 주기들 및 홀수 블록 주기들의 식별을 허용한다고 가정한다. 이는 짝수 및 홀수 블록 주기들 동안 전송되는 패킷들에 대한 변수들의 더블 세트를 구현하는 것을 가능하게 한다. 이 방법에서, 각각의 블록 주기 T(k)에서, 한 세트의 변수들은 변하는 반면, 다른 세트의 변수들은 고정된 값을 가지며, 이에 따라 상술된 바와 같은 평균 타임스탬프들, 평균 지연 및 평균 지터를 계산하기 위해 사용될 수 있다.
상술한 바와 같이, 상술된 성능 측정들은 상기 노드들(N1, N2) 자체에 의해 수행되거나, 또는 상기 노드들에 연결된 전용 컴퓨터들에 의해 수행될 수 있다. 실제로, 어떤 경우에는, 상술한 방법들을 상기 노드들에서 구현하는 것이 바람직하지 않을 수 있거나 심지어는 불가능할 수도 있다. 예를 들어, 통신 네트워크의 노드들이 상기 방법 단계들의 실행을 지원하기 위해 필요한 기본 기능들을 포함하지 않는 경우, 또는 상기 노드들이 서로 다른 공급 업체들의 것들이어서, 재구성이 매우 길고 비용이 많은 작업일 경우가 그러하다. 이러한 경우, 본 발명의 대안적 실시예들에 따르면, 본 방법 단계들의 적어도 일부는 상기 노드들에 연결된 전용 컴퓨터들에 의해 수행된다.
상술한 실시예들의 제1 변형들에 따르면, 상기 제1 노드(N1) 및 상기 제2 노드(N2)는 각자의 컴퓨터들(PC1, PC2)에 연결되며, 이 때 상기 컴퓨터들(PC1, PC2)은 상기 링크(L)를 따라 상기 노드들(N1, N2) 사이에 놓여있다. 즉, 상기 컴퓨터들(PC1, PC2)은 상기 제1 노드(N1) 및 상기 제2 노드(N2) 사이에서, 상기 패킷 흐름(PF1)이 이어지는 경로를 따라 그 중간 지점들에 위치한 패스-스루(pass-through) 프로브들이다. 이러한 제1 변형들에 따르면, 상기 제1 노드(N1)는 도 3의 흐름도에 따라 상기 패킷 흐름(PF1)을 생성하고, 마킹하며, 그리고 전송하는 반면, 바람직하게는, 상기 제2 노드(N2)에 의해 전송되는 상기 추가 패킷 흐름(PF2)의 모든 처리 단계들은 상기 컴퓨터 PC1에 의해 수행된다. 대칭적으로, 상기 제2 노드(N2)는 도 3의 흐름도에 따라 상기 추가 패킷 흐름(PF2)을 생성하고, 마킹하며, 그리고 전송하는 반면, 바람직하게는, 상기 제1 노드(N1)에 의해 전송되는 상기 패킷 흐름(PF1)의 모든 처리 단계들은 상기 컴퓨터 PC2에 의해 수행된다. 즉, 이러한 제1 변형에 따르면, 상기 노드들(N1, N2)은 어떠한 성능 측정 작업도 수행하지 않으며, 그러한 성능 측정 작업은 전적으로 상기 컴퓨터들(PC1, PC2)이 담당한다. 상기 컴퓨터들(PC1, PC2)은 기본적으로, 노드의 모든 트래픽 처리 기능들을 구현하며, 또한 성능 측정 기능들을 구현한다. 그러므로, 상기 성능 측정은 상기 노드들(N1, N2)에서 이용가능한 기능들과는 독립적으로 구현될 수 있다.
상술한 실시예들의 제2 변형들에 따르면, 바람직하게는, 상기 제1 노드(N1)는 제1 컴퓨터(PC1)에 연결되며, 상기 제1 노드(N1)는 상기 제1 컴퓨터(PC1)로부터 상기 패킷 흐름(PF1)을 수신하고, 상기 제1 컴퓨터(PC1)에게 상기 추가 패킷 흐름(PF2)을 포워딩한다. 게다가, 바람직하게는, 상기 수신 노드(N2)는 제2 컴퓨터(PC2)에 연결되며, 상기 수신 노드(N2)는 상기 제2 컴퓨터(PC2)에게 상기 패킷 흐름(PF1)을 포워딩하며, 상기 제2 컴퓨터(PC2)로부터, 상기 추가 패킷 흐름(PF2)을 수신한다. 이러한 제2 변형들에 따르면, 상기 제1 컴퓨터(PC1)는 도 3의 흐름도에 따라 상기 패킷 흐름(PF1)을 생성하고, 마킹하며, 그리고 전송하고, 게다가, 상기 제2 노드(N2)에 의해 전송된 상기 추가 패킷 흐름(PF2)의 모든 처리 단계들을 수행한다. 대칭적으로, 상기 제2 컴퓨터(PC2)는 도 3의 흐름도에 따라 상기 추가 패킷 흐름(PF2)을 생성하고, 마킹하고, 그리고 전송하며, 게다가, 상기 제1 노드(N1)에 의해 전송된 상기 패킷 흐름(PF1)의 모든 처리 단계들을 수행한다. 즉, 상기 컴퓨터들(PC1, PC2)은, 상기 노드들(N1, N2) 사이에서, 상기 노드들(N1, N2)에 의해 교환되는 실제 트래픽과 혼합되는, 애드혹 또는 인위적 패킷 흐름들(PF1, PF2)을 제공한다. 또한 이러한 제2 변형들에 따르면, 상기 노드들(N1, N2)은 성능 측정을 지원하는 어떠한 작업도 수행하지 않으며, 이러한 작업은 전적으로 상기 컴퓨터들(PC1, PC2)이 담당한다.
도면들에 도시되지 않은 다른 실시예들에 따르면, 상기 링크(L)가 상기 제1 노드(N1) 및 상기 제2 노드(N2) 사이에 있는 적어도 하나의 중간 노드를 통과하는 논리적 링크인 경우, 상술한 바와 같은 상기 링크(L)의 종단간(end-to-end) 성능 측정들은 중간 성능 측정들, 즉 상기 링크(L) 중 하나 이상의 일부들에 대한 성능 측정들과 결합될 수 있다. 바람직하게는, 이러한 중간 성능 측정들은 링크(L) 중 측정된 부분의 패킷 손실 측정 및/또는 단-방향 지연 측정 및/또는 단-방향 지터 측정을 제공한다. 상기 링크(L)의 종단간 성능 측정들에서 성능 저하가 검출된 경우, 상기 중간 성능 측정들은 그 종단간 성능 저하를 발생시키는 문제를 일으킨 곳인 링크 부분의 위치를 알아내는 것(localizing)을 가능하게 한다.
바람직하게는, 상기 중간 성능 측정들은, 링크(L)의 일부분의 경계를 지어 그 링크(L)의 양단이 측정되도록 하는 두 개의 노드들에서 구현되는, 두 개의 측정 포인트들에 의해 수행된다. 상기 측정 포인트들 모두, 상기 링크의 중간 노드들에서 구현될 수 있다. 대안적으로, 상기 두 개의 측정 포인트들 중 하나는 상기 제1 노드(N1) 및 상기 제2 노드(N2) 중 하나에서 구현될 수 있다. 상기 두 개의 측정 포인트들은 인접한 노드들에서 구현될 수 있다(이 경우, 상기 링크(L) 중 측정된 부분은 상기 두 개의 노드들 사이의 물리적 연결이다). 대안적으로, 상기 두 개의 측정 포인트들은 인접하지 않은 노드들에서 구현될 수 있다(이 경우, 상기 링크(L) 중 측정된 부분은 상기 두 개의 노드들을 연결하는 다수의 인접하는 물리적 연결들을 포함하는 논리적 연결이다).
각각의 측정 포인트는 상기 노드 자체 내에서 구현되거나, 또는 상기 노드에 연결된 컴퓨터에 의해 구현될 수 있다. 측정 포인트가 상기 노드 내에서 구현되는 경우, 바람직하게는, 그러한 노드는 상기 패킷 흐름(PF1)을 식별하고 상기 패킷 흐름(PF1)에 대한 측정을 수행하도록 구성된다. 측정 포인트가 상기 노드에 연결된 컴퓨터에 의해 구현되는 경우, 상기 컴퓨터는 패스-스루 구성으로(즉, 상기 패킷 흐름(PF1)은 상기 컴퓨터를 통과한다), 또는 비-패스-스루 구성으로(즉, 상기 노드는, 상기 링크(L)를 따라 상기 패킷 흐름(PF1)을 전송하거나 수신하기 위해 사용되는 포트와 상이한 포트를 통해, 상기 컴퓨터에 연결된다) 상기 노드에 연결될 수 있다. 첫 번째 경우, 바람직하게는, 상기 컴퓨터는 상기 패킷 흐름(PF1)을 식별하고 상기 패킷 흐름(PF1)에 대한 측정을 수행하도록 구성된다. 두 번째 경우, 바람직하게는, 상기 노드는 상기 패킷 흐름(PF1)을 식별하고, 상기 패킷 흐름(PF1)의 카피(copy)를 생성하며, 그 카피를 상기 컴퓨터에 포워딩하도록 구성된다. 바람직하게는, 그 다음 상기 컴퓨터는 상기 패킷 흐름(PF1)의 카피(copy)에 대한 중간 측정(intermediate measurement)을 수행하도록 구성된다.
바람직하게는, 상기 링크(L)의 일부의 중간 성능 측정들은 그 링크 부분의 패킷 손실 측정을 포함한다. 바람직하게는, 상기 패킷 손실 측정은, 실제 트래픽에 대한 것이 아닌 인위적 트래픽(즉, 상기 패킷 흐름(PF1)) 상의 측정 포인트들에 의해 수행된다는 점을 제외하고는, 상기에서 언급한 (본원 출원인과 동일인 출원인의) WO 2010/072251에 의해 기술된 손실 측정과 유사하다.
더 구체적으로, 상기 제1 측정 포인트는 각각의 블록 주기 T(k)에 대해, 현재 블록 주기 T(k) 동안 전송된 상기 패킷 흐름(PF1)의 패킷들(Pk)의 개수를 카운트하는 것이 바람직하다. 뿐만 아니라, 상기 제2 측정 포인트는 각각의 블록 주기 T(k)에 대해, 현재 블록 주기 T(k) 동안 수신된 상기 패킷 흐름(PF1)의 패킷들(Pk)의 개수를 카운트하는 것이 바람직하다. 다음에 이어지는 블록 주기 T(k+1)에서, 이전의 블록 주기 T(k) 동안 전송되고 수신된 패킷들의 카운트들은 (예를 들어, 상기 네트워크 관리자(NM)에 의해) 상기 두 개의 측정 포인트들로부터 수집되며, 이전 블록 주기 T(k)에서의 데이터 손실은 전송 패킷 카운트 및 수신 패킷 카운트의 차이로서 계산된다.
뿐만 아니라, 바람직하게는, 상기 링크(L)의 일부의 중간 성능 측정들은 시간 측정, 특히 단-방향 지연 및/또는 단-방향 지터 측정을 포함한다. 바람직하게는, 상기 시간 측정은, 실제 트래픽에 대한 것이 아닌 인위적 트래픽(즉, 상기 패킷 흐름(PF1)) 상의 측정 포인트들에 의해 수행된다는 점을 제외하고는, 상기에서 언급한 (본원 출원인과 동일인 출원인의) WO 2010/079857에 의해 기술된 시간 측정과 유사하다.
더 상세하게는, 바람직하게는, 상기 제1 측정 포인트는, 각각의 블록 주기 T(k) 동안, 상기 패킷 흐름(PF1)의 하나 이상의 미리 정해진 패킷들(Pk)이 전송되는 시간(예를 들어, 현재 블록 주기 T(k) 의 첫 번째 패킷(Pk))을 나타내는 전송 타임스탬프를 하나 이상 생성한다. 뿐만 아니라, 상기 제2 측정 포인트는, 각각의 블록 주기 T(k) 동안, 상기 패킷 흐름(PF1)의 하나 이상의 미리 정해진 패킷들(Pk)이 수신되는 시간을 나타내는 수신 타임스탬프를 하나 이상 생성한다. 다음에 이어지는 블록 주기 T(k+1)에서, 이전 블록 주기 T(k) 동안 생성된 전송 타임스탬프 및 수신 타임스탬프는 (예를 들어, 상기 네트워크 관리자(NM)에 의해) 상기 두 개의 측정 포인트들로부터 수집되며, 이전 블록 주기 T(k) 동안 상기 링크 부분 상에서 상기 하나 이상의 미리 정해진 패킷들(Pk)에 영향을 주는 단-방향 지연은, 상기 미리 정해진 패킷의 수신 타임스탬프 및 전송 타임스탬프 간의 차이로서 계산된다. 상기 하나 이상의 미리 정해진 패킷들(Pk)이 각각의 블록 주기 T(k)에 대해 두 개의 연이은 패킷들(Pk)을 포함한다면, 그러한 연이은 미리정해진 패킷들(Pk)에 대해 생성된 전송 타임스탬프 및 수신 타임스탬프는 상기 단-방향 지터의 계산을 가능하게 한다.
뿐만 아니라, 바람직하게는, 상기 링크(L)의 일부의 중간 성능 측정들은 평균 시간 측정, 특히 평균 단-방향 지연 및/또는 평균 단-방향 지터 측정을 포함한다.
더 상세하게는, 평균 단-방향 지연 측정들을 먼저 참조함으로써, 바람직하게는, 각각의 블록 주기 T(k)에 대해 상기 제1 측정 포인트는 상기 블록 주기 T(k) 동안 전송된 패킷들(Pk)의 개수를 카운트하며, 그리고 상기 블록 주기 T(k) 동안 전송된 모든 패킷들(Pk)의 전송 시각들의 합과 동일한 누적 전송 타임스탬프를 제공한다. 바람직하게는, 상기 제2 측정 포인트는, 각각의 블록 주기 T(k)에 대해, 상기 블록 주기 T(k) 동안 수신된 패킷들(Pk)의 개수를 카운트하며, 그리고 상기 블록 주기 T(k) 동안 수신된 모든 패킷들(Pk)의 수신 시각들의 합과 동일한 누적 수신 타임스탬프를 제공한다. 다음에 이어지는 블록 주기 T(k+1)에서, 전송된 패킷들의 개수 및 수신된 패킷들의 개수뿐만 아니라, 이전 블록 주기 T(k) 동안 생성된 상기 누적 전송 타임스탬프 및 상기 누적 수신 타임스탬프는 (예를 들어, 상기 네트워크 관리자(NM)에 의해) 상기 두 개의 측정 포인트들로부터 수집되며, 그리고 상기 이전 블록 주기 T(k) 동안 상기 링크 부분 상에서의 패킷들(Pk)에 영향을 미치는 평균 단-방향 지연은 이러한 파라미터들에 기초하여, 즉 (누적 수신 타임스탬프를 수신된 패킷들의 개수로 나눈 것과 동일한) 평균 수신 타임스탬프 및 (누적 전송 타임스탬프를 전송된 패킷들의 개수로 나눈 것과 동일한) 평균 전송 타임스탬프 간의 차이로서 계산된다.
이제 평균 단-방향 지터 측정들을 참조함으로써, 바람직하게는, 상기 제1 측정 포인트는 각각의 블록 주기 T(k)에 대해, 상기 블록 주기 T(k) 동안 전송된 패킷들(Pk)의 개수를 카운트하며, 그리고 상기 블록 주기 T(k) 동안 전송된 마지막 패킷(Pk) 및 첫 번째 패킷(Pk)의 전송 시각들을 나타내는 두 개의 전송 타임스탬프들을 제공한다. 뿐만 아니라, 바람직하게는, 상기 제2 측정 포인트는, 각각의 블록 주기 T(k)에 대해, 상기 블록 주기 T(k) 동안 수신된 패킷들(Pk)의 개수를 카운트하며, 그리고 상기 블록 주기 T(k) 동안 수신된 마지막 패킷(Pk) 및 첫 번째 패킷(Pk)의 수신 시각들을 나타내는 두 개의 수신 타임스탬프들을 제공한다. 다음에 이어지는 블록 주기 T(k+1)에서, 전송된 패킷들의 개수 및 수신된 패킷들의 개수뿐만 아니라, 이전 블록 주기 T(k) 동안 생성된 상기 두 개의 전송 타임스탬프들 및 상기 두 개의 수신 타임스탬프들은 (예를 들어, 상기 네트워크 관리자(NM)에 의해) 상기 두 개의 측정 포인트들로부터 수집되며, 그리고 상기 이전 블록 주기 T(k) 동안 상기 링크 부분 상에서의 패킷들(Pk)에 영향을 미치는 평균 단-방향 지터는 이러한 파라미터들에 기초하여, 즉 (상기 두 개의 수신 타임스탬프들 간의 차이를, (상기 수신된 패킷들의 개수 - 1) 로 나눈 것으로 계산되는) 평균 원-포인트(one-point) 수신 지터 및 (상기 두 개의 전송 타임스탬프들 간의 차이를, (상기 전송된 패킷들의 개수 - 1) 로 나눈 것으로 계산되는) 평균 원-포인트(one-point) 전송 지터 간의 차이로서 계산된다.
실제 트래픽 대신에 인위적 트래픽 흐름(PF1)에 대해 이러한 중간 성능 측정들을 수행하는 것은, 종단간 성능 측정들을 참조하여 상기에 언급한 바와 같이, 측정될 트래픽의 전체 제어를 네트워크 운영자에게 제공한다는 점에서 유리하며, 이로써 : 상기 패킷 전송 속도는 상기 측정 포인트들에서 이용가능한 계산 자원들(computational resources)에 맞게 조정될 수 있으며, 수신 시퀀스 에러는 상기 패킷 전송 속도를 적절히 조정(tailoring)함으로써 방지될 수 있다. 그리고 상기 인위적 패킷들은, 실제 패킷들이 영향을 받지 않도록 유지하면서, 매우 유연한 방식으로 맞춤화(customized)될 수 있다.

Claims (18)

  1. 통신 네트워크(communication network; CN)의 제1 노드(N1) 및 제2 노드(N2)를 연결하는 링크(L)의 성능 측정을 수행하는 방법에 있어서, 상기 방법은 :
    a) 성능 측정을 시작하기 전에, 적어도 측정 시작 시각(T start ) 및 패킷 전송 속도를 포함하는 측정 모드 정보를 상기 제1 노드(N1) 및 제2 노드(N2)에게 제공하는 단계;
    b) 상기 측정 시작 시각(T start )에, 패킷 흐름(PF1)을 생성하고 상기 패킷 흐름(PF1)을 상기 제1 노드(N1)로부터 상기 제2 노드(N2)로 전송하는 단계로서,
    상기 패킷 흐름(PF1)은 다수의 패킷들(Pk)을 포함하며,
    상기 다수의 패킷들(Pk)의 전송 시각들은 상기 측정 시작 시각(T start ) 및 상기 패킷 전송 속도에 의해 결정되고,
    상기 생성하고 전송하는 단계는 제1 블록 주기들 동안(T(0), T(2), T(4), … )은 제1 패킷들을, 그리고 시간이 흐름에 따라 상기 제1 블록 주기들(T(0), T(2), T(4), … )과 교번하는 제2 블록 주기들(T(1), T(3), T(5), … ) 동안은 제2 패킷들을 생성하고 전송하는 단계를 포함하는, 단계;
    c) 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 또는 상기 제2 블록 주기들(T(1), T(3), T(5), … )의 블록 주기(T(k))에서, 상기 패킷 흐름(PF1)이 상기 제2 노드(N2)에서 수신되는 동안, 상기 패킷 흐름(PF1)의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 행동을 나타내는 변수(OWDcum(i), OWDmax(i), OWDmin(i), CDth(i))를 갱신하는 단계; 및
    d) 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 또는 상기 제2 블록 주기들(T(1), T(3), T(5), … )의 다음에 이어지는 블록 주기(T(k+1))에서, 상기 블록 주기(T(k))의 끝 부분에 상기 변수(OWDcum(i), OWDmax(i), OWDmin(i), CDth(i))에 의해 도달된 값을 사용하여, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 성능을 나타내는 파라미터(OWDav(k), OWDmax(k), OWDmin(k), %OWDth(k))를 산출하는 단계를 포함하는, 성능 측정 방법.
  2. 청구항 1에 있어서,
    상기 단계 b)는 상기 제1 패킷들을 제1 마킹 값(Va)으로 마킹하는 단계 및 상기 제2 패킷들을 제2 마킹 값(Vb)으로 마킹하는 단계를 포함하는, 성능 측정 방법.
  3. 청구항 2에 있어서,
    상기 패킷 흐름(PF1)의 각각의 패킷(Pk)은 마킹 필드(marking field; MF)를 포함하며,
    상기 마킹 필드는 상기 제1 패킷들에서 상기 제1 마킹 값(Va)으로 세팅되고 상기 제2 패킷들에서 상기 제2 마킹 값(Vb)으로 세팅되며,
    상기 마킹 필드(MF)는 상기 패킷(Pk)의 헤더(H) 또는 페이로드(payload)(Pl) 중 하나에 포함되는, 성능 측정 방법.
  4. 청구항 1 내지 청구항 3 중 어느 한 항에 있어서,
    미리 정해진 트래픽 프로파일에 따라, 상기 패킷 전송 속도는 시간이 흐름에 따라 가변적이거나 또는 상수인, 성능 측정 방법.
  5. 청구항 1 내지 청구항 4 중 어느 한 항에 있어서,
    - 상기 단계 a)에서, 상기 측정 모드 정보는 블록 주기 기간 Tb를 더 포함하며, 그리고
    - 상기 단계 b)에서, 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 및 상기 제2 블록 주기들(T(1), T(3), T(5), … )은 상기 블록 주기 기간 Tb와 동일한 기간을 갖는, 성능 측정 방법.
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서,
    - 상기 단계 a)에서, 상기 측정 모드 정보는 패킷 유형을 더 포함하며, 그리고
    - 상기 단계 b)에서, 상기 패킷들(Pk)은 상기 패킷 유형의 패킷들인, 성능 측정 방법.
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 있어서,
    상기 단계 a)에서, 상기 측정 모드 정보는 : 패킷 손실 측정, 단-방향 지연 측정들, 단-방향 지터(jitter) 측정들 및 양-방향 지연 측정들 중에서 선택되는 성능 측정 유형을 더 포함하는, 성능 측정 방법.
  8. 청구항 1 내지 청구항 7 중 어느 한 항에 있어서,
    - 상기 단계 c)는 상기 블록 주기(T(k)) 동안 상기 제2 노드(N2)에서 수신되는 상기 패킷 흐름(PF1)의 패킷들(Pk)의 개수(C(a), C(b))를 카운팅하는 단계를 더 포함하며; 그리고
    - 상기 단계 d)에서, 상기 산출하는 단계는 :
    상기 측정 모드 정보에 포함된 상기 패킷 전송 속도에 기초하여, 상기 블록 주기(T(k)) 동안 상기 제1 노드(N1)에 의해 전송된 상기 패킷 흐름(PF1)의 패킷들(Pk)의 개수(Ctx)를 카운팅하는 단계; 및
    상기 블록 주기(T(k)) 동안 상기 제1 노드(N1)에 의해 전송된 상기 패킷 흐름(PF1)의 패킷들(Pk)의 상기 계산된 개수(Ctx) 및 상기 블록 주기(T(k)) 동안 상기 제2 노드(N2)에서 수신된 상기 패킷 흐름(PF1)의 패킷들(Pk)의 상기 카운팅된 개수(C(a), C(b))에 기초하여, 상기 블록 주기(T(k)) 동안 상기 패킷 흐름(PF1)에 의해 발생된 패킷 손실(PL(k))을 계산하는 단계를 포함하는, 성능 측정 방법.
  9. 청구항 1 내지 청구항 8 중 어느 한 항에 있어서,
    - 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기(T(k)) 동안 상기 패킷 흐름(PF1)의 각각의 패킷(Pk)의 수신 시 :
    각각의 수신 시각(Trx)을 검출하는 단계;
    상기 측정 모드 정보에 포함된 상기 측정 시작 시각(T start ) 및 상기 패킷 전송 속도에 기초하여 각각의 전송 시각(Ttx)을 계산하는 단계; 및
    상기 검출된 수신 시각(Trx) 및 상기 계산된 전송 시각(Ttx)의 차이로서 각각의 단-방향 지연(OWD(i))을 계산하는 단계를 포함하며;
    - 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기(T(k)) 동안 상기 패킷 흐름(PF1)의 각각의 패킷(Pk)의 수신 시 :
    누적 단-방향 지연(OWDcum(i)), 최대 단-방향 지연 변수(OWDmax(i)), 최소 단-방향 지연 변수(OWDmin(i)) 및 임계 지연 카운터(CDth(i)) 중 적어도 하나를 갱신하기 위해 상기 각각의 단-방향 지연(OWD(i))을 사용하는 단계를 포함하고; 그리고
    - 상기 단계 d)에서, 상기 산출하는 단계는 : 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 평균 단-방향 지연(OWDav(k), OWDav1(k)), 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 최대 단-방향 지연(OWDmax(k), OWDmax1(k)) , 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 최소 단-방향 지연(OWDmin(k), OWDmin1(k)) , 그리고 상기 블록 주기(T(k)) 내에서 각각의 단-방향 지연들(OWD(i))이 임계 단-방향 지연(OWDth) 보다 높은 패킷들(Pk)의 개수 또는 백분율(%OWDth(k)) 중 적어도 하나를 산출하기 위해, 상기 블록 주기(T(k))의 끝 부분에서 상기 누적 단-방향 지연(OWDcum(i)), 상기 최대 단-방향 지연 변수(OWDmax(i)), 상기 최소 단-방향 지연 변수(OWDmin(i)) 및 상기 임계 지연 카운터(CDth(i)) 중 적어도 하나에 의해 도달된 값을 사용하는 단계를 포함하는, 성능 측정 방법.
  10. 청구항 1 내지 청구항 9 중 어느 한 항에 있어서,
    - 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기(T(k)) 동안 상기 패킷 흐름(PF1)의 연이은 패킷들(Pk)의 각 쌍의 수신 시 :
    상기 연이은 두 개의 패킷들의 수신들 간의 경과 시간을 검출하는 단계;
    상기 측정 모드 정보에 포함된 상기 패킷 전송 속도에 기초하여, 상기 연이은 두 개의 패킷들의 전송들 간의 경과 시간을 계산하는 단계; 및
    상기 수신들 간의 상기 검출된 경과 시간 및 상기 전송들 간의 상기 계산된 경과 시간에 기초하여 각각의 단-방향 지터(OWJ(i))를 계산하는 단계를 포함하고,
    - 상기 단계 c)에서, 상기 갱신하는 단계는, 상기 블록 주기(T(k)) 동안 상기 패킷 흐름(PF1)의 연이은 패킷들(Pk)의 각각의 쌍의 수신 시 :
    최대 단-방향 지터 변수(OWJmax(i)), 최소 단-방향 지터 변수(OWJmin(i)), 최대 임계 지터 카운터(CJthmax(i)) 및 최소 임계 지터 카운터(CJthmin(i)) 중 적어도 하나를 갱신하기 위해, 상기 각각의 단-방향 지터(OWJ(i))를 사용하는 단계를 포함하며; 그리고
    - 상기 단계 d)에서, 상기 산출하는 단계는 :
    상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 최대 단-방향 지터(OWJmax(k)), 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 최소 단-방향 지터(OWJmin(k)), 상기 블록 주기(T(k)) 내에서 각각의 단-방향 지터들(OWJ(i))이 최대 임계 단-방향 지터(OWJthmax) 보다 높은 연이은 패킷들(Pk)의 쌍들의 개수 또는 백분율(%OWJthmax(k)), 그리고 상기 블록 주기(T(k)) 내에서 각각의 단-방향 지터들(OWJ(i))이 최소 임계 단-방향 지터(OWJthmin) 보다 낮은 연이은 패킷들(Pk)의 쌍들의 개수 또는 백분율(%OWJthmin(k)) 중 적어도 하나를 산출하기 위해, 상기 블록 주기(T(k))의 끝 부분에서 상기 최대 단-방향 지터 변수(OWJmax(i)), 상기 최소 단-방향 지터 변수(OWJmin(i)), 상기 최대 임계 지터 카운터(CJthmax(i)) 및 상기 최소 임계 지터 카운터(CJthmin(i)) 중 적어도 하나에 의해 도달된 값을 사용하는 단계를 포함하는, 성능 측정 방법.
  11. 청구항 1 내지 청구항 10 중 어느 한 항에 있어서,
    상기 방법은 :
    b') 상기 측정 시작 시각(T start )에, 추가 패킷 흐름(PF2)을 생성하고 상기 추가 패킷 흐름(PF2)을 상기 제2 노드(N2)로부터 상기 제1 노드(N1)로 전송하는 단계로서,
    상기 추가 패킷 흐름(PF2)은 다수의 추가 패킷들(Pk)을 포함하며,
    상기 다수의 추가 패킷들(Pk)의 전송 시각들은 상기 측정 시작 시각(T start ) 및 상기 패킷 전송 속도에 의해 결정되고,
    상기 생성하고 전송하는 단계는 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 동안은 제1 추가 패킷들을, 그리고 상기 제2 블록 주기들(T(1), T(3), T(5), … ) 동안은 제2 추가 패킷들을 생성하고 전송하는 단계를 포함하는, 단계;
    c') 상기 블록 주기(T(k))에서, 상기 추가 패킷 흐름(PF2)이 상기 제1 노드(N1)에서 수신되는 동안, 상기 추가 패킷 흐름(PF2)의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기 동안(T(k))의 상기 추가 패킷 흐름(PF2)의 행동을 나타내는 추가 변수를 갱신하는 단계; 및
    d') 상기 다음에 이어지는 블록 주기(T(k+1))에서, 상기 블록 주기(T(k))의 끝 부분에 상기 추가 변수에 의해 도달된 값을 사용하여, 상기 블록 주기(T(k)) 동안의 상기 추가 패킷 흐름(PF2)의 성능을 나타내는 추가 파라미터(OWDav2(k), OWDmax2(k), OWDmin2(k))를 산출하는 단계를 더 포함하는, 성능 측정 방법.
  12. 청구항 11 에 있어서,
    - 상기 단계 d)에서, 상기 산출하는 단계는 :
    상기 파라미터(OWDav1(k), OWDmax1(k), OWDmin1(k)) 및 상기 추가 파라미터(OWDav2(k), OWDmax2(k), OWDmin2(k))를 사용하여 상기 링크의 양-방향 성능을 나타내는 양-방향 성능 파라미터(TWDav(k), TWDmax(k), TWDmin(k))를 산출하는 단계를 포함하는, 성능 측정 방법.
  13. 청구항 1 내지 청구항 12 중 어느 한 항에 있어서,
    상기 단계 b)는 상기 제1 노드(N1)에 의해 수행되며,
    상기 단계 c) 및 상기 단계 d)는 상기 제2 노드(N2)에 의해 수행되는, 성능 측정 방법.
  14. 청구항 1 내지 청구항 12 중 어느 한 항에 있어서,
    상기 단계 b)는 상기 제1 노드(N1)에 연결된 제1 컴퓨터(PC1)에 의해 수행되며,
    상기 단계 c) 및 상기 단계 d)는 상기 제2 노드(N2)에 연결된 제2 컴퓨터(PC2)에 의해 수행되는, 성능 측정 방법.
  15. 청구항 1 내지 청구항 14 중 어느 한 항에 있어서,
    상기 방법은 상기 링크(L)의 일부분의 중간 성능 측정을 수행하는 단계를 더 포함하며,
    상기 링크(L)의 일부분은 제1 측정 포인트가 있는 제1 단부 및 제2 측정 포인트가 있는 제2 반대편 단부를 가지며, 상기 중간 성능 측정은 :
    e) 상기 패킷 흐름(PF1)이 상기 링크(L)의 일부분의 상기 제1 단부로부터 전송되는 동안, 상기 제1 측정 포인트에서, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 전송에 관한 전송 변수를 결정(determining)하기 위해 상기 패킷 흐름(PF1)을 처리하는 단계;
    f) 상기 패킷 흐름(PF1)이 상기 링크(L)의 일부분의 상기 제2 단부에서 수신되는 동안, 상기 제2 측정 포인트에서, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 수신에 관한 수신 변수를 결정하기 위해 상기 패킷 흐름을 처리하는 단계;
    g) 상기 다음에 이어지는 블록 주기(T(k+1))에서, 상기 전송 변수 및 상기 수신 변수를 사용하여, 상기 블록 주기(T(k)) 동안의 상기 링크(L)의 일부분의 성능을 나타내는 파라미터를 산출하는 단계를 포함하는, 성능 측정 방법.
  16. 통신 네트워크(communication network; CN)를 위한 노드(N2)에 있어서, 상기 노드(N2)는 :
    - 적어도 측정 시작 시각(T start ) 및 패킷 전송 속도를 포함하는 측정 모드 정보를 수신하는 단계;
    - 다수의 패킷들(Pk)을 포함하는 패킷 흐름(PF1)을 추가 노드(N1)로부터 수신하는 단계로서,
    상기 다수의 패킷들(Pk)의 전송 시각들은 상기 측정 시작 시각(T start ) 및 상기 패킷 전송 속도에 의해 결정되며,
    상기 패킷 흐름(PF1)은 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 동안 수신되는 제1 패킷들, 그리고 시간이 흐름에 따라 상기 제1 블록 주기들(T(0), T(2), T(4), … )과 교번하는 제2 블록 주기들(T(1), T(3), T(5), … ) 동안 수신되는 제2 패킷들을 포함하는, 단계;
    - 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 또는 상기 제2 블록 주기들(T(1), T(3), T(5), … )의 블록 주기(T(k))에서, 상기 패킷 흐름(PF1)이 수신되는 동안, 상기 패킷 흐름(PF1)의 수신 시 검출된 정보 및 상기 측정 모드 정보를 사용함으로써, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 행동을 나타내는 변수(OWDcum(i), OWDmax(i), OWDmin(i), CDth(i))를 갱신하는 단계; 및
    - 상기 제1 블록 주기들(T(0), T(2), T(4), … ) 또는 상기 제2 블록 주기들(T(1), T(3), T(5), … )의 다음에 이어지는 블록 주기(T(k+1))에서, 상기 블록 주기(T(k))의 끝 부분에 상기 변수(OWDcum(i), OWDmax(i), OWDmin(i), CDth(i))에 의해 도달된 값을 사용하여, 상기 블록 주기(T(k)) 동안의 상기 패킷 흐름(PF1)의 성능을 나타내는 파라미터(OWDav(k), OWDmax(k), OWDmin(k), %OWDth(k))를 산출하는 단계를 수행하도록 구성되는, 노드.
  17. 청구항 16의 노드(N2)를 포함하는 통신 네트워크(CN).
  18. 적어도 하나의 컴퓨터의 메모리에 탑재 가능한 컴퓨터 프로그램 제품에 있어서,
    상기 컴퓨터 프로그램 제품은, 적어도 하나의 컴퓨터상에서 실행될 때 청구항 1 내지 청구항 15 중 어느 한 항의 방법의 단계들을 수행하기 위한 소프트웨어 코드 부분들을 포함하는, 컴퓨터 프로그램 제품.
KR1020157035438A 2013-05-31 2013-05-31 패킷-교환 통신 네트워크 링크의 성능 측정 KR102059986B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2013/061270 WO2014191048A1 (en) 2013-05-31 2013-05-31 Performance measurement of a link of a packet-switched communication network

Publications (2)

Publication Number Publication Date
KR20160014650A true KR20160014650A (ko) 2016-02-11
KR102059986B1 KR102059986B1 (ko) 2020-02-11

Family

ID=48626418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157035438A KR102059986B1 (ko) 2013-05-31 2013-05-31 패킷-교환 통신 네트워크 링크의 성능 측정

Country Status (7)

Country Link
US (1) US9699062B2 (ko)
EP (1) EP3005622B1 (ko)
JP (1) JP6310066B2 (ko)
KR (1) KR102059986B1 (ko)
CN (1) CN105359461B (ko)
BR (1) BR112015029583B1 (ko)
WO (1) WO2014191048A1 (ko)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8675485B2 (en) 2004-12-14 2014-03-18 Aspen Networks, Inc. Reliable ISP access cloud state detection method and apparatus
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US10749711B2 (en) 2013-07-10 2020-08-18 Nicira, Inc. Network-link method useful for a last-mile connectivity in an edge-gateway multipath system
WO2015116980A1 (en) * 2014-01-31 2015-08-06 University Of North Dakota Network clock skew estimation and calibration
CN104135395B (zh) * 2014-03-10 2015-12-30 腾讯科技(深圳)有限公司 Idc网络中数据传输质量监控方法和系统
US20160072693A1 (en) * 2014-09-09 2016-03-10 Avaya Inc. Client-server communication evaluation and diagnostic tool
CN105991338B (zh) * 2015-03-05 2019-11-12 华为技术有限公司 网络运维管理方法及装置
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US20160381597A1 (en) * 2015-06-24 2016-12-29 Relay2, Inc. WiFi Airtime Allocation
US20180300190A1 (en) 2015-06-24 2018-10-18 Relay2, Inc. Mobile application service engine (mase)
GB201515496D0 (en) 2015-09-01 2015-10-14 Microsoft Technology Licensing Llc Packet transmissions
WO2017114580A1 (en) * 2015-12-30 2017-07-06 Telecom Italia S.P.A. Performance measurement in a packet-switched communication network
US9819591B2 (en) * 2016-02-01 2017-11-14 Citrix Systems, Inc. System and method of providing compression technique for jitter sensitive application through multiple network links
EP3513529B1 (en) * 2016-09-14 2021-04-28 Telecom Italia S.p.A. Performance measurement in a packet-switched communication network
WO2018069754A1 (en) * 2016-10-14 2018-04-19 Telefonaktiebolaget Lm Ericsson (Publ) Heterogeneous flow congestion control
CN108075941B (zh) * 2016-11-17 2021-08-20 华为技术有限公司 检测业务流量性能的方法、发送装置及系统
US10218590B2 (en) * 2016-12-12 2019-02-26 Juniper Networks, Inc. Subscriber-aware TWAMP data monitoring in computer networks
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10992568B2 (en) 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
IT201700081391A1 (it) * 2017-07-18 2019-01-18 Telecom Italia Spa Misura di prestazioni in una rete di comunicazioni
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10686625B2 (en) 2017-10-02 2020-06-16 Vmware, Inc. Defining and distributing routes for a virtual network
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
CN109818863B (zh) * 2017-11-22 2021-11-19 华为技术有限公司 链路优先级设置方法及装置
EP3503234B1 (en) 2017-12-20 2020-11-04 Novaled GmbH Organic electronic device comprising an inverse coordination complex and a method for preparing the same
WO2019206862A1 (en) * 2018-04-27 2019-10-31 Telecom Italia S.P.A. Enabling a performance measurement in a packet-switched communication network
CN112400289B (zh) * 2018-07-18 2024-03-08 意大利电信股份公司 分组交换通信网络中的性能测量
FR3086823A1 (fr) * 2018-09-28 2020-04-03 Orange Procede et systeme de surveillance d'une connexion entre deux equipements d'extremites, produit programme d'ordinateur correspondant.
US11165677B2 (en) 2018-10-18 2021-11-02 At&T Intellectual Property I, L.P. Packet network performance monitoring
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
IT201900010362A1 (it) * 2019-06-28 2020-12-28 Telecom Italia Spa Abilitazione della misura di perdita di pacchetti round-trip in una rete di comunicazioni a commutazione di pacchetto
CN112217686B (zh) 2019-07-12 2022-12-27 华为技术有限公司 一种评估往返时延的系统、方法及装置
US10999137B2 (en) 2019-08-27 2021-05-04 Vmware, Inc. Providing recommendations for implementing virtual networks
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11606712B2 (en) 2020-01-24 2023-03-14 Vmware, Inc. Dynamically assigning service classes for a QOS aware network link
US11533245B2 (en) * 2020-02-10 2022-12-20 Celona, Inc. Method and apparatus for measuring end-to-end packet latency and packet delay variation via deep packet inspection at an intermediate node of a communication network
US11539606B2 (en) 2020-02-10 2022-12-27 Celona, Inc. Method and apparatus for measuring packet loss rate via deep packet inspection at an intermediate node in a communication network
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
WO2021217612A1 (zh) * 2020-04-30 2021-11-04 新华三技术有限公司 数据流分析
CN113708985B (zh) 2020-05-20 2023-01-06 华为技术有限公司 一种流量的检测方法、装置及系统
US11395329B2 (en) * 2020-06-19 2022-07-19 Qualcomm Incorporated Uplink traffic prioritization across multiple links
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
US11792127B2 (en) 2021-01-18 2023-10-17 Vmware, Inc. Network-aware load balancing
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
CN115334007A (zh) * 2021-04-27 2022-11-11 华为技术有限公司 通信方法及装置
US11381499B1 (en) 2021-05-03 2022-07-05 Vmware, Inc. Routing meshes for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0528075A1 (en) * 1991-08-19 1993-02-24 ALCATEL BELL Naamloze Vennootschap Performance measurement device for a telecommunication path and method used therein
US6978223B2 (en) * 2001-09-06 2005-12-20 Bbnt Solutions Llc Systems and methods for network performance measurement using packet signature collection
JP4167876B2 (ja) 2002-10-03 2008-10-22 株式会社日立製作所 ネットワーク計測設定装置
JP2007520957A (ja) * 2004-02-06 2007-07-26 アパレント ネットワークス、インク. パケットベース・ネットワークのエンドツーエンド・パスを特徴付ける方法およびそのための装置
JP2005269000A (ja) * 2004-03-17 2005-09-29 Sony Corp データ送信装置、データ受信装置、データ通信システム、データ送信方法及び受信方法
FR2870064A1 (fr) * 2004-05-07 2005-11-11 France Telecom Mesure de performance dans un reseau de transmission de paquets
GB2429871A (en) * 2005-06-30 2007-03-07 Nokia Corp Method of implementing unscheduled automatic power save delivery (APSD) between a terminal and an access point
WO2008024387A2 (en) * 2006-08-22 2008-02-28 Embarq Holdings Company Llc System and method for synchronizing counters on an asynchronous packet communications network
CN102308525B (zh) 2008-12-22 2014-11-26 意大利电信股份公司 通信网络中的数据丢失的测量
US8638778B2 (en) * 2009-09-11 2014-01-28 Cisco Technology, Inc. Performance measurement in a network supporting multiprotocol label switching (MPLS)
CN102075461B (zh) * 2009-11-20 2014-11-12 富士通株式会社 链路质量估计方法和装置以及链路自适应方法和装置
US8531987B2 (en) 2009-12-29 2013-09-10 Telecom Italia S.P.A. Performing a time measurement in a communication network
CN103262471B (zh) 2010-11-05 2015-12-16 意大利电信股份公司 通信网络和对通信网络中的数据流执行测量的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Cociglio, et al., ‘A method for IP multicast performance monitoring’, draft-cociglio-mboned-multicast-pm-01.txt, October 22, 2010* *
Shalunov, et al., ‘A One-Way Active Measurement Protocol (OWAMP)’, rfc4656.txt, September 2006* *
Tempia Bonda, et al., ‘A packet-based method for passive performance monitoring’, draft-tempia-opsawg-p3m-01.txt, October 28, 2011* *

Also Published As

Publication number Publication date
EP3005622A1 (en) 2016-04-13
BR112015029583B1 (pt) 2022-09-06
KR102059986B1 (ko) 2020-02-11
BR112015029583A2 (pt) 2017-07-25
CN105359461A (zh) 2016-02-24
JP2016525815A (ja) 2016-08-25
WO2014191048A1 (en) 2014-12-04
JP6310066B2 (ja) 2018-04-11
EP3005622B1 (en) 2018-09-12
CN105359461B (zh) 2019-10-11
US9699062B2 (en) 2017-07-04
US20160105353A1 (en) 2016-04-14

Similar Documents

Publication Publication Date Title
KR102059986B1 (ko) 패킷-교환 통신 네트워크 링크의 성능 측정
JP6279741B2 (ja) パケット交換通信ネットワークにおける時間測定
CN101272290B (zh) Ip网络中路径拥塞状态的测量方法和测量装置
KR101947783B1 (ko) 패킷-교환 통신 네트워크에서 패킷 흐름 상 타임 측정
KR101862326B1 (ko) 통신 네트워크에서의 데이터 흐름에 대한 측정
US9762464B2 (en) Measurement on data traffic in a communication network
JP6740371B2 (ja) 複数地点パケットフローに関する性能測定
US20230087379A1 (en) Packet loss measurement in a packet-switched communication network
US11611495B2 (en) Enabling a performance measurement in a packet-switched communication network
WO2024094834A1 (en) Round-trip packet loss measurement in a packet-switched communication network

Legal Events

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