KR102442349B1 - 네트워크 중립성 시험을 위한 시스템 및 방법 - Google Patents

네트워크 중립성 시험을 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102442349B1
KR102442349B1 KR1020207022043A KR20207022043A KR102442349B1 KR 102442349 B1 KR102442349 B1 KR 102442349B1 KR 1020207022043 A KR1020207022043 A KR 1020207022043A KR 20207022043 A KR20207022043 A KR 20207022043A KR 102442349 B1 KR102442349 B1 KR 102442349B1
Authority
KR
South Korea
Prior art keywords
flow
data
server
agent
downstream
Prior art date
Application number
KR1020207022043A
Other languages
English (en)
Other versions
KR20200108293A (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 KR20200108293A publication Critical patent/KR20200108293A/ko
Application granted granted Critical
Publication of KR102442349B1 publication Critical patent/KR102442349B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • 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
    • 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/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Debugging And Monitoring (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

여기에 개시된 시스템 및 방법은 네트워크 중립 상태를 결정할 수 있다. 인터넷 네트워크의 서버와 에이전트는 각각 서버/에이전트에 의해 전송(송신)/수신되는 두 개의 데이터 흐름을 생성할 수 있다. 제1 흐름은 HTTP GET(취득) 명령에 기초하여 네트워크를 통해 전송될 수 있는 스푸프되지 않은 데이터 흐름으로 구성된다. 제2 흐름은 스푸프된 데이터 흐름으로 구성될 수 있다. 제2 흐름은 네트워크에서 변경될 수 있는 비디오 스트림 또는 다른 데이터 흐름을 모방하거나 스푸프할 수 있다. 서버 또는 에이전트는 네트워크 중립 상태를 검지(검출)할 수 있는 성능 데이터의 차이를 판단하기 위해 제2 흐름에 관하여 제1 흐름을 비교할 수 있다. 일반적으로, 측정 명령이 실행된 후 시스템은 다운스트림 측정을 시작한다. 그런 다음에 다운스트림 측정이 완료된 후 시스템은 업스트림 측정을 시작한다.

Description

네트워크 중립성 시험을 위한 시스템 및 방법
배경
본 발명은 명칭이 "네트워크 중립성 시험을 위한 시스템 및 방법"이고 발명자가 황찬수이며 2018년 1월 31일에 출원된 US 가특허 출원 번호 62/624,467로 우선권을 주장하며, 이 출원은 그 전문이 본원에 참조로 포함되어 있다.
기술 분야
본 발명은 일반적으로 인터넷 서비스 제공자(Internet Service Provider, ISP)에 의해 제공되는 인터넷 네트워크(internet network, 인터넷망)의 성능을 판단하기 위한 시스템들 및 방법들에 관한 것이다. 보다 구체적으로는, 본 발명은 인터넷 네트워크의 네트워크 중립 상태를 판단하는 것에 관한 것일 수 있다.
네트워크 중립성(net neutrality)은 인터넷 서비스 제공자(ISP)가 인터넷상의 데이터를 동일하게 취급해야 하며, 이용자, 콘텐츠, 웹사이트, 플랫폼, 애플리케이션, 부착된 장비의 종류, 통신의 방법에 따라 차별하거나 요금을 다르게 부과해서는 안된다는 것이 원칙이다. 이러한 원칙 하에서 인터넷 서비스 제공자들은 특정 웹사이트와 온라인 콘텐츠에 대해 의도적으로 차단하거나, 느리게 또는 요금을 부과할 수 없다. 차별은 여러 형태를 취할 수 있기 때문에 네트워크 중립성 위반을 적발하기가 어려울 수 있다.
따라서 필요한 것은 ISP가 특정 사용자나 서비스의 서브셋을 차별하고 네트워크 중립성을 위반했는지를 효율적이고 정확하게 판단할 수 있는 시스템과 방법이다.
발명의 실시예에 대해 참조가 이루어질 것이고, 그 예는 첨부된 도면에서 설명될 수 있다. 이들 도면은 제한하는 것이 아니라 실증하기 위한 것이다. 이 발명은 일반적으로 이들 실시예의 맥락에서 설명되지만, 발명의 범위를 이러한 특정 실시예로 한정하려는 의도는 아니라는 점을 이해해야 한다. 도면의 항목들은 일정한 비율로 되어 있지 않다.
도 1a는 본 문서의 실시예에 따른 인터넷 네트워크의 서로 다른 위치에서의 트래픽 필터링을 위한 해부학적 구조를 나타낸다.
도 1b는 본 문서의 실시예에 따른 인터넷 네트워크의 타임라인에 대한 트래픽 필터링의 구조를 도시하고 있다.
도 1c는 본 문서의 실시예에 따른 개방 시스템 상호접속 모델(OSI 모델) 계층에 기초한 인터넷 네트워크의 트래픽 필터링을 위한 해부학적 구조를 나타낸다.
도 2는 본 문서의 실시예에 따라 네트워크 중립 상태를 검지할 수 있는 인터넷 네트워크를 도시하고 있다.
도 3a와 도 3b는 본 문서의 실시예에 따라 네트워크 중립 상태를 검지하는 방법에 대한 흐름도를 나타낸다.
도 3c와 도 3b는 본 문서의 다른 구현에 따라 네트워크 중립 상태를 검지하는 또 다른 방법에 대한 흐름도를 나타낸다.
도 4는 본 문서의 실시예에 따른 계산 장치/정보 처리 시스템의 단순화된 블록 다이어그램을 나타낸다.
다음의 설명에서는, 설명의 목적상, 발명에 대한 이해를 제공하기 위하여 구체적인 세부사항을 명시한다. 그러나, 이러한 세부사항 없이 발명이 실행될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 사람에게는 분명할 것이다. 더욱이, 이 기술분야에서 통상의 지식을 가진 사람은 아래에 기술된 본 발명의 실시예가 프로세스, 기구, 시스템, 장치 또는 방법 등 다양한 방식으로 컴퓨터 판독이 가능한 유형 매체에서 실현될 수 있다는 것을 인식하게 될 것이다.
도면에 도시된 컴포넌트 또는 모듈은 발명의 예시적인 실시예를 실증하며 발명의 모호함(obscuring)을 회피하기 위한 것이다. 또한, 이 논의를 통해 컴포넌트는 서브유닛으로 구성될 수 있는 별도의 기능 유닛으로서 설명될 수도 있지만, 이 기술분야에서 통상의 지식을 가진 사람들은 다양한 컴포넌트 또는 그 일부가 개별 컴포넌트로 분할되거나 단일 시스템 또는 컴포넌트 내에 통합되는 것을 포함하여 함께 통합될 수 있음을 인식해야 한다. 여기서 논의되는 기능이나 동작은 컴포넌트로서 실현될 수 있다는 점에 유의해야 한다. 컴포넌트는 소프트웨어, 하드웨어 또는 이들의 조합으로 실현될 수 있다.
더욱이, 도면 내의 컴포넌트나 시스템 사이의 연결은 직접 연결에만 국한되지 않는다. 오히려 이들 컴포넌트 사이의 데이터는 중간 컴포넌트에 의해 수정, 재형성 또는 변경될 수 있다. 또한, 추가 또는 더 적은 연결을 사용할 수도 있다. 또한 "결합됨", "연결됨" 또는 "연통가능하게 결합됨"이라는 용어는 직접 연결, 하나 이상의 중간 장치를 통한 간접 연결 및 무선 연결을 포함하는 것으로 이해되어야 한다.
이 명세서에서의 "하나의 실시예", "바람직한 실시예", "실시예" 또는 "실시예들"에 대한 참조는 실시예와 관련하여 기술된 특정한 특징, 구조, 특성 또는 기능이 적어도 하나의 발명의 실시예에 포함되며 하나 이상의 실시예에 포함될 수 있음을 의미한다. 또한, 명세서의 여러 곳에서 상술한 구절의 외관이 모두 동일한 실시예나 실시예들을 지칭하는 것은 아니다.
이 명세서의 여러 곳에서 특정 용어를 사용하는 것은 예시를 위한 것이므로 제한적으로 해석되어서는 안된다. 서비스, 기능 또는 자원은 단일 서비스, 기능 또는 자원에 국한되지 않는다. 이 용어의 사용은 분산되거나 통합될 수 있는 관련 서비스, 기능 또는 자원의 그룹을 나타낼 수 있다.
"포함하다", "포함하는", "구비하다" 및 "구비하는"이라는 용어는 개방된 용어로 이해되어야 하며, 다음과 같은 임의의 목록은 예시일 뿐 열거된 항목에만 국한되어서는 안된다. 본 문서에 사용된 표제는 조직적 목적만을 위한 것이며 설명 또는 청구범위를 제한하는 데에 사용되어서는 안된다. 이 특허 문서에 언급된 각 레퍼런스는 그 전체가 본 특허 문서의 참조에 의해 통합된다.
더욱이, 이 기술분야에서 통상의 지식을 가진 사람은, (1) 특정 단계가 선택적으로 수행될 수 있음; (2) 단계들이 여기에 명시된 특정 순서로만 수행될 수 있음; (3) 특정 단계가 다른 순서로 수행될 수 있음; 및 (4) 특정 단계가 동시에 수행될 수 있음을 인식해야 한다.
A. 자율 시스템(Autonomous System, AS)
자율 시스템(AS)은 인터넷 네트워크에 공통적이고 명확하게 정의된 라우팅 정책을 제시할 수 있는 단일 관리 엔티티나 도메인을 대신하여 하나 이상의 네트워크 오퍼레이터의 제어(통제) 하에 연결된 인터넷 프로토콜(IP) 라우팅 접두사의 집합(collection, 모음)일 수 있다. 도 1a는 본 문서의 실시예에 따라 인터넷 네트워크의 서로 다른 위치에서 트래픽 필터링의 구조를 도시하고 있다. 좀더 구체적으로는, 도 1a는 액세스 네트워크 제공자(AS1)(102), 애플리케이션 서버(104), 사용자/LAN(120)으로 구성된 자율 시스템인 인터넷 네트워크(100)을 도시하고 있다. 액세스 네트워크 제공자(AS1)(102)는 트래픽 필터링의 구조와 인터넷 네트워크의 위치를 설명한다. 트래픽 필터링의 요소에는 IP 필터링을 지원하는 방화벽(108), 흐름 테이블(flow table) 기반의 메트로(Metro) WAN(110), 트래픽 셰이핑(traffic shaping, 트래픽 성형) 및 폴리싱(policing, 감시 활동)에 기반한 액세스 네트워크(112), 서로 다른 서비스 버전을 저장할 수 있는 프록시/캐시(114), 경로 업데이트(116), 차단 라우팅 증명, DNS(118), 스푸프 및 재지정을 위한 IP 어드레스 제공 등을 포함할 수 있다(WAN - wide-area-network(광역 네트워크); DNS - domain name system(도메인 이름 시스템)). 애플리케이션 서버(104)는 서비스 요금(service rate) 조정을 실현할 수 있다. 애플리케이션 서버(104)는 BG(106)를 통해 액세스 네트워크 제공자(AS1)(102)에 연결될 수 있다(BG - border gateway(경계 게이트웨이)).
트래픽 필터링의 해부학적 구조(anatomy)는 도 1b에서 자세히 논의된다. 도 1b는 트래픽 필터링의 해부학적 구조: 본 문서의 실시예에 따른 인터넷 네트워크에 대한 타임라인(140)을 도시하고 있다. 도 1c는 트래픽 필터링을 위한 해부학적 구조: 본 문서의 실시예에 따른 개방 시스템 상호접속 모델(OSI 모델) 계층에 기초한 인터넷 네트워크의 계층(160)을 도시하고 있다. OSI 계층에 대한 트래픽 필터링의 구조와 관련하여: 1) L4 위에 위치한 정보는 TCP/IP PDU(패킷)의 페이로드에 있을 수 있으므로, 내용을 결정하기 위해서는 심층 패킷 검사(deep packet inspection, DPI)가 필요할 수 있다. 2) 각각 가상의 호스팅 및 컨텐츠 분배망(content distribution network, CDN)으로 인해 흐름형 검색 기반의 TCP 포트 및 IP 어드레스가 부정확할 수 있다. 3) 사용자별(예를 들어, 월별 사용량 기준), 시간당(예를 들어, 통화 중/유휴(idle) 시간) 필터링(여과)이 적용될 수 있다.
B. 네트워크 중립성 검지 시스템
여기에 기술된 것은 네트워크 중립 상태를 판단할 수 있는 시스템 및 방법이다. 서버와 인터넷 네트워크의 에이전트는 각각 서버/에이전트에 의해 전송/수신되는 두 개의 데이터 흐름을 생성할 수 있다. 제1 흐름은 네트워크를 통해 전송될 수 있는 스푸프되지 않은 데이터 흐름으로 구성된다. 일반적으로, 제1 흐름은 웹 서핑 데이터, 모바일 애플리케이션 데이터, 파일 전송 데이터, VoIP 데이터, 오디오 스트리밍 데이터 또는 의사 랜덤 데이터를 포함하는 변경되지 않는 모든 데이터로 구성될 수 있다. 제2 흐름은 스푸프된 데이터 흐름으로 구성된다. 제2 흐름은 네트워크에서 변경될 수 있는 비디오 스트림 또는 다른 데이터 흐름을 모방하거나 스푸핑할 수 있다. 수신된 제1 흐름을 제2 흐름과 비교함으로써 중립 상태를 판단할 수 있는 성능 데이터의 차이가 얻어질 수 있다. 서버 또는 에이전트는 업스트림 흐름 또는 다운스트림 흐름의 성능 데이터를 측정할 수 있다. 일반적으로, 시스템이 다운스트림 측정을 시작하고 다운스트림 측정을 완료한 후 시스템이 업스트림 측정을 시작하고 업스트림 측정이 완료될 때까지 대기한다. 그 다음에, 네트워크 중립 상태가 결정된다. 여기서 사용하는 성능 데이터는 성능 파라미터 측정과 동일할 수 있다.
네트워크 중립 검지를 위한 알고리즘은, 1) 에이전트/서버가 스푸핑 없이 다운로드/업로드 속도, RTT, 단방향 지연, 패킷 손실률을 포함하는 정규의 프로빙을 수행하고, 2) 에이전트/서버가 스푸핑된 속도/RTT/손실률 시험을 수행하며, 3) 에이전트/서버가 네트워크 중립성 위반을 검지하기 위해 성능 데이터를 비교한다.
도 2는 본 문서의 실시예에 따라 네트워크 중립 상태를 검지할 수 있는 네트워크(200)를 나타낸다. 네트워크(200)가 HTTP GET(취득) 명령을 활용하여 스푸핑하는 방법의 예를 설명한다. 네트워크(200)는 L7 스푸핑을 활용할 수 있다. 네트워크(200)는 인터넷 네트워크(201), 서버(202) 및 에이전트(어드레스)로 구성될 수 있다. 에이전트(222)는 게이트웨이 또는 스마트폰이나 휴대 전화와 같은 사용자 장치일 수 있다. 서버(202)는 인터넷 네트워크(201)를 통해 에이전트(222)와 통신한다. 서버(202)는 인터넷 서버일 수도 있고, 비디오 서버가 아닐 수도 있다. 서버(202)는 스푸프 DB(204), 프로브(208) 및 디스푸프(206)로 구성될 수 있다. 스푸프 DB(204)는 스푸핑을 위한 다른 방법을 설명하는 스푸핑 알고리즘의 데이터베이스로 구성될 수 있다. 이 데이터베이스는 지속적으로 갱신될 수 있다. 트래픽 필터링에 사용되는 스푸핑 알고리즘의 예가 제한 없이 도 1b에 도시되어 있다. 프로브(208)는 수신된 데이터 흐름의 성능 파라미터를 측정할 수 있다.
에이전트(222)는 스푸프(224)와 프로브(228)로 구성될 수 있다. 스푸프(224)는 데이터 흐름으로부터 스푸프된 데이터 흐름을 생성할 수 있다. 인터넷 네트워크(201)는 애플리케이션 서버(예를 들어, Hulu.com)(210)도 포함할 수 있다. 애플리케이션 서버(예를 들어, Hulu.com)(210)는 성능 파라미터 측정값을 얻기 위해 필요하지 않을 수도 있다.
서버(202)와 에이전트(222)는 각각 HTTP GET(취득) 명령을 활용할 수 있는 두 개의 데이터 흐름을 생성할 수 있다. 제1 흐름은 HTTP GET 명령을 활용하여 네트워크를 통해 전송될 수 있는 스푸프되지 않은 데이터 흐름으로 구성된다. 일반적으로, 제1 흐름은 웹 서핑 데이터, 모바일 애플리케이션 데이터, 파일 전송 데이터, VoIP 데이터, 오디오 스트리밍 데이터 또는 의사 랜덤 데이터를 포함하는 변경되지 않는 모든 데이터로 구성될 수 있다. 제2 흐름은 스푸프 DB(204)에 의해 결정될 수 있는 스푸프된 데이터 흐름으로 구성될 수 있다. 제2 흐름은 네트워크에서 변경될 수 있는 비디오 스트림 또는 다른 데이터 흐름을 모방하거나 스푸핑할 수 있다. HTTP GET 명령 내에서는, 특정 헤더 정보가 내장되어 비디오 스트림을 스푸프할 수 있다. 예를 들어, 스푸핑은 제한 없이 비디오 스트림이 의사 랜덤 데이터 대신 Netflix.com으로부터의 콘텐츠를 포함하도록 할 수 있다. 유효하게는, 스푸프된 랜덤 데이터는 제2 흐름의 비디오 스트림에 패키징된다. 심층 패킷 검사(Deep Packet Inspection, DPI)(214)는 HTTP GET 명령을 검사하고 URL 필드에서 알려진 URL을 찾아 알려진 애플리케이션 서버와 일치하는지를 확인한다. 또는 DPI(214)는 콘텐츠 유형(MIME 유형)을 검사하고 mpeg와 같은 알려진 비디오 스트림 유형과 일치하는지를 확인한다. MIME(Multi-Purpose Internet Mail Extensions, 다목적 인터넷 메일 확장자)는, 원래의 프로토콜인 간이 메일 전송 프로토콜(Simple Mail Transport Protocol, SMTP)에서 처리되는 ASCII 텍스트뿐만 아니라, 인터넷에서의 다른 종류의 데이터 파일: 오디오, 비디오, 이미지, 응용 프로그램 및 다른 종류의 파일을 교환하는 프로토콜을 이용할 수 있게 하는 원래의 인터넷 이메일 프로토콜의 확장자이다. 데이터 흐름을 스푸프하기 위해, HTTP 헤더는 업데이트되어 DPI 필터링을 트리거할 수 있다. 예를 들어, HTTP 헤더에 있는 URL 필드는, 데이터 흐름이 의사 추적 데이터를 포함하고 있고 흐름의 IP 어드레스가 여전히 속도 테스트 서버인 경우에도 hulu.com과 같은 알려진 응용 프로그램 서버의 알려진 URL로 업데이트될 수 있다. 다른 예에서는, 흐름의 IP 어드레스가 여전히 속도 테스트 서버인 동안 HTTP 헤더에 있는 MIME 필드가 비디오 스트림으로 업데이트될 수 있다. 이 스푸핑 방법은 HTTP GET이 계층 7 프로토콜이고 그 URL 어드레스가 라우팅에 사용되지 않기 때문에 효과적일 수 있다. 스푸핑 동작은 예를 들어 L4 및 그 이상의 더 높은 계층 프로토콜로 제한될 수 있다.
제1 단계에서, 서버(202)는 제1 흐름(flow1, 스푸프되지 않은 데이터 흐름)과 제2 흐름(flow2, 스푸프된 데이터 흐름)을 생성한다. 이후, 서버(202)는 인터넷 네트워크(201)를 통해 다운스트림 흐름인 flow1, flow2를 전송한다. 이 통신 링크는 심층 패킷 검사(DPI)(214) 및 트래픽 셰이퍼(216)에 차례로 연결되는 경계 게이트웨이(border gateway, BG)(212)를 포함할 수 있다. 디스푸프(206)는 스푸프된 데이터 흐름으로부터 스푸프되지 않은 데이터 흐름을 검지할 수 있는바, 즉 디스푸프(206)는 두 개의 흐름을 디멀티플렉스한다. 데이터 흐름은 TCP 프로토콜에 의해 지원될 수 있다.
DPI(214)는 완전한 패킷 검사와 정보 추출을 포함할 수 있다. DPI(214)는, 패킷이 통과될 수 있는지 또는 다른 목적지로 라우팅될 필요가 있는지, 또는 OSI(Open Systems Interconnect model)의 애플리케이션 계층에서 기능하는 통계 정보를 수집하기 위해 필요한지 여부를 판단하기 위해 프로토콜 비준수, 바이러스, 스팸, 침입 또는 정의된 기준을 검색하여 데이터 부분과 검사 지점을 통과할 때의 패킷의 헤더를 검사하는 컴퓨터 네트워크 패킷 필터링의 한 형태일 수 있다.
트래픽 셰이퍼(216)는 원하는 트래픽 프로파일을 준수하기 위해 일부 또는 모든 패킷을 지연시키는 대역폭 관리 기능일 수 있다. 트래픽 셰이핑은 성능을 최적화 또는 보장하거나, 대기 시간을 개선하거나, 다른 종류의 패킷을 지연시킴으로써 일부 패킷에 사용할 수 있는 대역폭을 증가시키기 위해 사용될 수 있다.
DPI(214) 및 트래픽 셰이퍼(216)에 의해 처리된 후, 에이전트(222)에 의해 다운스트림 흐름인 flow1과 flow2가 수신된다. 성능 데이터는 서버(202)(송신기)에 의해 프로브(208)를 통해 측정될 수 있다. 혹은, 에이전트(222)(수신기)에서, 프로브(228)가 수신된 flow1과 flow2의 성능 데이터를 측정할 수 있다. 성능 데이터 또는 성능 파라미터 측정값은 1) 다운스트림/업스트림 속도, 2) 왕복 시간(RTT), 3) 패킷 손실률, 4) 단방향 지연 또는 5) 다른 인터넷 QoS 메트릭스를 포함할 수 있다. 서버(202)/에이전트(222)는 성공적으로 전송된 패킷의 수를 계수함으로써 속도를 측정할 수 있다. 성능 데이터는 측정 데이터의 전송이 수신의 승인을 필요로 하는 프로토콜을 사용할 때 송신기에 의해 측정될 수 있다. 예를 들어, TCP 프로토콜은 패킷의 성공적인 수신에 따라 수신기가 패킷을 송신기로 다시 보내도록 요구한다. 승인 패킷과 전송 기록을 계수함으로써, 송신기는 처리량과 같은 성능 데이터를 추론할 수 있다.
제2 단계에서, 에이전트(222)는 제3 흐름(flow3, 스푸프되지 않은 데이터 흐름)과 제4 흐름(flow4, 스푸프된 데이터 흐름)을 생성하여 인터넷 네트워크(201)을 통해 전송한다. 이러한 업스트림 흐름은 심층 패킷 검사(DPI)(214) 및 트래픽 셰이퍼(216)에 의해 처리될 수 있고, 차례로 서버(202)에 결합될 수 있는 BG(212)에 결합될 수 있다. 성능 데이터는 서버(202)(수신기)에 의해 프로브(208)를 통해 측정될 수 있다. 혹은, 에이전트(222)(송신기)에서, 프로브(228)가 flow3 및 flow4의 성능 데이터를 측정할 수도 있다.
성능 데이터는 네트워크 중립 상태를 결정하기 위해 분석될 수 있다. 서버(202)는 프로브(208)를 통해 flow2에 관한 flow1과 flow4에 관한 flow3에 대한 측정된 성능 데이터 사이의 차이를 분석하고 비교할 수 있다. flow1과 flow2 사이의 측정된 성능 데이터의 차이가 제1 임계값보다 크거나, 및/또는 flow4에 관한 flow3에 대한 측정된 성능 데이터가 제2 임계값보다 크면, 네트워크 중립 위반이 있을 수 있다. 한편, flow2에 관한 flow1에 대한 측정된 성능 데이터와 flow4에 관한 flow3에 대한 측정된 성능 데이터 사이의 차이가 제1 임계값보다 작거나, 및/또는 flow4에 관한 flow3에 대한 측정된 성능 데이터가 제2 임계값보다 작으면, 네트워크 중립 상태가 받아들여질 수 있다.
혹은, 에이전트(222)는 프로브(228)를 통해 flow2에 관한 flow1과 flow4에 관한 flow3에 대한 측정된 성능 데이터의 차이를 서버(202)에 대해 사용하는 프로세스와 유사한 방식으로 분석하고 비교할 수도 있다. 에이전트(222)는 프로브(228)을 통해 다음의 것을 결정할 수 있다. 즉, flow1과 flow2 사이의 측정된 성능 데이터의 차이가 제1 임계값보다 크거나, 및/또는 flow4에 관한 flow3에 대한 측정된 성능 데이터가 제2 임계값보다 크면, 네트워크 중립 위반이 있을 수 있다. 한편, flow2에 관한 flow1에 대한 측정 성능 데이터와 flow4에 관한 flow3에 대한 측정된 성능 데이터 사이의 차이가 제1 임계값보다 작거나, 및/또는 flow4에 관한 flow3에 대한 측정된 성능 데이터가 제2 임계값보다 작으면, 네트워크 중립 상태가 받아들여질 수 있다.
본 발명의 일부 실시예에 대해서는, 서버(202) 또는 에이전트(222) 중 하나가 업스트림 흐름 또는 다운스트림 흐름의 성능 데이터를 측정할 수 있다. 서버(202) 또는 에이전트(222) 중 하나는 업스트림(flow3, flow4)과 다운스트림(flow1, flow2) 측정값 및 차이를 분석할 수 있다. 이러한 분석으로부터, 서버(202) 또는 에이전트(222) 중 하나가 네트워크 중립 위반 여부를 판단할 수 있다.
일부 실시예에서는 스푸프된 흐름과 스푸프되지 않은 흐름은 정확히 동일한 프로토콜을 사용하여 정확히 동일한 경로를 통해 동시에 결합될 수 있다. 예를 들어, 앞서 언급한 제1 단계와 제2 단계는 동시성(concurrency)을 보장하기 위해 동시에 실행될 수 있다. 즉, 스푸프된 흐름과 스푸프되지 않은 흐름 모두에 대해 동일한 IP 어드레스와 포트 넘버(#)를 사용할 수 있다. 트래픽 셰이핑 없이, 둘 다 똑같이 대역폭을 공유할 것이다. 추가적으로, 애플리케이션 서버, 즉 훌루(Hulu) 대 넷플릭스(Netflix)와 함께 변경/협조할 필요가 없을 수도 있다. 또한, 스푸프 DB(204)는 잠재적으로 영향을 받는 서비스(스트리밍 비디오, 음악 및 비트 토렌트(bit-torrent))에 대한 HTTP 요구를 포함할 수 있다. 스푸핑의 방법은 오퍼레이터가 간섭할 수 없도록 지속적으로 갱신될 수 있다. 절차는 다른 포트 넘버, 프로토콜, VPN, 프록시 테스트를 포함한다.
일부 실시예에서는 업스트림과 다운스트림 속도는 동시에 측정될 필요가 없을 수도 있다. 일반적으로, 측정 명령이 실행되면, 시스템은 다운스트림 측정 프로세스를 시작한다. 다운스트림 측정이 완료되면, 시스템은 업스트림 측정 프로세스를 시작한 후, 업스트림 측정이 완료될 때까지 기다린다. 그 다음에 네트워크 중립 상태가 결정된다. 업스트림/다운스트림 흐름 및 측정 순서는 중요하지 않을 수도 있다.
일부 실시예에서는 스푸핑은 L4, L5, L6 또는 L7에서 구현될 수 있다. IP 라우팅은 모든 흐름에 대해 동일할 수 있으며 계층 3(L3)에서 실현될 수 있다. 앞에서 언급한 바와 같이, 스푸프 DB(204)는 네트워크 활동성 및 다른 소스를 기반으로 지속적으로 업데이트될 수 있는 스푸프 알고리즘의 데이터베이스를 유지한다. 스푸핑 알고리즘의 데이터베이스를 구축하기 위해, 다른 유형의 서비스가 인터넷을 통해 전송될 수도 있고 다른 서비스의 성능이 측정될 수도 있다. 서비스의 유형이 다른 유형보다 현저히 낮은 성능을 수행하는 경우, 낮은 성능의 서비스는 변경을 트리거하는 기능(필터링, 드로틀링(throttling, 조절) 등)을 포함하는 트래픽으로 간주될 수 있다. 그런 다음, 그러한 트래픽의 헤더가 스푸핑 알고리즘 데이터베이스에 대한 입력으로 사용될 수 있다. 실시예에서는 그러한 트래픽이 제2 흐름으로 사용된다. 게다가, 서비스의 유형이 다른 유형보다 더 잘 수행하는 경우, 더 높은 수행 서비스가 변경되지 않는 트래픽으로 간주될 수 있으므로, 이 서비스가 제1 흐름으로 사용될 수 있다. 이러한 특성은 네트워크 중립성 검지가 "미래 증거(future proof)"라는 것을 보장할 수 있다. 에이전트(222)의 스푸프(224)는 논리적 연결(218)을 통해 스푸프 DB(204)의 스푸프 알고리즘에 액세스할 수 있다.
스푸프 알고리즘 데이터베이스는 감독되지 않는 학습 과정(learning process)을 기반으로 구축될 수 있다. 학습 과정의 예는 다음과 같다:
(1) 서버 및/또는 에이전트는 스푸핑 없이 페이로드 트래픽의 서비스 성능을 모니터링한다.
(2) 특정 페이로드 트래픽의 성능이 다른 페이로드 트래픽보다 나쁠 경우 패킷을 기록한다.
(3) 서버 및/또는 에이전트는 기록된 패킷을 스푸프된 데이터로 전송하면서 네트워크 중립성 테스트를 실행한다.
(4) 스푸프된 데이터의 성능이 스푸프되지 않은 데이터의 성능보다 지속적으로 나쁜 경우, 스푸프된 데이터를 스푸핑 데이터베이스에 추가한다. 이 비교는 트래픽 필터링에 대한 신뢰도가 매우 높도록 네트워크의 여러 위치 및 다른 시간에 적용할 필요가 있다는 점에 유의해야 한다. 많은 네트워크가 유사한 구성을 가진 동일한 네트워크 장비를 공유하기 때문에 하나의 네트워크에서 발견된 스푸핑 알고리즘을 다른 네트워크에서 사용할 수 있다는 점에 유의해야 한다. 단계 (3)과 (4)에서 얻어진 성능 차이가 네트워크 중립성 위반을 검지하는 임계값으로 사용될 수 있다는 점에 유의해야 한다.
스푸핑 알고리즘 데이터베이스는 감독되는 학습 과정을 기반으로 구축될 수 있다. 학습 과정의 예는 다음과 같다:
(1) 트래픽 필터링 방법(예를 들어, 도 1b)의 적어도 하나가 작동하고 있는 동안에 서버와 에이전트는 연결되어 있다.
(2) 서버 및/또는 에이전트는 단계 (1)에서 트래픽 필터링 방법에 의해 필터링되는 트래픽 유형의 성능을 측정한다.
(3) 서버 및/또는 에이전트는 단계 (1)에서 트래픽 필터링 방법에 의해 필터링되지 않은 트래픽 유형의 성능을 측정한다.
(4) 서버 및/또는 에이전트는 단계 (2)와 (3)에서 측정한 성능을 비교하여 성능 차이를 계산한다. 성능 차이가 큰 경우, 단계 (1)의 필터링 방법을 스푸프 db에 추가한다. 성능 차이는 그 판단을 확신할 수 있도록 많은 에이전트/서버뿐만 아니라 다른 시간에 측정될 필요가 있다는 점에 유의해야 한다. 단계 (2)-(4)에서 얻어진 성능 차이는 네트워크 중립성 위반을 검지하는 임계값으로 사용될 수 있다는 점에 유의해야 한다.
다른 검지 방법은 다른 ISP로부터의 성능을 비교할 수 있는바, 즉 응용 프로그램 성능/기준 성능의 비율을 메트릭으로서 활용할 수 있다. 스푸핑 알고리즘 데이터베이스는 2개의 서로 다른 네트워크의 성능을 비교함으로써 감독되지 않는 학습 과정을 기반으로 구축될 수 있다. 학습 과정의 예는 다음과 같다:
(1) 서버 및/또는 에이전트는 적어도 2개의 서로 다른 네트워크에서 페이로드 트래픽의 서비스 성능을 모니터링한다. 예를 들어, 서버는 서로 다른 액세스 네트워크에 위치한 2개의 에이전트로 서비스 성능을 모니터링할 수 있다.
(2) 다른 네트워크에서 특정 페이로드 트래픽의 성능 차이가 다른 트래픽 유형보다 큰 경우, 큰 성능 차이를 일으킨 패킷을 기록한다. 예를 들어, 네트워크 A와 B의 평균 비디오 속도는 4Mbps와 10Mbps이고, 웹 검색 속도는 8Mbps와 10Mbps이며, 비디오 회의 속도는 평균 6Mbps와 8Mbps라고 가정해 보자. 그러면, 비디오 속도 차이는 비디오 회의나 웹 브라우징의 속도 차이보다 큰 6Mbps이다. 그 후, 시스템은 네트워크 A에서 비디오 스트리밍을 위한 패킷을 기록한다. 차이는 비율이나 차이 또는 많은 성능 메트릭스의 조합으로 측정될 수 있다는 점에 유의해야 한다.
(3) 서버 및/또는 에이전트는 기록된 패킷을 스푸프된 데이터로 전송하면서 네트워크 중립성 테스트를 실행한다. 예를 들어 (2)에서의 비디오 스트리밍은 스푸프된 데이터로 사용될 수 있고 (2)에서 네트워크 A에서의 서버 및 에이전트는 스푸프 데이터를 사용하여 네트워크 성능을 측정할 수 있다. 신뢰도를 높이기 위해, 동일한 측정값이 네트워크 B의 서버와 에이전트 사이의 성능으로 될 수 있다.
(4) 스푸프된 데이터의 성능이 스푸프되지 않은 데이터의 성능보다 지속적으로 나쁜 경우, 스푸프된 데이터를 스푸프 데이터베이스에 추가한다. 단계 (3) 및 (4)에서 얻어진 성능 차이가 네트워크 중립성 위반을 검지하는 임계값으로 사용될 수 있다는 점에 유의해야 한다.
요약하면, 서버는 인터넷 네트워크를 통해 에이전트와 결합될 수 있고, 여기서 서버는 데이터 흐름의 성능 파라미터를 측정할 수 있는 프로브와 스푸프 알고리즘의 데이터베이스로 구성된다. 에이전트는 다른 데이터 흐름의 성능 파라미터를 측정하는 스푸프 기능과 또 다른 프로브; 및 심층 패킷 검사(DPI)와 트래픽 셰이퍼에 연결된 BG(Border Gateway)를 구성하는 인터넷 네트워크와 타협할 수 있다. 서버와 에이전트는 각각 업스트림 데이터 흐름과 다운스트림 데이터 흐름을 위해 스푸프되지 않은 데이터 흐름과 스푸프된 데이터 흐름을 생성하고, 업스트림의 스푸프되지 않은 데이터 흐름과 업스트림의 스푸프된 데이터 흐름 사이의 차이를 제1 임계값으로 결정하거나, 다운스트림의 스푸프되지 않은 데이터 흐름과 다운스트림의 스푸프된 데이터 흐름 사이의 차이를 제2 임계값으로 결정함으로써, 네트워크 중립 상태를 판단할 수 있다. 업스트림의 스푸프되지 않은 데이터 흐름과 업스트림의 스푸프된 데이터 흐름 사이의 차이가 제1 임계값보다 작거나, 또는 다운스트림의 스푸프되지 않은 데이터 흐름과 다운스트림의 스푸프된 데이터 흐름 사이의 차이가 제2 임계값보다 작은 경우에 네트워크 중립 상태가 받아들여질 수 있다.
C. 네트워크 중립성 검지 방법
제1 방법
도 3a와 도 3b는 각각 본 문서의 실시예에 따라 네트워크 중립 상태를 검지하기 위한 흐름도 300과 340을 나타낸다. 이 방법은 다운스트림 및 업스트림 데이터 흐름을 순차적으로 측정할 수 있다. 이 방법은 다음의 단계를 포함한다:
서버 또는 에이전트에 의해 측정 명령을 호출하는 것으로부터 시작한다. (단계 301)
서버는 두 개의 데이터 흐름: 1) 스푸프되지 않은 데이터 흐름1(flow1); 2) 스푸프된 데이터 흐름2(flow2)를 생성한다. 스푸핑은 L4, L5, L6 또는 L7에서 실현될 수 있다. (단계 302)
서버는 2개의 데이터 흐름(flow1과 flow2)을 인터넷 네트워크를 통해 에이전트로 전송한다. (단계 304)
서버는 다운스트림 속도 또는 다른 성능 파라미터를 측정하여 flow1과 flow2 사이에 차이가 있는지를 판단한다. 성능 파라미터는 성공적으로 전송된 패킷의 수, 왕복 시간(RTT), 패킷 손실률, 단방향 지연 또는 다른 인터넷 QoS 메트릭스를 계수함으로써 다운스트림 속도를 측정하는 것을 포함할 수 있다(단계 306). 앞에서 설명한 것처럼, 성능 데이터는 측정 데이터의 전송이 수신의 답신(접수 통지)(acknowledgement of reception)을 필요로 하는 프로토콜을 사용할 때 송신기에 의해 측정될 수 있다. 예를 들어, TCP 프로토콜은 패킷의 성공적인 수신에 따라 수신자가 패킷을 송신기로 다시 보내도록 요구한다. 답신 패킷과 전송 기록을 계수함으로써, 송신기는 처리량과 같은 성능 데이터를 추론할 수 있다.
에이전트는 두 개의 데이터 흐름: 1) 스푸프되지 않은 데이터 흐름3(flow3); 2) 스푸프된 데이터 흐름4(flow4)를 생성한다. 스푸핑은 L4, L5, L6 또는 L7에서 실현될 수 있다(단계 312).
에이전트는 2개의 데이터 흐름(flow3과 flow4)을 인터넷 네트워크를 통해 서버로 전송한다. (단계 314).
서버는 업스트림 속도 또는 다른 성능 파라미터를 측정하여 flow3과 flow4 사이에 차이가 있는지를 판단한다. 성능 파라미터는 성공적으로 전송된 패킷의 수, 왕복 시간(RTT), 패킷 손실률, 단방향 지연 또는 다른 인터넷 QoS 메트릭스를 계수함으로써 업스트림 속도를 측정할 수 있다. (단계 316)
서버 또는 에이전트는 업스트림(flow3, flow4) 및/또는 다운스트림(flow1, flow2) 측정값을 분석한다. (단계 320)
업스트림 flow3과 flow4 사이의 성능 파라미터 측정값 차이가 임계값2보다 크거나, 및/또는 다운스트림 flow1과 flow2의 성능 파라미터 측정값 차이가 임계값1보다 큰가? (단계 321)
만약 그렇다면, 네트워크 중립성 위반이 있을 수 있다. (단계 322)
만약 그렇지 않다면, 네트워크 중립 상태가 받아들여질 수 있다(즉, 네트워크 중립성 OK). 다운스트림 네트워크 중립 상태는 서버 또는 에이전트에 의해 다운스트림 성능 파라미터를 측정하고 제1 흐름과 제2 흐름 사이에 차이가 있는지를 판단함으로써 결정할 수 있다. 업스트림 네트워크 중립 상태는 서버 또는 에이전트에 의해 업스트림 성능 파라미터를 측정하고 제3 흐름과 제4 흐름 사이에 차이가 있는지를 판단함으로써 결정할 수 있다. (단계 324)
선택적으로, 에이전트는 다운스트림 속도 또는 다른 성능 파라미터를 측정하여 flow1과 flow2 사이에 차이가 있는지를 판단한다. 측정된 데이터는 단계 320으로 입력된다. (단계 318)
선택적으로, 에이전트는 업스트림 속도 또는 다른 성능 파라미터를 측정하여 flow3과 flow4 사이에 차이가 있는지를 판단한다. 측정된 데이터는 단계 320으로 입력된다. (단계 319)
단계 302 및 단계 312와 관련하여, 모든 측정값에 대해 데이터 흐름이 생성될 필요는 없을 수도 있다. 일부 실시예에서는, 서버/에이전트는 에이전트/서버가 나중에 다운로드할 수 있는 측정값 파일을 저장할 수 있다. 즉, 서버와 에이전트는 생성된 데이터 흐름을 어떤 한 기간에 저장하고, 서버와 에이전트는 저장된 데이터 흐름을 다른 기간에 전송할 수 있다. 다른 실시예에서는, 서버 또는 에이전트가 업스트림 및 다운스트림 데이터 흐름을 순차적으로 측정한다. 단계 304와 관련하여, 대부분의 속도 테스트 프로그램에서는, 에이전트가 HTTP GET 명령을 내렸기 때문에 서버가 다운스트림 패킷을 에이전트로 전송할 수 있다. 서버 패킷 전송(다운스트림)은 에이전트 다운로드와 등가이다.
제2 방법
도 3c와 도 3b는 본 문서의 다른 실시예에 따라 네트워크 중립 상태를 검지하기 위한 플로우차트 360과 340을 각각 나타낸다. 이 방법은 다운스트림과 업스트림 데이터 흐름을 동시에 측정할 수 있다. 일부 필터링/드로틀링은 업스트림 및 다운스트림 트래픽 패턴이 모두 특정 유형의 트래픽과 일치하는 경우에만 트리거될 수 있기 때문에 다운스트림과 업스트림 측정이 동시에 실행된다. 트래픽 필터링은 도 1b와 도 1c에 도시되어 있다. 이 방법은 다음과 같은 단계로 구성된다:
서버 또는 에이전트의 측정 명령을 호출하는 것으로부터 시작한다.
서버는 두 개의 데이터 흐름: 1) 스푸프되지 않은 데이터 흐름1(flow1); 2) 스푸프된 데이터 흐름2(flow2)를 생성한다. 스푸핑은 L4, L5, L6 또는 L7에서 실현될 수 있다. (단계 362)
서버는 2개의 데이터 흐름(flow1과 flow2)을 인터넷 네트워크를 통해 에이전트로 전송한다. (단계 364)
서버 또는 에이전트는 성능 파라미터를 측정하여 flow1과 flow2 사이에 차이가 있는지를 판단한다. 성능 파라미터는 성공적으로 전송된 패킷의 수, 왕복 시간(RTT), 패킷 손실률, 단방향 지연 또는 다른 인터넷 QoS 메트릭스를 계수함으로써 다운스트림 속도를 측정할 수 있다. (단계 366)
에이전트는 두 개의 데이터 흐름: 1) 스푸프되지 않은 데이터 흐름3(flow3); 2) 스푸프된 데이터 흐름4(flow4)를 생성한다. 스푸핑은 L4, L5, L6 또는 L7에서 실현될 수 있다. (단계 372)
에이전트는 2개의 데이터 흐름(flow3과 flow4)을 인터넷 네트워크를 통해 서버로 전송한다. (단계 374)
서버 또는 에이전트는 성능 파라미터를 측정하여 flow3과 flow4 사이에 차이가 있는지를 판단한다. 성능 파라미터는 성공적으로 전송된 패킷의 수, 왕복 시간(RTT), 패킷 손실률, 단방향 지연 또는 다른 인터넷 QoS 메트릭스를 계수함으로써 다운스트림 속도를 측정할 수 있다. (단계 376)
선택적으로, 서버 측정값이 에이전트로 전송되거나 그 반대로 전송된다. (단계 378)
서버 또는 에이전트는 업스트림(flow3, flow4) 및/또는 다운스트림(flow1, flow2) 측정값을 분석한다. (단계 320)
업스트림 flow3과 flow4 사이의 성능 파라미터 측정값의 차이가 임계값2보다 크거나, 및/또는 다운스트림 flow1과 flow2 사이의 성능 파라미터 측정값의 차이가 임계값1보다 큰가?(단계 321)
만약 그렇다면, 네트워크 중립성 위반이 있을 수 있다. (단계 322)
만약 그렇지 않다면, 네트워크 중립 상태가 받아들여질 수 있다(즉, 네트워크 중립 상태 OK). 다운스트림 네트워크 중립 상태는, 서버 또는 에이전트에 의해 다운스트림 성능 파라미터를 측정하고 제1 흐름과 제2 흐름 사이에 차이가 있는지를 판단함으로써 결정될 수 있다. 업스트림 네트워크 중립 상태는, 서버 또는 에이전트에 의해 업스트림 성능 파라미터를 측정하고 제3 흐름과 제4 흐름 사이에 차이가 있는지를 판단함으로써 결정될 수 있다. (단계 324)
단계 362 및 단계 372와 관련하여, 모든 측정값에 대해 데이터 흐름이 생성될 필요는 없을 수도 있다. 서버/에이전트는 에이전트/서버가 나중에 다운로드할 수 있는 측정값 파일을 저장할 수 있다. 단계 364와 관련하여, 대부분의 속도 테스트 프로그램에서는, 에이전트가 HTTP GET 명령을 내렸기 때문에 서버가 다운스트림 패킷을 에이전트로 전송할 수 있다. 서버 패킷 전송(다운스트림)은 에이전트 다운로드와 등가이다.
D. 시스템 실시예
실시예에서는, 본 특허 문서의 측면은 정보처리 시스템/컴퓨팅 시스템으로 향하거나 실현될 수 있다. 이 개시의 목적상, 컴퓨팅 시스템은 비즈니스, 과학, 제어 또는 다른 목적을 위해 어떤 형태의 정보, 지능(intelligence), 또는 데이터를 계산, 산출, 결정, 분류, 처리, 전송(송신), 수신, 검색, 발신, 라우트, 스위치, 저장, 표시, 통신, 매니페스트, 검지, 기록, 재생, 취급 또는 활용하도록 동작 가능한 기구의 모든 기기 또는 집합체(aggregate)를 포함할 수 있다. 예를 들어, 컴퓨팅 시스템은 개인용 컴퓨터(예를 들어, 랩톱), 태블릿 컴퓨터, 팜플렛, 개인용 디지털 어시스턴트(personal digital assistant, PDA), 스마트폰, 스마트 워치, 스마트 패키지, 서버(예를 들어, 블레이드 서버 또는 랙 서버), 네트워크 저장 장치 또는 임의의 다른 적절한 장치일 수 있으며, 크기, 형상, 성능, 기능 및 가격 면에서 다를 수도 있다. 컴퓨팅 시스템은 RAM(Random Access Memory), 중앙처리장치(CPU) 또는 하드웨어 또는 소프트웨어 제어 로직, ROM 및/또는 다른 유형의 메모리와 같은 하나 이상의 처리 자원을 포함할 수 있다. 컴퓨팅 시스템의 추가의 구성 요소는 키보드, 마우스, 터치스크린 및/또는 비디오 디스플레이와 같은 다양한 입출력(I/O) 장치뿐만 아니라 하나 이상의 디스크 드라이브, 하나 이상의 외부 장치와의 통신을 위한 네트워크 포트를 포함할 수 있다. 또한 컴퓨팅 시스템은 다양한 하드웨어 컴포넌트들 사이의 통신을 전송하도록 동작 가능한 하나 이상의 버스를 포함할 수 있다.
도 4는 본 개시의 실시예에 따른 컴퓨팅 장치/정보 처리 시스템(또는 컴퓨팅 시스템)의 단순화된 블록 다이어그램을 나타낸다. 비록 정보처리 시스템이 다르게 구성될 수도 있고 다른 컴포넌트를 포함할 수도 있다는 점을 이해해야 하지만, 시스템(400)에 대해 나타낸 기능은 정보처리 시스템의 다양한 실시예를 지원하도록 동작할 수 있음을 이해하게 될 것이다.
도 4에 도시된 바와 같이, 시스템(400)은 컴퓨팅 자원을 제공하고 컴퓨터를 제어하는 하나 이상의 중앙처리장치(CPU)(401)를 포함한다. CPU(401)는 마이크로프로세서 등으로 실현될 수 있으며, 하나 이상의 그래픽 처리 장치(GPU)(417) 및/또는 수학적 계산을 위한 부동 소수점 코프로세서를 포함할 수도 있다. 시스템(400)은 또한 랜덤 액세스 메모리(random-access memory, RAM), 읽기 전용 메모리(read-only memory, ROM) 또는 양쪽 모두의 형태일 수 있는 시스템 메모리(402)를 포함할 수 있다.
도 4에 나타낸 바와 같이, 다수의 컨트롤러와 주변 장치도 제공될 수 있다. 입력 컨트롤러(403)는 키보드, 마우스 또는 스타일러스와 같은 다양한 입력 장치(404)에 대한 인터페이스를 나타낸다. 스캐너(406)와 통신하는 스캐너 컨트롤러(405)도 있을 수 있다. 시스템(400)은 또한 자기 테이프나 디스크와 같은 저장 매체를 포함하는 하나 이상의 저장 장치(408)와 인터페이스하기 위한 스토리지 컨트롤러(407)를 포함할 수도 있고, 운영 체제, 유틸리티 및 응용 프로그램에 대한 명령의 프로그램을 기록하기 위해 사용될 수 있는 광학 매체를 포함할 수도 있으며, 여기에는 본 발명의 다양한 측면을 실현하는 프로그램의 실시예를 포함할 수도 있다. 저장장치(408)는 또한 본 발명에 따라 처리되는 데이터나 처리되어야 할 데이터를 저장하기 위해 사용될 수도 있다. 시스템(400)은 또한 브라운관(CRT), 박막 트랜지스터(TFT) 디스플레이 또는 다른 유형의 디스플레이일 수 있는 디스플레이 장치(411)에 인터페이스를 제공하기 위한 디스플레이 컨트롤러(409)를 포함할 수도 있다. 컴퓨팅 시스템(400)은 또한 프린터(413)와 통신하기 위한 프린터 컨트롤러(412)도 포함할 수 있다. 통신 컨트롤러(414)는, 시스템(400)이 인터넷, 클라우드 자원(예를 들어, 이더넷 클라우드, FCoE(Fiber Channel over Ethernet)/데이터 센터 브리징(DCB) 클라우드 등), LAN(local area network), 광역 네트워크(WAN), 저장 영역 네트워크(SAN)를 포함하는 다양한 네트워크를 통해 또는 적외선 신호를 포함한 적절한 전자파 캐리어 신호를 통해 원격 장치에 연결될 수 있는 하나 이상의 통신 장치(415)와 인터페이스할 수 있다.
도시된 시스템에서, 모든 주요 시스템 컴포넌트는 하나 이상의 물리적 버스를 나타낼 수 있는 버스(416)에 연결될 수 있다. 그러나, 다양한 시스템 컴포넌트는 서로 물리적으로 근접하거나 근접하지 않을 수도 있다. 예를 들어, 입력 데이터 및/또는 출력 데이터는 한 물리적 위치로부터 다른 물리적 위치로 원격으로 전송될 수 있다. 게다가, 이 발명의 다양한 측면을 실현하는 프로그램은 네트워크를 통해 원격 위치(예를 들어, 서버)로부터 액세스될 수 있다. 이러한 데이터 및/또는 프로그램은, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체; CD-ROM 및 홀로그래픽 장치와 같은 광학 매체; 자기 광학 매체; 및 특별히 응용 주문형 집적회로(application specific integrated circuit, ASIC), 프로그램 가능한 논리 장치(programmable logic device, PLD), 플래시 메모리 장치, 그리고 ROM 및 RAM 장치와 같은 프로그램 코드를 저장하거나 저장 및 실행하도록 구성된 하드웨어 장치를 포함하지만 이에 한정되지 않는 임의의 다양한 기계 판독 가능한 매체를 통해 전달될 수 있다.
본 발명의 실시예는 단계들이 수행되도록 하는 하나 이상의 프로세서 또는 처리 장치에 대한 명령과 함께 하나 이상의 비일시적 컴퓨터 판독 가능 매체에 암호화(encode)될 수 있다. 하나 이상의 비일시적 컴퓨터 판독 가능 매체는 휘발성 및 비휘발성 메모리를 포함해야 한다는 점에 유의해야 한다. 하드웨어 실현 또는 소프트웨어/하드웨어 실현을 포함하는 대체 실현이 가능하다는 점에 유의해야 한다. 하드웨어 실현되는 기능들은 ASIC, 프로그래밍 가능한 어레이, 디지털 신호 처리 회로 등을 사용하여 실현될 수 있다. 따라서, 모든 청구항에서 "수단"이라는 용어는 소프트웨어와 하드웨어 실현을 모두 커버하기 위한 것이다. 마찬가지로, 여기서 사용되는 "컴퓨터 판독 가능 매체 또는 미디어(media, 매체)"라는 용어는 소프트웨어 및/또는 이에 매립된 명령의 프로그램을 가진 하드웨어 또는 이들의 조합을 포함한다. 이러한 실현 대안을 염두에 두고, 도면 및 그에 수반되는 설명은 이 기술분야에서 통상의 지식을 가진 자가 필요한 처리를 수행하기 위해 프로그램 코드(예를 들어, 소프트웨어)를 기록하거나 및/또는 회로(하드웨어)를 제작하는 데에 필요한 기능 정보를 제공하는 것으로 이해해야 한다.
본 발명의 실시예는 다양한 컴퓨터 실현 동작을 수행하기 위해 컴퓨터 코드를 가지고 있는 비일시적이고 유형적인 컴퓨터 판독 가능 매체를 가진 컴퓨터 제품과 더욱 관련이 있을 수 있다는 점에 유의해야 한다. 매체와 컴퓨터 코드는 본 발명의 목적을 위해 특별히 설계되고 구축된 코드일 수 있거나, 또는 관련 기술분야에서 통상의 지식을 가진 사람들이 알고 있거나 이용할 수 있는 종류의 것일 수도 있다. 유형적인 컴퓨터 판독 가능 매체의 예는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체; CD-ROM 및 홀로그래픽 장치와 같은 광학 매체; 자기 광학 매체; 및 특별히 응용 주문형 집적회로(ASIC), 프로그램 가능한 논리 장치(PLD), 플래시 메모리 장치, 그리고 ROM 및 RAM 장치와 같은 프로그램 코드를 저장하거나 저장 및 실행하도록 구성된 하드웨어 장치를 포함하지만 이에 한정되지 않는다. 컴퓨터 코드의 예로는 컴파일러에 의해 생성된 것과 같은 기계 코드, 및 번역기를 사용하여 컴퓨터에 의해 실행되는 더 높은 레벨 코드를 포함하는 파일을 들 수 있다. 본 발명의 실시예는 처리장치에 의해 실행되는 프로그램 모듈에 있을 수 있는 기계 실행 가능 명령으로서 전체 또는 부분적으로 실현될 수 있다. 프로그램 모듈의 예로는 라이브러리, 프로그램, 루틴, 객체, 컴포넌트 및 데이터 구조를 들 수 있다. 분산형 컴퓨팅 환경에서, 프로그램 모듈은 물리적으로 로컬, 원격 또는 둘 다의 설정에 위치될 수 있다.
이 기술분야에서 통상의 지식을 가진 사람은 어떤 컴퓨터 시스템이나 프로그래밍 언어도 본 발명의 프랙티스에 매우 중요하다는 것을 인식할 것이다. 이 기술분야에서 통상의 지식을 가진 사람은 또한 위에서 설명한 많은 요소들이 물리적으로 또는 기능적으로 서브 모듈로 분리되거나 함께 결합될 수 있다는 것을 인식할 것이다. 선행의 예 및 실시예가 예시적이며, 본 개시의 범위에 한정되지 않는다는 것을 이 기술분야에서 통상의 지식을 가진 사람들이라면 인식할 것이다. 명세서를 읽고 도면을 연구할 때 이 기술분야에서 통상의 지식을 가진 사람들에게 명백한 모든 치환(permutation), 개선, 등가, 조합 및 향상은 본 개시의 진정한 정신과 범위에 포함되도록 의도되었다. 또한 모든 청구항의 요소들은 복수의 종속성, 구성 및 결합을 포함하여 다르게 배열될 수 있다는 점에 유의해야 한다.

