KR101123020B1 - 고속 트래픽 측정 및 분석 방법론들 및 프로토콜들 - Google Patents

고속 트래픽 측정 및 분석 방법론들 및 프로토콜들 Download PDF

Info

Publication number
KR101123020B1
KR101123020B1 KR1020050025487A KR20050025487A KR101123020B1 KR 101123020 B1 KR101123020 B1 KR 101123020B1 KR 1020050025487 A KR1020050025487 A KR 1020050025487A KR 20050025487 A KR20050025487 A KR 20050025487A KR 101123020 B1 KR101123020 B1 KR 101123020B1
Authority
KR
South Korea
Prior art keywords
traffic
network
nodes
packet
digests
Prior art date
Application number
KR1020050025487A
Other languages
English (en)
Other versions
KR20060044844A (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 KR20060044844A publication Critical patent/KR20060044844A/ko
Application granted granted Critical
Publication of KR101123020B1 publication Critical patent/KR101123020B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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/50Testing arrangements

Abstract

일련의 세트-카디널리티 결정(SCD:Set-Cardinality-Determination) 문제들로서 네트워크-와이드 트래픽 측정/분석 문제들을 포뮬레이트(formulate) 한다. 최근 확률론적인 개별 샘플 카운팅 기술들(probabilistic distinct sample counting techniques)의 발달을 이용함으로써, 세트-카디널리티들 및 관심있는 네트워크-와이드 트래픽 측정들은 네트워크 노드들, 즉 라우터들 간의 매우 경량의 트래픽 다이제스트들(TD들)의 교환을 통해서 분배 방식으로 계산될 수 있다. N개의 패킷들에 대한 TD는 단지 메모리 저장의 0(loglog N) 비트들을 필요로 한다. 이와 같은 O(lgolog N)-크기의 TD에 대한 계산을 따라서 10Gbps 및 이를 초과하는 와이어-속도에서 효율적인 하드웨어를 구현한다. 작은 크기의 TD가 제공되면, OSPF 링크 상태 패킷들(LSPs) 또는 I-BGP 제어 메시지들과 같은 기존의 제어 메시지들 내부의 불투명한 데이터 오브젝트들로서 피기백(piggyback)됨으로써 노드의 TD를 전체 라우터들에 분배할 수 있다. 요구되는 TD가 수신되면, 라우터는 일련의 세트-카디널리티 결정 문제들을 해결함으로써 로컬 링크 각각에 대한 관심있는 트래픽 측정들을 추정할 수 있다. 관심있는 트래픽 측정들은 전형적으로 링크 마다, 트래픽 마다 집합체 패킷 카운트들(per-traffic aggregate packet counts)(또는 흐름 카운트들)의 형태인데, 여기서 집합체는 동일한 발신 및/또는 수신지 노드들(또는 링크들) 및/또는 일부 중간 노드들(또는 링크들)을 공유하는 패킷들의 그룹에 의해 규정된다. 그 후, 로컬 측정 결과들은 도메인 내에서 분배되어, 각 라우터가 서로 다른 트래픽 코모더티(commodities)들의 루트들의 네트워크-와이드 뷰/흐름 패턴들을 구성하는데, 여기서 코모더티는 동일한 발신 및/또는 종료 노드들 또는 링크들을 공유하는 패킷들의 그룹으로서 규정된다. 초기 네트워크-와이드 트래픽 측정들이 수신된 후, 각 라우터는 네트워크 와이드 공통성-흐름 유지 제약들에 기초하여 최소 자승 에러(MSE) 최적화를 국부적으로 행함으로써 관련된 측정/추정 에러들을 더욱 감소시킬 수 있다.
트래픽, 패킷, 라우터, 발신 노드, 수신 노드

Description

고속 트래픽 측정 및 분석 방법론들 및 프로토콜들{High-speed traffic measurement and analysis methodologies and protocols}
도 1은 본 발명을 따른 패킷 세트로부터 트래픽 다이제스트를 추출하기 위한 한 가지 예시적인 방법론을 도시한 도면.
도 2는 본 발명의 트래픽 측정 및 분석 기술을 사용하여 네트워크 노드에 의해 실행되는 단계들에 대한 예시적인 실시예를 도시한 도면.
이 출원은 본원에 참조로서 포함된 2004년 3월 31일자 출원된 가출원 번호 제60/558230호의 우선권을 주장한 것이다.
본 발명은 일반적으로 통신 네트워크들에 관한 것으로, 특히, 데이터 패킷 통신 네트워크들의 측정 및 분석에 관한 것이다.
최근에, 전세계에 걸쳐서 고속 데이터 네트워크들의 확산 및 이들 네트워크들을 지원하는 프로토콜들/서비스들의 세트의 급속한 팽창이 보여지고 있다. 네트워크 감시 및 트래픽 측정 기술들의 개발은 지금까지 동작 속도뿐만 아니라 이들 네트워크들의 대규모 배치를 따라잡는데 실패하였다. 이러한 부족으로 인해, 네트워크 운영자들은 이들 네트워크들에서 정확히 무슨 일이 발생되었는지에 대한 이해를 점차 잃어가고 있다. 이는 결국 네트워크들을 적절하고 효율적으로 운영하고 관리하는 능력을 위태롭게 하고 있다. 대규모이면서 고속 네트워크들을 위한 포괄적이지만 배치가능한 네트워크 감시 및 종단간 트래픽 분석 기반구조에 대한 긴급한 요구가 존재한다. 이와 같은 기반구조는 특히 인터넷과 같은 무접속 데이터 네트워크들에 중요한데, 인터넷에서 트래픽 흐름들의 루트들은 상이한 유형들의 예측 또는 예측되지 않는 이벤트들로 인해 세션 중간에서 동적으로 그리고 예측불가능하게 변할 수 있다. 이와 같은 이벤트들은 네트워크 구성요소 실패들, 비결정적인 로드-밸런싱 방식(non-deterministic load balancing schemes)(예를 들어, Equal Cost Multiple Path(ECMP)), 소프트웨어/하드웨어 버그들 및 프로토콜 오구성들(mis-configurations)을 포함한다. 현재, 대부분의 네트워크 운영자들은 단지 "추적루트(traceroute)"와 같은 가장 기본적인 진단 도구들에 의존하여, 네트워크 내의 개별 트래픽 흐름들의 종단 간 루트들에 대한 대단히 부적절한 샘플링들을 얻는다.
거짓 DDos 공격들을 차단하기 위하여 IP-기반으로 한 네트워크들에서 역추적 서비스들의 지원 및 대규모 ISP들을 위한 발신 대 착신(O-D 쌍) 트래픽 매트릭스 추정과 같은 다수의 중요한 실생활 애플리케이션들의 요구들로 인해 트래픽 측정/분석 방법론들 및 기반구조들의 최근 연구가 활발하게 되었다. A.Median, N. Taft, K.Salamatian, S.Bhattacharyya 및 C. Diot의 "Traffic Matrix estimation: Existing Techniques and new directions" in Procs. of ACM Sigcomm. Aug. 2002[Medi 02]; Y.Zhang, M. Roughan, N.Duffield, A. Greenberg의 "Fast Accurate Computation of Large-Scale IP Traffic Matrices from Link Loads" in Procs. of ACM Sigmetircs, June 2003[Zhang 03a}; 및 Y. Zhang, M.Rough, C. Lund 및 D. Donoho의 "An Information-Theoretic Approach in Traffic Matrix Estimation," in Procs. of ACM Sigcomm, Aug. 2003[Zhang 03b]에 기술된 바와 같은 트래픽 매트릭스 추정 문제에서, 이 목적은 단지 링크-부하 측정들만을 사용하여 대규모 IP 네트워크에서 O-D 노드-쌍들 간의 트래픽 요구들을 추정하고자 하는 것이다. 이러한 문제의 기원은 시장에서 가장 상업적인 기가비트 라우터들에 의해 값싸고 대규모가능한 흐름 마다 카운터들(per-flow counters)의 지원 부족으로 인한 것이다. 예를 들어, Cisco Netflow technology, Cisco, IOS, NetFlow(http://www.cisco.com/warp/public/732/Tech/nmp/netflow/index.shtml은 미세 그레인 흐름당 트래픽 통계, 그것의 방대한 저장 및 대역폭 요구조건들을 수집하여 10Gbps 네트워크들에 대해 부적합하게 될 수 있다. 측정 기반구조에서 이와 같은 부적합성/결핍성을 해결하기 위하여, 연구자들은 링크-로드 측정들을 O-D 쌍 트래픽 분배에 대한 부가적인 가정들과 결합시키도록 의존하여, 요구되는 O-D 쌍 트래픽 매트릭스를 추정한다. 예를 들어, [Medi 02, Zhan 03a, Zhan 03b]에서, 그래비티 모델(gravity model)의 상이한 변형들이 수송(transportation) 분야로부터 적응되어 모든 O-D 쌍들 간의 네트워크 트래픽 분배를 모델링한다;[Vard 96]Y.Vardi에서, "Network Tomorgraphy: "Journal of American Statistics Association, 91, pp. 365-377, 1996"의 링크 데이터로부터 소스-목신지 트래픽 강도들을 추정한다.
[Vard 95], Poissonian 가정은 2차 링크-로드 통계들을 O-D 쌍 트래픽 분배에 관련시키기 위해 사용된다. 유사한 가우시안 가정이 또한, J.Cao,D.Davis, S.V. Wiel 및 B.Yu, "Time-varying network tomography", Jouranl of American Statistics Association, 95, pp. 1063-1075, 2000[Cao 00]에 의해 이루어진다. 실제로, 단지 링크-로드 측정들만을 제공받는 O-D 트래픽 매트릭스를 추정하는 문제는 "Network Tomography"라 칭하는 새로운 분야의 연구의 형성을 이끌었다. 불행하게도, 최근까지 제안된 대부분의 네트워크 토모그래피-기반의 해결책들은 트래픽 분배가정들의 유효성에 대해서 매우 민감한데, 즉 강력하지 않다. 토모그래피-기반의 방식은 또한, 측정들/구성 정보가 추출되어 수집되는 다수의 동작 데이터베이스 중에서 정확도, 동기화 및 일치성에 지나치게 의존한다. (이와 같은 데이터베이스들은 라우터들 내의 순방향 테이블들, 라우터 구성 파일들뿐만 아니라 링크-로드를 위한 SNMP MIB들을 포함한다). 상술된 모델링 및 연산 가정은 또한, 네트워크 실패 검출/진단들을 위한 토모그래피-기반의 트래픽 측정/추정 방식들이 거의 소용없는 것으로 간주되는데, 이 네트워크 실패 검출/진단들에서 네트워크 요소들/데이터베이스들의 적절한 작용이나 트래픽 분배의 표준성을 추정할 수 없다.
최근에, 대안적 패킷 궤도-기반의 트래픽 모니터/분석 방식은 N.G.Duffield, M.Grossglauser, "Trajectory Sampling for Direct Traffic Observation,"in Procs. of ACM Sigcomm, Aug, 2000 pg 271-282[Duff 00] 및 A.C.Snoeren, C.Partridge, L.A. Sanchez, C.E. Jones, F. Tchakountio, S.T.Kent 및 W.T. Strayer, "Hash-based IP Traceback", in Procs. of ACM Sigcomm, Aug. 2001, pg. 3-14[Snoe 01]에 의해 제안되어 왔으며, 여기서 각 노드(라우터)는 압축된 요약을 유지하거나 최근에 처리된 모든 패킷들의 다이제스트(digest)를 유지한다. [Duff 00] 및 [Snoe 01] 둘 다에서, 다이제스트는 Bloom 필터의 형태이며, 예를 들어, B. Bloom의 "Space/Time trade-offs in hash coding with allowable errors", Communication of the ACM 13, JULY 1970, pp.422-426, [Bloo 70] 및 A. Broder, M. Mitzenmacher, "Network Applications of Bloom Filters: A Survey, " Allerton Conference, 2002(http://www.eecs.harvard.edu/~michaelm에서 이용가능하다), [Brod 02], 이는 노드에 도달하는 모든 패킷에 대해 갱신되고 몇몇 집중 서버로 주기적으로 업로딩되어 추후의 오프라인 트래픽 분석 뿐만 아니라 기록 목적들을 지원한다. 이들 매우 유익한 노드의 트래픽 다이제스트들로 보강되면, 집중 서버는 네트워크 전체를 통해서 트래픽 흐름 패턴 및 흐름 당/상품 측정들(commodity measurements)을 구성할 뿐만 아니라 (최근) 과거에 네트워크를 횡단하는 임의의 주어진 패킷의 종단 간 경로, 즉 궤도에 관한 질의들에 응답할 수 있다. 임의의 주어진 개별 패킷에 대한 궤도 질의에 응답하는 능력은 비용이 많이 든다: Bloom 필터는 모든 개별적인 인입 패킷에 대해 충분한 정보를 저장할 정도로 충분히 커야만 한다. 효율적인 메모리 대 Bloom 필터의 위양성 트레이드 오프(false-positive-trade-off) 경우조차도, 고확률로 N개의 상이한 패킷들의 시그너쳐들을 캡처하여 정확하게 구별하기 위한 메모리의 0(N) 비트들을 여전히 필요로 한다. [Snoe 01]에서, 이와 같은 시스템은 저장시에 단위 시간당 노드의 링크 용량의 대략 0.5%를 필요로 한다라고 추정된다. 10Gbps 링크에 대해서, 이는 시간을 감시하는 매 1초에 대해 50Mbits의 저장소로 옮겨진다(translate). 이와 같은 중량 트래픽 다이제스트 방식은 메모리 저장 및 시스템의 통신 요구조건들에 강조할 뿐만 아니라 링크 속도 및/또는 감시 지속 기간이 증가하는 만큼 저조하게 확대한다.
DATALITE(Distributed Architecture for Traffic Analysis via LIght-weight Traffic digEst)라 칭하는 네트워크 트래픽 분석을 위한 효율적인 방법을 통해서 종래 기술에 비해 더욱 향상되었고, 이 DATALITE는 새롭게 분배된 알고리즘들 및 프로토콜들의 세트를 도입하여 대규모 10Gbps+ 패킷 스위칭된 네트워크들을 위한 일반적인 트래픽 관리 및 분석(TMA) 기능들을 지원한다. 이들 기능들은 다음을 포함하지만 이에 한정되지 않는다:
ㆍ트래픽 흐름 패턴/루트 감시, 진단(diagnosis) 및 네트워크 포렌식(forensic);
ㆍ용량 계획 및 트래픽 엔지니어링 목적들을 위한 발신-대-수신(OD) 트래픽 로드 매트릭스의 추정;
ㆍ최종 사용자 계정/과금 뿐만 아니라 ISP간(ASes) 요금 설정 목적들을 위한 트래픽 측정들;
ㆍ 분산 서비스 거부(DDoS) 공격에서의 패캣들을 공격하는 기원(들)에 대한 역추적.
일련의 SCD(Set-Cardinality-Determination) 문제들로서 네트워크-와이드 트래픽 측정/분석 문제를 포뮬레이트한다. 최근 확률론적인 개별 샘플 카운팅 기술들의 진보들에 영향을 줌(leverage)으로써, 세트-카디널리티들 및 관심있는 네트워크-와이드 트래픽 측정들은 네트워크 노드들, 즉 라우터들 간의 매우 경량의 트래픽 다이제스트들(TD들)의 교환을 통해 분배 방식으로 계산될 수 있다. N개의 패킷들에 대한 TD는 단지 메모리 저장의 0(loglog N) 비트들을 필요로 한다. 이와 같은 O(loglog N)-크기의 TD에 대한 계산은 또한 10Gbps 및 이를 초과하는 와이어-속도로 구현된 효율적인 하드웨어를 위해 처리할 수 있다.
작은 크기의 TD가 제공되면, OSPF 링크 상태 패킷들(LSPs) 또는 I-BGP 제어 메시지들과 같은 기존의 제어 메시지들 내부의 불투명한 데이터 오브젝트들(opaque data objects)로서 피기백함으로써 노드의 TD를 전체 라우터들에 분배할 수 있다. 요구된 TD가 수신되면, 라우터는 일련의 세트-카디널리티 결정 문제들을 해결함으로써 로컬 링크 각각에 대한 관심있는 트래픽 측정들을 추정할 수 있다. 이 후의 섹션에서 설명되는 바와 같이, 관심있는 트래픽 측정들은 전형적으로 링크 마다, 트래픽 마다 집합체 패킷 카운트들(또는 흐름 카운트들)의 형태인데, 여기서 집합체는 동일한 발신 및/또는 수신지 노드들(또는 링크들) 및/또는 몇몇 중간 노드들(또는 링크들)을 공유하는 패킷들의 그룹에 의해 규정된다. 그 후, 로컬 측정 결과들은 도메인 내에서 분배되어, 각 라우터가 서로 다른 트래픽 코모더티들의 루트들의 네트워크-와이드 뷰/흐름 패턴들을 구성할 수 있도록 하며, 여기서 코모더티는 동일한 발신 및/또는 착신 노드들 또는 링크들을 공유하는 패킷들의 그룹으로서 규정된다. 초기 네트워크-와이드 트래픽 측정들이 수신된 후, 각 라우터는 또한 네트워크 와이드 공통성-흐름 유지 제약들에 기초하여 최소 자승 에러(MSE) 최적화를 국부적으로 행함으로써 관련된 측정/추정 에러들을 감소시킬 수 있다.
네트워크가 경량의 TD로 주기적으로 플로딩(flood)되게 하는 "브로드캐스트" 모드 및 이로 인한 로컬 트래픽 추정치들을 지원하는 것 이외에도, DATALITE는 또한 TD의 분배 및 로컬 트래픽 추정들이 네트워크 내의 관련 노드들의 서브세트에 의해 요구되고, 알 필요성에 따라서 행해지는 "질의-응답" 모드를 통해서 트래픽 측정/분석을 지원한다. 질의-응답 모드는 특히, 과도한 미세-그레인, 고정밀 및 트래픽 측정/분석이 요구되는 종종 특수한 트래픽 연구들을 지원하는데 유용하다.
요약하면, 직접-측정 방식을 취함으로써, DATALITE는 네크워크 토모그래피 방식들을 성가시게 하는 연산 가정들 또는 유효하지 않은 트래픽 모델링에 의해 야기되는 문제들을 피하게 한다. DATALITE 방식 및 기존의 궤도-기반의 방식들 간에 몇몇 고레벨 공통성들이 존재하지만, 이들 간에는 주요한 차이점들이 존재한다: 첫 번째, 일련의 세트-카디널리티 결정 문제들로서 트래픽 측정 문제를 포뮬레이팅함으로써, 최소 통신 오버헤드를 지닌 분배 방식으로 트래픽 분석을 수행하기 위하여 ㄱ개 샘플 카운팅에서의 최근 진보들에 영향을 미칠 수 있다. 두 번째, 개별적인 패킷 대신에 트래픽 집합체 작용의 측정들 및 분석에 초점을 맞춤으로써, DATALITE를 위한 시스템 메모리 및 통신 대역폭 요구조건들이 훨씬 감소된다. 그 결과, DATALITE가 기존 궤도-기반의 시스템들에 의해 취해진 중량의 집중화 방식과 대향되는 분배된 계산 모델을 채용하는 것이 가능하다.
동일한 소자들에 동일한 참조 번호가 병기된 첨부 도면과 관련하여 후술되는 본 발명의 상세한 설명을 통해서 본 발명을 보다 완전하게 이해할 수 있을 것이다.
본 발명은 데이터 패킷 네트워크들에서 네트워크 측정 및 분석을 위해 개선된 효율성을 제공하기 위한 방법론이다. 비록 본 발명의 전형적인 실시예가 종래의 고속 네트워크들과 관련하여 서술되었지만, 본 발명이 무선 네트워크들 및 수송 네트워크들과 같은 다른 네트워크들에 적용될 수 있다는 것을 당업자에게 명백할 것이다.
임의의 주어진 개별적인 패킷에 대한 궤도 질의에 응답하는 성능이 IP 역추적을 지원하기 위하여 [Snoe 01]의 설계자들에 필요로되는 것으로 간주되지만, 본 발명자들은 IP 역추적을 포함하여 본원에서 대부분의 트래픽 측정/분석 애플리케이션들에 대해서 지나친 것으로 주장하였다. 이 주장은 이들 애플리케이션들의 대부분에서, 일군의 개별 분리된 패킷들의 집합 대신에, 주어진 패킷들의 그룹의 궤도 및/또는 트래픽 량, 또는 소위 트래픽 집합체를 아는 것만으로 충분하다는 관찰에 기초한다. [Snoe 01] 내의 시스템이 하나의 특수한 패킷의 기원의 트랙킹과 같은 보다 강력한 네트워크 포렌직 애플리케이션들을 지원한다는 것을 주장할 수 있지만, 네트워크 레벨 트래픽 분석/감시는 이와 같은 기능을 제공하는 최적의 방식일 수 없다라고 여긴다. 대신, 특정 애플리케이션-레벨 포렌직 기능들은 종단 시스템들 근처의 애플리케이션 레벨에서 보다 양호하게 지원될 수 있다. 네트워크 트래픽 감시/분석 기반구조는 라우팅 진단, 트래픽 엔지니어링 및 흐름 패턴 분석과 같은 기능들의 네트워크 및/또는 수송층들을 지원하는데 노력을 집중하여만 한다는 것이 우리의 견해이다.
대부분의 경우들에서, 관심있는 트래픽 집합체의 정의는 애플리케이션의 콘텍스트에 명백하게 규정되어 있다. 본 발명에서, DATALITE(Distrubuted Architecture for Traffic Analysis via LIght-weight Traffic digEst)는 주로 다음에 관하여 규정된 트래픽 집합체들에 초점을 맞출 것이다.
(1) 자신들의 발신 및/또는 착신 노드들(또는 링크들) 또는,
(2) 트래픽 그룹에 의해 횡단되는 특정 링크(들) 또는 노드(들)의 세트
이하에서 보여지는 바와 같이, 이와 같은 트래픽 집합체들은 트래픽 매트릭스 추정, 루트 검사뿐만 아니라 네트워크 실패 진단을 포함하는 광범위한 실제 트래픽 측정/분석(TMA) 애플리케이션들에 집중되기 때문에 이와 같은 집합체들의 정의들에 초점을 맞추도록 결정한다. 이들 1차 유형들의 트래픽 집합체들 이외에도, 제안된 DATALITE 기반 구조는 또한, 1차 유형의 서브세트들인, 예를 들어 주어진 프로토콜-유형 및/또는 포트 번호의 패킷들의 그룹인 보다 미세한 그레인 트래픽 집합체들을 지원한다.
인터섹션-세트-카디널리티-결정 문제에 따라서 트래픽 측정/분석
이 부속장에선, 일련의 인터섹션-세트-카디널리티-결정(ISCD) 문제들로서 트래픽 측정/분석(TMA) 문제의 포뮬레이션을 설명한다. 네트워크 G=(V, E)의 지향된 그래프 표현을 고려하는데, 여기서 V는 노드들의 세트이고 E는 지향성 링크들의 세트이다. (i,j)∈E는 노드 i로부터 노드 j까지의 지향성 링크라고 하자. Li,j를 길이 T 초의 주어진 측정 기간 동안 링크(i, j)를 거쳐서 횡단하는 패킷들의 세트라고 하자. 현재, 인플라이트 패킷(inflight packet)에 의해 야기되는 프린지 효과들(fringe effects)이 무시될 수 있도록 측정 기간이 네트워크 내의 최대 종단간 지연 보다 훨씬 더 길다고 가정하자. 경로 지연의 효과는 다수의 시간 인덱스된 노드의 트래픽 다이제스트들을 유지시킴으로써 설명될 수 있다. 실제로, 시간 인덱스된 트래픽 다이제스트들은 네트워크 경로 지연 측정들을 지원하기 위해 사용될 수 있다. Oi(또는 Di)가 동일한 측정 기간 동안 노드 i에서 발신되는(또는 착신되는) 패킷들의 세트라고 하자. "발신된"(또는 "착신된")이란, 노드(또는 그것으로부터 네트워크를 나가는)로부터 실제로 발생되는 패킷들을 의미한다. 용어 "소스" 또는 "목적지"의 사용을 피하기 위하여, 가능한 소스 어드레스 스푸핑(spoofing)으로 인해 요구하는 패킷은 소스 노드에서 실제로 발생될 수 없다. 유사하게, 패킷은 예를 들어 라우팅 문제들 또는 손실로 인해 실제로 의도된 목적지 노드에 도달할 수 없다.
주어진 측정 기간 동안, 우리가 관심있는 트래픽 집합체들은 상기 규정된 패킷 세트들의 인터섹션으로서 손쉽게 표현될 수 있다. 우리의 방식을 예시하기 위하여, 다음 2가지 공통(및 기본적인) TMA 작업(task)들을 고려하자.
샘플 TMA 작업 #1
이 작업의 목표는 네트워크 내의 모든 O-D 노드 쌍간의 루트 패턴 및 트래픽 량을 결정하는 것이다. 이를 위하여, 링크 (i,j)∈E를 통과하는 패킷들의 세트
Figure 112010019228524-pat00001
를 고려하자. 여기서 0-D 노드 쌍으로서 k=(s, d)∈V×V이다.
Figure 112010019228524-pat00002
는 상술된 다른 패킷 세트들의 인터섹션, 즉
Figure 112010019228524-pat00003
으로서 표현될 수 있다. 이 작업(뿐만 아니라, 트래픽 매트릭스 추정, 흐름-패턴 분석, 트래픽-역추적, 루트/네트워크 실패 검출/진단 뿐만 아니라 트래픽 엔지니어링과 같은 광범위한 다른 TMA 애플리케이션들)을 위하여 ,
Figure 112010019228524-pat00004
의 카디널리티, 즉
Figure 112010019228524-pat00005
의 전체 상세사항들 대신에
Figure 112010019228524-pat00006
를 아는 것으로 충분하다는 것이 주요한 관찰이다. 예를 들어, 샘플 TMA 작업#1의 목표는 매 링크 (i, j)∈E 에 대해 단지
Figure 112010019228524-pat00007
및 모든 O-D 노드 쌍 k=(s, d)∈V×V를 인지함으로써 성취될 수 있다.
샘플 TMA 작업 #2
이 작업에서, 발신 노드들, 이들 발신 노드들이 기여하는 트래픽 량 뿐만 아니라 몇몇 DDoS 희생(victim)일 수 있는 주어진 다운스트림 노드(d)에 도달하여 종료되는 패킷들의 그룹의 업스트림 흐름 패턴을 결정하길 원하는 역추적 애플리케이션을 고려하자. 이 작업을 달성하기 위하여, 매 링크 (i, j)∈E 마다
Figure 112010019228524-pat00008
를 결정할 필요가 있는데, 여기서
Figure 112010019228524-pat00009
및 k=(*, d)이다(여기서 *는 와일드카드이다). 유사하게, 매 링크(i, j)∈E 마다
Figure 112010019228524-pat00010
를 결정함으로써 주어진 노드(s)로부터 기원하는 패킷들의 흐름 량, 다운스트림 루트 패턴, 및 목적지를 역추적할 수 있는데, 여기서
Figure 112010019228524-pat00011
및 k=(s, *)이다.
상기 관찰에 기초하여, DATALITE의 기본 개념은 네트워크-와이드 방식으로
Figure 112010019228524-pat00012
의 분배된 계산/추정을 지원하기 위한 기반구조를 제공하는 것이며, 여기서
Figure 112010019228524-pat00013
는 상술된
Figure 112010019228524-pat00014
와 같은 몇몇 패킷 세트들의 인터섹션 형태로 표현된다. 본원에 서술된 바와 같이, ([Duff 00, Snoe 01]의 경우에서처럼)
Figure 112010019228524-pat00015
들의 전체 상세사항들 대신에
Figure 112010019228524-pat00016
에 초점을 맞춤으로써, DATALITE에 대한 시스템 저장 및 통신 대역폭 요구조건들은 DATALITE가 10Gbps+네트워크들에서 TMA를 지원할 수 있도록 크게 감소될 수 있다.
몇몇 특정 패킷 세트들의 인터섹션으로서
Figure 112010019228524-pat00017
를 표현함으로써, 포뮬레이션은 TMA 문제를 일련의 소위 인터섹션-세트 카디널리티 결정(ISCD) 문제들로 효율적으로 변환시킨다. 상이한 장소들에 걸쳐서 분배되는 다수의 세트들의 인터섹션의 카디널리티를 결정하는 문제는 최근에, (1) A.Broder가 Compression and Complexity of Sequences(SEQUENCES), Positano, Italy, June 97[Brod 97]에 발표한 "On the resemblance and containment of documents," 에서 WWW에 걸쳐서 유사한 웹페이지들을 식별하도록 탐색 엔진들을 지원하고, (2) J.Byers, J. Considine, M.Mitzenmacher and S. Rost가 Procs. of ACM Sigcomm, Aug.2002[Byer 02]에 발표한 "Informed Content Delivery Across Adaptive Overlay Networks"에서 피어 투 피어 네트워크들에 걸쳐서 효율적인 파일-탐색/스와핑을 지원하도록 프로토콜들을 설계하도록 연구되어 왔다. [Brod 97] 및 [Byer 02] 둘 모두는 A. Broder, M. Charikar, A.M.Frieze 및 M.Mitzenmacher가 Journal of Computer and System Sciences, 60(3) 2000, pp. 630-659에 발표한 "Min-wise independent permutation"을 적용하여 소위 한 쌍의 세트 A 및 B에 대한
Figure 112010019228524-pat00018
의 유사비들(resemblance ratios)을 추정한다. 그러나, 이 기술에 의해 요구되는 정보 교환량은 관심있는 세트들의 크기에 비례하는데, 즉
Figure 112010019228524-pat00019
가 된다. 이는
Figure 112010019228524-pat00020
가 측정 기간 동안 주어진 링크를 횡단하는 패킷들의 수에 대응하는 고속 TMA 애플리케이션들에 대해 실행가능하지 않다: 40-바이트 패킷들 및 10초의 측정 기간을 지닌 40Gbps 링크에 대해서,
Figure 112010019228524-pat00021
는 손쉽게 수십억의(billions) 범위가 될 수 있다. ([Duff 00, Snoe 01]에 의해 언급된 바와 같은) 노드의 Bloom-필터들의 교환에 기초한 대안적인 방식은 또한 과도한 저장/통신 대역폭 문제들로 실행되는데, 그 이유는 대응하는 Bloom 필터들의 유사한
Figure 112010019228524-pat00022
메모리 요구조건들 때문이다.
개별 샘플 카운팅을 통해서 분배된 인터섹션-세트-카디널리티-결정
본 발명 DATALITE는 분배된 ISCD 문제를 해결하기 위한 새로운 방식이다. 우선 ISCD 문제를 하나 이상의 유니온-세트 카디널리티 결정(USCD) 문제들로 변환시킨다. 그 후, 최근 O(loglog
Figure 112010019228524-pat00023
) 개별 샘플 카운팅 알고리즘을 이용하여 분배된 방식으로 USCD 문제를 해결하도록 한다. 실제로, 우리의 방식은 [Brod 97] 및 [Byer 02]에서 상술된 애플리케이션들에 대해 사용되어 이들의 성능 및 스케일러빌러티(scalability)를 크게 개선시킬 수 있다.
설명된 바와 같이, 샘플 TMA 작업 #2를 상기하자. 여기서
Figure 112010019228524-pat00024
이다. 기초적인 세트 이론에 기초하면,
Figure 112010019228524-pat00025
는 다음 형태로 표현될 수 있다.
Figure 112010019228524-pat00026
여기서
Figure 112010019228524-pat00027
는 측정 기간 동안 노드(s)에서 기원되는 개별 패킷들의 수이다. 정의에 의하면, 발생된 모든 패킷은 개별적이며, 따라서
Figure 112010019228524-pat00028
는 모든 발신 네트워크 노드에 대한 단일 패킷 카운터로서 유지될 수 있다.
Figure 112010019228524-pat00029
는 링크(i, j)를 횡단하는 개별 패킷들의 수이다. Flajolet, Martin 및 Durand, P. Flajolet, G.N. Martin이 Journal of Computer and Systems Sciences, 31(2), 1985, pp. 182-209에 발표한 "Probablistic counting algorithms for database applications" 및 M.Durand, P. Flajolet가 European Symposium on Algorithms, ESA'2003, Apr. 2003[Dura 03]에 발표한 "Loglog Counting of Large Cardinalities"에 기술된 확률론적인 개별 샘플 카운팅 기술을 적용하여 매 링크 (i,j)∈E에 대한
Figure 112010019228524-pat00030
를 유지한다. 이와 같은 기술의 주요한 이점은 0(loglog Nmax)-비트 다이제스트를 유지하여 패킷 세트(Li,j)에서 필요한 정보를 요약하는 것만이 단지 필요로 되는데, 여기서 Nmax는 Li,j에서의 개별 샘플들의 최대수이다. 본 발명의 콘텍스트에서, 이 다이제스트를
Figure 112010019228524-pat00031
로 표시한 Li,j의 트래픽 다이제스트(TD)라 칭할 것이다.
Figure 112010019228524-pat00032
를 유지하는 것 이외에도, 또한, 매 링크(i,j)∈E 마다 간단한 패킷 카운터(Ci,j)를 도입하여 동일한 측정 기간 동안 링크를 통과하는 간단한 패킷들의 카운트(복제 포함)를 추적한다. Ci,j
Figure 112010019228524-pat00033
의 값들 간의 큰 차이는 링크(i,j)가 라우팅 루프의 일부가 될 때 잠재적인 라우팅 문제들을 나타낸다. 따라서,
Figure 112010019228524-pat00034
를 평가하는데 남아있는 문제는
Figure 112010019228524-pat00035
를 계산하는 것이다. 우발적으로,
Figure 112010019228524-pat00036
를 추정하는데 사용되는 확률론적인 개별 샘플 카운팅 기술은 분배된 방식으로
Figure 112010019228524-pat00037
를 계산하도록 확장될 수 있다. 이는
Figure 112010019228524-pat00038
로 표시된 패킷 세트들 OS 및 Li,j에 대한 O(loglog Nmax)-크기의 TD들의 교환에 기초하고 노드(s) 및 노드(i) 각각에 의해 국부적으로 유지된다. 유사하게, 샘플 TMA 작업 #1에 대한
Figure 112010019228524-pat00039
는 다음과 같이 표현될 수 있다.
Figure 112010019228524-pat00040
다시, 상술된 O(loglog Nmax) 개별 샘플 카운팅 기술은 수학식(2)의 R.H.S.에서 유니온-세트들의 카디널리티들을 결정하는데 사용될 수 있다. 요약하면, TMA 문제는 몇몇 특정 패킷 세트들의 유니온들의 카디널리티들을 결정하도록 변환될 수 있다. 보다 중요하게는, 이 방식은 단지, O-D 노드-쌍 분류에 기초하여
Figure 112010019228524-pat00041
유형들의 패킷들에 대한 링크 당 트래픽 량 및 네트워크-와이드 루트 패턴들을 결정하기 위하여 (링크 당 하나의 간단한 패킷 카운터 이외에) 링크 당 단일 경량 TD만을 필요로 한다. 라우터(i)의 링크들을 식별함으로써, 이를 통해서 패킷들을 실제로 네트워크에 들어가며(떠나며), 이들 링크들의 TD들에 기초하여 라우터(i)의 발신(착신) 패킷 세트들에 대한 TD를 얻을 수 있다. 그러므로,
Figure 112010019228524-pat00042
를 명시적으로 유지하는 것이 필요하지 않다.
일반적으로, 일련의 유니온 세트들의 카디널리티들에 대해 다수의 세트들의 인터섹션의 카디널리티를 표현하는 것이 가능하다. 특히, 세트들(S1, S2, ..., Sn)의 목록에 대해서, 다음과 같이 된다.
Figure 112010019228524-pat00043
수학식 3은 예를 들면 링크(li,j)를 가로지르는 O-D 쌍(s, d)를지닌 모두 40-바이트 TCP 패킷들인 관심있는 트래픽 집합체의 정의를 개선하기 위하여 부가적인 세트 인터섹션들을 이용할 때 유용하게 될 것이다. 수학식 3에 기초하여, ISCD 문제는 항상 수학식 3의 R.H.S.에서 세트들의 유니온의 카디널리티들의 계산으로 변환될 수 있다. 이는 결과적으로 개별 샘플 카운팅 기술을 사용하여 분배된 방식으로 행해질 수 있다. 요약하면, 본 발명의 해결 방식은 다음 단계들로 이루어진다.
1. 관심있는 TMA 문제를 관심있는 몇몇 인터섹션 세트들의 카디널리티들의 문제, 또는 소위 인터섹션-세트-카디널리티-결정(ISCD) 문제들로 변환시킨다.
2. 수학식 3을 사용하면, ISCD 문제를 관심있는 몇몇 유니온-세트들의 카디널리티들을 결정하는 문제, 즉 소위 유니온-세트-카디널리티-결정(USCD) 문제로 변환시킨다.
3. Flajolet, Martin 및 Durand[Dura 03]에 의해 개척된 개별 샘플 카운팅 기술들을 사용하여 분배된 방식으로 USCD 문제들을 해결한다.
다음 부속장에서, Flajolet, Martin 및 Durand에 의한 "Loglog distince sample counting" 기술들을 검토하고 나서, 이들이 DATALITE 발명의 콘텍스트에서 이용되는 방법을 설명할 것이다. 관련된 것으로서, C.Estan, G.Varghese, 및 M.Fisk가 ACM Computer Communication Review, vol.32, no. 3, July 2002 [Esta 02]에 발표한 "Counting the number of active flows on a high speed link"가 [Flaj 85]에서 개별 샘플 카운팅 알고리즘들의 변형을 설계하여 고속 링크상에서의 로컬 네트워크 흐름 카운트들을 추정한다. DATALITE에서, 우리는 이 기술들을 [Dura 03]에 이용하여 요소들(패킷들)이 지리학적으로 분배된 장소들에서 관찰되는 몇몇 유니온-세트의 패킷들 내에서 개별 패킷들의 수를 추정한다. 분배된 유니온 세트들에 대한 대안적인 개별 샘플 카운팅 기술들은 또한 P.B. Gibbsons, S. Tirhapura가 Procs. of ACM SPAA, Crete Isalnd, Greece 2001에서 발표한 " Estimating Simple Functions on the Union of Data Streams"[Gibb 01]에 제안되어 있다. 그러나, [Gibb 01]에 제안된 방식의 메모리 요구조건은 [Dura 03]의 요구조건 처럼 관심을 끌지 못하였다.
Loglog 개별 샘플 카운팅 기술들의 검토
각 패킷(S)이 식별자(ids)를 갖는 샘플(S)의 세트를 고려하자. 동일한 식별자를 반송하는 샘플들은 복제들로서 처리된다. [Dura 03]은 O(loglog Nmax)를 지닌 S에서의 개별 샘플들의 수, 즉 메모리의 O(loglog Nmax) 비트들을 지닌
Figure 112010019228524-pat00044
를 카운팅하는 문제를 해결하는데, 여기서 Nmax는 S에서의 개별 샘플들의 최대 수이다. 이들의 방식은 다음과 같이 작동한다.
우선적으로, 각 샘플의 식별자는 해시 함수 h(ㆍ)에 대한 입력으로 사용되는데, 이 함수는
Figure 112010019228524-pat00045
의 범위에 걸쳐서 균일하게 분배되는 랜덤한 음수가 아닌 정수(non-negative integer)룰 출력하는데, 여기서
Figure 112010019228524-pat00046
는 Nmax 보다 커야 한다. 해시 출력의 2진 표현을 Rmax 비트 길이의 랜덤한 2진 스트링으로서 고려하자. 직관적으로, h(ㆍ)의 출력이 균일하게 분배되기 때문에, S에는 평균적으로 n개의 개별 샘플들이 존재하며, 이들의 n/2k는 "1" 비트만큼 앞서 있는 (k-1)의 연속적인 선행 제로들(leading zeroes)을 지닌 h(ㆍ)로부터의 출력을 가질 것이다. (복제 샘플들이 h()에서 동일한 출력을 갖기 때문에, 이들은 1 랜덤 트라이얼(random trial)에만 총괄하여(collectively) 기여할 것이다).
r(x)를 입력으로서 2진 스트링(x)을 취하여 (1+x 내의 연속적인 리딩 제로들의 최대수) 값을 출력하는 함수라 규정하자. 예를 들어, x=00001XXX..., r(x)=5; x=1XXX..., r(x)=1, 여기서 X는 "돈-케어(don't care)"를 표시한다. 입력들로서 S에서 모든 샘플 식별자들을 고려하면서
Figure 112010019228524-pat00047
가 도달되는 r(h(ㆍ))의 최대값이라고 하자. 그러므로, R(S)는 log2n의 값에 대해 대략적인 표시를 제공해야 한다. 실제로, R은 파라미터 1/2의 n개의 독립적인 기하학적 변수들의 최대 더하기 1과 동일한 방식으로 정밀하게 분배된다. 이는 1.33의 가산 바이어스 및 1.87의 표준 편차로 R이 log2n을 추정한다는 것을 보여줄 수 있다. 실제로, 추정 에러를 감소시키기 위하여, 상이한 해시 함수들을 사용하여 다수의 R의 값들을 획득하고 이들의 평균을 사용하여 log2n을 추정한다. 대안적으로 다음 단계들을 지닌 소위 SAA(Stochastic Averaging Algorithm)를 사용하여 n(또는 등가적으로
Figure 112010019228524-pat00048
)을 추정한다.
1. 샘플의 해시 출력의 최종 k 비트들에 기초하여 세트(S)의 샘플들을 m=2k 버킷들로 분리하라.
2. Rj가 j-번째 버킷에 대한 R의 값이라 하자. (Rmax-k)개의 각 샘플의 해시 출력의 선행 비트들을 r(ㆍ)에 입력함으로써 1≤j≤m에 대해서 Rj들을 계산.
3. 다음 식을 사용하여
Figure 112010019228524-pat00049
, 즉
Figure 112010019228524-pat00050
의 추정치를 계산하라.
Figure 112005016277585-pat00051
여기서 αm은 m의 함수인 정정 인자이다.
[Dura 03]에 도시된 바와 같이,
Figure 112005016277585-pat00052
의 표준 에러σ는 다음과 같이 주어진다.
Figure 112010019228524-pat00053
예를 들어, 2% 표준 에러는 m=2048을 설정함으로써 성취될 수 있다. Nmax는 S에서의 개별 샘플들의 최대 수임을 상기하자. 각 버킷 내의 개별 샘플들의 수가 약 Nmax/m이기 때문에, Rmax로 표시된 Rj들의 최대값을 제공하여
Figure 112010019228524-pat00054
가 되도록 해야 한다. [Dura 03]에서,
Figure 112010019228524-pat00055
의 각각의 2진 표현을 위하여 필요로 되는 비트들의 수는 다음식과 동일하게 된다는 것을 보여준다.
Figure 112010019228524-pat00056
따라서, 이 확률론적 개별 샘플 카운팅 방식을 위한 작동 메모리 요구조건(M)은 다음과 같이 주어진다.
Figure 112010019228524-pat00057
세트(S)의 샘플들이 개별 장소들에서 관찰(또는 저장)되는 분배된 구현을 위하여 상기 개별 샘플 카운팅 방식이 쉽게 받아들여질 수 있다는 점에 유의하라:
Figure 112010019228524-pat00058
라 하자. 여기서 세트 Sp들은 P개의 분리된 장소들에서 유지된다. 다음 단계들을 지닌 Distributed Max-merge Algorithm(DMA)에 따라서 분배된 방식으로
Figure 112010019228524-pat00059
(또는
Figure 112010019228524-pat00060
)로 표시된 S에서의 개별 샘플들의 수를 추정할 수 있다.
1. 각 장소(p)에서, Sp에서 샘플들에 기초하여 m개의 버킷들 각각에 대한 R의 값을 갱신하라.
Figure 112005016277585-pat00061
가 장소 p에서 j번째 버킷에 대한 R의 값이라 하자. 여기서 1≤j≤m 및 1≤p≤P이다.
Figure 112005016277585-pat00062
의 m 값들의 콜렉션을 Sp의 경량의 다이제스트로 고려할 수 있다.
2. 측정 기간의 끝에서, 모든 P개의 장소들 중에서 1≤j≤m 및 1≤p≤P에 대해서
Figure 112010019228524-pat00063
의 콜렉션을 교환하라.
3. 각 장소에서, 1≤j≤m에 대한
Figure 112005016277585-pat00064
를 설정함으로써
Figure 112005016277585-pat00065
최대 병합을 수행하라.
4. 임의의 P개의 장소들에서, 상술된 SAA의 수학식 4로 단계3으로부터 발생된 최대-병합된
Figure 112010019228524-pat00066
를 치환함으로써
Figure 112010019228524-pat00067
(또는
Figure 112010019228524-pat00068
)의 추정치를 획득할 수 있다.
도 1을 참조하면, 상기 개별 샘플 카운팅 방식들, 즉 SAA 및 DMA가 본 발명의 콘텍스트에서 이용될 수 있는 방법을 설명한다. 이 경우에, 네트워크 내의 관심있는 다양한 패킷 세트들은 샘플 세트들(10)이 된다. 패킷들은 검사될 샘플들이 되고, 샘플(또는 패킷) 식별자는 패킷 헤더 내의 몇몇 선택된 필드들의 연결 및 가능하게는 단계(20)에서 도시된 바와 같은 페이로드의 몇몇 특정 부분들로부터 구성된다. 패킷 식별자의 주요 요구조건은 네트워크를 통해서 패킷이 횡단할 때 변하지 않은채 유지되어야 한다. 그 결과, IP 헤더 내의 TTL-필드와 같은 어떤 필드들은 패킷 식별자의 부분으로서 포함되지 않는 것이 바람직하다. 우리는 예로서, 패킷 경로를 따른 IP 단편화(IP fragmentation)와 같은 네트워크를 통한 패킷 횡단, 또는 네트워크 내의 부가적인 캡슐화/터널링의 사용으로서 패킷 식별자를 부주의하게 수정할 수 있는 실제적 문제들을 또한 인지한다. 우리는 특별한 경우들로서 일반적인 임팩트로 패킷들을 처리하고 부가적인 트래픽 측정 에러들로서 나머지 패킷들을 설명함으로써 이들 문제들을 처리한다.
관심있는 주어진 패킷 세트에 대해서, (SAA에 규정된 바와 같은)
Figure 112010019228524-pat00069
의 콜렉션은 패킷-세트의 트래픽 다이제스트(TD)가 된다. 도 1은 패킷-세트의 TD가 패킷들로부터 추출될 수 있는 방법을 요약한다. 예를 들어, 단계(30)에서, 각 패킷의 패킷 식별자(PID)는 해시 함수에 입력되어 Rmax-비트 해시 출력 h(PID)를 얻는다. 단계(30)로부터의 출력은 단계(40)에서 m-웨이 스플리터(m-way splitter)로 입력된다. 여기서, m-웨이 분할은 h(PID)의 최종 log2m 비트들에 기초하여 발생된다. 1 내지 m개의 버킷들 각각에 대한 단계(50)에서, Ri가 추적되는데, 여기서 모든 해시 출력들 h(PID)s의 제1 Rmax-log2m에서 연속적인 선행 제로들의 최대수가 함수 r()을 사용함으로써 i번째 버킷에 할당된다. 측정 기간의 끝에서, R1 내지 Rm의 콜렉션은 관심있는 패킷 세트(Sp)의 경량의 TD가 되는데, TD의 크기는 mlog2Rmax 비트들이다.
DATALITE의 동작 모델
지금부터 TMA 작업을 지원하기 위하여 본 발명의 DATALITE-인에이블된 네트워크내의 동작 단계들을 설명할 것이다. 예시된 예에서 상술된 샘플 TMA 작업 #1을 사용할 것이다. 이 경우에, 각 노드 i∈V는 관심있는 로컬 패킷 세트들의 각각에 대한 경량 트래픽 다이제스트(TD)(SAA 내의
Figure 112010019228524-pat00070
의 콜렉션 형태)를 유지하는데, 즉 발신되는 패킷들의 세트(Oi), 착신되는 패킷들의 세트(Di), 링크(i,j)∈E 각각을 횡단하는 패킷들(Li,j)의 세트를 유지하다.
Figure 112010019228524-pat00071
각각에 의해 이들 패킷 세트들의 대응하는 TD들을 표시한다. (패킷 복제들을 고려하지 않고) 링크당 패킷 카운트들(Ci,j) 및 패킷 발생 카운트들(
Figure 112010019228524-pat00072
)을 추적하기 위한 간단한 카운터들을 사용하는 것 이외에도, 각 라우터는
Figure 112010019228524-pat00073
들 및
Figure 112010019228524-pat00074
에 포함된 정보와 함께 SAA를 사용하여 관심있는 로컬 개별 패킷 카운트들, 즉
Figure 112010019228524-pat00075
Figure 112010019228524-pat00076
을 추적한다. 게다가, 노드(i)는 모든 노드들 j∈V로부터
Figure 112010019228524-pat00077
Figure 112010019228524-pat00078
를 수신한 후 전체 링크들 (i,j)∈ E 및 모든 k=(s,d)∈V×V에 대해 수학식 2에서
Figure 112010019228524-pat00079
의 값들을 추정할 수 있다. 특히, 수학식 2의 R.H.S.에 대한 유니온 세트들의 카디널리티들은 DMA에서 Os, Dd 및 Li,j를 Sp들로 치환함으로써 추정될 수 있는데, 여기서
Figure 112010019228524-pat00080
의 교환은 노드들 s 및 d로부터 노드 i 각각까지
Figure 112010019228524-pat00081
Figure 112010019228524-pat00082
의 분배로 대체된다.
Figure 112010019228524-pat00083
의 추정치들이 노드 (i)에 의해 국부적으로 계산되면, 이들은 주기적인 브로드캐스트를 통해서 또는 요구, 질의 및 응답에 기초하여 다른 네트워크 노드들로 분배될 수 있다. 그 후, 각 노드는
Figure 112010019228524-pat00084
의 지식에 기초하여 관심있는 트래픽 집합체들의 네트워크-와이드 뷰를 구성할 수 있다. 예를 들어 [Dura 03]에서의 방식들의 확률적인 특성들로 인해
Figure 112010019228524-pat00085
에 대한 측정/추정 에러들을 추가 감소시키기 위하여, 각 노드는
Figure 112010019228524-pat00086
에 대하여 표현된 노드의 네트워크-와이드 흐름 유지 제약들에 기초하여 최소 자승 에러(MSE) 최적화를 선택적으로 수행할 수 있다. 이와 같은 MSE 최적화의 상세사항들이 다음 부속장에서 논의될 것이다. 도 2는 DATALITE 인에이블 노드에 의해 수행되는 상기 선택적인 단계들을 요약한다.
도 2를 참조하면, 본 발명의 방법론을 구현하기 위한 프로세서 또는 프로세서들을 갖는 노드(100)가 순서도로 도시되어 있다. 도시된 바와 같이, 단계 1에서, 인입하는 패킷들은 노드(100)로 들어와서 사전 필터링되어 패킷 세트 이익(packet set interest)을 결정한다. 단계(2)에서, 트래픽 다이제스트(TD)가 추출되며, 예를 들어, O(loglog N) 크기의 TD가 상술된 방식으로 추출된다. 그 후, 패킷들은 자신들의 데이터 경로상에서 계속된다. 도 2의 단계 3에서, TD들은 네트워크 내, 예를 들어, 관심있는 패킷 세트 내의 다른 관련 노드들로 분배된다. TD들은 알려진 방식들로 선택적으로 압축되며 및/또는 기존의 라우팅 프로토콜 제어 메시지의 데이터 오브젝트들로서 또는 새로운 전용 질의 프로토콜로서 포맷화된다. 단계 4에서, 네트워크 내의 다른 관련 노드들로부터의 원격 TD들은 노드(100)에서 수신된다. 단계 5에서, 주어진 집합체 흐름
Figure 112010019228524-pat00087
의 로컬 추정치는 분배되는 로컬 TD들 및 원격 TD들에 기초하여 결정된다. 그 후, 주어진 집합체 흐름의 로컬 추정치는 또한 다른 관련 노드들로 분배된다. 단계 7에서, 네트워크 내의 다른 관련 노드들로부터 추정된 집합체 흐름들
Figure 112010019228524-pat00088
은 노드(100)에서 수신된다. 단계에서, 네트워크에서의 다른 노드들로부터 수신된 집합체 흐름 추정들로 인해, 트래픽 흐름 패턴 및 양들에 대한 네트워크-와이드 뷰의 구성은 로컬 및 원격 집합체 흐름 추정치들에 기초하여 결정된다. 단계 9에서, 후 처리가 발생하여, 예를 들어 네트워크 와이드 흐름 유지 제약들을 가함으로써 추정 에러를 더욱 감소시킨다. 단계 10에서, 최종 출력은 예를 들어 네트워크-와이드 트래픽 루트 패턴들, 흐름 량들 및/또는 가능한 경로 지연 통계들을 위하여 제공된다. 이 출력은 또한 상기 파라미터들 중 하나 이상의 파라미터들에 대한 변화들을 검출한다.
Li,j의 TD들이 아니라 발신 및 착신 패킷 세트들(즉, 모든 i∈V에 대해
Figure 112010019228524-pat00089
Figure 112010019228524-pat00090
)의 TD 만을 분배함으로써, DATALITE의 통신 대역폭 요구조건을 실질적으로 감소시킨다. 이는
Figure 112010019228524-pat00091
들의 경량 특성조차도, 이들이 여전히
Figure 112010019228524-pat00092
만큼 작지 않기 때문이다. 또한, 통상적으로 실제 네트워크에서의 링크보다 훨씬 적은 노드들이 존재하기 때문에,
Figure 112010019228524-pat00093
Figure 112010019228524-pat00094
의 수는 또한
Figure 112010019228524-pat00095
의 수보다 훨씬 적다.
DATALITE를 위한 메모리 및 통신 대역폭 요구조건의 고려사항 및 최적화
주요한 설계/엔지니어링 문제들 중 하나는 (1)TD들에 대한 로컬 메모리 요구조건 및 (2) 관심있는 TMA 애플리케이션에 대한 추정 에러 요구조건들을 만족시키면서 수용가능한 레벨까지의 노드간 통신 대역폭 요구조건들을 유지하고자 하는 것이다. 이를 위하여, 우리는 다음의 다중 프롱 전략(multi-prong strategy)을 제안한다.
1. TD 당 메모리 크기의 신중한 제어
10Gbps+ 네트워크들에서 TMA 작업을 지원하기 위한 TD의 메모리 요구조건을 고려하자. 40Gbps 링크가 초당 최대 1,250,000,000개의 40-바이트 패킷들을 전송할 수 있기 때문에, 1012 또는 240의 값은 최대 8000초 길이까지의 측정 기간을 지원하기 위해 Nmax에서 적합해야 한다(수학식 6). 수학식 5를 따르면, 개별 샘플 카운트 추정치에 대해 표준 에러 σ≤2%를 성취하기 위하여, m은 ≥2048이 되어야만 된다. Nmax=240 및 m=2048를 수학식 6으로 치환하면 Rmax=32=25을 산출한다. 달리 말하면, TD에서 Rj들의 각각을 인코딩하는데 5-비트를 할당하는 것이 충분하다. 따라서, 각 TD의 메모리 요구조건 M=mlog2Rmax(bits)은 m의 값으로 표시된다. 대응하는 개별 샘플 카운트 추정치를 위한 2%의 표준 에러에 대응하는, m=2048에 대해서, TD의 크기는 약 1.7KByte가 된다. 이를 각 TD의 메모리 요구조건에 대한 하한이라고 간주하여, 예를 들어 상술된 샘플 TMA 작업들의
Figure 112010019228524-pat00096
인 관심있는 최종 메트릭의 평가 동안 가능한 추정 에러 누산 및/또는 "증폭"을 설명한다. 이는 수학식 3을 따르면 수학식 3의 L.H.S에 대한 항의 추정 에러가 R.H.S.에 대한 각 항의 추정 에러들의 합이기 때문이다. 따라서, L.H.S. 항에서 스테이지의 최대 8000초 길이까지의 측정 기간을 지원-인터섹션이 많을수록, 수학식 3의 R.H.S.에 대한 유니온 최대 8000초 길이까지의 측정 기간을 지원 카디널리티에 대한 추정 에러가 누산될 때 추정 에러가 커진다. 게다가,
Figure 112010019228524-pat00097
이 수학식 3의 R.H.S에서 유니온-세트 카디널리티들 각각에 대한 "상대적인" 추정 에러이며, 즉 퍼센티지로 말하면, 식 (3)의 L.H.S.에 대한 인터섹션 항에 대한 대응하는 상대적인 추정 에러는, 특히 수학식 3의 L.H.S.에 대한 인터섹션 세트의 카디널리티가 절대 항들에서 R.H.S.에 대한 유니온 세트 항들의 카디널리티 보다 훨씬 작을 때 "증폭"될 수 있다.
실제로, m의 실제값 및 이로 인한 TD 당 메모리 크기는 TMA 애플리케이션의 추정 에러 요구조건들에 기초하여 결정된다. 대략적인 추정들/측정들이 충분한 이들 TMA에 대해서, 1.7Kbyte TD와 같은 보다 조악한-그레인(coarser-grain), 보다 작은 크기의 TD들이 충분할 수 있다. 이 유형의 TMA 애플리케이션들의 예들은 루트 실패/오구성/변화 검출뿐만 아니라 DDoS 공격 역추적을 포함하는데, 여기서 관심있는 이벤트는 전형적으로 트래픽 흐름 패턴에서 상당한 변경을 초래한다. 따라서,
Figure 112010019228524-pat00098
의 값들은 실질적으로 자신들의 공칭값들로부터 벗어나고, 추정 에러는 급작스런 이탈에 대해서 사소하다. 정량적인 매우 정확한 측정들이 요구되는 TMA 애플리케이션들에 대해서, 수학식 3의 L.H.S.에 대한 "유니온-와이즈" 항들 각각의 추정 동안 m을 증가시킨다(이에 따라서 σ를 감소시킨다). 그러나, σ에서 선형 감소가 TD의 크기에서의 이차 증가(quadratic increase)를 필요로 하기 때문에, 이와 같은 메모리 대 정확도 트레이드 오프들은 신중한 방식으로 행해져야만 한다. 다행히도, TD의 고유 경량 특성으로 인해, 메모리 크기를 스케일 업할 상당한 여지가 있다. 예를 들어, 1.7KByte로부터 0.87MByte까지의 TD 크기의 512배 증가는 σ를 0.08% 보다 아래로 감소시킬 수 있다. 그러나, 0.87MByte TD는 현재 고속 메모리 기술들로 인해 여전히 매우 적합하다. 즉, 오늘날, 10Gbps 라인 카드를 위한 전형적인 메모리 량은 약 2Gbits이다. 이는 200msec 가치의 버퍼링을 제공하는 것이다. 이 메모리 량의 10%를 사용하면, 즉 트래픽 측정/분석 목적을 위하여 25MBytes를 사용하면, 각 라인-카드는 28개 이상의 0.87MByte TD들을 수용할 수 있다. 이 연구에서, 우리는 병렬로 TD의 다중 크기들을 지원하기 위한 수단을 조사할 것이다.
2. 링크 당 다중 트래픽 집합체들(또는 패킷 세트들)의 효율적인 지원
실제로, 링크 당 단일 패킷 세트, 즉 Li,j를 유지하는 대신에, 몇몇 TMA 애플리케이션들은 예를 들어 패킷들의 포트 수 및/또는 프로토콜 유형에 기초하여 패킷 세트들의 보다 미세한 그레인 정의들을 요구할 수 있다. 링크 당 다수의 보다 미세한-그레인 패킷 세트들의 또 다른 관심있는 사용은 원래 측정 기간이 다수의 보다 작은 구간으로 분할되는 "시간-인덱스된" 패킷 세트들을 사용함으로써, 명백히 제한된 해상도로, 네트워크 내의 서로 다른 링크들에 속하는 시간 인덱스된 패킷 세트들의 인터섹션의 카디널리티를 계산함으로써 네트워크 내의 경로 지연을 추정하도록 할 수 있다.
링크 당 다수의 패킷 세트들을 지원하기 위하여, 기초적인 방법은 관심있는 보다 미세한 그레인 패킷 세트의 각각에 대해 분리된 TD를 할당할 것이다. 그러나, 일반화된 패킷 세트 인터섹션 기술을 도입함으로써, 라인-카드 당 Q개의 TD들 만을 사용하여 O(Q2) 유형들의 보다 미세한-그레인 트래픽 집합체들에 대한 네트워크-와이드 TMA를 지원할 수 있다.
링크 당 K=2k 패킷 세트들을 지원할 필요가 있다고 가정하자. P1, P2,...,PK로 표시된 K개의 패킷 세트들의 각각에 대한 TD를 할당하는 대신에, Q개의 인공 패킷 세트들(S1, S2, ..., SQ)의 목록을 구성하는데, 여기서
Figure 112010019228524-pat00099
이다. S1, S2, ..., SQ는 ∀i, 1≤i≤K가 되도록 규정되는데, 1≤q1, q2≤Q가 존재하며, 여기서
Figure 112010019228524-pat00100
이다. 달리 말하면, 모든 Pi들은 한 쌍의 인공적인 세트들의 인터섹션으로부터 "복구"될 수 있다. 따라서,
Figure 112010019228524-pat00101
,
Figure 112010019228524-pat00102
,...,
Figure 112010019228524-pat00103
로 각각 표시되는 Q개의 인공적인 세트들 S1, S2, ..., SQ의 각각에 대한 TD들만을 유지함으로써, 구성요소들 중 하나로서 Pi를 갖는 임의의 유니온 세트 또는 임의의 인터섹션의 카디널리티를 계산할 수 있다. 이는 우선 Sq1∩Sq2로서 Pi를 표현하고 나서 수학식 3 및 상술된 바와 같은 개별 샘플 카운팅 기술들을 이용함으로써 이루어진다. 일 예로서, 이 세트-인터섹션 기술들로, 276개의 보다 미세한-그레인 트래픽 집합체 네트워크 와이드를 동시에 지원하기 위해, 링크당 24개의 TD들을 유지하도록 요구된다. 고 분해능, 즉 0.87MByte TD들 조차도, 이와 같은 구성을 위한 라인 카드 당 총 TD 메모리 요구조건은 오늘날 전형적인 10Gbps 라인 카드에서 발견되는 메모리 량(2Gbits 또는 버퍼링의 200msec-가치)21MByte 또는 8.4% 보다 작다.
이론적으로, 2log2K 인공적인 세트들(각각은 K의 log2K 비트들 2진 표현의 비트 값에 대응하는) 중에 log2K 스테이지들의 인터섹션들을 이용함으로써 라인 카드 당 요구되는 TD들의 수를 2log2K로 더욱 감소시켜 각 Pi를 복구시킨다. 그러나, 누산된 추정 에러들은 수학식(3)의 R.H.S.에 대한 많은 수의 항들로 인해 과도하게 될 수 있다. 이는 차례로, 스테이지 당 추정자 에러를 감소시키기 위해 각 TD의 메모리 요구조건을 증가시킬 것이다. 다수의 스테이지들의 인터섹션 및 TD 당 증가하는 메모리 요구조건 간의 상세한 트레이트-오프들은 우리 연구의 요지이다.
3. 네트워크-와이드 흐름-유지 제약들을 고려함으로써 부가적인 추정 에러 감소
TD 메모리를 유지시키는 또 다른 방식은 초기 추정치들의 후-처리를 통해서
Figure 112010019228524-pat00104
들에서의 효율적인 추정 에러를 감소시키는 것이다. 이 방식에서, 노드가 네트워크 내의 모든 노드들로부터
Figure 112010019228524-pat00105
의 초기 추정치들을 수신한 후,
Figure 112010019228524-pat00106
들에 대해 표현된 노드의 흐름 유지 제약들에 기초하여 최소 자승 에러(MSE) 최적화를 수행할 것이다.
Figure 112010019228524-pat00107
를 수신된
Figure 112010019228524-pat00108
의 초기 추정된 값이라고 하자. 이 최적화의 동기는 노드의 흐름 유지 제약들의 관점에서 자신들의 불일치성을 조정함으로써 초기 추정치들
Figure 112010019228524-pat00109
에서 집합적인 에러들을 감소시키고자 하는 것이다.
Figure 112010019228524-pat00110
를 노드의 흐름 유지 제약들을 충족하는
Figure 112010019228524-pat00111
의 새로운 추정된 값이라 하자.
Figure 112010019228524-pat00112
Figure 112010019228524-pat00113
로 변경시키는데 요구되는 섭동(perturbation)인
Figure 112010019228524-pat00114
로 표시하자. 다음 MSE 최적화 문제를 고려하자.
Figure 112005016277585-pat00115
에 따라서,
Figure 112010019228524-pat00116
를 최소화한다.
상기 최적화에 대한 해결책은
Figure 112010019228524-pat00117
, 즉
Figure 112010019228524-pat00118
에 대해 "집합적으로" 최소 섭동을 산출하여, 새로운 추정치들
Figure 112010019228524-pat00119
이 적어도
Figure 112010019228524-pat00120
의 참값들의 경우에서와 같이 노드의 흐름 유지 제약들을 만족시키도록 할 것이다. 흐름 유지 제약들을 고려함으로써(이는
Figure 112010019228524-pat00121
의 참값들에 의해 충족되어야만 된다). 추정치들은 자신들의 참값들에 보다 근접하게 될 것이다.
4. 노드간 통신 대역폭 최적화
본 발명 DATALITE의 통신 대역폭 요구조건에 대한 주요 제어 인자들은:
(1) 교환될 TD의 수 및 크기
(2) TD의 교환 주파수 및 이로 인한 트래픽 흐름 추정자들 및,
(3) TD 및 트래픽 흐름 추정자들이 네트워크 전체에 걸쳐서 분배되는 방식을 포함한다.
(1) 제어 및 감소될 수 있는 방법에 대해 이미 상술하였다. 여기서, (1)에 관한 몇 가지 부가적인 최적화 기회들을 인지할 것이다. 우선, TMA 애플리케이션의 요구에 따라서, 즉, 관심있는 트래픽 측정들에 따라서, 네트워크 내의 다른 노드들로 선택된 TD들의 세트를 분배하는 것만을 필요로 한다. 예를 들어, 샘플 TMA 작업 #1이 네트워크 내의 모든 노드들 중에서
Figure 112010019228524-pat00122
의 풀-메시(full-mesh) 교환을 필요로 하는 동안, 샘플 작업 #2는 다운스트림 DDoS 공격 희생 노드의
Figure 112010019228524-pat00123
의 분배만을 필요로 한다. 또한 이들을 다른 관련 노드들에 분배하기 전 측정 기간의 끝에서 TD를 압축할 수 있다.
DATALITE에 의해 지원되는 동작들의 요구에 따른 질의 및 응답 모드들 및 이중 주기적인 브로드캐스트는 또한 (2)를 제어하도록 도와준다. 실제로, TD들의 교환 주파수 및 이로 인한 트래픽 흐름 추정자들은 주로 애플리케이션의 요구에 의해 지시된다. 예를 들어, 애플리케이션들의 변경-검출 유형에 대해서, 예로서, 루트 오구성/네트워크 실패의 검출에 대해서, 교환-주파수는 검출 시간을 감소시키기 위하여 훨씬 높게 되어야 한다. 다행히도, 이들은 또한 보다 낮은 정밀 측정들/추정들, 즉 보다 작은 TD들이 흐름 패턴들에 대한 결과적인 변경들 및 관심있는 이벤트에 의해 야기되는 링크 당 흐름 값들이 큰 경향이 있기 때문에 충분할 수 있다. 다른 한편으로, 보다 높은 정밀한 측정들/추정들(및 이에 따라서 보다 큰 TD들)을 요구하는 TMA 애플리케이션들은 보다 긴 측정 구간에 걸쳐서만 의미가 있는 경향이 있으며, 이는 대역폭 요구조건을 감소시키도록 돕는다. DATALITE 방식의 또 다른 이점은 TD 메모리 요구조건이 측정 기간(T)으로 매우 느리게 (O(loglogT)) 증가한다는 것이다. 상술된 바와 같이, 최대 8000초 길이까지의 측정 기간 동안 TD 상수의 크기를 효율적으로 유지시킬 수 있는데, 이는 대부분의 트래픽 측정 애플리케이션들에 대해 적합해야 한다.
최종적으로, TD들의 분배 패턴은 TD들의 수 및 크기뿐만 아니라 요구되는 분배 주파수에 기초하여 결정되어야 한다. 넓게 보기 위해, 2가지 극단적인 시나리오들(또는 애플리케이션들 요구조건들)을 고려하자. 제1 시나리오에서, 1.7KByte TD는 트래픽-패턴-변경/실패 검출 애플리케이션들 또는 DDoS 역추적에 사용된다. 각 노드의 압축되지 않은
Figure 112010019228524-pat00124
가 플로딩(가장 값비싼 옵션 대역폭 와이즈)을 사용하여 매 1초 마다 모든 다른 노드들에 분배되는 경우조차도, 네트워크 내의 매 링크 마다 총 TD-트래픽 발생된 TD-트래픽은 100-노드 네트워크에 대해 링크 당 2*1.7*8*
Figure 112010019228524-pat00125
Kbps, 즉 2.72Mbps를 초과하지 않거나 10Gbps 링크의 용량의 0.03%보다 작게될 것이다. 제2 시나리오에서, 특수한 시간마다의 트래픽 연구는 네트워크-와이드 그 당시의 통계 및 미세 그레인 트래픽 유형들의 루트 작용을 측정하도록 행해진다. 여기서, 24*2 보다 높은 해상도, 0.87 MByte의 압축해제된 TD 각각이 동일한 네트워크 내의 모든 노드들 간의 전체 I-BGP 메시를 사용하여 매 시간 마다 분배되어, (상술된 일반적인 세트-인터섹션 기술을 사용하여) 276개의 유형들의 트래픽 집합체들 네트워크 와이드의 작용을 분석한다. 노드 당 대응하는 인입하는 TD 대역폭은 10Gps 링크의 용량의 0.1% 보다 훨씬 적은 0.87*8*2*24*100/3600Mbps=9.28Mbps이다.
결론
요약하면, 직접 측정 방식을 취함으로써, 본 발명 DATALITE는 네트워크 토모그래피 방식들을 성가시게 하는 유효하지 않은 트래픽 모델링 또는 연산 가정들에 의해 야기되는 문제들을 피하게 한다. 본 발명 DATALITE 방식 및 기존 궤도-기반으로 한 방식들 간에 일부 높은 레벨의 공통성들이 존재하지만, 이들 간에는 주요한 차이점들이 존재한다. 첫 번째, 일련의 세트-카디널리티-결정 문제로서 트래픽 측정 문제를 포뮬레이팅함으로써, 최소 통신 오버헤드를 지닌 분배된 방식으로 트래픽 분석을 수행하기 위하여 개별 샘플링 카운팅을 향상시킬 수 있다. 두번째, 개별적인 패킷 작용들 대신에 트래픽 집합체 작용의 측정들 및 분석에 초점을 맞춤으로써, DATALIT E 발명에 대한 시스템 메모리 및 통신 대역폭 요구조건은 이전 방법들에 비해서 훨씬 감소된다. 따라서, DATALITE가 기존의 궤도-기반으로 한 시스템들에 의해 취해진 중량의 집중화 방식과 반대로 분배된 계산 모델을 채택하도록 할 수 있다.
상술된 바는 단지 본 발명의 원리를 예시한다. 따라서, 당업자는 본원에 설명되거나 도시되지 않았지만 본 발명의 원리들을 구현하고 본 발명의 영역 및 범위 내에 포함되는 각종 장치들을 고안할 수 있다. 게다가, 언급된 모든 예들 및 조건부 언어는 주로 독자가 본 발명의 원리들 및 본 발명자가 의도한 개념들을 이해하는 것을 돕기 위한 것이지, 인용된 예들 및 조건들로 제한하고자 하는 것은 아니다. 게다가, 본원에 언급된 원리들, 양상들 및 실시예들에 대한 모든 진술 내용 뿐만 아니라 이들의 특정 예들은 구조적이고 기능적인 등가물들을 포함한다. 게다가, 이와 같은 등가물들은 현재 알려진 등가물들 뿐만 아니라 장차 개발된 등가물들, 즉 구조와 관계없이 동일한 기능을 수행하기 위하여 개발된 임의의 요소들을 포함한다.
청구항들에서, 특정 기능을 수행하는 수단으로서 표현된 임의의 요소는 예를 들어 a) 이 기능을 수행하는 회로 요소들의 조합 또는 b) 펌웨어, 마이크로코드 등을 포함하는 임의의 형태의 소프트웨어를 포함하는 기능을 수행하는 어떤 방식을 포함하며, 소프트웨어가 이 기능을 수행하도록 적절한 회로와 결합된다. 이와 같은 청구항들에 규정된 바와 같은 본 발명은 각종 인용된 수단에 의해 제공된 기능성들이 청구항들이 요구하는 방식으로 모두 결합된다. 따라서 출원인은 본원에 도시된 것과 동일한 이들 기능성들을 제공할 수 있는 모든 수단을 고려한다. 본 발명의 원리들의 많은 다른 수정들 및 응용들이 당업자에게 명백할 것이고 본원 개시 내용에 의해 고려된다. 따라서 본 발명의 범위는 첨부된 청구범위에 의해서만 제한된다.

