KR20170140953A - 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법 - Google Patents

소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법 Download PDF

Info

Publication number
KR20170140953A
KR20170140953A KR1020160073748A KR20160073748A KR20170140953A KR 20170140953 A KR20170140953 A KR 20170140953A KR 1020160073748 A KR1020160073748 A KR 1020160073748A KR 20160073748 A KR20160073748 A KR 20160073748A KR 20170140953 A KR20170140953 A KR 20170140953A
Authority
KR
South Korea
Prior art keywords
packet
switch
label
edge switch
forwarding
Prior art date
Application number
KR1020160073748A
Other languages
English (en)
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 한국전자통신연구원
Priority to KR1020160073748A priority Critical patent/KR20170140953A/ko
Publication of KR20170140953A publication Critical patent/KR20170140953A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치는 다수의 스위치 노드를 플로우 그룹 별로 에지 스위치 및 코어 스위치로 구분하고, 플로우그룹 별로 무작위 다중 경로를 산출하는 RRM 응용 처리부 및 산출된 무작위 다중 경로에 기초하여 구분된 에지 스위치 및 코어 스위치에 포워딩 규칙을 설정하는 SDN 제어부를 포함한다.

Description

소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법{APPARATUS AND METHOD FOR RANDOM ROUTE MUTATUION BASED ON SOFTWARE DEFINED NETWORKING}
본 발명은 네트워크 보안에 관한 기술로서, 보다 상세하게는 소프트웨어 정의망의 다중 경로 전송의 네트워크 보안에 관한 기술이다.
네트워크에서 다중 경로를 활용한 다양한 통신 방법이 존재한다. ECMP (Equal Cost Multiple Path)를 이용하여 동일한 목적지로 가는 패킷을 여러 경로로 분산하여 보낼 수 있으며 MPTCP(Multi-path Transmission Control Protocol)와 같이 동일한 응용 세션을 여러 개의 TCP를 활용하여 성능 및 가용성을 높이는 용도로 사용하기도 한다. 또한, 공격자가 플로우에 대한 정찰(reconnaissance), 도청(eavesdrop), DoS 공격 등을 쉽게 하지 못하도록 트래픽 플로우를 동적으로 변경하고자 하는 동적 경로변경 기술(RRM; Random Route Mutation)을 적용하기도 한다.
일반적인 SDN 기반 동적 경로변경 기술은 SDN에서 기본 적인 패킷 처리 흐름에 따라서 임의의 플로우의 첫 번째 패킷이 입력 시 SDN 제어기로 패킷을 전달하여 SDN 제어기의 응용을 통해 그 플로우에 대한 경로 설정이 이루어 지는 형태이다. 하지만, 일반적인 SDN 기반 동적 경로변경 기술은 플로우에 대한 정보를 사전에 알고 있어야 한다. 그리고 일반적인 SDN 기반 동적 경로변경 기술은 플로우의 개수가 많아질수록 경로 계산이 복잡해지며 시간이 많이 소요되어 반응속도가 느려지게 된다.
한국 공개특허 제10-2007-0061071호
본 발명이 해결하고자 하는 과제는 각 응용 세션 별로 서로 겹치지 않는 다중 경로를 통해 공격자가 플로우에 대한 정찰(reconnaissance), 도청(eavesdrop), DoS 공격 등을 쉽게 하지 못하도록 트래픽 플로우를 동적으로 랜덤하게 설정하는 랜덤 경로 변경 기술(RRM; Random Route Mutation)을 제공하기 위한 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법을 제공하는 것이다.
본 발명에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치는 다수의 스위치 노드를 플로우 그룹 별로 에지 스위치 및 코어 스위치로 구분하고, 플로우 별로 랜덤 다중 경로를 산출하는 RRM 응용 처리부 및 산출된 랜덤 다중 경로에 기초하여, 구분된 에지 스위치 및 코어 스위치에 "포워딩 규칙"을 설정하는 SDN 제어부를 포함한다.
SDN 제어부는 RRM 응용 처리부가 획득한 네트워크 토폴로지 정보와 네트워크 프리픽스 분포 정보를 이용하여 포워딩 규칙을 생성한다. 패킷이 수신되는 인입(Ingress) 에지 스위치에 대해서는 플로우 그룹 (예를 들어, 목적지 주소 프리픽스 단독, 또는 소스 주소 프리픽스와 목적지 주소 프리픽스의 결합)별로 포워딩 규칙을 생성하며, 인입 에지 스위치를 제외한 나머지 스위치(코어 스위치 및 출력 에지 스위치)에 대해서는 인입 에지 스위치가 패킷에 부가하는 레이블을 기반으로 포워딩 규칙이 생성된다.
상기 인입 에지 스위치에 대한 포워딩 정보는 해당 플로우 그룹을 공유하는 다수의 트래픽 플로우가 "플로우 별 무작위 경로"로 포워딩 될 수 있도록 하기 위하여 플로우 그룹이 하나의 그룹 테이블 인덱스를 공유하도록 한다. 즉, 포워딩 규칙의 결과로 그룹 테이블 인덱스를 지정하도록 하고, 해당 인덱스에 해당하는 그룹 테이블 엔트리의 다수의 버킷에 "플로우 별 무작위 경로"를 위한 포워딩 정보를 설정한다.
상기 그룹 테이블 엔트리의 각 버킷에 포함된 포워딩 정보는 인입 에지 스위치가 플로우 별로 부착하여 포워딩함으로써, 코어 스위치 및 출력 에지 스위치가 해당 플로우에 대한 포워딩 결정에 사용할 레이블 정보, 해당 버킷의 유효함을 나타내는 유효 필드, 해당 버킷이 일정 시간 동안에 재사용되지 않도록 하기 위해 가장 최근 사용된 타임스탬프 등을 기록한다.
인입 에지 스위치는 수신된 패킷에 대응하는 "플로우 그룹"별로 설정된 포워딩 규칙을 검색하고, 검색된 포워딩 규칙 결과로 주어진 그룹 테이블 인덱스에 해당하는 그룹 테이블 엔트리에 있는 다수의 버킷으로부터 플로우 별로 하나의 버킷을 선택하고 포워딩 정보를 획득한다. 또한, 포워딩 정보에 포함된 레이블을 이용하여, 해당 플로우에 대해 이 후 목적지까지 도달하기 전에 거쳐갈 경로를 지정할 수 있도록 하기 위해, 수신된 패킷에 레이블을 부착하고 포워딩하는 것을 특징으로 한다.
코어 스위치는 수신된 패킷에 포함된 레이블을 키로 하는 테이블 룩업을 통해 포워딩 정보를 인식하고, 인식된 포워딩 정보에 따라 패킷을 포워딩하며, 경우에 따라서 수신된 패킷에 포함된 레이블을 다른 레이블로 변경하는 레이블 스왑(swap) 동작을 수행할 수 있다.
출력 에지 스위치는 패킷을 최종 목적지 네트워크로 출력(Egress)하는 스위치로서, 수신된 패킷에 부가된 레이블을 제거한 후 패킷을 목적지 네트워크로 전송한다. MPLS에서와 같이 출력 에지 스위치 바로 이전 노드에서 레이블이 제거 되고 입력되는 경우도 고려할 수 있으나 본 발명의 일 실시 예로 패킷은 모두 출력 에지 스위치까지 레이블이 부가된 형태로 수신되는 것을 가정한다.
본 발명에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법은 종래 SDN 기반의 동적 경로변경 기술과 달리 랜덤 경로 설정(RRM)을 통해 랜덤 경로를 설정하고자 하는 SDN 네트워크를 에지 스위치 및 코어 스위치로 구분하여 플로우 별로 서로 다른 경로가 선택될 수 있도록 포워딩 규칙 및 그룹 테이블을 생성하여, 경로 설정을 위한 포워딩 규칙 설정 과정을 단순화 시키며 사전 설정이 가능하게 할 수 있다. 또한, 인입 노드에서 플로우 별로 랜덤 경로를 선택하고 레이블을 부착하도록 하였기 때문에, 망 내부에서는 그 레이블 정보를 이용하여 쉽게 경로 선택이 가능하도록 할 수 있다.
도 1은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 RRM 코어 네트워크의 일례를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 메시지 흐름을 나타내는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 인입 에지 스위치의 구조의 일례를 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 인입 에지 스위치를 제외한 에지 스위치의 패킷 처리 일례를 나타내는 도면이다.
도 6은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 방법의 흐름도이다.
이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세하게 설명한다. 본 명세서에서 사용되는 용어 및 단어들은 실시예에서의 기능을 고려하여 선택된 용어들로서, 그 용어의 의미는 발명의 의도 또는 관례 등에 따라 달라질 수 있다. 따라서 후술하는 실시예에서 사용된 용어는, 본 명세서에 구체적으로 정의된 경우에는 그 정의에 따르며, 구체적인 정의가 없는 경우는 당업자들이 일반적으로 인식하는 의미로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 망을 운영할 때 주어지는 네트워크 정보를 이용하여 랜덤 경로 기술(Random Route Mutation, RRM)을 통해 경로 설정을 사전에 수행하고, 소프트웨어 정의망(SDN)을 구성하는 스위치에 사전 설정한다. 이를 통해, 본 발명에 따른 랜덤 경로 설정 장치(100)는 다수의 스위치(스위치 노드, 11, 12, 13)로 구성된 동적 경로 설정 기반의 코어 네트워크(RRM Core Network, 10)를 형성한다. RRM 코어 네트워크(10)는 소프트웨어 정의망 형태를 가진다.
본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 RRM 응용 처리부(110) 및 SDN 제어부(120)를 포함한다.
RRM 응용 처리부(110)는 RRM 코어 네트워크(10)를 구성하는 다수의 스위치에 대해 플로우 그룹 별로 에지 스위치(11, 12) 및 코어 스위치(13)로 구분한다. 본 발명의 일 실시 예로서 플로우 그룹은 소스 주소 프리픽스와 목적지 주소 프리픽스의 결합으로 사용할 수 있다. 또한, 좀 더 큰 그룹으로 구분하는 경우 목적지 주소 프리픽스만으로도 구성 가능하다.
상기 "플로우 그룹 별로 에지 스위치(11, 12) 및 코어 스위치(13)가 구분"된다는 의미는 에지 스위치 및 코어 스위치는 모든 트래픽 플로우에 대해서 역할이 고정되는 것이 아니라, 플로우 그룹 별로 구분됨을 의미한다. 따라서, 어느 특정 플로우에 대해서 에지 스위치의 역할을 수행하는 스위치가 다른 플로우에 대해서는 코어 스위치의 역할을 수행할 수 있으며 하나의 스위치는 에지 스위치 역할과 코어 스위치 역할을 동시에 수행할 수 있다. 그리고 RRM 응용 처리부(110)는 네트워크 토폴로지 정보 및 네트워크 프리픽스 분포를 이용하여 플로우 그룹별 다수의 랜덤 경로를 생성한다.
SDN 제어부(120)는 선택된 플로우 그룹별 무작위 다중(랜덤) 경로에 기초하여 각각의 스위치에 포워딩 규칙 및 그룹 테이블을 설정한다. 포워딩 규칙 및 그룹 테이블 설정은 포워딩 규칙 설정 메시지(Modify-State)와 같은 형태의 메시지를 스위치에 전달하여 설정될 수 있다. 이 때, 스위치의 역할 구분에 따라 설정되는 포워딩 규칙은 상이하다.
에지 스위치는 플로우 그룹에 대해 포워딩 테이블 규칙이 설정되며, 코어 스위치는 에지 스위치에서 목적지 노드까지 진행되는 패킷의 흐름을 결정하기 위해 패킷에 덧붙여지는 레이블(Label)을 기반으로 포워딩 규칙이 설정된다. 본 발명에서 레이블은 일 실시 예로 기존에 정의되어 있는 MPLS(Multi-Protocol Label Switching)의 레이블과 같은 형태를 고려할 수 있으나, 그 특정 형태는 장비의 요구 조건이나 랜덤 경로 수의 요구 조건에 따라 달라질 수 있다. 본 발명에서는 레이블의 특정 형태를 지정하지 않는다.
인입(Ingress) 에지 스위치(11)는 네트워크 프리픽스 등에 기반한 플로우 그룹 별로 포워딩 규칙이 설정된다. 이와 같이 인입 에지 스위치(11)는 플로우 그룹 별로 포워딩 규칙이 설정되기 때문에, 플로우 그룹에 소속된 다수의 플로우들이 플로우별로 서로 다른 포워딩 정보(출력 포트, 레이블 등)에 따른 포워딩이 이루어 지도록 하기 위하여 그룹 테이블을 사용한다.
그룹 테이블의 버킷은 플로우별로 선택이 되며, 각 버킷에는 플로우 별로 인입 에지 스위치에서 선택된 경로 결정이 목적지 노드까지 포워딩 되면서 동일한 경로가 유지되도록 하기 위하여 패킷에 덧붙여질 레이블(Label)이 포함된다. 또한, 인입 에지 스위치(11)를 제외한 패킷의 최종 목적지까지 경유되는 다른 스위치는 상기 레이블에 대한 포워딩 규칙이 설정되며 입력 패킷에 대해 그 레이블에 따른 포워딩이 이루어 진다.
상기 그룹 테이블 엔트리로 부터 버킷은 플로우 별로 선택이 되도록 하며 이를 위해서 플로우 별로 버킷 선택 정보가 캐시(cache)되도록 하여 플로우 캐시가 유지되는 동안 동일한 버킷의 포워딩 정보가 사용되도록 한다. 이 때 플로우 캐시는 주기적으로 또는 일정 시간 동안 해당 플로우의 패킷 입력이 없는 경우, 삭제되도록 하여 동일 플로우 더라도 시간에 따라 새로운 경로 선택이 이루어 지도록 한다.
인입 에지 스위치(11)는 소스 단말 또는 소스 네트워크로부터 패킷이 수신되면, 수신된 패킷에 해당하는 포워딩 규칙 검색을 통해 매칭되는 포워딩 규칙 및 그룹 테이블을 검색하며, 검색 결과로 주어지는 포워딩 정보(레이블 값 및 출력 포트 정보 등)을 이용하여 패킷을 처리한다. 특히, 인입 에지 스위치(11)는 최종 목적지까지 경유되는 스위치에서 포워딩에 사용될 수 있는 상기 테이블 룩업으로 주어진 레이블을 부착하여 패킷을 포워딩한다.
인입 에지 스위치(11)로부터 포워딩된 패킷은 코어 스위치(13)로 전달되며, 코어 스위치(13)는 수신된 패킷에 포함된 레이블을 키로 하는 테이블 룩업을 통해 포워딩 정보를 인식하여 패킷을 포워딩한다. 이 때, 일 실시 예에 따라서, 상기 레이블은 MPLS에서와 같이 중간 경유 스위치에서 공유가 가능하며, 이에 따라 입력된 레이블을 다른 레이블로 변경하는 레이블 스왑(Label Swap) 액션(Action)을 수행하거나, 출력 에지 스위치(12) 바로 이전 코어 스위치인 경우 레이블 제거(Label Pop)하여 출력 에지 스위치에서 레이블이 제거된 상태의 패킷 포워딩 결정이 이루어 지도록 할 수 있다.
인입 에지 스위치(11)로부터 포워딩된 패킷은 코어 스위치(13)를 경유하여 출력 에지 스위치(SDN switch K, 12)에 도달한다. 출력 에지 스위치(12)는 레이블이 부착되어 입력된 패킷의 경우 패킷에 부가된 레이블을 제거(레이블 Pop)하는 동작을 수행하고 포워딩 규칙에 따라서 패킷을 목적지 네트워크 또는 목적지 단말로 포워딩한다. 상기 포워딩 규칙은 운용자 또는 구현의 선택에 따라서 패킷에 부가된 레이블 값 기반이거나, 레이블이 제거된 패킷의 IP 주소 등을 포함한 다른 필드를 기반으로 이루어 진다. 또한, 레이블이 바로 이전 노드에서 제거되어 상기 출력 에지 스위치(12) 레이블이 제거된 채로 패킷이 입력되는 경우는 상기 레이블 제거 동작이 필요 없으며, 포워딩 규칙은 패킷의 IP 주소를 포함한 다른 필드를 기반으로 포워딩 결정이 이루어 진다.
도 2는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 RRM 코어 네트워크의 일례를 나타내는 도면이다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 SDN 스위치를 통해서 연결된 단말에 대해, 단말의 그룹 단위로, 일반적으로 네트워크 프리픽스 단위로 정보를 인지한다. 즉, 종래의 방법에서는 플로우별 랜덤 경로 설정을 위해 모든 단말에 대한 정보뿐 아니라 더 자세하게는 플로우에 대한 정보를 알고 있어야 하지만, 본 발명은 망을 구성하고 운영할 때 기본적으로 주어지는 네트워크 위상 (토폴로지) 정보만을 이용하여 경로 계산을 수행한다.
본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 수집된 네트워크 정보를 이용하여 랜덤 경로 계산이 이루어지고, 계산된 랜덤 경로를 스위치에 사전 설정한다. 하지만, 이러한 네트워크 정보 만을 이용하여 계산된 정보로 각 스위치에 독립적으로 사전 설정을 하게 되는 경우, 이전 스위치를 거쳐온 경로에 대한 정보가 없어서 각 스위치는 정확하게 랜덤 경로 설정 장치(100)가 플로우 별로 의도한 경로로 포워딩을 수행할 수 없게 된다.
도 2는 이와 같은 설명을 보충하기 위한 일례를 보여주고 있다. 도 2는 네트워크 프리픽스 X(201)와 네트워크 프리픽스 Y(202)로 구성된 SDN 네트워크에서 제1 랜덤 경로(210)와 제2 랜덤 경로(220)가 랜덤 경로로 설정되었다고 가정한 일례를 나타낸다. 이 경우, SDN 스위치 4(230)를 제외한 다른 스위치는 설정된 랜덤 경로대로 패킷을 포워딩하는데 별 문제가 없으나, SDN 스위치 4(230)의 경우 만약 네트워크 프리픽스 X(201)와 네트워크 프리픽스 Y(202)로 이루어진 포워딩 규칙을 갖게 되면, SDN 스위치 4(230)로 입력된 패킷에 대해서 이전 노드에서 제1 랜덤 경로(210)를 선택한 플로우의 패킷과 제2 랜덤 경로(220)를 선택한 플로우의 패킷을 구분하여, 제1 랜덤 경로(210)를 선택한 플로우의 패킷은 SDN 스위치 5로, 제2 랜덤 경로(220)를 선택한 플로우의 패킷은 SDN 스위치 6으로 패킷을 포워딩할 수 없다.
따라서, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 SDN 스위치를 플로우 그룹 별로 역할에 따라 에지 스위치와 코어 스위치로 구분한다. 본 발명의 일 실시 예로서 플로우 그룹은 "소스 주소 프리픽스와 목적지 주소 프리픽스의 결합"으로 사용하나 좀 더 큰 그룹으로 구분하는 경우 목적지 주소 프리픽스만으로도 구성 가능하다. 즉, 에지 스위치 및 코어 스위치는 모든 트래픽 플로우에 대해서 역할이 고정되는 것이 아니라, 플로우 그룹 별로 구분된다. 따라서, 어느 특정 플로우에 대해서 에지 스위치의 역할을 수행하는 스위치가 다른 플로우에 대해서는 코어 스위치의 역할을 수행할 수 있다.
도 3은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 메시지 흐름을 나타내는 흐름도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 패킷을 수신하기 전에 각 스위치에 포워딩 규칙을 사전에 설정한다(S301 내지 S303).
이 때, 인입 에지 스위치(11)와 나머지 스위치 사이의 포워딩 규칙에 있어서 차이가 존재한다. 인입 에지 스위치(11)에는 플로우 그룹 별로 포워딩 규칙 및 해당 플로우 그룹에 대해서 버킷 형태로 다수의 무작위 포워딩 정보 (레이블 정보, 출력 포트 정보 등)를 포함하고 있는 그룹 테이블 엔트리를 설정한다(S303). 그리고 나머지 스위치에는 인입 에지 스위치(11)에서 목적지 스위치(12)에 까지 진행되는 패킷의 흐름을 결정하기 위해 인입 에지 스위치(11)가 패킷을 포워딩할 때 플로우 별로 패킷에 부가시킬 레이블에 대한 포워딩 규칙을 설정한다(S301, S302).
이와 같이 플로우 그룹 별로 포워딩 규칙이 설정되면, 미리 입력될 수 있는 플로우 그룹을 공유하는 다양한 트래픽 플로우에 대해 포워딩 규칙이 설정된 상태가 된다. 이러한 상태에서 소스 네트워크(301)로부터 패킷이 전송(S304)되면, 인입 에지 스위치(11)는 패킷에 매칭되는 포워딩 규칙 테이블 및 그룹 테이블을 검색하고, 검색된 그룹 테이블 엔트리로부터 하나의 버킷을 선택하여 버킷에 저장된 포워딩 정보(레이블 값 및 출력 포트 정보 등)를 이용하여 패킷에 레이블을 부착(S305)하고, 패킷을 포워딩한다(S306).
인입 에지 스위치(11)로부터 패킷이 코어 스위치(13)로 포워딩되면, 코어 스위치(13)는 수신된 패킷에 포함된 레이블을 키로 하는 테이블 룩업을 통해 포워딩 정보를 인식한다(S307). 그리고 코어 스위치(13)는 인식된 포워딩 정보에 따라 다른 코어 스위치를 경유하여 출력 에지 스위치(12)로 패킷을 포워딩한다(308). 이 때, 중간에 경유되는 코어 스위치에서는 MPLS에서와 같이 레이블의 공유 역시 가능하며, 레이블 공유가 필요한 경우 입력된 레이블을 다른 레이블로 변경하는 레이블 스왑(Label Swap) 액션(Action)을 수행한다.
출력 에지 스위치(12)에 레이블이 부가된 형태로 패킷이 도달하게 되면, 출력 에지 스위치(12)는 패킷에 부가된 레이블을 제거(Label Pop)한다(S309). 그리고 출력 에지 스위치는 레이블이 제거된 패킷을 포워딩 규칙에 따라서 패킷을 목적지 네트워크(302)로 전달한다(S310). 상기 포워딩 규칙은 패킷에 부가된 레이블 값 기반이거나, 레이블이 제거된 패킷의 IP 주소 등을 포함한 다른 필드를 기반으로 이루어 진다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 인입 에지 스위치의 구조의 일례를 나타내는 도면이다.
도 1 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 랜덤 경로 설정(RRM)을 위해 소스 네트워크(소스 호스트, 소스 단말)와 목적지 네트워크(목적지 호스트, 목적지 단말)를 그루핑 할 수 있는 단위(예를 들어, 소스 주소 프리픽스와 목적지 주소 프리픽스)를 포워딩 규칙의 키 값으로 사용한다. 그리고 인입 에지 스위치의 경우 그에 대한 인스트럭션(Instruction, 401)은 액션(Action)으로 그룹 테이블(Group Table)을 지정하도록 하여, 플로우 별로 그룹 테이블의 여러 버킷(Bucket, 402) 중 하나를 선택하도록 함으로써 플로우 별 랜덤한 경로 설정이 이루어 지도록 한다.
또한, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)에 의한 각 버킷은 해당 버킷의 유효함을 나타내는 유효 필드(Valid Field, v, 404)와 해당 버킷이 가장 최근에 사용한 타임스탬프(Timestamp, 405)를 기록하도록 한다. 또한, 각 버킷의 액션으로는 레이블 추가 및 어느 포트로 패킷을 포워딩 할지를 지정하는 포워딩 정보 기반의 패킷 포워딩으로 구성된다.
타임스탬프(405)는 경로의 재사용 주기를 보장하기 위해 사용되는데, 마지막 사용이 된 후 운용자가 지정한 특정 시간을 초과하지 않으면 사용되지 않도록 하여 빈번하게 그 경로가 사용되는 것을 방지할 수 있다. 그리고 유효 필드(404)는 해당 경로를 쉽게 경로 사용에서 제거할 수 있는 기능을 제공한다.
그룹 테이블(402)에서 버킷(403)을 선택하는 방법은 순차적으로 하나를 선택하거나, 경로의 랜덤성을 더 증가시키기 위해서 테이블 내의 여러 버킷을 랜덤하게 선택하도록 할 수 있다. 도 4의 일례에서는 순차적으로 수행되어 환형 리스트와 같이 마지막 버킷이 사용되면 다시 첫 번째 버킷으로 돌아가는 형태의 재사용이 되도록 하는 예를 표현하고 있다.
또한, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)는 소스 네트워크와 목적지 네트워크의 그룹을 이용하여 포워딩 규칙을 제공하기 때문에, 해당 그룹에 속하는 플로우 들에 대해서는 플로우 상태 정보를 학습(또는 캐싱)시킴으로써 향후 동일한 플로우가 입력될 경우 동일한 포워딩 정보로 패킷이 전송되는 것을 보장할 수 있다. 이 때, 각 플로우의 개념은 포워딩 규칙으로 주어진 그룹의 단위보다 더 작은 단위의 플로우를 의미하며, 그 일반적인 예로서 5-튜플(소스 주소, 목적지 주소, 프로토콜, 소스 포트, 목적지 포트)과 같은 형태가 될 수 있다.
도 5는 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)의 인입 에지 스위치를 제외한 에지 스위치의 패킷 처리 일례를 나타내는 도면이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치(100)에서 인입 에지 스위치를 제외한 다른 스위치는 인입 에지 스위치에 비해 상대적으로 단순한 패킷 처리를 수행한다. 레이블이 부가된 패킷이 수신되면, 인입 에지 스위치를 제외한 다른 스위치는 수신된 패킷의 레이블 값을 이용한 포워딩 규칙 테이블을 룩업하여 최종 목적지로 패킷을 포워딩한다. 이 경우, 레이블에 따른 패킷 처리를 수행하기 때문에, 플로우 상태의 학습 (또는 캐싱) 기능은 선택적으로 수행할 수 있다.
도 6은 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 방법의 흐름도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 소프트웨어 정의망 기반의 랜덤 경로 설정 장치의 랜덤 경로 설정 방법은 먼저, RRM 코어 네트워크를 구성하는 다수의 스위치에 대해 역할에 따라서 에지 스위치 및 코어 스위치로 구분한다(S601). 이 때, 에지 스위치 및 코어 스위치의 역할은 모든 플로우에 대해 고정되는 것이 아니라, 플로우 그룹 별로 그 기능이 결정된다. 즉, 어느 특정 플로우 그룹에 대해서 에지 스위치로 구분된 스위치가 다른 플로우 그룹에 대해서는 코어 스위치로 구분될 수 있다.
다음으로, 랜덤 경로 설정 장치는 구분된 스위치 각각에 서로 다른 포워딩 규칙을 설정한다(S602). 랜덤 경로 설정 장치는 선택된 플로우 별 랜덤 경로에 기초하여 각각의 스위치에 포워딩 규칙을 설정한다. 이 때, 스위치의 구분에 따라 설정되는 포워딩 규칙은 상이하다.
에지 스위치는 각 네트워크 프리픽스와 같은 플로우 그룹을 지을 수 있는 정보를 이용한 포워딩 테이블 규칙이 설정된다. 그리고 코어 스위치는 에지 스위치에서 목적지 노드까지 진행되는 패킷의 흐름을 결정하기 위해 포워딩 정보로서 패킷에 덧붙여지는 레이블(Label)을 포함하는 포워딩 규칙이 설정된다.
특히, 인입 에지 스위치는 네트워크 프리픽스와 같은 플로우 그룹 별로 포워딩 규칙이 설정된다. 인입 에지 스위치는 플로우 그룹 별로 포워딩 규칙이 설정되기 때문에 그룹 테이블을 이용하여 플로우 그룹을 공유하는 다수의 플로우들이 서로 다른 포워딩(레이블 값 포함)이 이루어 지도록 구성된다. 그리고 다른 스위치는 인입 에지 스위치가 패킷을 포워딩 할 때 부가되는 레이블에 대한 포워딩 규칙에 기반한 포워딩이 이루어 지도록 구성된다.
패킷이 소스 네트워크로부터 수신되면, 인입 에지 스위치는 수신된 패킷에 해당하는 포워딩 규칙 및 그룹 테이블을 검색한다(S603). 그리고 검색 결과로 주어지는 포워딩 정보(레이블 값 및 출력 포트 정보 등)을 이용하여 패킷에 레이블(포워딩 정보)를 부착하고 포워딩한다(S604). 인입 에지 스위치로부터 포워딩된 패킷은 코어 스위치에 도달한다.
코어 스위치는 수신된 패킷에 포함된 레이블을 키로 하는 테이블 룩업을 통해 포워딩 정보를 인식하여 패킷을 포워딩한다(S605). 이 때, 코어 스위치에서는 MPLS에서와 같이 레이블의 공유 역시 가능하며, 레이블 공유가 필요한 경우 입력된 레이블을 다른 레이블로 변경하는 레이블 스왑(Label Swap) 액션(Action)을 수행한다.
인입 에지 스위치로부터 포워딩된 패킷은 코어 스위치를 경유하여 출력 에지 스위치(SDN switch K, 12)에 도달한다. 출력 에지 스위치는 패킷에 레이블이 부가되어 입력된 경우 패킷에 부가된 레이블을 제거(레이블 Pop)하는 동작을 수행하고 포워딩 규칙에 패킷을 목적지 네트워크 또는 목적지 단말로 포워딩한다(S606).
상기 포워딩 규칙은 운용자 또는 구현의 선택에 따라서 패킷에 부가된 레이블 값 기반이거나, 레이블이 제거된 패킷의 다른 필드를 기반으로 이루어 진다.
상술한 내용을 포함하는 본 발명은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체 또는 정보저장매체에 저장되고, 컴퓨터에 의하여 판독되고 실행함으로써 본 발명의 방법을 구현할 수 있다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.
이상 바람직한 실시예를 들어 본 발명을 상세하게 설명하였으나, 본 발명은 전술한 실시예에 한정되지 않고, 본 발명의 기술적 사상의 범위 내에서 당분야에서 통상의 지식을 가진자에 의하여 여러 가지 변형이 가능하다.
100: 소프트웨어 정의망 기반의 랜덤 경로 설정 장치
110: RRM 응용 처리부
120: SDN 제어부
10: RRM 코어 네트워크
11: 인입 에지 스위치
12: 출력 에지 스위치
13: 코어 에지 스위치

