KR101841643B1 - 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법 - Google Patents

중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법 Download PDF

Info

Publication number
KR101841643B1
KR101841643B1 KR1020160047700A KR20160047700A KR101841643B1 KR 101841643 B1 KR101841643 B1 KR 101841643B1 KR 1020160047700 A KR1020160047700 A KR 1020160047700A KR 20160047700 A KR20160047700 A KR 20160047700A KR 101841643 B1 KR101841643 B1 KR 101841643B1
Authority
KR
South Korea
Prior art keywords
network
packet
network equipment
equipment
inspection
Prior art date
Application number
KR1020160047700A
Other languages
English (en)
Other versions
KR20170085412A (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 KR20170085412A publication Critical patent/KR20170085412A/ko
Application granted granted Critical
Publication of KR101841643B1 publication Critical patent/KR101841643B1/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/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • 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

Landscapes

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

Abstract

중앙 서버에 의한 HSA(header space analysis) 기법을 통한 네트워크 검사 방법에 있어서, 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 네트워크의 검사를 위한 요청 명령을 제 1 네트워크 장비로 전송하는 단계; 제 1 네트워크 장비를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비로부터 검사 메시지를 수신하는 단계; 및 수신된 검사 메시지에 기초하여, 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한(reachable) 패킷의 종류 및 해당 패킷의 도달 확률(probability)을 결정하는 단계를 포함하는 것을 특징으로 하는 본 발명의 일 실시예에 따른 네트워크 검사 방법이 개시된다.

Description

중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법{CENTRAL SERVER AND METHOD FOR EXAMINING NETWORK THEREBY, AND LAYER-7 APPARATUS AND METHOD FOR FORWARDING VERIFICATION PACKET THEREBY}
본 발명은 네트워크 분야에 관한 것이다. 보다 구체적으로, 본 발명은 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법에 관한 것이다.
오늘날 네트워크의 규모가 커짐에 따라, 네트워크 관리자들은 다양한 종류의 네트워크 장비들을 관리하는데 부담을 가지고 있다. 네트워크의 규모가 커지면 네트워크 환경이 취약해지고, 호스트들이 고립되거나 서로 간에 통신할 수 없는 문제가 발생하기 때문이다.
네트워크의 관리를 쉽게 하기 위해, SDN(software defined network) 및 일반 네트워크의 검사를 위한 HSA(header space analysis) 방식이 이용되고 있다. HSA는 임의의 패킷이 네트워크 장비에 도달할 수 있는지(즉, 도달 가능성)를 확인하기 위한 방식으로서, "Header Space Analysis: Static Checking For Networks", Peyman Kazemian (Stanford University), George Varghese (UCSD and Yahoo Labs), Nick McKeown (Stanford University)에 기술되어 있다. "Header Space Analysis: Static Checking For Networks"의 내용은 본 명세서에서 참조된다.
일반적인 HSA에서는 중앙 서버가 모든 네트워크 장비들의 패턴 처리 규칙을 알고 있으며, 알고 있는 패턴 처리 규칙을 이용하여 패킷의 도달 가능성을 판단한다. 그러나, 이러한 방식은 중앙 서버에게 과도한 부하를 줄 수 있으며, 패턴 처리 규칙이 자주 변할 수 있는 SDN 환경에서는 적합하지 않을 수 있다.
본 발명의 일 실시예에 따른 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법은 네트워크 검사로 인한 중앙 서버의 부하를 감소시키는 것을 목적으로 한다.
또한, 본 발명의 일 실시예에 따른 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법은 네트워크 장비의 패턴 처리 규칙이 변경되더라도 네트워크 검사를 정확히 수행하는 것을 목적으로 한다.
또한, 본 발명의 일 실시예에 따른 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법은 네트워크 내에 레이어-7 장비가 존재하는 경우에도 패킷의 도달 확률을 정확히 확인하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 네트워크 검사 방법은,
중앙 서버에 의한 HSA(header space analysis) 기법을 통한 네트워크 검사 방법에 있어서, 상기 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 상기 네트워크의 검사를 위한 요청 명령을 상기 제 1 네트워크 장비로 전송하는 단계; 상기 제 1 네트워크 장비를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비로부터 검사 메시지를 수신하는 단계; 및 상기 수신된 검사 메시지에 기초하여, 상기 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한(reachable) 패킷의 종류 및 해당 패킷의 도달 확률(probability)을 결정하는 단계를 포함할 수 있다.
상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는, 상기 네트워크에 포함된 네트워크 장비들 각각에 의해 누적 기록된 패킷 처리 규칙과 관련된 정보를 포함할 수 있다.
상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는, 상기 네트워크에 포함된 각각의 네트워크 장비에 의해 누적 기록되는 다음 네트워크 장비로의 패킷 전달 확률을 포함할 수 있다.
상기 각각의 네트워크 장비에 의해 누적 기록되는 패킷 전달 확률은, 이전의 네트워크 장비에 의해 상기 검사 메시지에 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값을 포함할 수 있다.
상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는, 상기 제 1 네트워크 장비로부터 상기 제 2 네트워크 장비로 상기 검증 패킷이 전달되는 동안에 누적되어 기록된 검증 패킷의 경로 정보, 및 상기 제 1 네트워크 장비로부터 상기 제 2 네트워크 장비로 상기 검증 패킷이 전달되는 동안에 누적되어 기록된 상기 헤더의 공간 정보를 포함할 수 있다.
상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는, 상기 네트워크에 포함된 네트워크 장비들 중 레이어-7 장비에 의해 누적 기록되는 다음 네트워크 장비로의 패킷 전달 확률 및 상기 네트워크 장비들 중 레이어-7 장비가 아닌 네트워크 장비에 의해 누적 기록되는 헤더의 공간 정보를 포함할 수 있다.
상기 패킷의 도달 확률을 결정하는 단계는, 상기 제 2 네트워크 장비의 이전 네트워크 장비에 의해 상기 검사 메시지에 기록된 패킷 전달 확률을 상기 제 1 네트워크 장비로부터 제 2 네트워크 장비로 도달 가능한 패킷의 도달 확률로 결정하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따른 중앙 서버는,
HSA(header space analysis) 기법을 통해 네트워크를 검사하는 중앙 서버에 있어서, 상기 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 상기 네트워크의 검사를 위한 요청 명령을 상기 제 1 네트워크 장비로 전송하는 전송부; 상기 제 1 네트워크 장비를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비로부터 검사 메시지를 수신하는 수신부; 및 상기 수신된 검사 메시지에 기초하여, 상기 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한 패킷의 종류 및 해당 패킷의 도달 확률을 결정하는 제어부를 포함할 수 있다.
본 발명의 또 다른 실시예에 따른 검증 패킷 전달 방법은,
네트워크에 포함된 레이어-7(Layer-7) 장비에 의한 검증 패킷 전달 방법에 있어서, 이전 네트워크 장비로부터 검증 패킷 및 상기 네트워크의 검사를 위한 검사 메시지를 수신하는 단계; 다음 네트워크로의 패킷 전달 확률을 상기 검사 메시지에 기록하는 단계; 및 상기 검증 패킷 및 검사 메시지가 중앙 서버로 전달될 수 있도록 상기 검증 패킷 및 상기 검사 메시지를 상기 다음 네트워크 장비로 전달하는 단계를 포함할 수 있다.
상기 기록하는 단계는, 상기 검증 패킷의 공간 정보로서, 상기 이전 네트워크 장비에 의해 기록된 헤더의 공간 정보를 상기 검사 메시지에 그대로 기록하는 단계를 포함할 수 있다.
상기 기록하는 단계는, 상기 이전 네트워크 장비에 의해 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱하여 상기 검사 메시지에 기록하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법이 달성할 수 있는 일부의 효과는 다음과 같다.
i) 네트워크 검사로 인한 중앙 서버의 부하를 감소시킬 수 있다.
ii) 네트워크 장비의 패턴 처리 규칙이 변경되더라도 네트워크 검사를 정확히 수행할 수 있다.
iii) 네트워크 내에 레이어-7 장비가 존재하는 경우에도 패킷의 도달 확률을 정확히 확인할 수 있다.
다만, 본 발명의 일 실시예에 따른 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법이 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 중앙 서버와 복수의 네트워크 장비를 포함하는 네트워크 환경을 도시하는 도면이다.
도 2는 일반적인 HSA 방식을 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 네트워크 검사 방법을 도시하는 순서도이다.
도 4는 본 발명의 일 실시예에 따른 복수의 네트워크 장비를 통해 전달되는 검사 메시지를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다.
도 6은 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 검사 메시지를 설명하기 위한 도면이다.
도 8(a) 내지 도 8(c)는 네트워크에 포함된 예시적인 터널의 구성을 도시하는 도면이다.
도 9는 본 발명의 일 실시예에 따른 네트워크 검사 방법을 도시하는 순서도이다.
도 10은 본 발명의 일 실시예에 따른 검사 메시지를 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따른 검사 메시지를 설명하기 위한 도면이다.
도 12는 본 발명의 일 실시예에 따른 중앙 서버의 구성을 나타내는 블록도이다.
도 13은 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 실시예에서 사용되는 '부'라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '부'는 어떤 역할들을 수행한다. 그렇지만 '부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '부'들로 결합되거나 추가적인 구성요소들과 '부'들로 더 분리될 수 있다.
도 1은 본 발명의 일 실시예에 따른 중앙 서버(100)와 복수의 네트워크 장비(200)를 포함하는 네트워크 환경을 도시하는 도면이다.
중앙 서버(100)는 복수의 네트워크 장비(200)를 포함한 네트워크의 상태를 검사하며, 네트워크 관리자에 의해 제어될 수 있다. 중앙 서버(100)는 복수의 네트워크 장비(200) 각각과 통신을 할 수 있다.
복수의 네트워크 장비(200)는 수신되는 패킷을 처리하는 미들박스(middle box)로서, 네트워크 장비(200)는 예를 들어, 라우터(router), 파이어월(firewall), NAT(network address translator) 등을 포함할 수 있다. 네트워크 장비(200)는 기 설정된 패킷 처리 규칙에 따라 수신되는 패킷을 처리한다. 예를 들어, 라우터는 수신되는 패킷의 헤더의 분석 결과에 따라 결정되는 포트(port)를 통해 다른 네트워크 장비(200)로 패킷을 전달한다. 또한, 파이어월은 수신된 패킷의 헤더를 분석하여, 수신된 패킷을 차단할지, 다른 네트워크 장비(200)로 전달할지를 결정한다.
도 2는 일반적인 HSA 방식을 설명하기 위한 도면이다.
일반적인 HSA 방식에서, 중앙 서버(미도시)는 먼저 {0, 1}L(L은 검증 패킷의 헤더의 길이)의 공간(이하에서는, 헤더 스페이스라 참조한다)을 정의한다. 헤더 스페이스는 0 또는 1이 L개만큼 나열된 비트열의 집합을 의미할 수 있다. 임의의 검증 패킷의 헤더는 헤더 스페이스의 지점(point) 또는 영역(region)으로 매핑될 수 있다. 헤더 스페이스에 매핑되는 지점 또는 영역에 대한 정보를 헤더의 공간 정보라 한다.
중앙 서버는 여러 네트워크 장비들의 패킷 처리 규칙 각각을 변환 함수(Ti(h, p))로 정의한다. 헤더의 공간 정보는 네트워크 장비들 각각의 변환 함수에 따라 변경될 수 있다.
도 2를 보면, 중앙 서버는 S 네트워크 장비로부터 D 네트워크 장비로 어느 종류의 패킷이 도달할 수 있는지를 확인하기 위해, 0 또는 1 중 어느 값이든 될 수 있는 x가 8개로 이루어진 헤더를 M1 네트워크 장비의 변환 함수에 적용한다. x는 0 또는 1이 될 수 있으므로, 중앙 서버가 M1 네트워크 장비의 변환 함수에 적용하는 헤더는 헤더 스페이스의 모든 공간에 매핑될 수 있다. 도 2는 헤더 스페이스를 x축과 y축으로 이루어진 2차원으로 도시하고 있는데, 예를 들어, 헤더가 8비트인 경우, x축은 8비트 중 앞의 4비트에 해당하는 0000부터 1111에 대응하고, y축은 8비트 중 뒤의 4비트에 해당하는 0000부터 1111에 대응할 수 있다.
헤더는 각각의 네트워크 장비들의 변환 함수에 의해 공간 정보가 변경된다. D 네트워크 장비의 변환 함수에 의해 처리된 헤더의 공간 정보를 보면, D 네트워크 장비는 S 네트워크 장비로부터 11001xx0과 101111x1의 헤더를 수신할 수 있다는 것을 알 수 있다. 또한, 중앙 서버는 M1 네트워크 장비 내지 M5 네트워크 장비의 변환 함수를 통해 임의의 헤더가 M1 네트워크 장비 내지 M5 네트워크 장비에 도달할 수 있는지를 확인할 수도 있다.
중앙 서버는 HSA 기법을 통해 임의의 패킷의 도달 가능성, 포워딩 루프(forwarding loops), 트래픽 고립(traffic isolation) 및 누수(leakage) 문제 등을 확인할 수 있다.
전술한 바와 같이, 일반적인 HSA에서는 중앙 서버가 모든 네트워크 장비들의 패턴 처리 규칙을 저장하고 있으며, 저장된 패턴 처리 규칙을 이용하여 패킷의 도달 가능성을 판단한다. 그러나, 이러한 방식은 중앙 서버에게 과도한 부하를 줄 수 있다. 또한, 네트워크 장비의 패턴 처리 규칙이 중앙 서버에 저장된 뒤에, 해당 네트워크 장비의 패턴 처리 규칙이 변경된 경우, 변경된 패턴 처리 규칙을 빠르게 반영하지 못한다는 문제점이 있다.
도 3은 본 발명의 일 실시예에 따른 네트워크 검사 방법을 도시하는 순서도이다.
S310 단계에서, 중앙 서버(100)는 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 네트워크의 검사를 위한 요청 명령을 제 1 네트워크 장비로 전송한다. 본 명세서에서 검증 패킷은 본 발명에 따른 HSA 방식에 따라 네트워크를 검사하기 위해 각 네트워크 장비(200)들이 서로 전달하는 패킷을 의미한다.
요청 명령을 수신한 제 1 네트워크 장비는 검증 패킷과 검사 메시지를 다음 네트워크 장비로 전송한다. 본 발명의 일 실시예에 따른 중앙 서버(100)는 종래와 달리 복수의 네트워크 장비(200)들 각각의 패턴 처리 규칙을 미리 저장할 필요가 없으며, 대신 제 1 네트워크 장비(200a)가 다음 네트워크 장비로 검사 메시지를 전송하게 한다. 여기서, 제 1 네트워크 장비(200a)는 중앙 서버(100)가 전송하는 요청 명령을 최초로 수신하는 네트워크 장비(200)를 의미한다.
제 1 네트워크 장비(200a)는 검사 메시지에 제 1 네트워크 장비(200a)의 패킷 처리 규칙과 관련된 정보를 기록한 후, 다음 네트워크 장비(200)로 전달한다.
S320 단계에서, 중앙 서버(100)는 복수의 네트워크 장비(200)들 중 제 1 네트워크 장비(200a)를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비(200b)로부터 검사 메시지를 수신한다. 여기서, 제 2 네트워크 장비(200b)는 제 1 네트워크 장비(200a)가 전송한 검증 패킷과 검사 메시지를 마지막으로 수신한 네트워크 장비(200)를 의미한다.
제 2 네트워크 장비(200b)는 검사 메시지에 제 2 네트워크 장비(200b)의 패킷 처리 규칙과 관련된 정보를 기록한 후, 이를 중앙 서버(100)로 전달한다.
S330 단계에서, 중앙 서버(100)는 제 2 네트워크 장비(200b)로부터 수신된 검사 메시지에 기초하여, 복수의 네트워크 장비(200) 중 임의의 네트워크 장비(200)로의 패킷의 도달 가능성(reachability)를 결정할 수 있다. 최초 중앙 서버(100)가 제 1 네트워크 장비(200a)로 요청 명령을 전송한 이후, 검사 메시지에는 제 1 네트워크 장비(200a), 중간 네트워크 장비(200) 및 제 2 네트워크 장비(200b) 각각에 의해 패킷 처리 규칙과 관련된 정보가 누적 기록되므로, 중앙 서버(100)는 제 2 네트워크 장비(200b)로부터 수신되는 검사 메시지를 통해 패킷의 도달 가능성을 결정할 수 있다. 한편, 본 명세서에서 소정의 정보가 검사 메시지에 누적 기록된다는 것은, 검사 메시지에 이전에 기록된 정보에 추가하여 소정의 정보가 검사 메시지에 기록된다는 것을 의미한다.
본 발명의 일 실시예에 따른 중앙 서버(100) 및 이에 의한 네트워크 검사 방법에 의하면, 종래와 같은 중앙 서버(100)의 중앙 처리 방식이 아닌 중앙 서버(100)와 네트워크 장비(200)들의 분산 처리 방식을 차용함으로써, 중앙 서버(100)의 부하를 감소시키고, 실시간으로 변경되는 네트워크 장비(200)의 패킷 처리 규칙을 정확하게 반영할 수 있다.
이하에서는, 도 4를 참조하여, 네트워크 장비(200)들을 통해 전달되는 검사 메시지에 대해 상세히 설명한다.
도 4는 본 발명의 일 실시예에 따른 복수의 네트워크 장비(S, M1 내지 M4)를 통해 전달되는 검사 메시지(400)를 설명하기 위한 도면이다.
중앙 서버로부터 요청 명령을 받은 S 네트워크 장비가 전송하는 검사 메시지(400)에는 요청 메시지(410), 헤더의 공간 정보 및 검증 패킷의 경로 정보가 포함될 수 있다. 헤더의 공간 정보는 헤더 스페이스 중 헤더가 매핑되는 공간에 대한 정보를 의미한다. 검증 패킷의 경로 정보는 검증 패킷이 어느 포트를 통해 어느 네트워크 장비로 전달되었는지에 대한 정보를 의미한다.
도 4를 보면, S 네트워크 장비의 Ps/1 포트 및 M1 네트워크 장비의 P1/1 포트를 통해 M1 네트워크 장비로 검증 패킷이 전달되었으므로, S 네트워크 장비는 검증 패킷의 경로 정보에 Ps/1과 P1/1을 누적 기록한다.
요청 메시지(410)는 검사 메시지(400)를 수신한 네트워크 장비로 하여금, 다음 네트워크 장비로 검증 패킷이 전달될 때의 경로 정보, 및 검증 패킷이 처리된 이후의 헤더의 공간 정보를 검사 메시지(400)에 기록하게 한다. 각 네트워크 장비는 검사 메시지(400)에 요청 메시지(410)가 포함된 경우에 한하여, 경로 정보 및 공간 정보를 누적하여 기록할 수 있다.
M1 네트워크 장비로 전달된 검증 패킷의 헤더는 M1 네트워크 장비에 의해 공간 정보가 B로 변경되고, M1 네트워크 장비의 P1/2 포트 및 M2 네트워크 장비의 P2/1 포트를 통해 M2 네트워크 장비로 전달되었으므로, M1 네트워크 장비는 공간 정보와 경로 정보로서, [B, P1/2] 및 [B, P2/1]을 검사 메시지(400)에 기록할 수 있다. 도 4에 도시된 바와 같이, M2 네트워크 장비와 M3 네트워크 장비 각각도 헤더의 공간 정보와 경로 정보를 검사 메시지(400)에 누적하여 기록할 수 있다.
M4 네트워크 장비는 검증 패킷과 검사 메시지(400)를 수신한 이후, 이를 전달할 네트워크 장비가 존재하지 않으면, 헤더의 공간 정보만을 검사 메시지(400)에 기록한 후, 검사 메시지(400)를 중앙 서버로 전송할 수 있다. M4 네트워크 장비는 별도의 연결 라인을 통해 검사 메시지(400)를 중앙 서버로 전송할 수 있다.
헤더의 공간 정보와 검증 패킷의 경로 정보는 각 네트워크 장비의 패킷 처리 규칙을 반영한 것이므로, 중앙 서버는 M4 네트워크 장비로부터 수신되는 검사 메시지(400)를 통해 임의의 패킷의 도달 가능성을 판단할 수 있다.
도 5는 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다.
S510 단계에서, 네트워크 장비(200)는 이전 네트워크 장비(200)로부터 검증 패킷 및 네트워크의 검사를 위한 검사 메시지를 수신한다. 네트워크 장비(200)가 수신한 검사 메시지는 헤더 스페이스 중 검증 패킷의 헤더가 매핑된 공간 정보를 포함할 수 있다.
S520 단계에서, 네트워크 장비(200)는 네트워크 장비(200)의 패킷 처리 규칙에 따라 검증 패킷을 처리한다.
S530 단계에서, 네트워크 장비(200)는 패킷 처리 규칙과 관련된 정보를 검사 메시지에 기록한다. 전술한 바와 같이, 패킷 처리 규칙과 관련된 정보는 네트워크 장비(200)에 의해 검증 패킷이 처리된 이후의 헤더의 공간 정보 및 네트워크 장비(200)가 다음 네트워크 장비(200)로 검증 패킷을 전달하기 위한 경로 정보를 포함할 수 있다.
네트워크 장비(200)는 검사 메시지를 갱신하기 전에 검사 메시지에 요청 메시지가 포함되어 있는지를 확인하고, 요청 메시지가 검사 메시지에 포함된 경우에 한하여 검사 메시지를 갱신할 수도 있다.
S540 단계에서, 네트워크 장비(200)는 처리된 검증 패킷 및 갱신된 검사 메시지를 중앙 서버(100) 또는 다음 네트워크 장비(200)로 전달한다.
한편, 네트워크에 따라서는, 네트워크 내부에 네트워크 터널이 존재할 수 있다. 네트워크 터널은 터널이 시작되는 지점에 위치한 제 1 터널 장비와 터널이 종료되는 지점에 위치한 제 2 터널 장비를 포함할 수 있다. 제 1 터널 장비와 제 2 터널 장비는 전술한 복수의 네트워크 장비(200) 중 어느 하나의 네트워크 장비(200)와 다른 하나의 네트워크 장비(200)에 대응할 수 있다.
제 1 터널 장비는 제 1 외부 장비로부터 수신되는 패킷의 헤더를 캡슐레이션(encapsulation)하여 터널 내의 다른 터널 장비 또는 제 2 터널 장비로 전송한다. 여기서, 제 1 외부 장비는 터널의 외부에 위치한 네트워크 장비(200)를 의미할 수 있다.
제 2 터널 장비는 다른 터널 장비 또는 제 1 터널 장비로부터 수신된 패킷의 헤더를 디캡슐레이션(decapsulation)하여, 제 1 외부 장비로부터 제 1 터널 장비로 전송된 원래의 헤더를 포함하는 패킷을 제 2 외부 장비로 전송한다. 제 1 외부 장비로부터 제 1 터널 장비로 전송되는 헤더는 제 1 터널 장비에 의해 캡슐레이션된 후, 제 2 터널 장비에 의해 디캡슐레이션되므로, 제 1 외부 장비가 제 1 터널 장비로 전송하는 헤더와 제 2 터널 장비가 제 2 외부 장비로 전송하는 헤더는 서로 동일하다. 여기서, 제 2 외부 장비는 터널의 외부에 위치한 네트워크 장비(200)를 의미할 수 있다.
네트워크 터널은 예를 들어, 헤더를 암호화하기 위한 터널, 네트워크에 적용되는 프로토콜(예를 들어, IPv6)과는 상이한 프로토콜(예를 들어, IPv4)이 적용되는 터널을 포함할 수 있다.
제 1 터널 장비에 의해 캡슐레이션된 헤더는 패킷의 페이로드(payload)에 위치하므로, 제 2 터널 장비가 헤더의 공간 정보를 확인할 수 없으며, 제 2 터널 장비가 검사 메시지 내에 관련 정보를 기록할 수 없다는 문제점이 있다. 따라서, 네트워크 내에 터널이 존재하는 경우, 제 2 터널 장비를 위한 추가적인 정보가 검사 메시지에 포함되어야 한다.
도 6은 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다.
S610 단계에서, 제 1 터널 장비는 제 1 외부 장비로부터 검증 패킷 및 네트워크의 검사를 위한 검사 메시지를 수신한다. 전술한 바와 같이, 검사 메시지에는 제 1 외부 장비에 의해 검사 메시지에 기록된 헤더의 공간 정보 및 제 1 외부 장비로부터 제 1 터널 정보로 검증 패킷이 전달될 때의 경로 정보가 포함될 수 있다.
S620 단계에서, 제 1 터널 장비는 네트워크 터널의 식별 정보 및 네트워크에서의 검증 패킷의 깊이 값을 누적하여 검사 메시지에 기록한다. 도 4와 관련하여 설명한 실시예와 달리, 네트워크 내에 네트워크 터널이 존재하는 경우, 검사 메시지에는 네트워크 터널의 식별 정보와 검증 패킷의 깊이 값이 더 기록될 수 있다. 제 1 터널 장비는 터널의 식별 정보를 미리 알 수 있으며, 검증 패킷의 깊이 값은 검증 패킷이 네트워크 내에서 어느 깊이, 예를 들어, 터널 외부에 위치하는지, 터널 내에 위치하는지, 터널 내의 다른 터널 내에 위치하는지를 나타낸다. 제 1 터널 장비가 검증 패킷의 깊이 값을 검사 메시지에 기록하는 방법에 대해서는 도 7을 참조하여 후술한다.
또한, 제 1 터널 장비는 검사 메시지에 제 1 터널 장비의 패킷 처리 규칙과 관련된 정보를 누적하여 기록할 수 있다. 구체적으로, 제 1 터널 장비는 다른 터널 장비 또는 제 2 터널 장비로 검증 패킷을 전달할 때의 검증 패킷의 경로 정보, 및 제 1 터널 장비에 의해 검증 패킷이 처리된 후의 헤더의 공간 정보를 검사 메시지에 누적하여 기록할 수 있다.
S630 단계에서, 제 1 터널 장비는 검사 메시지 및 검증 패킷을 다른 터널 장비 또는 제 2 터널 장비로 전송한다.
S640 단계에서, 제 2 터널 장비는 제 1 터널 장비 또는 다른 터널 장비로부터 수신한 검사 메시지에 제 1 외부 장비에 의해 검사 메시지에 기록된 정보를 누적하여 기록한다. 전술한 바와 같이, 제 2 터널 장비는 헤더의 공간 정보를 확인할 수 없으므로, 자신이 미리 알고 있는 터널의 식별 정보와 동일한 식별 정보를 기록한 제 1 터널 장비의 바로 이전의 제 1 외부 장비에 의해 기록된 헤더의 공간 정보를 검사 메시지에 누적하여 기록할 수 있다. 그러나, 검증 패킷의 경로 정보에 대해서는 제 1 외부 장비에 의해 기록된 경로 정보를 참조하지 않고, 검증 패킷을 제 2 외부 장비로 전송할 때의 경로 정보를 검사 메시지에 기록할 수 있다.
S650 단계에서, 제 2 터널 장비는 검사 메시지를 제 2 외부 장비로 전송한다.
이하에서는, 도 7을 참조하여, 네트워크 내에 터널(750)이 존재하는 경우에 사용될 수 있는 검사 메시지(700)에 대해 상세히 설명한다.
도 7은 본 발명의 일 실시예에 따른 검사 메시지(700)를 설명하기 위한 도면이다.
도 7을 보면, S 네트워크 장비는 제 1 외부 장비, M1 네트워크 장비(710)는 제 1 터널 장비, M2 네트워크 장비는 다른 터널 장비, M3 네트워크 장비(730)는 제 2 터널 장비, M4 네트워크 장비는 제 2 외부 장비에 대응할 수 있다. 또한, 도 7에 도시된 검사 메시지(700)는 전술한 헤더의 공간 정보와 검증 패킷의 경로 정보 외에 네트워크 터널의 식별 정보와 검증 패킷의 깊이 값을 더 포함할 수 있다.
S 네트워크 장비는 헤더의 공간 정보 A와 경로 정보 Ps/1 및 P1/1을 검사 메시지에 기록한다. S 네트워크 장비는 터널(750)의 외부에 위치하며, 검증 패킷 역시 터널(750)의 외부에 위치하므로, S 네트워크 장비는 터널(750)의 식별 정보와 깊이 값을 0으로 기록할 수 있다.
S 네트워크 장비로부터 검증 패킷과 검사 메시지(700)를 수신한 M1 네트워크 장비(710)는 헤더의 공간 정보와 경로 정보를 기록하고, 추가적으로, 네트워크 터널(750)의 식별 정보인 N1과 검증 패킷의 깊이 값 1을 기록할 수 있다. M1 네트워크 장비(710)는 S 네트워크 장비에 의해 검사 메시지(700)에 기록된 검증 패킷의 깊이 값을 가산하여, 가산된 깊이 값을 검사 메시지(700)에 기록할 수 있다. M1 네트워크 장비(710)에 의해 검증 패킷의 깊이 값으로 1이 기록됨으로써, 중앙 서버(미도시)는 M1 네트워크 장비(710)로부터 터널(750)이 시작되었음을 확인할 수 있다. 만약, M1 네트워크 장비(710)가 포함된 터널(750)이 종료되기 이전에 다른 터널이 시작되는 경우, 다른 터널이 시작되는 지점에 위치한 네트워크 장비는 검증 패킷의 깊이 값으로 2(2진수로 10)를 기록할 것이다.
M2 네트워크 장비는 헤더의 공간 정보와 검증 패킷의 경로 정보를 검사 메시지(700)에 누적하여 기록한다. 또한, M2 네트워크 장비와 M1 네트워크 장비(710)는 동일한 터널(750) 내에 위치하므로, M2 네트워크 장비는 터널(750)의 식별 정보 N1과 깊이 값 1을 검사 메시지(700)에 누적하여 기록한다.
M3 네트워크 장비(730)는 자신이 미리 알고 있는 터널(750)의 식별 정보와 동일한 식별 정보를 검사 메시지(700)에 기록한 M1 네트워크 장비(710)를 확인한 후, M1 네트워크 장비(710) 이전에 위치한 S 네트워크 장비가 검사 메시지(700)에 기록한 헤더의 공간 정보를 검사 메시지(700)에 누적하여 기록한다. 도 7을 보면, S 네트워크 장비가 검사 메시지(700)에 기록한 A가 M3 네트워크 장비(730)에 의해 다시 기록된 것을 알 수 있다. M3 네트워크 장비(730)는 M4 네트워크 장비로 검증 패킷을 전달할 때의 경로 정보를 기록하고, 자신을 마지막으로 터널(750)이 종료되었으므로, 터널의 식별 정보를 0으로 기록한다. 또한, M3 네트워크 장비(730)는 M1 네트워크 장비(710)에 의해 검사 메시지(700)에 기록된 검증 패킷의 깊이 값을 감산한 후, 감산된 깊이 값 0을 검사 메시지(700)에 누적하여 기록한다.
M4 네트워크 장비는 검증 패킷과 검사 메시지(700)를 수신한 이후, 이를 전달할 네트워크 장비가 존재하지 않으면, 헤더의 공간 정보만을 검사 메시지(700)에 기록한 후, 검사 메시지(700)를 중앙 서버로 전송할 수 있다.
중앙 서버(100)는 M4 네트워크 장비로부터 수신되는 검사 메시지(700)를 통해 터널이 존재하는 경우에도 임의의 패킷의 도달 가능성을 확인할 수 있다.
또한, 중앙 서버(100)는 M4 네트워크 장비로부터 수신되는 검사 메시지(700)를 통해 터널이 구성이 적절하게 되어 있는지를 확인할 수도 있는데, 이에 대해서는 도 8(a) 내지 도 8(c)를 참조하여 설명한다.
도 8(a) 내지 도 8(c)는 네트워크에 포함된 예시적인 터널의 구성을 도시하는 도면이다.
먼저, 도 8(a)는 제 1 터널 장비인 M1 네트워크 장비와 제 2 터널 장비인 M5 네트워크 장비가 동일한 식별 정보를 갖는 터널을 구성하는 경우로서, 이 경우, M5 네트워크 장비는 M1 네트워크 장비와 동일한 터널의 식별 정보를 가지고 있으므로, 검사 메시지에 기록될 헤더의 공간 정보로서, S 네트워크 장비에 의해 기록된 헤더의 공간 정보를 검사 정보에 누적하여 기록할 수 있다.
도 8(b)는 M1 네트워크 장비와 M5 네트워크 장비가 서로 상이한 터널의 식별 정보를 가지고 있는 경우로서, M5 네트워크 장비는 수신한 검사 메시지 내에 자신이 알고 있는 터널의 식별 정보가 기록되어 있지 않으므로, 헤더의 공간 정보를 검사 메시지 내에 기록할 수 없다. 따라서, 중앙 서버(100)는 M1 네트워크 장비가 검사 메시지에 기록한 터널의 식별 정보와 M5 네트워크 장비가 검사 메시지에 기록한 터널의 식별 정보를 보고, 터널의 구성이 잘못되어 있는 것을 확인할 수 있다.
또한, 도 8(c)는 제 1 터널 장비인 M1 네트워크 장비만이 네트워크에 존재하는 경우로서, 중앙 서버(100)는 검사 메시지에 기록된 패킷의 깊이 정보와 터널의 식별 정보를 통해, M1 네트워크 장비를 기점으로 터널이 시작되었지만, 터널이 종료되지 않았다는 것을 알 수 있다.
본 발명의 일 실시예에 따른 네트워크 터널을 구성하는 제 1 터널 장비 및 제 2 터널 장비, 및 이에 의한 검증 패킷 전달 방법은 네트워크 검사로 인한 중앙 서버의 부하를 감소시킬 수 있으며, 네트워크 장비의 패턴 처리 규칙이 변경되더라도 네트워크 검사를 정확히 수행할 수 있다. 또한, 네트워크 내에 네트워크 터널이 존재하는 경우에도 네트워크 검사를 정확히 수행할 수 있다.
한편, 전술한 실시예들에서는 모든 네트워크 장비(200)들이 헤더만을 처리하는 레이어-3 장비나 레이어-4 장비인 경우에 정확하게 동작할 수 있으나, 만약, 헤더가 아닌 페이로드(payload)의 내용에 따라 기능을 수행하는 레이어-7 장비가 네트워크에 포함된다면, 패킷의 도달 가능성만으로 네트워크를 검사하기는 부족할 수 있다. 예를 들어, 제 1 네트워크 장비(200a)로부터 제 2 네트워크 장비(200b)로 도달 가능한 패킷으로서 A 패킷이 확인되었더라도, 제 1 네트워크 장비(200a)와 제 2 네트워크 장비(200b) 사이에 레이어-7 장비가 위치하는 경우, 제 1 네트워크 장비(200a)로부터 전송된 A 패킷은 제 2 네트워크 장비(200b)로 전달되지 않을 수도 있다. 왜냐하면, 레이어-7 장비가 A 패킷의 페이로드의 내용을 보고, A 패킷을 차단하거나, 제 2 네트워크 장비(200b)로의 방향이 아닌 다른 방향으로 포워딩을 할 수도 있기 때문이다. 따라서, 본 발명의 일 실시예에 따른 중앙 서버(100)는 패킷의 도달 가능성뿐만 아니라 패킷의 도달 확률도 검사 메시지를 통해 확인할 수 있는데, 이에 대해서는 도 9 내지 도 13을 참조하여 설명한다.
도 9는 본 발명의 일 실시예에 따른 네트워크 검사 방법을 도시하는 순서도이다.
S910 단계에서, 중앙 서버(100)는 네트워크에 포함된 제 1 네트워크 장비(200a)가 다음 네트워크 장비(200)로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 네트워크의 검사를 위한 요청 명령을 제 1 네트워크 장비(200a)로 전송한다. 요청 명령을 수신한 제 1 네트워크 장비(200a)는 검사 메시지에 패킷 처리 규칙과 관련된 정보, 즉, 헤더의 공간 정보, 검증 패킷의 전달 경로 및 다음 네트워크 장비(200)로의 패킷 전달 확률을 기록하고, 검증 패킷과 검사 메시지를 다음 네트워크 장비로 전송한다. 본 실시예에서 네트워크에 포함된 적어도 일부의 네트워크 장비들은 다음 네트워크 장비로의 패킷 전달 확률을 미리 알고 있을 수 있다.
S920 단계에서, 중앙 서버(100)는 복수의 네트워크 장비(200)들 중 제 1 네트워크 장비(200a)를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비(200b)로부터 검사 메시지를 수신한다. 제 2 네트워크 장비(200b)는 검사 메시지에 제 2 네트워크 장비(200b)의 패킷 처리 규칙과 관련된 정보를 기록한 후, 이를 중앙 서버(100)로 전달한다.
S930 단계에서, 중앙 서버(100)는 제 2 네트워크 장비(200b)로부터 수신된 검사 메시지에 기초하여, 복수의 네트워크 장비(200) 중 임의의 네트워크 장비(200)로 도달 가능한(reachable) 패킷의 종류와 해당 패킷의 도달 확률(probability)를 결정할 수 있다. 중앙 서버(100)는 제 2 네트워크 장비(200b)에 의해 검사 메시지에 기록된 헤더의 공간 정보와, 제 2 네트워크 장비(200b)의 이전 네트워크 장비(200)에 의해 검사 메시지에 기록된 패킷 전달 확률을 보고, 제 1 네트워크 장비(200a)로부터 제 2 네트워크 장비(200b)로 도달 가능한 패킷의 종류와 해당 패킷의 도달 확률을 확인할 수 있다.
최초 중앙 서버(100)가 제 1 네트워크 장비(200a)로 요청 명령을 전송한 이후, 검사 메시지에는 제 1 네트워크 장비(200a), 중간 네트워크 장비(200) 및 제 2 네트워크 장비(200b) 각각에 의해 패킷 처리 규칙과 관련된 정보가 누적 기록되므로, 중앙 서버(100)는 제 2 네트워크 장비(200b)로부터 수신되는 검사 메시지를 통해 패킷의 도달 가능성과 패킷의 도달 확률을 결정할 수 있다.
도 9에 도시된 실시예에 의하면, 검사 메시지에 전술한 헤더의 공간 정보와 검증 패킷의 전달 경로뿐만 아니라 패킷 전달 확률도 기록되므로, 레이어-7 장비가 포함된 네트워크 내의 임의의 네트워크 장비로 도달 가능한 패킷의 종류와 해당 패킷의 도달 확률까지도 확인할 수 있다.
도 10은 본 발명의 일 실시예에 따른 검사 메시지(1000)를 설명하기 위한 도면이다.
중앙 서버(100)로부터 요청 명령을 받은 S 네트워크 장비가 전송하는 검사 메시지(1000)에는 요청 메시지, 헤더의 공간 정보, 검증 패킷의 경로 정보 및 다음 네트워크 장비로의 패킷 전달 확률이 포함될 수 있다. 헤더의 공간 정보는 헤더 스페이스 중 헤더가 매핑되는 공간에 대한 정보를 의미하며, 검증 패킷의 경로 정보는 검증 패킷이 어느 포트를 통해 어느 네트워크 장비로 전달되었는지에 대한 정보를 의미한다. 또한, 패킷 전달 확률은 다음 네트워크 장비로 패킷을 전달하는 확률을 의미하며, 이는 네트워크 장비(200)에 미리 저장될 수 있다.
네트워크 장비(200)들 중 레이어-3 장비나 레이어-4 장비의 경우, 헤더만을 고려하여 패킷을 다음 네트워크 장비(200)로 전달하므로, 패킷 전달 확률이 100%에 해당하나, 레이어-7 장비의 경우에는, 페이로드의 내용을 고려하여 패킷을 다음 네트워크 장비(200)로 전달하므로, 패킷 전달 확률이 100%보다 작을 수 있다.
도 10에서 S 네트워크 장비, M1 네트워크 장비, M2 네트워크 장비는 레이어-3 장비 또는 레이어-4 장비에 해당하고, N1 네트워크 장비(1010)와 N2 네트워크 장비(1020)는 레이어-7 장비에 해당한다.
도 10을 보면, S 네트워크 장비의 Ps/1 포트 및 M1 네트워크 장비의 P1/1 포트를 통해 M1 네트워크 장비로 검증 패킷이 전달되었으므로, S 네트워크 장비는 검사 메시지(1000)의 경로 정보에 Ps/1과 P1/1을 누적 기록하고, M1 네트워크 장비로의 패킷 전달 확률을 1(또는 100%)로 기록한다.
M1 네트워크 장비로 전달된 검증 패킷의 헤더는 M1 네트워크 장비에 의해 공간 정보가 B로 변경되고, M1 네트워크 장비의 P1/2 포트 및 N1 네트워크 장비(1010)의 P2/1 포트를 통해 N1 네트워크 장비(1010)로 전달되었으므로, M1 네트워크 장비는 공간 정보와 경로 정보로서, [B, P1/2] 및 [B, P2/1]을 검사 메시지(1000)에 기록할 수 있다. 또한, M1 네트워크 장비는 N1 네트워크 장비(1010)로의 패킷 전달 확률을 1로 기록한다.
N1 네트워크 장비(1010)는 레이어-7 장비로서, 헤더를 고려하지 않으므로, 헤더의 공간 정보로서 M1 네트워크 장비에 의해 기록되었던 B를 다시 검사 메시지(1000)에 기록하고, 경로 정보로 P2/2와 P3/1을 검사 메시지(1000)에 기록한다. N1 네트워크 장비(1010)의 N2 네트워크 장비(1020)로의 패킷 전달 확률이 50%인 경우, N1 네트워크 장비(1010)는 M1 네트워크 장비에 의해 검사 메시지(1000)에 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값, 즉 0.5(또는 50%)를 검사 메시지(1000)에 기록한다.
N2 네트워크 장비(1020)는 레이어-7 장비로서, 헤더를 고려하지 않으므로, 헤더의 공간 정보로서 N1 네트워크 장비(1010)에 의해 기록되었던 B를 다시 검사 메시지(1000)에 기록하고, 경로 정보로 P3/2와 P4/1을 기록한다. N2 네트워크 장비(1020)의 M2 네트워크 장비로의 패킷 전달 확률이 20%인 경우, N2 네트워크 장비(1020)는 N1 네트워크 장비(1010)에 의해 검사 메시지(1000)에 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값, 즉 0.1(또는 10%)를 검사 메시지(1000)에 기록한다.
M2 네트워크는 검증 패킷을 처리한 후, 검증 패킷의 헤더의 공간 정보로 C, 경로 정보로 P4/2를 검사 메시지(1000)에 기록한다. 또한, M2 네트워크 장비는 레이어-3 장비 또는 레이어-4 장비로서 패킷 전달 확률이 100%이므로, N2 네트워크 장비(1020)에 의해 기록되었던 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값, 즉, 0.1를 검사 메시지(1000)에 기록한다.
최종적으로 검사 메시지(1000)를 수신한 중앙 서버는 검사 메시지(1000)에 기록된 내용에 기초하여, 각 네트워크 장비로 도달할 수 있는 패킷의 종류와 해당 패킷의 도달 확률을 결정할 수 있다.
도 11은 본 발명의 일 실시예에 따른 검사 메시지(1100)를 설명하기 위한 도면이다.
도 10에서는 모든 네트워크 장비들이 헤더의 공간 정보, 경로 정보 및 패킷 전달 확률 모두를 검사 메시지(1000)에 기록하는 것으로 설명하였지만, 구현예에 따라서는 레이어-3 장비 또는 레이어-4 장비는 헤더의 공간 정보와 검증 패킷의 경로 정보만을 검사 메시지(1000)에 기록하고, 레이어-7 장비는 패킷의 전달 확률과 검증 패킷의 경로 정보만을 검사 메시지(1000)에 기록할 수 있다.
도 11에서 S 네트워크 장비, M1 네트워크 장비, M2 네트워크 장비는 레이어-3 장비 또는 레이어-4 장비에 해당하고, N1 네트워크 장비(1010)와 N2 네트워크 장비(1020)는 레이어-7 장비에 해당한다.
도 11에 도시된 바와 같이, 중앙 서버(100)로부터 요청 명령을 받은 S 네트워크 장비는 검사 메시지(1100)에 헤더의 공간 정보와 검증 패킷의 경로 정보를 기록하여 M1 네트워크 장비로 전달한다.
M1 네트워크 장비 역시 S 네트워크 장비와 마찬가지로 헤더의 공간 정보와 검증 패킷의 경로 정보를 검사 메시지(1100)에 기록한 후, N1 네트워크 장비(1010)로 전달한다.
레이어-7 장비인 N1 네트워크 장비(1010)는 N2 네트워크 장비(1020)로의 패킷 전달 확률과 경로 정보를 검사 메시지(1100)에 기록하여 N2 네트워크 장비(1020)로 전달한다.
레이어-7 장비인 N2 네트워크 장비(1020)는 검증 패킷의 경로 정보와 패킷의 전달 확률을 검사 메시지(1100)에 기록하되, 이전 네트워크 장비들에 의해 최종적으로 검사 메시지(1100)에 기록되었던 패킷 전달 확률, 즉, N1 네트워크 장비(1010)에 의해 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값을 검사 메시지(1100)에 기록할 수 있다.
M2 네트워크 장비는 헤더의 공간 정보와 검증 패킷의 경로 정보를 검사 메시지(1100)에 기록하여 중앙 서버(100) 또는 다음 네트워크 장비로 전달한다.
한편, 구현예에 따라서는 네트워크 장비(200)들이 검사 메시지에 패킷 전달 확률을 기록할 때, 이전 네트워크 장비(200)에 의해 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값 대신, 자신의 패킷 전달 확률만을 검사 메시지에 기록할 수도 있다. 중앙 서버(100)는 검사 메시지에 기록된 패킷 전달 확률들의 곱을 통해 임의의 네트워크 장비(200)로의 패킷 도달 확률을 확인할 수 있다. 예를 들어, 도 11에서 N1 네트워크 장비(1010)가 자신의 패킷 전달 확률인 0.5를 검사 메시지에 기록하고, N2 네트워크 장비(1020)가 자신의 패킷 전달 확률인 0.2를 검사 메시지에 기록한 경우, 중앙 서버(100)는 S 네트워크 장비로부터 M2 네트워크로 도달 가능한 패킷이 0.5와 0.2를 곱한 값, 즉 0.1의 확률로 도달한다는 것을 확인할 수 있다.
도 12는 본 발명의 일 실시예에 따른 중앙 서버(1200)의 구성을 나타내는 블록도이다.
도 12를 참조하면, 본 발명의 일 실시예에 따른 중앙 서버(1200)는 전송부(1210), 수신부(1230) 및 제어부(1250)를 포함할 수 있다. 전송부(1210), 수신부(1230) 및 제어부(1250)는 적어도 하나의 프로세서로 구현될 수 있다.
전송부(1210)는 네트워크에 포함된 제 1 네트워크 장비(200a)가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 네트워크의 검사를 위한 요청 명령을 제 1 네트워크 장비(200a)로 전송한다.
수신부(1230)는 제 1 네트워크 장비(200a)를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비(200b)로부터 검사 메시지를 수신한다. 검사 메시지에는 네트워크 장비(200)들에 의해 누적 기록된 헤더의 공간 정보, 검증 패킷의 경로 정보 및 패킷의 전달 확률이 포함된다.
제어부(1250)는 수신된 검사 메시지에 기초하여, 네트워크에 포함된 네트워크 장비(200)들 중 임의의 네트워크 장비(200)로 도달 가능한 패킷의 종류 및 해당 패킷의 도달 확률을 결정한다.
도 13은 본 발명의 일 실시예에 따른 검증 패킷 전달 방법을 도시하는 순서도이다. 도 13은 네트워크에 포함된 레이어-7 장비에 의해 수행되는 과정을 나타내고 있다.
S1310 단계에서, 레이어-7 장비는 이전 네트워크 장비(200)로부터 검증 패킷 및 네트워크의 검사를 위한 검사 메시지를 수신한다.
S1320 단계에서, 레이어-7 장비는 다음 네트워크 장비(200)로의 패킷 전달 확률을 검사 메시지에 기록한다. 레이어-7 장비는 다음 네트워크 장비(200)로의 검증 패킷의 경로 정보와, 이전 네트워크 장비(200)에 의해 검사 메시지에 기록된 헤더의 공간 정보를 그대로 검사 메시지에 기록할 수 있다. 검사 메시지에 이전 네트워크 장비(200)에 의해 기록되었던 패킷 전달 확률이 있는 경우, 레이어-7 장비는 이전 네트워크 장비(200)에 의해 기록되었던 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값을 검사 메시지에 기록할 수도 있다.
S1330 단계에서, 레이어-7 장비는 검증 패킷 및 검사 메시지가 중앙 서버(100)로 전달될 수 있도록, 검증 패킷 및 검사 메시지를 다음 네트워크 장비(200)로 전달한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이상과 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100, 1200: 중앙 서버
200: 네트워크 장비
710: 제 1 터널 장비
730: 제 2 터널 장비
1010: 제 1 레이어-7 장비
1020: 제 2 레이어-7 장비
1210: 전송부
1230: 수신부
1250: 제어부

