KR101114152B1 - 네트워크 성능 데이터를 수집 및 분석하는 방법 - Google Patents

네트워크 성능 데이터를 수집 및 분석하는 방법 Download PDF

Info

Publication number
KR101114152B1
KR101114152B1 KR1020107023216A KR20107023216A KR101114152B1 KR 101114152 B1 KR101114152 B1 KR 101114152B1 KR 1020107023216 A KR1020107023216 A KR 1020107023216A KR 20107023216 A KR20107023216 A KR 20107023216A KR 101114152 B1 KR101114152 B1 KR 101114152B1
Authority
KR
South Korea
Prior art keywords
data
client
server
servers
connection data
Prior art date
Application number
KR1020107023216A
Other languages
English (en)
Other versions
KR20100134046A (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 KR20100134046A publication Critical patent/KR20100134046A/ko
Application granted granted Critical
Publication of KR101114152B1 publication Critical patent/KR101114152B1/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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • 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/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Computer And Data Communications (AREA)

Abstract

네트워크 성능 데이터를 수집 및 분석하는 기술들을 설명한다. 데이터를 클라이언트들에 제공하는 데이터 센터의 각 서버에 재전송 데이터를 포함하는 연결 데이터가 저장되도록, 서버들이 변경된다. 다음으로, 저장된 수집 데이터를 각각의 서버는 데이터를 집합화하는 수집 서버에 송신한다. 수집 서버는 서버가 위치하는 데이터 센터 및 클라이언트의 라우팅 또는 위치의 클러스터에 기반하여 서버들로부터의 연결 데이터를 분류한다. 클라이언트의 위치는 IP 주소 프리픽스 또는 자율 시스템 번호에 의해 라우팅되는 클라이언트의 지리적 맵핑에 기반할 수 있다. 특정 데이터 센터로부터 특정 클라이언트 위치로의 높은 재전송율은 네트워크의 소정 영역의 문제를 나타낼 수 있다. 데이터 전송의 라우팅이 상이한 데이터 센터로 변경되거나 또는 상이한 루트를 할당하여 변경될 수 있다.

Description

네트워크 성능 데이터를 수집 및 분석하는 방법{Methods for Collecting and Analyzing Network Performance Data}
본 발명은 네트워크 성능에 관한 데이터의 수집 및 분석에 관한 것이다.
본 장에 설명되는 접근법들은 실행될 수 있는 접근법이지만, 반드시 이전에 구상되거나 실행되어진 접근법인 것은 아니다. 따라서, 달리 나타낸 것이 아니라면, 본 장에 설명된 접근법들은 모두 본 장에 포함된다는 이유만으로 종래 기술로 한정되는 것으로 가정되어서는 안 된다.
인터넷으로부터 데이터를 검색하는 중요성이 증가함에 따라, 데이터가 얼마나 빠르고 정확하게 전송될 수 있는지를 감시하고 분석하는 것이 중요하게 되었다. 예를 들어, 사용자가 "자동차" 라는 주제에 대해 더 배우기를 원할 수 있다. 사용자는 인터넷 검색 엔진 웹 사이트로 항해하고 검색 질의에 "자동차" 를 입력하여 검색을 시작할 수 있다. 이 요청은 검색 엔진의 검색 애플리케이션을 제공하는 데이터 센터들 중 하나의 데이터 센터에 위치하는 서버로 라우팅된다. 서버는 질의에 응하여 "자동차" 라는 주제에 관한 방문할 수 있는 자원들의 목록으로 클라이언트에 응답을 송신한다. 클라이언트 컴퓨터가 응답을 수신하면, 사용자에게 데이터를 표시한다. 사용자는 표시된 결과만을 볼 수 있지만, 요청과 응답이 네트워크에서 라우팅되는 방법이 사용자 경험에 영향을 미치게 된다. 검색 엔진 또는 다른 정보 제공자에게는, 사용자의 빠르고 정확한 데이터 수신을 보장하는 것이 양호한 사용자 경험을 제공하기 위한 하나의 중요한 관점이 된다.
데이터 제공자는 데이터의 효율적인 제공을 돕기 위해 데이터 센터에 위치하는 동일한 콘텐츠를 제공하는 다수의 서버를 소유한다. 본 명세서에 사용된 바와 같이, "데이터 센터" 라는 용어는 관련된 서버들의 집합을 가리킨다. 데이터 제공자가 임의의 네트워크 이상 또는 장애를 검출한 경우, 데이터 제공자를 향한 요청은 장애의 특성에 따라 데이터 센터의 상이한 서버 또는 전적으로 상이한 데이터 센터로 라우팅될 수 있다.
특정 데이터 센터에 속하는 서버들은 통상 동일한 건물 또는 단지 내에 있지만, 상이한 데이터 센터들은 종종 서로 지리적으로 멀리 떨어져 위치한다. 자연 재해 또는 재난에 의해 초래된 한 데이터 센터의 치명적인 장애가 다른 데이터 센터의 장애를 초래하지 않도록, 지리적 거리가 보호를 강화한다. 예를 들어, 한 데이터 센터가 뉴욕의 동부 해안에 위치하고, 다른 데이터 센터가 샌프란시스코의 서부 해안에 위치할 수 있다. 그러므로, 데이터 센터의 장애를 초래하는 지진이 샌프란시스코에 일어난 경우, 요청들이 대신 뉴욕의 데이터 센터로 라우팅될 수 있다.
또한, 분리된 데이터 센터들로 인해 대규모 데이터 공급자들이 서버의 부하를 더 효율적으로 활용할 수 있다. 예를 들어, 뉴욕의 데이터 센터가 85%의 서버 부하를 가질 수 있는데, 이는 서버에 다수의 연결이 이루어졌음을 나타낸다. 동시에 샌프란시스코의 데이터 센터가 35%의 서버 부하를 가질 수 있다. 서버 부하를 더 균등하게 활용하기 위해, 서버 부하가 같아질 때까지, 이전에는 뉴욕의 데이터 센터로 송신되었을 모든 후속 연결 요청들이 대신 샌프란시스코의 데이터 센터로 라우팅될 것이다.
다수의 데이터 센터로의 라우팅 또는 다양한 경로에 의한 라우팅은 또한 네트워크 상황에 대한 정보를 수집하고 이러한 상황에 기반한 조정을 통해 결정될 수 있다. 예를 들어, 네트워크 장애가 네트워크의 한 지점에서 발생할 수 있는데, 이는 이 네트워크 영역을 주행하는 모든 데이터 패킷들이 데이터 패킷 목적지에 전달되지 못하게 한다. 다른 예로서, 네트워크의 동일한 영역을 주행하는 너무 많은 데이터 패킷들에 의해 초래된 트래픽 정체로 인해, 네트워크 트래픽이 이 네트워크 영역에서 상당히 느려질 수 있다. 네트워크 트래픽이 가능한 한 원활하게 이동할 수 있도록, 네트워크에서 장애 또는 정체 지점을 식별하여 네트워크 라우팅을 조정할 수 있다. 따라서, 네트워크 및 네트워크 성능에 관한 가능한 한 많은 정보를 획득하는 것이 검색 엔진 같은 대규모 데이터 제공자에게 점점 중요해지고 있다.
본 발명은 동일한 도면 번호가 유사한 구성 요소를 가리키는 첨부 도면에서 제한의 의도가 아닌 예로서 설명된다.
도 1은 본 발명의 실시예에 따른 데이터 센터들, 서버들, 클라이언트들, 및 수집 서버 간의 관계를 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 네트워크 성능 데이터를 수집 및 분석하기 위한 연속하는 단계들을 나타낸 흐름도이다.
도 3은 본 발명의 실시예들이 구현될 수 있는 컴퓨터 시스템의 블록도이다.
네트워크 성능에 관한 데이터를 수집 및 분석하는 기술들을 설명한다. 이하의 명세서에서, 설명의 목적으로, 본 발명의 철저한 이해를 제공하기 위해 다수의 특정 상세가 기술된다. 그러나, 본 발명이 이러한 특정 상세들 없이도 실행될 수 있다는 것은 자명할 것이다. 다른 예들에서, 본 발명의 불필요한 모호함을 피하기 위해 공지된 구조 및 장치들이 블록도의 형태로 도시된다.
전체적인 개요
본 명세서에 사용된 바와 같이, "네트워크 성능 데이터" 는 네트워크의 데이터 전송 속도와 성능을 나타내는 데이터이다. 네트워크 성능 데이터는 또한 최종 사용자 성능을 나타낼 수 있다. 네트워크 성능 데이터는 서버와 클라이언트 간의 연결 데이터에 기반한다. 네트워크 성능 데이터는 발신지 IP 주소, 목적지 IP 주소, 발신지 포트, 송신된 데이터, 재전송된 데이터, 수신된 데이터, 최대 정체 윈도우, 데이터 패킷의 왕복 시간, 및 네트워크 성능을 판단하기 위해 사용될 수 있는 임의의 다른 측정 또는 계량을 포함한다. 네트워크 성능에 영향을 미치는 인자들 중에는 네트워크 트래픽 정체, 네트워크 장애, 또는 라우터 장애가 있다. 보다 나은 네트워크 성능을 보장하기 위해, 네트워크의 다양한 부분의 어려움을 검출하여 라우팅을 조정할 수 있다.
실시예에서, 데이터 제공자가 데이터를 클라이언트들에 제공하는 데이터 센터의 각 서버에 연결 데이터가 저장되도록, 서버들이 변경된다. 네트워크 문제를 검출하기 위해, 서버가 재전송된 데이터를 저장하도록 추가로 변경된다. 다른 실시예에서, 재전송된 데이터는 네트워크 문제를 검출하기 위해 사용되는 다수의 인자(예를 들어, 데이터 지연, 정체) 중 하나의 인자이다. 다음으로, 서버들 각각은 데이터를 집합화하는 수집 서버에 연결 데이터를 송신한다. 다수의 전송 및 재전송된 데이터 패킷들을 집합화하고 데이터 패킷들의 발신지와 목적지를 판단하는 것은 정체 또는 다른 문제점이 발생할 수 있는 네트워크 영역을 판단하는 것에 도움이 되고, 다음으로 라우팅이 네트워크에 응하여 변경될 수 있다.
실시예에서, 수집 서버는 서버가 위치하는 데이터 센터 및 클라이언트의 위치에 기반하여 서버들로부터의 연결 데이터를 분류한다. 클라이언트의 위치는 클라이언트의 지리적 맵핑, 자율 시스템 번호, 또는 IP 주소 범위에 기반할 수 있다. 자율 시스템 번호는 라우팅을 나타내는 번호이다. IP 주소 범위는 변화될 수 있다. 예를 들어, IP 주소 범위가 다수의 잠재적인 사용자를 갖는 큰 범위이거나 더욱 세분화(granularity)되었음을 나타내는 짧은 범위일 수 있다.
실시예에서, 분류된 데이터는 데이터 센터 및 클라이언트의 위치에 기반하여 분석될 수 있다. 특정 데이터 센터로부터 특정 클라이언트 위치로의 높은 재전송율은 네트워크의 소정 영역에 문제가 있음을 나타낼 수 있다. 다음으로, 데이터 전송의 라우팅이 상이한 데이터 센터로 변경되거나 또는 상이한 루트를 할당하여 변경될 수 있다.
실시예에 따라 서버들, 데이터 센터들, 수집 서버, 및 클라이언트들이 상호 작용하는 방법을 나타낸 블록도가 도 1에 도시된다. 도 1에는 세 개의 데이터 센터들, 데이터 센터(103), 데이터 센터(105), 및 데이터 센터(107)가 있다. 데이터 센터(103)는 두 개의 서버를 포함한다. 각각의 데이터 센터에 위치하는 서버들의 수는 구현예마다 굉장히 가변적일 수 있다. 서버(111)와 서버(113)는 데이터 센터(103)에 위치한다. 데이터 센터(105)도 또한 두 개의 서버를 포함한다. 서버(121)와 서버(123)는 데이터 센터(105)에 위치한다. 데이터 센터(107)는 세 개의 서버를 포함한다. 서버(131), 서버(133), 및 서버(135)는 데이터 센터(107)에 위치한다.
서버들 각각이 클라이언트와 연결된다. 클라이언트들은 클라이언트(151), 클라이언트(153), 클라이언트(155), 클라이언트(157), 및 클라이언트(159)로서 도시된다. 서버가 클라이언트와 연결될 경우에 재전송 데이터를 포함하는 연결 데이터를 저장하도록, 서버들이 변경된다. 연결 데이터는 또한 다른 모든 가용 서버들로부터 데이터를 수집하는 수집 서버(101)에 송신된다. 수집 서버에서, 수신된 연결 데이터는 다른 서버들로부터의 연결 데이터와 함께 집합화된다. 다음으로, 수집 서버는 서버가 위치하는 데이터 센터 및 클라이언트를 위해 할당된 실제 위치 또는 라우팅에 기반하여 연결 데이터를 분류한다. 이러한 정보에 의해 라우팅의 변경 또는 네트워크 문제의 추가 검토를 결정할 수 있다.
네트워크 성능 데이터를 서버에 저장
실시예에서, 데이터 제공자가 데이터를 클라이언트들에 제공하는 데이터 센터의 각 서버에 연결 데이터가 저장되도록, 서버들이 변경된다. 서버가 재전송된 데이터를 저장하도록 추가로 변경된다. 데이터 전송은 TCP를 포함하는 임의의 타입의 데이터 전송 프로토콜을 따를 수 있다. 전송 제어 프로토콜(TCP; Transmission Control Protocol)은 네트워킹된 호스트의 애플리케이션들이 다른 호스트로의 연결을 생성할 수 있게 하는 인터넷 프로토콜이다. 예를 들어, 웹 페이지를 요청하는 클라이언트가 한 호스트를 나타내고, 웹 페이지 콘텐츠를 클라이언트에 제공하는 서버가 다른 호스트를 나타낼 수 있다.
TCP 프로토콜은 호스트들 간의 연결에 관한 많은 특성을 갖는다. TCP는 송신기로부터 수신기로의 데이터의 신뢰할 수 있는 순차 전송을 보장한다. 순차 전송을 달성하기 위해, TCP는 또한 손실된 패킷들의 재전송 및 송신된 중복 패킷들의 폐기를 제공한다. TCP는 또한 동일한 호스트 상에서 운영되는 동시 애플리케이션들(예를 들어, 웹 서버와 이메일 서버)에 의한 다중 연결을 위한 데이터를 구별할 수 있다.
TCP 연결을 개시하기 위해, 개시 호스트는 초기 시퀀스 번호로 연결을 개시하기 위해 동기화(SYN) 패킷을 송신한다. 전송 중에 일어날 수 있는 어떤 단편화나 무질서에도 상관없이 전달된 데이터들이 순서대로 유지되도록, 초기 시퀀스 번호에 의해 각 호스트로부터 송신된 바이트들의 순서를 식별한다. 전송된 매 바이트에 대하여 시퀀스 번호가 증가한다. 각각의 송신된 바이트는 송신기에 의해 시퀀스 번호를 할당 받고, 다음으로 수신기는 전송 확인을 위해 송신기에 확인 응답(ACK)을 송신한다.
예를 들어, 컴퓨터(A; 서버)가 50의 시퀀스 번호를 갖는 4 바이트를 송신하면(패킷의 4 바이트에는 50, 51, 52, 53의 시퀀스 번호들이 할당됨), 컴퓨터(B; 클라이언트)는 컴퓨터(B)가 수신할 것으로 기대하는 다음 바이트를 나타내기 위해 컴퓨터(A)에 54의 확인 응답을 송신할 것이다. 컴퓨터(B)는 54의 확인 응답을 송신하여 바이트들(50, 51, 52, 53)이 정확하게 수신되었음을 시그널링한다. 어떤 계제에, 마지막 2 바이트가 손상되면, 컴퓨터(B)는 바이트들(50, 51)이 성공적으로 수신되었으므로 52의 확인 응답을 송신한다. 다음으로, 컴퓨터(A)가 시퀀스 번호 52로 시작되는 데이터 패킷들을 컴퓨터(B)에 재전송할 것이다.
실시예에서, 모든 데이터 센터 내의 각각의 서버는 서버로부터 임의의 클라이언트로의 연결 데이터를 저장하도록 변경된다. TCP 연결에 기반하여 연결 데이터를 저장하도록 서버의 핵심을 변화시킴에 의해 이러한 변경들이 구현된다. 실시예에서, 연결당 재전송된 바이트, SYN 패킷의 왕복 시간, 전송된 전체 바이트, 연결당 전체 처리율을 포함하는 모든 TCP 연결 흐름을 기록하도록, 핵심이 변경된다.
본 명세서에 사용된 바와 같이, "연결 데이터" 는 네트워크 연결에서 사용되는 임의의 측정, 계량, 또는 데이터를 가리킨다. 연결 데이터의 일부 예들은 발신지 IP 주소, 발신지 포트, 목적지 IP 주소, 목적지 포트, 송신된 데이터, 재전송된 데이터, 수신된 데이터, 수신된 중복 데이터, 최대 정체 윈도우, SYN 왕복 시간, 원활한 왕복 시간, 및 네트워크 연결을 위한 임의의 다른 데이터 또는 측정을 포함하지만 이에 한정되지 않는다. 연결 데이터는 임의의 포맷으로 저장될 수 있다. 실시예에서는, 연결 데이터가 발신지 IP 주소, 발신지 포트, 목적지 IP 주소, 목적지 포트, 송신된 데이터, 재전송된 데이터, 수신된 데이터, 수신된 중복 데이터, 최대 정체 윈도우, SYN 왕복 시간, 및 원활한 왕복 시간의 포맷으로 저장된다. 재전송된 데이터는 데이터 재전송이 서버로부터 발생한 경우에 그 발생을 나타낸다. 수신된 중복 데이터는 데이터 재전송이 클라이언트로부터 발생한 경우에 그 발생을 나타낸다.
연결 데이터는 또한 더 많은 정보를 저장하여 기능성을 추가할 수 있다. 예를 들어, 연결 데이터는 또한 연결이 이루어진 경우에 더욱 세분화된 응답 시간을 저장할 수 있다. 실시예에서, 왕복 시간만을 저장하기보다는, 서버가 완전한 응답을 송신하는데 걸린 경과 시간, 서버가 클라이언트 요청을 수신한 후 확인 응답을 송신하는데 걸린 경과 시간, 및 클라이언트가 요청을 송신하는데 걸린 경과 시간을 또한 저장한다. 데이터가 서버를 떠난 후에 데이터 전송의 처리율 또는 속도를 판단할 때, 이러한 더욱 미세하게 세분화된 시간이 보다 나은 정밀도를 가능하게 한다.
SYN 왕복 시간은 SYN 패킷의 전송 및 확인 응답의 수신 간의 경과 시간이다. 원활한 왕복 시간은 이웃으로의 패킷의 전송 및 확인 응답의 수신 간의 경과 시간이다. 원활한 왕복 시간은 특정 이웃에 대한 경로를 따른 링크 또는 링크들의 속도를 나타낸다. 경과 시간은 밀리세컨드 같은 임의의 시간 간격으로 측정될 수 있다.
실시예에서, 연결 데이터는 어떤 포맷팅 없이 원시 로그 또는 로그 파일로 저장된다. 실시예에서, 연결 데이터는 주기적으로 수집 서버에 송신되기 전의 시점에 서버에 저장된다. 다른 실시예에서, 연결 데이터가 서버에 의해 기록됨에 따라, 연결 데이터는 연속하여 수집 서버에 송신된다.
실시예에서, 수집 서버는 서버들 각각으로부터 연결 데이터를 수신한다. 수집 서버는 서버들 각각으로부터의 데이터를 집합화하고, 서버가 위치하는 데이터 센터에 기반하여 그리고 클라이언트의 위치를 나타내는 클러스터에 의해 서버들로부터의 연결 데이터를 분류한다. 클러스터링은 자율 시스템 번호 또는 가변 길이의 IP 주소 프리픽스에 의한 클라이언트의 지리적 맵핑에 기반할 수 있다.
지리적 맵핑에 의한 클러스터링
클라이언트의 지리적 맵핑이 지리 위치화(geolocation)를 통해 이루어질 수 있다. 본 명세서에 사용된 바와 같이, 지리 위치화는 인터넷에 연결된 컴퓨터 또는 장치의 현실 세계에서의 지리적 위치를 식별하는 것을 가리킨다. 지리 위치화는 지리적 위치를 IP 주소, MAC 주소, Wi-Fi 연결 위치, GPS 좌표, 또는 임의의 다른 식별 정보와 관련시켜 수행될 수 있다. 실시예에서, 특정 IP 주소가 기록된 경우, 그 특정 IP 주소의 소유자로 기입된 조직 및 물리적 주소가 발견되고, 다음으로 그 위치로부터 특정 IP 주소로 맵핑된다. 예를 들어, 서버가 1.2.3.4의 목적지 IP 주소를 기록한다. IP 주소가 샌프란시스코에 본사가 있는 ACME사가 소유하는 IP 주소 블록에 포함된다는 것을 판단하기 위해, IP 주소를 질의한다. (프록시 서버가 사용될 수도 있기 때문에) IP 주소 1.2.3.4의 클라이언트가 샌프란시스코에 물리적으로 위치한다는 절대적인 확실성은 없을지라도, IP 주소 1.2.3.4로 이루어진 대부분의 연결들이 샌프란시스코에 존재할 가능성이 높다. 네트워크 게이트웨이 및 라우터 위치를 추적하는 것 같은 다른 방법들이 또한 사용될 수 있다.
실시예에서, IP 주소는 지리 위치화 데이터 집합자(aggregator)의 클러스터에 기반하여 수집 서버에 의해 지리적 위치로 맵핑된다. IP 주소 위치 및 다른 방법에 기반하여 물리적 위치를 판단하는 캘리포니아 마운틴 뷰에 위치한 쿼바(Quova) 같은 다수의 지리 위치화 데이터 집합자가 있다. 다수의 IP 주소가 물리적 위치에 기반하여 그룹으로 클러스터링된다. 실시예에서, 물리적 위치는 세분화되어 변화될 수 있다. 예를 들어, 클러스터가 도시와 주(state)로 지리 위치화되는 경우도 있을 수 있다. 다른 경우에, 클러스터는 미국 북동부 같은 지역으로 지리 위치화될 수 있다. 또 다른 경우에, 클러스터가 국가로 지리 위치화될 수 있다.
자율 시스템 번호 및 IP 주소 프리픽스에 의한 클러스터링
실시예에서, 집합화된 데이터는 서버의 데이터 센터 및 자율 시스템 번호에 기반한 클러스터에 기반하여 수집 서버에 의해 분류된다. 자율 시스템 번호는 BGP 라우팅에서 사용되는 자율 시스템에 할당되며 라우팅이 데이터 전송을 위해 사용된다는 것을 나타내는 번호이다.
경계 게이트웨이 프로토콜(BGP; Border Gateway Protocol)은 인터넷의 핵심 라우팅 프로토콜이다. BGP는 네트워크에 도달하는 능력을 나타내는 "프리 픽스" 또는 IP 네트워크의 라우팅 테이블을 유지하여 작동한다. 라우팅 테이블의 정보는 목적지 네트워크의 IP 주소, 패킷이 송신될 경로를 주행하는데 필요한 시간, 및 "다음 홉(hop)" 이라고도 불리는, 목적지로 가는 도중에 패킷이 송신될 다음 스테이션의 주소를 포함하지만, 이에 한정되는 것은 아니다. BGP는 가용 경로 및 네트워크 정책에 기반하여 라우팅 결정을 내린다. 예를 들어, 동일한 목적지에 두 개의 가용 경로가 있는 경우, 패킷이 목적지에 가장 빨리 도달할 수 있게 하는 경로를 선택하여 라우팅을 결정한다. 이는 "가장 가까운" 루트를 되돌려준다.
본 명세서에 사용된 바와 같이, 자율 시스템은 단일의 명료하게 정의된 외부 라우팅 정책을 갖는 하나 이상의 네트워크 운용자에 의해 운용되는 IP 네트워크들의 그룹이다. 자율 시스템은 이웃하는 자율 시스템들 간에 외부 라우팅 정보를 교환하기 위해 사용되고 외부 시스템 자체의 식별자로 사용되는 전역적으로 고유한 자율 시스템 번호를 갖는다.
다른 실시예에서, 집합화된 데이터는 서버의 데이터 센터 및 가변 길이의 IP 주소 프리픽스에 기반한 클러스터에 기반하여 수집 서버에 의해 분류된다. 예를 들어, 집합화된 데이터는 1.2.3.x의 IP 주소 프리픽스에 기반하여 클러스터링될 수 있고, 여기서 모든 클러스터링된 항목들은 IP 주소 "1.2.3" 으로 시작하되, 0 내지 255 사이의 임의의 수가 "x" 의 자리를 대신한다. 이는 IP 범위의 세분화를 256개의 있을 수 있는 조합으로 한정한다. 다른 예에서, IP 주소 프리픽스의 세분화는 1.2.y.x와 같이 훨씬 더 거칠어질 수 있다. 이 예에서, "1.2" 로 시작하는 모든 IP 주소들은 65,536 (2562) 조합으로 "y" 를 위한 0 내지 255의 값 및 "x" 를 위한 0 내지 255의 값을 가지고 클러스터에 포함될 것이다. 더 많은 IP 주소들이 클러스터링될 수 있기 때문에, 세분화가 덜해진다.
저장된 데이터의 분석
집합화 및 분류된 연결 데이터는 수집 서버에 저장되어 네트워크 성능을 분석하는데 사용된다. 집합화 및 분류된 데이터는 네트워크 성능이 특정 데이터 센터에 기반하여 분석될 수 있는 포맷으로 저장된다. 실시예에서, 각 특정 데이터 센터에 대해, BGP에 기반한 자율 시스템 번호 또는 IP 주소의 지리 위치화 클러스터가 저장된다. IP 주소의 지리 위치 및 데이터 센터가 저장된 경우, 데이터 센터로부터 특정 지리적 위치로의 네트워크 성능이 판단될 수 있다. 예를 들어, 데이터 센터(1)로부터의 재전송율은 뉴욕 시에 대해 굉장히 높고 미국 동부 해안의 다른 모든 도시에 대해 적당할 수 있다. 이 정보에 의해, 데이터가 데이터 센터(1)로부터 뉴욕의 클라이언트들로 전송되는 경우의 네트워크 문제가 판단된다. 데이터 제공자는 문제가 있을 수 있는 뉴욕의 인터넷 서비스 제공자와 연락하거나 또는 데이터 트래픽을 상이한 방식으로 뉴욕에 라우팅할 수 있다.
다른 실시예에서, 네트워크 성능을 판단하기 위해 재전송율에만 의지하기 보다는 다른 인자들이 고려된다. 예를 들어, 네트워크 문제를 판단하기 위해 왕복 시간 또는 데이터 지연이 재전송과 함께 고려될 수 있다. 또 다른 실시예에서, 재전송율이 아닌 데이터는 단지 네트워크 문제를 검출하기 위해 고려된 인자들뿐이다. 예를 들어, 네트워크 문제는 데이터 패킷의 왕복 시간에만 기반할 수 있을 것이다.
BGP로부터의 자율 시스템 번호 및 데이터 센터가 저장된 경우, 특정 라우팅 경로를 따르는 데이터 센터의 네트워크 성능을 판단할 수 있다. 예를 들어, 데이터 센터(1)의 재전송율은 특정 경로를 따라 굉장히 높을 수 있다. 데이터 제공자는 높은 재전송율을 갖는 라우팅에서 데이터를 후속으로 전송하지 않기로 선택하고, 대신 더 적은 에러를 갖는 다른 라우팅을 선택할 수 있다.
실시예에 따라 네트워크 성능 데이터를 수집 및 분석하는 단계들에 대한 설명이 도 2에 도시된다. 단계(201)에서, 서버로부터 클라이언트로의 연결을 나타내는 연결 데이터를 저장하도록, 서버들이 시스템 관리자 또는 프로그래머에 의해 변경된다. 연결 데이터에는 재전송 데이터 패킷들이 포함된다. 단계(203)에서, 각각의 서버는 저장된 연결 데이터를 수집 서버에 송신한다. 수집 서버는 연결 데이터를 수집하고, 다음으로 모든 서버들로부터의 연결 데이터를 집합화한다. 단계(205)에 도시된 바와 같이, 다음으로, 수집 서버는 서버들로부터의 연결 데이터를 분류한다. 연결 데이터는 서버가 위치하는 데이터 센터 및 클라이언트의 라우팅 또는 위치의 클러스터에 기반하여 분류된다. 이 위치는 임의의 물리적인 현실 세계의 위치일 수 있고, 라우팅은 자율 시스템 번호에 의해 식별될 수 있다. 마지막으로, 단계(207)에서, 수집 서버에서 분류 및 집합화된 연결 데이터에 기반하여, 재전송 데이터를 표시자로 이용하여 네트워크 문제와 장애 지점이 검출될 수 있다. 네트워크의 특정 영역의 높은 재전송율은 높은 문제 가능성을 나타낸다. 분석 결과로서, 네트워크 문제 영역을 피하기 위해 클라이언트에 대한 후속 연결은 상이한 데이터 센터로부터 이루어지거나 또는 대체 라우팅을 이용할 수 있다.
보다 정확한 네트워크 성능 데이터를 구비함으로써 또한 데이터 센터의 배치 또는 위치 장소를 가장 효율적이 되도록 결정할 수 있다. 예를 들어, 데이터가 임의의 국가에서 공동 위치(1)와 공동 위치(2)로부터 제공될 수 있다. 네트워크 성능 측정을 수행한 후, 네트워크 성능 데이터는 공동 위치(1)와 공동 위치(2)가 대부분의 사용자에 대해 높은 재전송율을 갖는다는 것을 나타낸다. 다른 공동 위치 세트가 또한 다른 국가 또는 위치로부터 동일한 사용자들을 위해 사용될 수 있다. 네트워크 성능 데이터가 다른 국가 또는 위치로부터의 공동 위치 세트에 대한 재전송율이 더 작다는 것을 나타낸 경우, 데이터 센터의 위치는 다른 국가 또는 새로운 공동 위치로 이동될 수 있다. 다시 말하면, 재전송 또는 임의의 다른 분석 가능한 네트워크 성능 계량의 측면에서 최고의 성능을 보여주는 데이터 제공자를 선택하기 위해, 더욱 정확한 네트워크 성능 데이터가 더욱 탁월한 선택을 가능하게 한다.
하드웨어 개요
도 3은 본 발명의 실시예가 구현될 수 있는 컴퓨터 시스템(300)을 도시하는 블록도이다. 컴퓨터 시스템(300)은 버스(302) 또는 정보를 전달하는 다른 통신 메커니즘, 및 버스(302)에 연결되어 정보를 처리하는 프로세서(304)를 포함한다. 컴퓨터 시스템(300)은 또한 버스(302)에 연결되어 프로세서(304)에 의해 실행될 정보와 명령을 저장하는 랜덤 액세스 메모리(RAM) 또는 다른 동적 기억 장치 같은 주 메모리(306)를 포함한다. 주 메모리(306)는 또한 프로세서(304)에 의해 실행될 명령의 실행 동안 임시 변수 또는 다른 중간 정보를 저장하기 위해 사용될 수 있다. 컴퓨터 시스템(300)은 또한 버스(302)에 연결되어 프로세서(304)를 위한 정적 정보와 명령을 저장하는 판독 전용 메모리(ROM)(308) 또는 다른 정적 기억 장치를 포함한다. 자기 디스크 또는 광 디스크 같은 기억 장치(310)가 구비되고 버스(302)에 연결되어 정보와 명령을 저장한다.
컴퓨터 시스템(300)은 버스(302)를 통해 음극선관(CRT) 같은 표시 장치(312)에 연결되어, 컴퓨터 사용자에게 정보를 표시할 수 있다. 영숫자와 그 밖의 키들을 포함하는 입력 장치(314)가 버스(302)에 연결되어 프로세서(304)에 정보와 명령어 선택을 전달한다. 다른 타입의 사용자 입력 장치는 프로세서(304)에 방향 정보와 명령어 선택을 전달하고 표시 장치(312) 상의 커서 이동을 제어하는 마우스, 트랙 볼, 또는 커서 방향 키 같은 커서 제어 장치(316)이다. 이 입력 장치는 통상 장치가 평면에서 위치를 특정할 수 있게 하는 두 개의 축, 제1 축(예를 들어, x)과 제2 축(예를 들어, y)에서 두 개의 자유도를 갖는다.
본 발명은 본 명세서에 설명된 기술들을 구현하는 컴퓨터 시스템(300)의 사용에 관한 것이다. 본 발명의 일 실시예에 따르면, 이러한 기술들은 주 메모리(306)에 포함된 하나 이상의 명령의 하나 이상의 시퀀스를 실행하는 프로세서(304)에 응하여 컴퓨터 시스템(300)에 의해 수행된다. 이러한 명령들은 기억 장치(310) 같은 다른 기계-판독가능 매체로부터 주 메모리(306)로 판독될 수 있다. 주 메모리(306)에 포함된 명령 시퀀스들의 실행은 프로세서(304)가 본 명세서에 설명된 프로세스 단계들을 수행하게 한다. 대안적인 실시예들에서, 본 발명을 구현하기 위해, 하드-와이어드(hard-wired) 회로가 소프트웨어 명령들을 대신하여 또는 그와 결합하여 사용될 수 있다. 그러므로, 본 발명의 실시예들은 하드웨어 회로 및 소프트웨어의 임의의 특정 조합에 한정되는 것이 아니다.
본 명세서에 사용된 바와 같이, "기계-판독가능 매체" 라는 용어는 기계를 특정 방식으로 동작하게 하는 데이터의 제공에 관여하는 임의의 매체를 가리킨다. 컴퓨터 시스템(300)을 이용하여 구현된 실시예에서, 다양한 기계-판독가능 매체들은 예를 들어 실행을 위해 프로세서(304)에 명령을 제공하는 것에 관여한다. 이러한 매체는 기억 매체와 전송 매체를 포함하지만 이에 한정되지 않는 다수의 형태를 취할 수 있다. 기억 매체는 비휘발성 매체와 휘발성 매체 모두를 포함한다. 비휘발성 매체는 예를 들어 기억 장치(310) 같은 광 또는 자기 디스크를 포함한다. 휘발성 매체는 주 메모리(306) 같은 동적 메모리를 포함한다. 전송 매체는 버스(302)를 포함하는 와이어를 포함하는 동축 케이블, 구리선, 및 광섬유를 포함한다. 전송 매체는 또한 전파(radio-wave)와 적외선 데이터 통신 중에 발생되는 것과 같은 음향 또는 광파의 형태를 취할 수 있다. 이러한 모든 매체들은 매체에 의해 운반된 명령들을 기계 내부로 판독하는 물리적 메커니즘에 의해 이 명령들을 검출할 수 있도록 실체적(tangible)이어야 한다.
일반적인 형태의 기계-판독가능 매체는 예를 들어 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 또는 임의의 다른 자기 매체, CD-ROM, 임의의 다른 광 매체, 펀치 카드, 종이 테이프, 홀 패턴을 갖는 임의의 다른 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 임의의 다른 메모리 칩 또는 카트리지, 이하에 설명되는 바와 같은 반송파, 또는 컴퓨터가 판독할 수 있는 임의의 다른 매체를 포함한다.
다양한 형태의 기계-판독가능 매체가 실행을 위해 프로세서(304)에 하나 이상의 명령의 하나 이상의 시퀀스를 운반하는 것에 관여할 수 있다. 예를 들어, 명령은 처음에 원격 컴퓨터의 자기 디스크에서 운반될 수 있다. 원격 컴퓨터는 명령을 그 동적 메모리에 로딩하고 모뎀을 이용하여 전화선을 거쳐 송신할 수 있다. 컴퓨터 시스템(300)에 대해 국부적인 모뎀은 전화선 상의 데이터를 수신하고 적외선 송신기를 이용하여 데이터를 적외선 신호로 변환한다. 적외선 검출기가 적외선 신호로 운반된 데이터를 수신하고, 적절한 회로가 그 데이터를 버스(302)에 배치한다. 버스(302)는 데이터를 주 메모리(306)로 운반하고, 프로세서(304)는 주 메모리부터 명령들을 검색하고 실행한다. 주 메모리(306)에 의해 수신된 명령은 프로세서(304)에 의한 실행의 전 또는 후에 기억 장치(310)에 선택적으로 저장될 수 있다.
컴퓨터 시스템(300)은 또한 버스(302)에 연결된 통신 인터페이스(318)를 포함한다. 통신 인터페이스(318)는 로컬 네트워크(322)에 연결된 네트워크 링크(320)에 결합하여 양방향 데이터 통신을 제공한다. 예를 들어, 통신 인터페이스(318)는 대응하는 타입의 전화선에 데이터 통신 연결을 제공하는 종합 정보 통신망(ISDN; Integrated Services Digital Network) 카드 또는 모뎀일 수 있다. 다른 예로서, 통신 인터페이스(318)는 호환가능 LAN에 데이터 통신 연결을 제공하는 근거리 통신망(LAN) 카드일 수 있다. 또한 무선 링크가 구현될 수 있다. 이러한 임의의 구현에서, 통신 인터페이스(318)는 다양한 타입의 정보를 나타내는 디지털 데이터 스트림을 운반하는 전기 신호, 전자기 신호, 또는 광 신호를 송수신한다.
네트워크 링크(320)는 통상 다른 데이터 장치에 하나 이상의 네트워크를 통해 데이터 통신을 제공한다. 예를 들어, 네트워크 링크(320)는 호스트 컴퓨터(324)에 또는 인터넷 서비스 제공자(ISP; Internet Service Provider)(326)에 의해 작동되는 데이터 설비에 로컬 네트워크(322)를 통해 연결을 제공한다. 다음으로, ISP(326)는 이제 일반적으로 "인터넷" (328)으로 지칭되는 세계적 패킷 데이터 통신 네트워크를 통해 데이터 통신 서비스를 제공한다. 로컬 네트워크(322)와 인터넷(328)은 모두 디지털 데이터 스트림을 운반하는 전기 신호, 전자기 신호, 또는 광 신호를 사용한다. 컴퓨터 시스템(300)으로 및 그로부터 디지털 데이터를 운반하는, 다양한 네트워크를 통한 신호들 및 네트워크 링크(320) 상의 그리고 통신 인터페이스(318)를 통한 신호들은 정보를 나르는 반송파의 예시적인 형태이다.
컴퓨터 시스템(300)은 네트워크(들), 네트워크 링크(320), 및 통신 인터페이스(318)를 통해 메시지를 송신하고 프로그램 코드를 포함하는 데이터를 수신할 수 있다. 인터넷의 예에서, 서버(330)는 인터넷(328), ISP(326), 로컬 네트워크(322), 및 통신 인터페이스(318)를 통해 애플리케이션 프로그램을 위해 요청된 코드를 전송할 수 있다.
수신된 코드는 수신되는 대로 프로세서(304)에 의해 실행될 수 있고/있거나 이후의 실행을 위해 기억 장치(310) 또는 다른 비휘발성 기억 장치에 저장될 수 있다. 이러한 방식으로, 컴퓨터 시스템(300)은 반송파의 형태로 애플리케이션 코드를 획득할 수 있다. 전술한 명세서에서, 본 발명의 실시예들은 구현예마다 변화될 수 있는 다수의 특정 상세를 참조하여 설명되었다. 따라서, 본 발명인 것 및 본 출원인들에 의해 본 발명이라고 의도되는 것의 유일하고 배타적인 표시자는 이 출원으로부터 유래하는 청구항들의 세트이고, 이러한 청구항들은 임의의 후속 보정을 포함하여 특정한 형식으로 나타낸다. 이러한 청구항들에 포함된 용어들에 대하여 본 명세서에서 명백하게 설명된 모든 정의들은 청구항에 사용되는 바와 같은 이러한 용어들의 의미를 결정할 것이다. 그러므로, 청구항들에서 명백하게 기재되지 않은 어떠한 한정, 요소, 특성, 특징, 이점 또는 속성도 이러한 청구항의 범위를 어떤 식으로든 한정하지 않아야 한다. 따라서, 본 명세서와 도면들은 제한적인 의미라기 보다는 예시적인 의미로 간주되어야 한다.

Claims (22)

  1. 각각이 다수의 데이터 센터들 중 특정 데이터 센터에 위치하는 다수의 서버와, 다수의 클라이언트 중 하나의 클라이언트에 의해 송신 및 수신된 데이터 패킷들의 전송에 기반하여 다수의 서버로부터 연결 데이터를 수신하는 단계와;
    다수의 서버로부터의 연결 데이터를 집합화하는 단계와;
    서버가 위치하는 데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류하는 단계와;
    데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류할 때, 분류 및 집합화된 연결 데이터를 저장하는 단계를 포함하는 네트워크 성능 데이터를 수집하는 방법.
  2. 제1항에 있어서, 집합화된 연결 데이터는 송신된 데이터 패킷들의 양, 송신된 재전송 데이터 패킷들의 양, 수신된 데이터 패킷들의 양, 수신된 재전송 데이터 패킷들의 양, 및 데이터 패킷들의 왕복 시간을 포함하는, 방법.
  3. 제1항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 맵핑되는 지리적 위치를 포함하는, 방법.
  4. 제3항에 있어서, 지리적 위치가 도시인, 방법.
  5. 제3항에 있어서, 지리적 위치가 국가인, 방법.
  6. 제1항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 결합되는 라우팅의 식별자를 포함하는, 방법.
  7. 제6항에 있어서, 라우팅의 식별자가 자율 시스템 번호인, 방법.
  8. 제2항에 있어서, 집합화된 연결 데이터는 서버가 제공하는 애플리케이션을 더 포함하는, 방법.
  9. 제8항에 있어서, 연결 데이터를 다수의 서버로부터 연속해서 수신하는, 방법.
  10. 각각이 다수의 데이터 센터들 중 특정 데이터 센터에 위치하는 다수의 서버와;
    수집 서버와;
    다수의 클라이언트를 포함하는 네트워크 성능 데이터를 수집하는 시스템에 있어서,
    다수의 서버는 다수의 서버와, 다수의 클라이언트 중 하나의 클라이언트에 의해 송신 및 수신된 데이터 패킷들의 전송에 기반하여 연결 데이터를 저장하고; 다수의 서버는 연결 데이터를 수집 서버로 송신하고; 수집 서버는 연결 데이터를 집합화하고; 수집 서버는 서버가 위치하는 데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류하고; 데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류할 때, 수집 서버는 분류 및 집합화된 연결 데이터를 저장하는, 시스템.
  11. 제10항에 있어서, 집합화된 연결 데이터는 송신된 데이터 패킷들의 양, 송신된 재전송 데이터 패킷들의 양, 수신된 데이터 패킷들의 양, 수신된 재전송 데이터 패킷들의 양, 및 데이터 패킷들의 왕복 시간을 포함하는, 시스템.
  12. 제10항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 맵핑되는 지리적 위치를 포함하는, 시스템.
  13. 제10항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 결합되는 라우팅의 식별자를 포함하는, 시스템.
  14. 제10항에 있어서, 라우팅의 식별자가 자율 시스템 번호인, 시스템.
  15. 하나 이상의 명령 시퀀스를 운반하는 컴퓨터-판독가능 저장 매체에 있어서,
    하나 이상의 프로세서에 의해 실행되는 경우에, 하나 이상의 프로세서가,
    각각이 다수의 데이터 센터들 중 특정 데이터 센터에 위치하는 다수의 서버 및 다수의 클라이언트 중 하나의 클라이언트에 의해 송신 및 수신된 데이터 패킷들의 전송에 기반하여 다수의 서버로부터 연결 데이터를 수신하고;
    다수의 서버로부터의 연결 데이터를 집합화하고;
    서버가 위치하는 데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류하고;
    데이터 센터 및 클라이언트와 관련된 클러스터에 기반하여 집합화된 연결 데이터를 분류할 때, 분류 및 집합화된 연결 데이터를 저장하게 하는, 컴퓨터-판독가능 저장 매체.
  16. 제15항에 있어서, 집합화된 연결 데이터는 송신된 데이터 패킷들의 양, 송신된 재전송 데이터 패킷들의 양, 수신된 데이터 패킷들의 양, 수신된 재전송 데이터 패킷들의 양, 및 데이터 패킷들의 왕복 시간을 포함하는, 컴퓨터-판독가능 저장 매체.
  17. 제15항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 맵핑되는 지리적 위치를 포함하는, 컴퓨터-판독가능 저장 매체.
  18. 제16항에 있어서, 지리적 위치가 도시인, 컴퓨터-판독가능 저장 매체.
  19. 제16항에 있어서, 지리적 위치가 국가인, 컴퓨터-판독가능 저장 매체.
  20. 제15항에 있어서, 클라이언트와 관련된 클러스터는 클라이언트의 IP 주소가 결합되는 자율 시스템 번호를 포함하는, 컴퓨터-판독가능 저장 매체.
  21. 제15항에 있어서, 연결 데이터를 다수의 서버로부터 연속해서 수신하는, 컴퓨터-판독가능 저장 매체.
  22. 제16항에 있어서, 집합화된 연결 데이터는 서버가 제공하는 애플리케이션을 더 포함하는, 컴퓨터-판독가능 저장 매체.
KR1020107023216A 2008-04-01 2009-03-31 네트워크 성능 데이터를 수집 및 분석하는 방법 KR101114152B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/060,619 US20090245114A1 (en) 2008-04-01 2008-04-01 Methods for collecting and analyzing network performance data
US12/060,619 2008-04-01
PCT/US2009/038969 WO2009151739A2 (en) 2008-04-01 2009-03-31 Methods for collecting and analyzing network performance data

Publications (2)

Publication Number Publication Date
KR20100134046A KR20100134046A (ko) 2010-12-22
KR101114152B1 true KR101114152B1 (ko) 2012-02-22

Family

ID=41117054

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107023216A KR101114152B1 (ko) 2008-04-01 2009-03-31 네트워크 성능 데이터를 수집 및 분석하는 방법

Country Status (11)

Country Link
US (2) US20090245114A1 (ko)
EP (1) EP2260396A4 (ko)
JP (2) JP2011520168A (ko)
KR (1) KR101114152B1 (ko)
CN (1) CN102027462A (ko)
AU (1) AU2009257992A1 (ko)
CA (1) CA2716005A1 (ko)
RU (1) RU2010134951A (ko)
SG (1) SG182222A1 (ko)
TW (1) TW201013420A (ko)
WO (1) WO2009151739A2 (ko)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8811431B2 (en) 2008-11-20 2014-08-19 Silver Peak Systems, Inc. Systems and methods for compressing packet data
US8489562B1 (en) 2007-11-30 2013-07-16 Silver Peak Systems, Inc. Deferred data storage
US8885632B2 (en) 2006-08-02 2014-11-11 Silver Peak Systems, Inc. Communications scheduler
US8307115B1 (en) 2007-11-30 2012-11-06 Silver Peak Systems, Inc. Network memory mirroring
US8756340B2 (en) 2007-12-20 2014-06-17 Yahoo! Inc. DNS wildcard beaconing to determine client location and resolver load for global traffic load balancing
US7962631B2 (en) * 2007-12-21 2011-06-14 Yahoo! Inc. Method for determining network proximity for global traffic load balancing using passive TCP performance instrumentation
US20090172192A1 (en) * 2007-12-28 2009-07-02 Christian Michael F Mapless Global Traffic Load Balancing Via Anycast
US8625642B2 (en) 2008-05-23 2014-01-07 Solera Networks, Inc. Method and apparatus of network artifact indentification and extraction
US8004998B2 (en) * 2008-05-23 2011-08-23 Solera Networks, Inc. Capture and regeneration of a network data using a virtual software switch
US8521732B2 (en) 2008-05-23 2013-08-27 Solera Networks, Inc. Presentation of an extracted artifact based on an indexing technique
US10805840B2 (en) 2008-07-03 2020-10-13 Silver Peak Systems, Inc. Data transmission via a virtual wide area network overlay
US9717021B2 (en) 2008-07-03 2017-07-25 Silver Peak Systems, Inc. Virtual network overlay
US10164861B2 (en) 2015-12-28 2018-12-25 Silver Peak Systems, Inc. Dynamic monitoring and visualization for network health characteristics
US9818073B2 (en) * 2009-07-17 2017-11-14 Honeywell International Inc. Demand response management system
CN101808084B (zh) * 2010-02-12 2012-09-26 哈尔滨工业大学 一种大规模网络安全事件模拟与仿真方法及其控制方法
US9167457B2 (en) * 2010-04-06 2015-10-20 Hewlett-Packard Development Company, L.P. Measuring and displaying wireless network quality
JP5873476B2 (ja) * 2010-04-08 2016-03-01 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. 異種ネットワークを介した患者のモニタリング
US8849991B2 (en) 2010-12-15 2014-09-30 Blue Coat Systems, Inc. System and method for hypertext transfer protocol layered reconstruction
US8948048B2 (en) * 2010-12-15 2015-02-03 At&T Intellectual Property I, L.P. Method and apparatus for characterizing infrastructure of a cellular network
US8666985B2 (en) 2011-03-16 2014-03-04 Solera Networks, Inc. Hardware accelerated application-based pattern matching for real time classification and recording of network traffic
US9130991B2 (en) 2011-10-14 2015-09-08 Silver Peak Systems, Inc. Processing data packets in performance enhancing proxy (PEP) environment
US9626224B2 (en) 2011-11-03 2017-04-18 Silver Peak Systems, Inc. Optimizing available computing resources within a virtual environment
WO2013069913A1 (ko) * 2011-11-08 2013-05-16 엘지전자 주식회사 제어 장치, 제어 타겟 장치 및 이들의 컨텐트 정보 전송 방법
TW201333864A (zh) * 2012-02-04 2013-08-16 Jian-Cheng Li 即時性資訊傳輸系統
US9020346B2 (en) * 2012-09-11 2015-04-28 Inphi Corporation Optical communication interface utilizing coded pulse amplitude modulation
US9197324B1 (en) 2012-04-09 2015-11-24 Inphi Corporation Method and system for transmitter optimization of an optical PAM serdes based on receiver feedback
US8983291B1 (en) 2012-07-30 2015-03-17 Inphi Corporation Optical PAM modulation with dual drive mach zehnder modulators and low complexity electrical signaling
CN102843428A (zh) * 2012-08-14 2012-12-26 北京百度网讯科技有限公司 一种上传数据处理系统及方法
WO2014036640A1 (en) 2012-09-07 2014-03-13 Dejero Labs Inc. Device and method for characterization and optimization of multiple simultaneous real-time data connections
US9647799B2 (en) 2012-10-16 2017-05-09 Inphi Corporation FEC coding identification
US9125100B2 (en) * 2012-10-11 2015-09-01 Verizon Patent And Licensing Inc. Device network footprint map and performance
US9432123B2 (en) 2013-03-08 2016-08-30 Inphi Corporation Adaptive mach zehnder modulator linearization
CN103258009B (zh) * 2013-04-16 2016-05-18 北京京东尚科信息技术有限公司 获取和分析方法性能数据的方法和系统
US10498570B2 (en) 2013-10-02 2019-12-03 Inphi Corporation Data communication systems with forward error correction
US20150149609A1 (en) * 2013-11-22 2015-05-28 Microsoft Corporation Performance monitoring to provide real or near real time remediation feedback
CN104935676A (zh) * 2014-03-17 2015-09-23 阿里巴巴集团控股有限公司 确定ip地址段及其对应的经纬度的方法及装置
US9411611B2 (en) 2014-05-02 2016-08-09 International Business Machines Corporation Colocation and anticolocation in colocation data centers via elastic nets
US9948496B1 (en) 2014-07-30 2018-04-17 Silver Peak Systems, Inc. Determining a transit appliance for data traffic to a software service
US9875344B1 (en) 2014-09-05 2018-01-23 Silver Peak Systems, Inc. Dynamic monitoring and authorization of an optimization device
TWI550517B (zh) * 2014-12-08 2016-09-21 英業達股份有限公司 資料中心網路流量遷移方法及其系統
US9800653B2 (en) 2015-03-06 2017-10-24 Microsoft Technology Licensing, Llc Measuring responsiveness of a load balancing system
US20170068675A1 (en) * 2015-09-03 2017-03-09 Deep Information Sciences, Inc. Method and system for adapting a database kernel using machine learning
US10567266B2 (en) * 2015-09-24 2020-02-18 Assia Spe, Llc Methods and apparatus for detecting internet connection problems
GB2544049A (en) 2015-11-03 2017-05-10 Barco Nv Method and system for optimized routing of data streams in telecommunication networks
US10764393B2 (en) 2016-04-21 2020-09-01 Hewlett Packard Enterprise Development Lp Determining a persistent network identity of a networked device
US10432484B2 (en) 2016-06-13 2019-10-01 Silver Peak Systems, Inc. Aggregating select network traffic statistics
US10263835B2 (en) * 2016-08-12 2019-04-16 Microsoft Technology Licensing, Llc Localizing network faults through differential analysis of TCP telemetry
US9967056B1 (en) 2016-08-19 2018-05-08 Silver Peak Systems, Inc. Forward packet recovery with constrained overhead
US10771394B2 (en) 2017-02-06 2020-09-08 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows on a first packet from DNS data
US11044202B2 (en) 2017-02-06 2021-06-22 Silver Peak Systems, Inc. Multi-level learning for predicting and classifying traffic flows from first packet data
US10892978B2 (en) 2017-02-06 2021-01-12 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows from first packet data
US10257082B2 (en) 2017-02-06 2019-04-09 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows
US11212210B2 (en) 2017-09-21 2021-12-28 Silver Peak Systems, Inc. Selective route exporting using source type
US10637721B2 (en) 2018-03-12 2020-04-28 Silver Peak Systems, Inc. Detecting path break conditions while minimizing network overhead
US10999358B2 (en) 2018-10-31 2021-05-04 Twitter, Inc. Traffic mapping
CN112565327B (zh) * 2019-09-26 2022-09-30 广州虎牙科技有限公司 访问流量转发方法、集群管理方法及相关装置
CN110809051B (zh) * 2019-11-11 2020-11-13 广州华多网络科技有限公司 一种业务数据的处理方法及系统
US11755377B2 (en) 2019-12-09 2023-09-12 Hewlett Packard Enterprise Development Lp Infrastructure resource mapping mechanism based on determined best match proposal for workload deployment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188073A1 (en) 2003-02-13 2005-08-25 Koji Nakamichi Transmission system, delivery path controller, load information collecting device, and delivery path controlling method

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6157618A (en) * 1999-01-26 2000-12-05 Microsoft Corporation Distributed internet user experience monitoring system
JP3871486B2 (ja) * 1999-02-17 2007-01-24 株式会社ルネサステクノロジ 半導体装置
US7685311B2 (en) * 1999-05-03 2010-03-23 Digital Envoy, Inc. Geo-intelligent traffic reporter
US6785704B1 (en) * 1999-12-20 2004-08-31 Fastforward Networks Content distribution system for operation over an internetwork including content peering arrangements
US6322834B1 (en) * 1999-09-28 2001-11-27 Anna Madeleine Leone Method for decaffeinating an aqueous solution using molecularly imprinted polymers
US6405252B1 (en) * 1999-11-22 2002-06-11 Speedera Networks, Inc. Integrated point of presence server network
US6625648B1 (en) * 2000-01-07 2003-09-23 Netiq Corporation Methods, systems and computer program products for network performance testing through active endpoint pair based testing and passive application monitoring
FI108592B (fi) * 2000-03-14 2002-02-15 Sonera Oyj Laskutus langatonta sovellusprotokollaa käyttävässä matkapuhelinjärjestelmässä
US6836465B2 (en) * 2001-11-29 2004-12-28 Ipsum Networks, Inc. Method and system for path identification in packet networks
US7020698B2 (en) * 2000-05-31 2006-03-28 Lucent Technologies Inc. System and method for locating a closest server in response to a client domain name request
WO2001099379A1 (en) * 2000-06-19 2001-12-27 Martin Gilbert Secure communications method
US7165116B2 (en) * 2000-07-10 2007-01-16 Netli, Inc. Method for network discovery using name servers
US9130954B2 (en) * 2000-09-26 2015-09-08 Brocade Communications Systems, Inc. Distributed health check for global server load balancing
US7454500B1 (en) * 2000-09-26 2008-11-18 Foundry Networks, Inc. Global server load balancing
US7937470B2 (en) * 2000-12-21 2011-05-03 Oracle International Corp. Methods of determining communications protocol latency
US7188179B1 (en) * 2000-12-22 2007-03-06 Cingular Wireless Ii, Llc System and method for providing service provider choice over a high-speed data connection
US20040015405A1 (en) * 2001-02-16 2004-01-22 Gemini Networks, Inc. System, method, and computer program product for end-user service provider selection
US7333794B2 (en) * 2001-03-06 2008-02-19 At&T Mobility Ii Llc Real-time network analysis and performance management
US7792948B2 (en) * 2001-03-30 2010-09-07 Bmc Software, Inc. Method and system for collecting, aggregating and viewing performance data on a site-wide basis
US6980929B2 (en) * 2001-04-18 2005-12-27 Baker Hughes Incorporated Well data collection system and method
JP4774625B2 (ja) * 2001-05-16 2011-09-14 ソニー株式会社 コンテンツ配信システム、コンテンツ配信制御サーバ、コンテンツ送信処理制御方法、コンテンツ送信処理制御プログラム及びコンテンツ送信処理制御プログラム格納媒体
US7007089B2 (en) * 2001-06-06 2006-02-28 Akarnai Technologies, Inc. Content delivery network map generation using passive measurement data
US20030046383A1 (en) * 2001-09-05 2003-03-06 Microsoft Corporation Method and system for measuring network performance from a server
US7120120B2 (en) * 2001-11-29 2006-10-10 Ipsum Networks, Inc. Method and system for topology construction and path identification in a two-level routing domain operated according to a simple link state routing protocol
US20030079027A1 (en) * 2001-10-18 2003-04-24 Michael Slocombe Content request routing and load balancing for content distribution networks
KR100428767B1 (ko) * 2002-01-11 2004-04-28 삼성전자주식회사 트래픽 정보를 이용한 가입자 라우팅 설정 방법 및 이를위한 기록매체
US7512702B1 (en) * 2002-03-19 2009-03-31 Cisco Technology, Inc. Method and apparatus providing highly scalable server load balancing
US7139840B1 (en) * 2002-06-14 2006-11-21 Cisco Technology, Inc. Methods and apparatus for providing multiple server address translation
US7086061B1 (en) * 2002-08-01 2006-08-01 Foundry Networks, Inc. Statistical tracking of global server load balancing for selecting the best network address from ordered list of network addresses based on a set of performance metrics
US7401141B2 (en) * 2003-01-07 2008-07-15 International Business Machines Corporation Method and system for monitoring performance of distributed applications
US7159034B1 (en) * 2003-03-03 2007-01-02 Novell, Inc. System broadcasting ARP request from a server using a different IP address to balance incoming traffic load from clients via different network interface cards
US8630960B2 (en) * 2003-05-28 2014-01-14 John Nicholas Gross Method of testing online recommender system
US20050107985A1 (en) * 2003-11-14 2005-05-19 International Business Machines Corporation Method and apparatus to estimate client perceived response time
KR20050055305A (ko) * 2003-12-08 2005-06-13 주식회사 비즈모델라인 네트워크를 이용한 지역별 서버 이용방법 및 시스템과이를 위한 저장매체 및 기록매체
US7584435B2 (en) * 2004-03-03 2009-09-01 Omniture, Inc. Web usage overlays for third-party web plug-in content
US7769886B2 (en) * 2005-02-25 2010-08-03 Cisco Technology, Inc. Application based active-active data center network using route health injection and IGP
US7609619B2 (en) * 2005-02-25 2009-10-27 Cisco Technology, Inc. Active-active data center using RHI, BGP, and IGP anycast for disaster recovery and load distribution
US7548945B2 (en) * 2005-04-13 2009-06-16 Nokia Corporation System, network device, method, and computer program product for active load balancing using clustered nodes as authoritative domain name servers
US20070036146A1 (en) * 2005-08-10 2007-02-15 Bellsouth Intellectual Property Corporation Analyzing and resolving internet service problems
US20070245010A1 (en) * 2006-03-24 2007-10-18 Robert Arn Systems and methods for multi-perspective optimization of data transfers in heterogeneous networks such as the internet
US8743703B2 (en) * 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US9479341B2 (en) * 2006-08-22 2016-10-25 Centurylink Intellectual Property Llc System and method for initiating diagnostics on a packet network node
US8307065B2 (en) * 2006-08-22 2012-11-06 Centurylink Intellectual Property Llc System and method for remotely controlling network operators
US8015294B2 (en) * 2006-08-22 2011-09-06 Embarq Holdings Company, LP Pin-hole firewall for communicating data packets on a packet network
CN101009627A (zh) * 2006-12-27 2007-08-01 华为技术有限公司 一种业务绑定的方法和设备
US20080167886A1 (en) * 2007-01-05 2008-07-10 Carl De Marcken Detecting errors in a travel planning system
US20090100128A1 (en) * 2007-10-15 2009-04-16 General Electric Company Accelerating peer-to-peer content distribution
US7962631B2 (en) * 2007-12-21 2011-06-14 Yahoo! Inc. Method for determining network proximity for global traffic load balancing using passive TCP performance instrumentation
GB2456026A (en) * 2007-12-26 2009-07-01 Contendo Inc CDN balancing and sharing platform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188073A1 (en) 2003-02-13 2005-08-25 Koji Nakamichi Transmission system, delivery path controller, load information collecting device, and delivery path controlling method

Also Published As

Publication number Publication date
JP2012161098A (ja) 2012-08-23
EP2260396A2 (en) 2010-12-15
CA2716005A1 (en) 2009-12-17
SG182222A1 (en) 2012-07-30
TW201013420A (en) 2010-04-01
KR20100134046A (ko) 2010-12-22
WO2009151739A2 (en) 2009-12-17
US20110145405A1 (en) 2011-06-16
RU2010134951A (ru) 2012-05-10
CN102027462A (zh) 2011-04-20
AU2009257992A1 (en) 2009-12-17
WO2009151739A3 (en) 2010-03-04
EP2260396A4 (en) 2011-06-22
US20090245114A1 (en) 2009-10-01
JP2011520168A (ja) 2011-07-14

Similar Documents

Publication Publication Date Title
KR101114152B1 (ko) 네트워크 성능 데이터를 수집 및 분석하는 방법
KR101086545B1 (ko) 수동적 tcp 성능 계측을 이용하여 글로벌 트래픽 로드 밸런싱을 위한 네트워크 근접도를 결정하기 위한 방법
KR101154799B1 (ko) 전역 트래픽 부하 균형화를 위하여 클라이언트 위치 및 리졸버 부하를 결정하는 dns 와일드카드 비컨화
Krishnan et al. Moving beyond end-to-end path information to optimize CDN performance
EP2632115B1 (en) A gateway for communication in a tactical network
CN102318288B (zh) 节点排序与选取方法、装置及系统
WO2018094654A1 (zh) 一种vpn传输隧道调度方法、装置以及vpn客户端服务器
JP2005532748A (ja) ペイロード検査、アラートサービス、デジタルコンテンツ配信、及びサービス品質管理のためのパケットルーティング、並びに発行−購読ネットワークにおける選択的なマルチキャスティングを含むキャッシング
CN108809769B (zh) 一种检测IPv6活跃度的方法和电子设备
US20090150564A1 (en) Per-user bandwidth availability
US9112664B2 (en) System for and method of dynamic home agent allocation
US20140181307A1 (en) Routing apparatus and method
KR101494866B1 (ko) 사용자 단말의 국가 정보 추출 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
Xue et al. Dissecting persistent instability of web service: A joint perspective of server schedule dynamics and path latency
Yeganeh On Measuring Internet Topology & its Applications
Yeganeh Measuring the Evolving Internet in the Cloud Computing Era: Infrastructure, Connectivity, and Performance
CN114338414A (zh) 一种骨干网络拓扑发现方法、装置及控制设备
Matthews et al. Internet Monitoring in the HEP Community.

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: 20150120

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160105

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170103

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180103

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 9