Claims (22)

  1. 서버 또는 에이전트에 의해 측정 명령을 호출하는 단계;
    서버에 의해, 스푸프되지 않은 데이터를 포함하는 제1 흐름과 스푸프된 데이터를 포함하는 제2 흐름을 생성하는 단계로서, 상기 서버는 상이한 서비스들의 측정된 성능에 기초하여 업데이트되는 스푸프 알고리즘의 데이터베이스를 유지하는, 단계;
    서버에 의해, 다운스트림의 제1 흐름 및 제2 흐름을 인터넷 네트워크를 통해 에이전트로 전송하는 단계; 및
    서버 또는 에이전트에 의해, 다운스트림 성능 파라미터를 측정하고 제1 흐름과 제2 흐름 사이에 차이가 있는지 여부를 판단함으로써 다운스트림 네트워크 중립 상태를 결정하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 스푸프되지 않은 데이터는 인터넷 서비스 제공자에 의해 변경되지 않는 데이터를 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서, 스푸프되지 않은 데이터는 웹서핑 데이터, 모바일 애플리케이션 데이터, 파일 전송 데이터, VoIP 데이터, 오디오 스트리밍 데이터 또는 의사 랜덤 데이터를 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서, 다운스트림 네트워크 중립 상태는 제1 흐름과 제2 흐름 사이의 차이가 제1 임계값보다 크지 않은 경우에 받아들여지는 것을 특징으로 하는 방법.
  5. 삭제
  6. 제1항에 있어서, 서버와 에이전트는 생성된 데이터 흐름을 어떤 한 기간에 저장하고, 서버와 에이전트는 저장된 데이터 흐름을 다른 기간에 전송하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서, 서버 또는 에이전트는 다운스트림 데이터 흐름을 순차적으로 측정하는 것을 특징으로 하는 방법.
  8. 삭제
  9. 제1항에 있어서, 스푸프되지 않은 데이터 흐름과 스푸프된 데이터 흐름은 HTTP GET 명령을 활용하는 것을 특징으로 하는 방법.
  10. 제1항에 있어서, 다운스트림 성능 파라미터는 성공적으로 전송된 패킷의 수, 왕복 시간(RTT), 패킷 손실률 또는 단방향 지연을 계수함으로써 속도를 측정하는 것을 특징으로 하는 방법.
  11. 제1항에 있어서, 스푸프된 데이터는 인터넷 네트워크에 의해 변경되고 계층 4, 계층 5, 계층 6 또는 계층 7에서 실현되는 데이터를 포함하는 것을 특징으로 하는 방법.
  12. 제11항에 있어서, 스푸프된 데이터는 제2 흐름의 비디오 스트림에 패키징되는 것을 특징으로 하는 방법.
  13. 서버 또는 에이전트에 의해 측정 명령을 호출하는 단계;
    서버에 의해, 스푸프되지 않은 데이터를 포함하는 제1 흐름과 스푸프된 데이터를 포함하는 제2 흐름을 생성하는 단계로서, 상기 서버는 상이한 서비스들의 측정된 성능에 기초하여 업데이트되는 스푸프 알고리즘의 데이터베이스를 유지하는, 단계;
    서버에 의해, 제1 흐름 및 제2 흐름을 인터넷을 통해 에이전트로 전송하는 단계;
    서버 또는 에이전트에 의해, 다운스트림 성능 파라미터를 측정하고 제1 흐름과 제2 흐름 사이에 차이가 있는지 여부를 판단하는 단계; 및
    에이전트에 의해, 스푸프되지 않은 데이터를 포함하는 제3 흐름과 스푸프된 데이터를 포함하는 제4 흐름을 생성하는 단계를 포함하는 것을 특징으로 하는 방법.
  14. 제13항에 있어서, 네트워크 중립 상태는 제1 흐름과 제2 흐름 사이의 차이가 제1 임계값보다 크지 않은 경우에 받아들여지는 것을 특징으로 하는 방법.
  15. 제13항에 있어서, 네트워크 중립 상태는, 제1 흐름과 제2 흐름 사이의 차이가 제1 임계값보다 큰 경우에 받아들여지지 않는 것을 특징으로 하는 방법.
  16. 삭제
  17. 인터넷 네트워크를 통해 에이전트와 결합되고, 데이터 흐름의 성능 파라미터를 측정할 수 있는 프로브와 스푸프 알고리즘의 데이터베이스를 포함하는 서버;
    스푸핑 기능과, 데이터의 다른 흐름의 성능 파라미터를 측정할 수 있는 다른 프로브를 포함하는 에이전트; 및
    심층 패킷 검사(DPI)와 트래픽 셰이퍼에 연결된 경계 게이트웨이(BG)를 포함하는 인터넷 네트워크를 포함하되,
    서버와 에이전트는 각각 다운스트림 데이터 흐름에 대해 스푸프되지 않은 데이터 흐름과 컴패니언 스푸프된 데이터 흐름을 각각 생성하며, 상기 서버는 상이한 서비스들의 측정된 성능에 기초하여 업데이트되는 상기 스푸프 알고리즘의 데이터베이스를 유지하고,
    다운스트림의 스푸프되지 않은 데이터 흐름과 다운스트림의 스푸프된 데이터 흐름 사이의 차이를 판단함으로써 네트워크 중립 상태를 결정하는 것을 특징으로 하는 시스템.
  18. 제17항에 있어서, 다운스트림의 스푸프되지 않은 데이터 흐름과 다운스트림의 스푸프된 데이터 흐름 사이의 차이가 제2 임계값보다 작은 경우에 네트워크 중립 상태가 받아들여지는 것을 특징으로 하는 시스템.
  19. 제17항에 있어서, 스푸프되지 않은 데이터 흐름과 스푸프된 데이터 흐름이 HTTP GET 명령을 활용하는 것을 특징으로 하는 시스템.
  20. 제17항에 있어서, 인터넷 네트워크는 애플리케이션 서버를 더 포함하는 것을 특징으로 하는 시스템.
  21. 제13항에 있어서, 서버와 에이전트는 그들의 생성된 데이터 흐름을 어떤 한 기간에 저장하고, 서버와 에이전트는 그들의 저장된 데이터 흐름을 다른 기간에 전송하는 것을 특징으로 하는 방법.
  22. 제13항에 있어서, 스푸프된 데이터가 비디오 스트림에 패키징되어 있는 것을 특징으로 하는 방법.