Claims (11)

  1. 중앙 서버에 의한 HSA(header space analysis) 기법을 통한 네트워크 검사 방법에 있어서,
    상기 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 상기 네트워크의 검사를 위한 요청 명령을 상기 제 1 네트워크 장비로 전송하는 단계; 상기 제 1 네트워크 장비를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비로부터 검사 메시지를 수신하는 단계; 및 상기 수신된 검사 메시지에 기초하여, 상기 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한 패킷의 종류 및 해당 패킷의 도달 확률을 결정하는 단계를 포함하고,
    상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는,
    상기 제 1 네트워크 장비로부터 상기 제 2 네트워크 장비로 상기 검증 패킷이 전달되는 동안에 누적 기록되는 정보로서, 레이어-7 장비가 아닌 네트워크 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 헤더의 공간 정보를 포함하고, 레이어-7 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 다음 네트워크 장비로의 패킷 전달 확률을 포함하고,
    상기 네트워크에 터널이 존재하는 경우에, 상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는, 해당 네트워크 장비에 의해 누적 기록된 네트워크 터널의 식별 정보와 검증 패킷의 깊이 값을 더 포함하는 것을 특징으로 하는 네트워크 검사 방법.
  2. 제1항에 있어서,
    상기 제 2 네트워크 장비로부터 수신되는 검사 메시지는,
    상기 네트워크에 포함된 네트워크 장비들 각각에 의해 누적 기록된 패킷 처리 규칙과 관련된 정보를 포함하는 것을 특징으로 하는 네트워크 검사 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 패킷 전달 확률은,
    이전의 네트워크 장비에 의해 상기 검사 메시지에 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱한 값을 포함하는 것을 특징으로 하는 네트워크 검사 방법.
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 패킷의 도달 확률을 결정하는 단계는,
    상기 제 2 네트워크 장비의 이전 네트워크 장비에 의해 상기 검사 메시지에 기록된 패킷 전달 확률을 상기 제 1 네트워크 장비로부터 제 2 네트워크 장비로 도달 가능한 패킷의 도달 확률로 결정하는 단계를 포함하는 것을 특징으로 하는 네트워크 검사 방법.
  8. HSA(header space analysis) 기법을 통해 네트워크를 검사하는 중앙 서버에 있어서,
    상기 네트워크에 포함된 제 1 네트워크 장비가 다음 네트워크 장비로 헤더를 포함하는 검증 패킷과 검사 메시지를 전달할 수 있도록, 상기 네트워크의 검사를 위한 요청 명령을 상기 제 1 네트워크 장비로 전송하는 전송부; 상기 제 1 네트워크 장비를 경유하여 전달되는 검증 패킷과 검사 메시지를 수신한 제 2 네트워크 장비로부터 검사 메시지를 수신하는 수신부; 및 상기 수신부에서 수신한 검사 메시지에 기초하여, 상기 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한 패킷의 종류 및 해당 패킷의 도달 확률을 결정하는 제어부를 포함하고,
    상기 수신부에서 수신한 검사 메시지는,
    상기 제 1 네트워크 장비로부터 상기 제 2 네트워크 장비로 상기 검증 패킷이 전달되는 동안에 누적 기록되는 정보로서, 레이어-7 장비가 아닌 네트워크 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 헤더의 공간 정보를 포함하고, 레이어-7 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 다음 네트워크 장비로의 패킷 전달 확률을 포함하고,
    상기 네트워크에 터널이 존재하는 경우에, 상기 수신부에서 수신한 검사 메시지는, 해당 네트워크 장비에 의해 누적 기록된 네트워크 터널의 식별 정보와 검증 패킷의 깊이 값을 더 포함하는 것을 특징으로 하는 중앙 서버.
  9. 네트워크 상의 네트워크 장비들에 의한 검증 패킷 전달 방법에 있어서,
    이전 네트워크 장비로부터 검증 패킷 및 상기 네트워크의 검사를 위한 검사 메시지를 수신하는 단계; 다음 네트워크 장비로의 패킷 전달 확률을 포함하는 정보를 상기 검사 메시지에 기록하는 단계; 및 상기 검증 패킷 및 검사 메시지가 중앙 서버로 전달될 수 있도록 상기 검증 패킷 및 상기 검사 메시지를 상기 다음 네트워크 장비로 전달하는 단계를 포함하고,
    상기 중앙서버는, 상기 다음 네트워크 장비로부터 수신되는 검사 메시지에 기초하여, 상기 네트워크에 포함된 네트워크 장비들 중 임의의 네트워크 장비로 도달 가능한 패킷의 종류 및 해당 패킷의 도달 확률을 결정하되,
    상기 다음 네트워크 장비로부터 수신되는 검사 메시지는, 상기 검증 패킷을 수신하여 전달하는 동안에 누적 기록되는 정보로서, 레이어-7 장비가 아닌 네트워크 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 헤더의 공간 정보를 포함하고, 레이어-7 장비에 의해 누적 기록되는 검증 패킷의 경로 정보와 패킷 전달 확률을 포함하고,
    상기 네트워크에 터널이 존재하는 경우에, 상기 다음 네트워크 장비로부터 수신되는 검사 메시지는, 해당 네트워크 장비에 의해 누적 기록된 네트워크 터널의 식별 정보와 검증 패킷의 깊이 값을 더 포함하는 것을 특징으로 하는 검증 패킷 전달 방법.
  10. 제9항에 있어서,
    상기 기록하는 단계는,
    상기 검증 패킷의 공간 정보로서, 상기 이전 네트워크 장비에 의해 기록된 헤더의 공간 정보를 상기 검사 메시지에 그대로 기록하는 단계를 포함하는 것을 특징으로 하는 검증 패킷 전달 방법.
  11. 제9항에 있어서,
    상기 기록하는 단계는,
    상기 이전 네트워크 장비에 의해 기록된 패킷 전달 확률에 자신의 패킷 전달 확률을 곱하여 상기 검사 메시지에 기록하는 단계를 포함하는 것을 특징으로 하는 검증 패킷 전달 방법.