Claims (10)

  1. 패킷 통신 네트워크 내에서 트래픽의 분석을 수행하는 방법에 있어서,
    관심있는 패킷 세트에 대해 상기 네트워크 내의 특정 노드들에서 트래픽 집합체(traffic aggregate)를 측정하는 단계;
    상기 트래픽 집합체들을 사용하여 상기 네트워크에서 측정될 파라미터에 대한 인터섹션 세트 카디널리티(intersection set cardinality) 결정을 포뮬레이팅(formulate)하는 단계;
    측정될 상기 파라미터에 대한 상기 세트 카디널리티 결정을 해결하는 단계; 및
    상기 인터섹션 세트 카디널리티 결정을 일련의 유니온(union) 세트 카디널리티 결정들로 포뮬레이팅하는 단계를 포함하는, 트래픽 분석 수행 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 유니온 세트 카디널리티 결정을 분배된 방식으로 해결하기 위해 하나 이상의
    Figure 112011057175416-pat00126
    개별 샘플 카운팅 알고리즘들을 이용하는 단계를 더 포함하는, 트래픽 분석 수행 방법.
  4. 제 3 항에 있어서,
    본질적으로
    Figure 112010019228524-pat00127
    -비트 다이제스트가 패킷 세트(Li,j)에서 필요한 정보를 요약하기 위하여 사용되며, 상기 Nmax는 Li,j내의 개별 샘플들의 최대수인, 트래픽 분석 수행 방법.
  5. 패킷 통신 네트워크 내에서 트래픽의 분석을 수행하는 방법에 있어서,
    관심있는 패킷 세트에 대해 상기 네트워크 내의 특정 노드들에서 트래픽 집합체를 측정하는 단계;
    상기 트래픽 집합체들을 사용하여 상기 네트워크에서 측정될 파라미터에 대한 인터섹션 세트 카디널리티 결정을 포뮬레이팅하는 단계;
    측정될 상기 파라미터에 대한 상기 세트 카디널리티 결정을 해결하는 단계를 포함하고,
    상기 트래픽의 분석은 트래픽 루트 패턴들의 분석, 트래픽 흐름 패턴들의 분석, 및 발신지, 목적지뿐만 아니라 관심있는 주어진 패킷 그룹이 횡단하는 중간 노드들 및 링크들의 추적으로 구성된 그룹으로부터 선택되는, 트래픽 분석 수행 방법.
  6. 패킷 통신 네트워크 내에서 트래픽의 분석을 수행하는 방법에 있어서,
    주어진 패킷 집합 멤버십에 기초하여 상기 네트워크 내의 선택된 노드들로부터 집합 기반 트래픽 다이제스트들을 추출하는 단계;
    관련 로컬 트래픽 다이제스트들을 상기 네트워크 내의 상기 선택된 노드들의 다른 노드들에 분배하는 단계;
    상기 네트워크 내의 상기 선택된 노드들의 다른 노드들로부터 관련 원격 트래픽 다이제스트들을 수신하는 단계;
    상기 로컬 트래픽 다이제스트들 및 상기 원격 트래픽 다이제스트들에 기초하여 특정 트래픽 흐름의 로컬 추정을 제공하는 단계;
    상기 다른 선택된 노드들로부터 상기 특정 트래픽 흐름의 원격 추정들을 수신하는 단계; 및
    상기 로컬 및 원격 특정 트래픽 흐름들에 기초하여 상기 네트워크에 주어진 파라미터에 대한 주어진 패킷 집합 멤버십에 기초하여 카디널리티 결정 문제를 해결하는 단계를 포함하고,
    상기 트래픽 다이제스트들을 추출하는 단계는:
    특정 패킷 세트에 속하는 각 패킷으로부터 패킷 식별자를 추출하는 단계;
    Rmax-비트 해시 출력을 수신하기 위하여 각 패킷 식별자를 해시 함수에 입력하는 단계로서, 상기 Rmax-비트 해시 출력의 log2m 비트들은 버킷 인덱스(bucket index)를 결정하기 위하여 사용되는, 상기 입력 단계;
    상기 버킷 인덱스에 기초하여 상기 해시 출력을 m개의 버킷들로 분할하는 단계;
    상기 m개의 버킷들 중 각 버킷(i)에 대해, Ri, 즉 r()를 사용함으로써 i번째 버킷에 할당된 모든 해시 출력들의 제 1 (Rmax-log2m) 비트들에서 연속적인 선행 제로(leading zeros)들의 최대수를 추적하는 단계; 및
    상기 특정 패킷 세트에 대한 트래픽 다이제스트로서 R1 내지 Rm을 사용하는 단계를 포함하는, 트래픽 분석 수행 방법.
  7. 삭제
  8. 패킷 통신 네트워크 내에서 트래픽의 분석을 수행하는 방법에 있어서,
    주어진 패킷 집합 멤버십에 기초하여 상기 네트워크 내의 선택된 노드들로부터 집합 기반 트래픽 다이제스트들을 추출하는 단계;
    관련 로컬 트래픽 다이제스트들을 상기 네트워크 내의 상기 선택된 노드들의 다른 노드들에 분배하는 단계;
    상기 네트워크 내의 상기 선택된 노드들의 다른 노드들로부터 관련 원격 트래픽 다이제스트들을 수신하는 단계;
    상기 로컬 트래픽 다이제스트들 및 상기 원격 트래픽 다이제스트들에 기초하여 특정 트래픽 흐름의 로컬 추정을 제공하는 단계;
    상기 다른 선택된 노드들로부터 상기 특정 트래픽 흐름의 원격 추정들을 수신하는 단계; 및
    상기 로컬 및 원격 특정 트래픽 흐름들에 기초하여 상기 네트워크에 주어진 파라미터에 대한 주어진 패킷 집합 멤버십에 기초하여 카디널리티 결정 문제를 해결하는 단계를 포함하고,
    매 링크 (i,j)∈E 에 대한 패킷 카운터(Ci,j)는 트래픽 다이제스트 측정 기간과 동일한 측정 기간 동안 링크를 통과하는 패킷들의 카운트를 추적하도록 유지되며,
    Figure 112011057175416-pat00128
    Figure 112011057175416-pat00129
    의 값들 간의 큰 불일치는 잠재적인 라우팅 문제를 나타내는, 트래픽 분석 수행 방법.
  9. 패킷 통신 네트워크 내에서 트래픽의 분석을 수행하는 방법에 있어서,
    주어진 패킷 집합 멤버십에 기초하여 상기 네트워크 내의 선택된 노드들로부터 집합 기반 트래픽 다이제스트들을 추출하는 단계;
    관련 로컬 트래픽 다이제스트들을 상기 네트워크 내의 상기 선택된 노드들의 다른 노드들에 분배하는 단계;
    상기 네트워크 내의 상기 선택된 노드들의 다른 노드들로부터 관련 원격 트래픽 다이제스트들을 수신하는 단계;
    상기 로컬 트래픽 다이제스트들 및 상기 원격 트래픽 다이제스트들에 기초하여 특정 트래픽 흐름의 로컬 추정을 제공하는 단계;
    상기 다른 선택된 노드들로부터 상기 특정 트래픽 흐름의 원격 추정들을 수신하는 단계; 및
    상기 로컬 및 원격 특정 트래픽 흐름들에 기초하여 상기 네트워크에 주어진 파라미터에 대한 주어진 패킷 집합 멤버십에 기초하여 카디널리티 결정 문제를 해결하는 단계를 포함하고,
    Q개의 인공적인 세트들의 사용을 통해서 네트워크 내의 상이한 링크들에 속하는 시간-인덱스된 패킷 세트들의 상기 인터섹션의 상기 카디널리티를 계산함으로써, 네트워크 내의 경로 지연을 추정하기 위해 원래의 측정 기간이 다수의 보다 작은 구간들로 분할되는 상기 "시간-인덱스된" 패킷 세트들을 사용하는 단계를 더 포함하는, 트래픽 분석 수행 방법.
  10. 패킷 통신 네트워크 내에서 트래픽 분석을 수행하는 방법에 있어서,
    주어진 패킷-세트 멤버십에 기초하여 상기 네트워크 내의 선택된 노드들로부터 집합 기반 트래픽 다이제스트들을 추출하는 단계;
    관련 로컬 트래픽 다이제스트들을 상기 네트워크 내의 상기 선택된 노드들의 다른 노드들에 분배하는 단계;
    상기 네트워크 내의 상기 선택된 노드들의 다른 노드들로부터 관련 원격 트래픽 다이제스트들을 분배하는 단계;
    상기 로컬 트래픽 다이제스트들 및 상기 원격 트래픽 다이제스트들에 기초하여 특정된 트래픽 흐름의 로컬 추정을 제공하는 단계;
    상기 다른 선택된 노드들로부터 상기 특정 트래픽 흐름의 원격 추정들을 분배하는 단계; 및
    상기 로컬 및 원격의 특정 트래픽 흐름들에 기초하여 상기 네트워크 내의 주어진 파라미터를 위한 세트 카디널리티 결정 문제를 해결하는 단계를 포함하고,
    상기 트래픽의 분석은 트래픽 루트 패턴들의 분석, 트래픽 흐름 패턴들의 분석, 및 발신지, 목적지뿐만 아니라 관심있는 주어진 패킷 그룹이 횡단하는 중간 노드들 및 링크들의 추적으로 구성된 그룹으로부터 선택되는, 트래픽 분석 수행 방법.