KR1020207022043A 2018-01-31 2019-01-24 네트워크 중립성 시험을 위한 시스템 및 방법 KR102442349B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862624467P 2018-01-31 2018-01-31
US62/624,467 2018-01-31
PCT/US2019/014962 WO2019152251A1 (en) 2018-01-31 2019-01-24 Systems and methods for net neutrality testing

Publications (2)

Publication Number Publication Date
KR20200108293A KR20200108293A (ko) 2020-09-17
KR102442349B1 true KR102442349B1 (ko) 2022-09-08

Family

ID=66290514

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207022043A KR102442349B1 (ko) 2018-01-31 2019-01-24 네트워크 중립성 시험을 위한 시스템 및 방법

Country Status (10)

Country Link
US (2) US11381495B2 (ko)
EP (1) EP3747162A1 (ko)
KR (1) KR102442349B1 (ko)
CN (1) CN111727588A (ko)
AU (1) AU2019213577B2 (ko)
BR (1) BR112020015691A2 (ko)
CA (1) CA3090091A1 (ko)
CL (1) CL2020001995A1 (ko)
MX (1) MX2020008078A (ko)
WO (1) WO2019152251A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020243533A1 (en) * 2019-05-31 2020-12-03 Apple Inc. Systems and methods for performance data streaming, performance data file reporting, and performance threshold monitoring

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017052564A1 (en) 2015-09-24 2017-03-30 Assia, Inc Method and apparatus for detecting internet connection problems

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050125532A1 (en) * 2000-05-26 2005-06-09 Gur Kimchi Traversing firewalls and nats
CN1552147A (zh) * 2001-02-06 2004-12-01 休斯电子公司 性能增强代理和增强性能的方法
US7207062B2 (en) * 2001-08-16 2007-04-17 Lucent Technologies Inc Method and apparatus for protecting web sites from distributed denial-of-service attacks
US7802008B2 (en) * 2002-08-12 2010-09-21 Matsushita Electric Industrial Co., Ltd. Quality of service management in network gateways
US8630192B2 (en) * 2009-01-28 2014-01-14 Headwater Partners I Llc Verifiable and accurate service usage monitoring for intermediate networking devices
JP5214402B2 (ja) * 2008-10-22 2013-06-19 沖電気工業株式会社 パケット転送装置、パケット転送方法、パケット転送プログラム及び通信装置
US9413616B2 (en) * 2009-10-14 2016-08-09 Hewlett Packard Enterprise Development Lp Detection of network address spoofing and false positive avoidance
CN101815002B (zh) * 2009-12-24 2012-05-23 中国人民解放军理工大学 一种基于多测度离差最大化的网络整体性能评价方法
CN102025640A (zh) * 2010-12-24 2011-04-20 北京星网锐捷网络技术有限公司 流量控制方法、装置及网络设备
WO2012095193A1 (en) * 2011-01-14 2012-07-19 Thomson Licensing Inferring shaping
GB2494406A (en) * 2011-09-06 2013-03-13 Skype System to detect protocol discrimination by network provider in the event of communication problems
US9655005B2 (en) * 2014-10-07 2017-05-16 Qualcomm Incorporated Offload services via a neutral host network
US10356567B2 (en) * 2014-11-24 2019-07-16 Nexmo, Inc. Multi-channel communication system
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10721195B2 (en) * 2016-01-26 2020-07-21 ZapFraud, Inc. Detection of business email compromise
CN107517166A (zh) * 2016-06-16 2017-12-26 中兴通讯股份有限公司 流量控制方法、装置及接入设备
US20180115469A1 (en) * 2016-10-21 2018-04-26 Forward Networks, Inc. Systems and methods for an interactive network analysis platform
EP3516826B1 (en) * 2016-12-30 2021-02-17 Google LLC Systems and methods for configuration verification across secured network boundaries
US10644953B2 (en) * 2017-06-02 2020-05-05 Federated Wireless, Inc. Cloud-based network architecture centered around a software-defined spectrum controller
US11002858B2 (en) * 2017-12-13 2021-05-11 Uti Limited Partnership Detection of spoofed GNSS signals using IMU and barometer sensors
US10986001B2 (en) * 2018-01-25 2021-04-20 Nokia Solutions And Networks Oy System and method for quality of service detection of encrypted packet flows

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017052564A1 (en) 2015-09-24 2017-03-30 Assia, Inc Method and apparatus for detecting internet connection problems

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A. M. Kakhki et. al., "Identifying traffic differentiation in mobile networks", Proc. 2015 Internet Measurement Conference, pp.239-251(2015.10.) 1부.*
M. B. Tariq et. al., "Detecting network neutrality violations with causal inference", Proc. 5th International Conference on Emerging Networking Experiments and Technologies, ACM, pp.289-300(2009.)
P. Kanuparthy and C. Dovrolis, "DiffProbe-Detecting ISP service discrimination", 2010 Proc. IEEE INFOCOM, IEEE, pp.1-9(2010.03.) 1부.*
Y. Zhang, Z. M. Mao and M. Zhang, "Ascertaining the Reality of Network Neutrality Violation in Backbone ISPs", Proc. 7th ACM Workshop on Hot Topics in Networks(Hotnets-VII), Calgary, Alberta, Canada,