KR1020160047700A 2016-01-14 2016-04-19 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법 KR101841643B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160004879 2016-01-14
KR1020160004879 2016-01-14

Publications (2)

Publication Number Publication Date
KR20170085412A KR20170085412A (ko) 2017-07-24
KR101841643B1 true KR101841643B1 (ko) 2018-03-26

Family

ID=59429055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160047700A KR101841643B1 (ko) 2016-01-14 2016-04-19 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법

Country Status (1)

Country Link
KR (1) KR101841643B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101341345B1 (ko) * 2012-09-28 2013-12-16 (주)텔레필드 패킷의 특성을 고려한 지연 허용 네트워크에서의 메시지 전송장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101341345B1 (ko) * 2012-09-28 2013-12-16 (주)텔레필드 패킷의 특성을 고려한 지연 허용 네트워크에서의 메시지 전송장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Peyman Kazemian 외 2명, "Header Space Analysis: Static Checking For Networks", NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation (2012.04.27.)*

Also Published As

Publication number Publication date
KR20170085412A (ko) 2017-07-24

Similar Documents

Publication Publication Date Title
US8782789B2 (en) System and method for detecting address resolution protocol (ARP) spoofing
EP2388956B1 (en) Ascertaining per-hop network characteristics
US20120191864A1 (en) Mediated network address translation traversal
CN110741604B (zh) 车载通信装置、通信控制方法和记录介质
US10257322B2 (en) Method for establishing in-band connection in OpenFlow network, and switch
US20100080131A1 (en) Validation of Routes Advertised by Border Gateway Protocol
CN110535768B (zh) 组播数据传输方法及相关设备
CN107948150B (zh) 报文转发方法及装置
US8582574B2 (en) Access device for preventing transmission of copyrighted content to external network and method for the same
CN106330718A (zh) 组播报文转发方法及装置
CN113225311B (zh) 一种基于身份标识的跨网隧道传输方法
KR20070108250A (ko) 정보 처리 시스템, 서버 장치, 전자기기, 컴퓨터 판독가능한 기록 매체 및 정보 처리 방법
US7764692B1 (en) Bypass of routing protocol filtering in a multi-subnet network
WO2011052729A1 (ja) パケット中継装置、パケット中継方法およびプログラム
KR101841643B1 (ko) 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법
KR101959733B1 (ko) ARP 패킷을 이용하여 특정 호스트를 포함하는 네트워크의 정보를 획득하는 방법인 Auto-IP Provision을 수행함으로써 상기 네트워크 상의 기존 스위치를 대체하여 연결된 신규 스위치를 상기 네트워크 외부와 통신할 수 있도록 설정하는 방법 및 장치
CN105978699B (zh) 用于跨网络进行特征追踪的方法和系统
WO2003101048A1 (fr) Systeme de traitement d'information
KR101589616B1 (ko) 네트워크 터널을 구성하는 제1터널 장비 및 제2터널 장비,및 이에 의한 검증 패킷 전달 방법
US20160028622A1 (en) Network path setup method based on identifier, and apparatus thereof
US20080212587A1 (en) Relay apparatus and packet relay method
KR101590101B1 (ko) 중앙 서버 및 이에 의한 네트워크 검사 방법,및 네트워크 장비 및 이에 의한 검증 패킷 전달 방법
US20110216673A1 (en) Topology detection method and topology detection apparatus
US20180159798A1 (en) Packet relay apparatus and packet relay method
CN112019568A (zh) 一种报文转发方法、设备和通信方法、系统

Legal Events

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