KR1020050025487A 2004-03-31 2005-03-28 고속 트래픽 측정 및 분석 방법론들 및 프로토콜들 KR101123020B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US55823004P 2004-03-31 2004-03-31
US60/558230 2004-03-31
US10/909,908 US7397766B2 (en) 2004-03-31 2004-08-02 High-speed traffic measurement and analysis methodologies and protocols
US10/909908 2004-08-02

Publications (2)

Publication Number Publication Date
KR20060044844A KR20060044844A (ko) 2006-05-16
KR101123020B1 true KR101123020B1 (ko) 2012-03-16

Family

ID=34890592

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050025487A KR101123020B1 (ko) 2004-03-31 2005-03-28 고속 트래픽 측정 및 분석 방법론들 및 프로토콜들

Country Status (6)

Country Link
US (2) US7397766B2 (ko)
EP (1) EP1583281B1 (ko)
JP (1) JP4727275B2 (ko)
KR (1) KR101123020B1 (ko)
CN (1) CN1677940B (ko)
DE (1) DE602005001965T2 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8261062B2 (en) 2003-03-27 2012-09-04 Microsoft Corporation Non-cryptographic addressing
US7929689B2 (en) * 2004-06-30 2011-04-19 Microsoft Corporation Call signs
US8086842B2 (en) 2006-04-21 2011-12-27 Microsoft Corporation Peer-to-peer contact exchange
ITMI20071141A1 (it) * 2007-06-04 2008-12-05 Torino Politecnico Metodo per rilevare un singolo flusso dati all' interno di un flusso aggregato di dati a pacchetti e per identificare l' applicazione generatrice del singolo flusso dati.
US7808898B2 (en) * 2007-08-14 2010-10-05 Hewlett-Packard Development Company, L.P. Flow estimator
EP2279580B1 (en) * 2008-04-14 2019-09-18 Philips Intellectual Property & Standards GmbH A method for distributing encryption means
US8204985B2 (en) * 2008-04-28 2012-06-19 Alcatel Lucent Probabilistic aggregation over distributed data streams
US8400933B2 (en) * 2008-04-28 2013-03-19 Alcatel Lucent Efficient probabilistic counting scheme for stream-expression cardinalities
US8406132B2 (en) * 2008-05-30 2013-03-26 Alcatel Lucent Estimating cardinality distributions in network traffic
WO2010037308A1 (en) * 2008-09-30 2010-04-08 The Chinese University Of Hong Kong Systems and methods for determining top spreaders
CN101572908B (zh) * 2009-05-26 2011-03-16 中兴通讯股份有限公司 Ue针对utran业务量测量mc消息的处理方法和系统
US9294560B2 (en) 2009-06-04 2016-03-22 Bae Systems Plc System and method of analysing transfer of data over at least one network
US8918365B2 (en) 2009-06-19 2014-12-23 Blekko, Inc. Dedicating disks to reading or writing
CN102667761B (zh) * 2009-06-19 2015-05-27 布雷克公司 可扩展的集群数据库
US8310922B2 (en) * 2010-04-15 2012-11-13 International Business Machines Corporation Summarizing internet traffic patterns
US8458326B2 (en) * 2010-06-30 2013-06-04 At&T Intellecutal Property I, L.P. Sampling from distributed streams of data
US9167463B2 (en) * 2011-09-02 2015-10-20 Telcordia Technologies, Inc. Communication node operable to estimate faults in an ad hoc network and method of performing the same
CN102611626B (zh) * 2012-03-30 2014-11-26 北京英诺威尔科技股份有限公司 网络流量解析系统及方法
CN103716211B (zh) * 2014-01-20 2016-10-12 西安电子科技大学 网络终端的数据流量测量方法
US9935831B1 (en) * 2014-06-03 2018-04-03 Big Switch Networks, Inc. Systems and methods for controlling network switches using a switch modeling interface at a controller
US9838421B2 (en) * 2014-10-01 2017-12-05 Ciena Corporation Systems and methods utilizing peer measurements to detect and defend against distributed denial of service attacks
US10044583B2 (en) * 2015-08-21 2018-08-07 Barefoot Networks, Inc. Fast detection and identification of lost packets
US10291632B2 (en) * 2016-03-31 2019-05-14 Fortinet, Inc. Filtering of metadata signatures
US10447597B1 (en) 2016-05-23 2019-10-15 Barefoot Networks, Inc. Path and latency tracking
WO2018014928A1 (en) * 2016-07-18 2018-01-25 Telecom Italia S.P.A. Traffic monitoring in a packet-switched communication network
JP6813527B2 (ja) * 2018-03-27 2021-01-13 日本電信電話株式会社 推定装置、推定方法及びプログラム
DK3618389T3 (da) 2018-08-27 2020-11-09 Ovh Systemer og fremgangsmåder til at drive en netværksindretning
EP3618355B1 (en) 2018-08-27 2020-10-21 Ovh Systems and methods for operating a networking device
IT201800010791A1 (it) * 2018-12-04 2020-06-04 Telecom Italia Spa Misura di prestazioni in una rete di comunicazioni a commutazione di pacchetto
CN113990075B (zh) * 2021-12-30 2022-03-18 广州市交通规划研究院 一种交通调查数据和轨迹数据融合的流量分配方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020143929A1 (en) * 2000-12-07 2002-10-03 Maltz David A. Method and system for collection and storage of traffic data from heterogeneous network elements in a computer network
US7146416B1 (en) * 2000-09-01 2006-12-05 Yahoo! Inc. Web site activity monitoring system with tracking by categories and terms

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69632144T2 (de) * 1995-11-16 2004-11-25 Loran Network Systems, L.L.C., Wilmington Verfahren zur bestimmung der topologie eines netzwerkes von objekten
US5999961A (en) * 1997-09-15 1999-12-07 California Institute Of Technology Parallel prefix operations in asynchronous processors
FR2790348B1 (fr) * 1999-02-26 2001-05-25 Thierry Grenot Systeme et procede de mesure des durees de transfert et des taux de pertes dans des reseaux de telecommunication haut-debit
US6873600B1 (en) * 2000-02-04 2005-03-29 At&T Corp. Consistent sampling for network traffic measurement
JP3994614B2 (ja) * 2000-03-13 2007-10-24 株式会社日立製作所 パケット交換機、ネットワーク監視システム及びネットワーク監視方法
JP3805205B2 (ja) * 2000-04-06 2006-08-02 株式会社エヌ・ティ・ティ・ドコモ Cdmaセルラ方式における通信品質測定方法およびその装置
US20030097439A1 (en) * 2000-10-23 2003-05-22 Strayer William Timothy Systems and methods for identifying anomalies in network data streams
US7379994B2 (en) * 2000-10-26 2008-05-27 Metilinx Aggregate system resource analysis including correlation matrix and metric-based analysis
US7221663B2 (en) 2001-12-31 2007-05-22 Polycom, Inc. Method and apparatus for wideband conferencing
US7047297B2 (en) * 2001-07-17 2006-05-16 Mcafee, Inc. Hierarchically organizing network data collected from full time recording machines and efficiently filtering the same
US7213264B2 (en) * 2002-01-31 2007-05-01 Mazu Networks, Inc. Architecture to thwart denial of service attacks
GB2386032B (en) * 2002-03-01 2005-08-24 Parc Technologies Ltd Method of estimating traffic data
US7257081B2 (en) * 2002-04-19 2007-08-14 Iptivia, Inc. Method and system for traffic monitoring in a packet communication network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146416B1 (en) * 2000-09-01 2006-12-05 Yahoo! Inc. Web site activity monitoring system with tracking by categories and terms
US20020143929A1 (en) * 2000-12-07 2002-10-03 Maltz David A. Method and system for collection and storage of traffic data from heterogeneous network elements in a computer network