Claims (15)

  1. 다수의 스위치를 포함하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치에 있어서,
    상기 다수의 스위치를 플로우 그룹 별로 에지 스위치 및 코어 스위치로 구분하고, 플로우 그룹 별로 무작위 다중 경로를 산출하는 RRM 응용 처리부; 및
    상기 산출된 무작위 다중 경로에 기초하여 상기 구분된 에지 스위치 및 코어 스위치에 포워딩 규칙을 설정하는 SDN 제어부;
    를 포함하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  2. 제1항에 있어서,
    패킷이 수신되는 인입(Ingress) 에지 스위치는 플로우 그룹 별로 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  3. 제1항에 있어서,
    상기 에지 스위치 중에서 인입 에지 스위치를 제외한 다른 스위치는 상기 인입 에지 스위치가 패킷을 포워딩할 때 부가되는 레이블에 대한 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  4. 제1항에 있어서,
    상기 코어 스위치는 패킷의 흐름을 결정하여 패킷에 부가되는 레이블을 이용한 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  5. 제1항에 있어서,
    패킷이 수신되는 인입 에지 스위치는 수신된 패킷에 대응하는 포워딩 규칙 및 그룹 테이블을 검색하고, 그 결과로 획득된 포워딩 정보를 이용하여 수신된 패킷에 레이블을 부착하고 포워딩하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  6. 제1항에 있어서,
    상기 코어 스위치는 수신된 패킷에 포함된 레이블을 키로하는 테이블 룩업을 통해 포워딩 정보를 인식하고, 인식된 포워딩 정보에 따라 패킷을 포워딩하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  7. 제1항에 있어서,
    패킷을 목적지 네트워크로 출력(Egress)하는 에지 스위치는 수신된 패킷에 부가된 레이블을 제거하고, 패킷을 목적지 네티워크로 전송하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  8. 제1항에 있어서,
    상기 에지 스위치는 수신된 패킷에 포함된 레이블을 다른 레이블로 변경하는 레이블 스왑을 수행하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  9. 제1항에 있어서,
    상기 RRM 응용 처리부는,
    소스 네트워크와 목적지 네트워크를 그루핑(Grouping)할 수 있는 단위를 포워딩 규칙의 키 값으로 사용하여 포워딩 테이블 및 그룹 테이블을 지정하고, 인입 에지 스위치로 입력된 트래픽 플로우에 대하여 지정된 그룹 테이블의 버킷(Bucket) 중 하나가 선택되도록 플로우 별 랜덤한 경로를 설정하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  10. 제9항에 있어서,
    상기 버킷은 해당 버킷의 유효함을 나타내는 유효 필드 및 해당 버킷이 가장 최근 사용된 타임스탬프를 기록하며, 레이블 및 어느 포트로 패킷을 포워딩 할지를 지정하는 포워딩 정보를 포함하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  11. 제1항에 있어서,
    상기 RRM 응용 처리부는 네트워크 토폴로지 (위상) 정보를 기반으로 상기 플로우 그룹을 구성하는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 장치.
  12. 다수의 스위치를 포함하는 소프트웨어 정의망 기반의 랜덤 경로 설정 방법에 있어서,
    상기 다수의 스위치를 플로우 별로 에지 스위치 및 코어 스위치로 구분하는 단계;
    구분된 스위치에 서로 다른 포워딩 규칙을 설정하는 단계;
    패킷 수신 시, 인입 에지 스위치에서 패킷에 매칭되는 포워딩 규칙 및 그룹 테이블을 검색하고, 검색된 결과에 따라 패킷에 레이블을 부착하여 패킷을 포워딩하는 단계;
    코어 스위치에서 레이블을 키로 하는 테이블 룩업을 통해 포워딩 정보를 인식하여 패킷을 포워딩하는 단계; 및
    출력 에지 스위치에서 패킷에 레이블이 부가되어 입력된 패킷에 대해 부가된 레이블을 제거하고 목적지로 패킷을 포워딩하는 단계;
    를 포함하는 소프트웨어 정의망 기반의 랜덤 경로 설정 방법.
  13. 제12항에 있어서,
    패킷이 수신되는 인입(Ingress) 에지 스위치는 플로우 그룹 별로 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 방법.
  14. 제12항에 있어서,
    상기 에지 스위치 중에서 인입 에지 스위치를 제외한 다른 스위치는 상기 인입 에지 스위치가 패킷을 포워딩할 때 부가되는 레이블에 대한 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 방법.
  15. 제12항에 있어서,
    상기 코어 스위치는 패킷의 흐름을 결정하여 패킷에 부가되는 레이블을 이용한 포워딩 규칙이 생성되는 것을 특징으로 하는 소프트웨어 정의망 기반의 랜덤 경로 설정 방법.