Also Published As

Publication number Publication date
US20210218660A1 (en) 2021-07-15
MX2020008078A (es) 2020-11-06
BR112020015691A2 (pt) 2020-12-08
AU2019213577B2 (en) 2022-02-24
EP3747162A1 (en) 2020-12-09
CL2020001995A1 (es) 2021-01-15
KR20200108293A (ko) 2020-09-17
CA3090091A1 (en) 2019-08-08
US11381495B2 (en) 2022-07-05
AU2019213577A1 (en) 2020-09-03
CN111727588A (zh) 2020-09-29
WO2019152251A1 (en) 2019-08-08
US20220337502A1 (en) 2022-10-20

Similar Documents

Publication Publication Date Title
Dhamdhere et al. Inferring persistent interdomain congestion
US10326848B2 (en) Method for modeling user behavior in IP networks
CN111193666A (zh) 使用自适应机器学习探测预测应用体验质量度量
Garrett et al. Monitoring network neutrality: A survey on traffic differentiation detection
Mirkovic et al. Towards user-centric metrics for denial-of-service measurement
US20180324061A1 (en) Detecting network flow states for network traffic analysis
Gharakheili et al. iTeleScope: Softwarized network middle-box for real-time video telemetry and classification
CN114006829A (zh) 基于历史数据合成探测参数
Şimşek A new metric for flow‐level filtering of low‐rate DDoS attacks
US20220337502A1 (en) Systems and methods for net neutrality testing
Sundberg et al. Efficient continuous latency monitoring with eBPF
US20160248652A1 (en) System and method for classifying and managing applications over compressed or encrypted traffic
Li et al. Content distribution for mobile Internet: A cloud-based approach
Wang et al. An FPGA-based high-speed network performance measurement for RFC 2544
Ganchev et al. Internet tomography: an introduction to concepts, techniques, tools and applications
Maghsoudlou et al. FlowDNS: correlating Netflow and DNS streams at scale
Bujlow et al. A method for evaluation of quality of service in computer networks
Shmeis et al. Localizing Traffic Differentiation
US20230403209A1 (en) Conferencing service rating determination
Bonafiglia et al. Enforcement of dynamic HTTP policies on resource-constrained residential gateways
Gadallah et al. A seven-dimensional state flow traffic modelling for multi-controller Software-Defined Networks considering multiple switches
Zhou et al. Estimating End-to-End Available Bandwidth for Cyber-Physical Applications in Hybrid Networks
US20230403434A1 (en) Streaming service rating determination
US20230398442A1 (en) Gaming service rating determination
Pavlidis Automated monitoring and security services in federated software-defined network infrastructures

Legal Events

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