Also Published As

Publication number Publication date
CN1677940A (zh) 2005-10-05
JP2005295562A (ja) 2005-10-20
EP1583281A1 (en) 2005-10-05
JP4727275B2 (ja) 2011-07-20
CN1677940B (zh) 2010-08-11
US7808923B2 (en) 2010-10-05
KR20060044844A (ko) 2006-05-16
US20050220023A1 (en) 2005-10-06
EP1583281B1 (en) 2007-08-15
US7397766B2 (en) 2008-07-08
DE602005001965T2 (de) 2008-05-08
DE602005001965D1 (de) 2007-09-27
US20080219181A1 (en) 2008-09-11

Similar Documents

Publication Publication Date Title
KR101123020B1 (ko) 고속 트래픽 측정 및 분석 방법론들 및 프로토콜들
US9654368B2 (en) Network cost analysis
US7483379B2 (en) Passive network monitoring system
US8601155B2 (en) Telemetry stream performance analysis and optimization
US7222190B2 (en) System and method to provide routing control of information over data networks
US7561517B2 (en) Passive route control of data networks
US6836466B1 (en) Method and system for measuring IP performance metrics
EP1511220B1 (en) Non-intrusive method for routing policy discovery
EP1418705A2 (en) Network monitoring system using packet sequence numbers
US20080159287A1 (en) EFFICIENT PERFORMANCE MONITORING USING IPv6 CAPABILITIES
JP2005508593A (ja) ネットワークで情報のルーティング制御を実現するためのシステム及び方法
EP1293063A2 (en) Route selection within a network with peering connections
US8176175B2 (en) Network response time measurements in an asymmetric routing environment
Ervasti A survey on network measurement: Concepts, techniques, and tools
Lau et al. Datalite: a distributed architecture for traffic analysis via light-weight traffic digest
Sun et al. Network tomography and improved methods for delay distribution inference
Parissis et al. An open architecture for monitoring and measuring QoS indicators in wireless community networks
Grossglauser et al. Passive tra c measurement for ip operations

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150223

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160222

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170217

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190129

Year of fee payment: 8