KR1020160073748A 2016-06-14 2016-06-14 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법 KR20170140953A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160073748A KR20170140953A (ko) 2016-06-14 2016-06-14 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160073748A KR20170140953A (ko) 2016-06-14 2016-06-14 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20170140953A true KR20170140953A (ko) 2017-12-22

Family

ID=60936609

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160073748A KR20170140953A (ko) 2016-06-14 2016-06-14 소프트웨어 정의망 기반의 랜덤 경로 설정 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20170140953A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110602062A (zh) * 2019-08-27 2019-12-20 北京邮电大学 基于强化学习的网络主动防御方法及装置
KR20200048023A (ko) * 2018-10-29 2020-05-08 성균관대학교산학협력단 서비스별로 플로우의 이동성을 관리하는 sdn컨트롤러 및 이를 이용한 이동성 관리 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200048023A (ko) * 2018-10-29 2020-05-08 성균관대학교산학협력단 서비스별로 플로우의 이동성을 관리하는 sdn컨트롤러 및 이를 이용한 이동성 관리 방법
CN110602062A (zh) * 2019-08-27 2019-12-20 北京邮电大学 基于强化学习的网络主动防御方法及装置

Similar Documents

Publication Publication Date Title
KR101473783B1 (ko) 터널링을 이용한 다이나믹 서비스 체이닝 제어 방법 및 장치
EP3222012B1 (en) Method and system for virtualizing flow tables in a software-defined networking (sdn) system
EP3086510B1 (en) Service chain management method, system and device
US20160212048A1 (en) Openflow service chain data packet routing using tables
US20180026878A1 (en) Scalable deadlock-free deterministic minimal-path routing for dragonfly networks
EP3190755B1 (en) Identification of the paths taken through a network of interconnected devices
US10110397B2 (en) Method and device for switching tunnels and switch
EP3364611B1 (en) Software-defined-networking table-entry generation and packet forwarding
US10506037B2 (en) Discovery of ingress provider edge devices in egress peering networks
CN106559324A (zh) 一种基于等价多路径转发报文的方法及网络设备
WO2016005924A1 (en) Forwarding table performance control in sdn
EP3281369A1 (en) Server load balancing
KR20210038686A (ko) 패킷 처리 방법 및 장치, 및 관련 디바이스들
US10313154B2 (en) Packet forwarding
WO2021000848A1 (zh) 一种报文转发方法、报文处理方法及装置
US20150341267A1 (en) Control apparatus, communication apparatus, communication system, switch control method, and program
EP3297230B1 (en) Transmission processing method and device
CN110679120A (zh) 通信网络节点
CN110300057A (zh) 多宿主网络中的代理通告
CN107566298B (zh) 一种生成表项的方法和设备
US20150003291A1 (en) Control apparatus, communication system, communication method, and program
US20160330117A1 (en) Scalable network address translation at high speed in a network environment
Wang et al. A single-link failure recovery approach based on resource sharing and performance prediction in SDN
EP2905932B1 (en) Method for multiple path packet routing
EP3292660B1 (en) Packet forwarding in a vxlan switch