KR101467961B1 - 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 - Google Patents
오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 Download PDFInfo
- Publication number
- KR101467961B1 KR101467961B1 KR1020120156149A KR20120156149A KR101467961B1 KR 101467961 B1 KR101467961 B1 KR 101467961B1 KR 1020120156149 A KR1020120156149 A KR 1020120156149A KR 20120156149 A KR20120156149 A KR 20120156149A KR 101467961 B1 KR101467961 B1 KR 101467961B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- ndn
- type
- switch device
- content
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000005540 biological transmission Effects 0.000 claims abstract description 8
- 230000009471 action Effects 0.000 claims description 39
- 238000002716 delivery method Methods 0.000 abstract description 12
- 230000000875 corresponding effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/645—Splitting route computation layer and forwarding layer, e.g. routing according to path computational element [PCE] or based on OpenFlow functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/036—Updating the topology between route computation elements, e.g. between OpenFlow controllers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 NDN(NAMED DATA NETWORK) 상의 컨텐츠 전달 방법 및 장치에 관한 것이다. 본 발명의 제 1 측면에 따르면, 컨텐츠이름으로 패킷을 송수신하도록 구성되는 복수 개의 노드와, 상기 복수 개의 노드 간의 플로우 송수신을 중계하도록 구성되는 스위치 장치와, 상기 스위치 장치를 제어하도록 구성되는 컨트롤러 장치를 포함하는 오픈플로우 네트워크 시스템에 기초하여, 상기 패킷을 일 노드에서 타 노드로 전달하도록 구성되는 컨텐츠 전달 시스템에서, 컨텐츠를 전달하는 방법에 있어서, 상기 스위치 장치가, 패킷을 수신하면 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하는 단계, 및 상기 패킷이 NDN 상으로 전달되는 패킷인 경우 상기 스위치 장치가 상기 패킷의 타입에 기초하여 상기 NDN 의 엔티티로 액션하는 단계를 포함한다. 이로 인해 기구축된 네트워크를 활용하는 NDN 을 구성할 수 있다.
Description
본 발명은 NDN(NAMED DATA NETWORK) 상의 컨텐츠 전달 방법 및 장치에 관한 것으로, 보다 상세하게는 기구축된 네트워크를 활용할 수 있는 NDN 상의 컨텐츠 전달 방법 및 장치에 관한 것이다.
최근 들어 컨텐츠 요청이 폭발적으로 증가함에 따라 컨텐츠를 효과적으로 서비스하는 것이 중요해지고 있다. 이러한 서비스를 위해, 컨텐츠의 효율적인 배치, 네트워크 자원의 효율적인 사용 및 사용자의 편의성을 증대시킬 수 있는 기술로서 NAMED DATA NETWORK(이하에서는 ‘NDN’라 함)가 제안되고 있다.
이러한 NDN 은, 네트워크 내에 위치하면서 네트워크를 구성하는 엔티티(예를 들어, 스위치 장치)에 포함된 스토리지(storage)를 활용하여, 컨텐츠 복사본을, 복수 개의 엔티티에 위치시키거나, 컨텐츠를 요청하는 말단 사용자단말과 가깝게 위치한 엔티티에 위치시켜둠으로써, 컨텐츠 전달 속도를 증가시키고 컨텐츠 유효성을 증가시키는 효율성을 갖는다.
다만, 현재까지 제안된 NDN 은, 현재 인터넷과는 상이한 패러다임으로 동작하는 네트워크로서, 기구축된 네트워크 시스템과 공존하기 어려운 문제점을 갖는다. 따라서 상술된 문제점을 해결하기 위한 기술이 필요하게 되었다.
한편, 새로운 프로토콜을 실제 네트워크상에서 시험하는 기술 표준으로 오픈플로우(openflow)가 제안되고 있으며, 오픈플로우 기술은 기존의 애플리케이션을 유지하는 상태에서 네트워크 프로토콜을 시험할 수 있도록 한다. 이러한 오픈플로우 네트워크 시스템은 하드웨어의 변경없이 새로운 프로토콜을 정의할 수 있도록 하므로, 오픈플로우 네트워크 시스템을 활용하여 기구축된 네트워크 시스템을 기반으로 NDN 을 구현할 필요가 있다.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명의 일실시예는 NDN상의 컨텐츠 전달 방법 및 시스템을 제공하는 데에 목적이 있다.
또한, 본 발명의 일실시예는 NDN 상에서 컨텐츠를 전달함에 있어 기구축된 네트워크를 활용할 수 있는 컨텐츠 전달 방법 및 시스템을 제공하는 데에 목적이 있다.
그리고, 본 발명의 일실시예는 사용자단말 또는 컨텐츠서버 각각의 구조를 변경할 필요없이, 컨텐츠 이름으로 컨텐츠 요청 및 전달을 수행할 수 있는 컨텐츠 전달 방법 및 시스템을 제공하는 데에 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따르면, 컨텐츠이름으로 패킷을 송수신하도록 구성되는 복수 개의 노드와, 상기 복수 개의 노드 간의 플로우 송수신을 중계하도록 구성되는 스위치 장치와, 상기 스위치 장치를 제어하도록 구성되는 컨트롤러 장치를 포함하는 오픈플로우 네트워크 시스템에 기초하여, 상기 패킷을 일 노드에서 타 노드로 전달하도록 구성되는 컨텐츠 전달 시스템에서, 컨텐츠를 전달하는 방법에 있어서, 상기 스위치 장치가, 패킷을 수신하면 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하는 단계, 및 상기 패킷이 NDN 상으로 전달되는 패킷인 경우 상기 스위치 장치가 상기 패킷의 타입에 기초하여 상기 NDN 의 엔티티로 액션하는 단계를 포함한다.
본 발명의 제 2 측면에 따르면, 패킷을 수신하면 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하는 단계, 및 상기 패킷이 NDN 상으로 전달되는 패킷인 경우 스위치 장치가 상기 패킷의 타입에 기초하여 상기 NDN 의 엔티티로 액션하는 단계를 포함하는 컨텐츠 전달 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체이다.
본 발명의 제 3 측면에 따르면, 컨텐츠이름으로 패킷을 송수신하도록 구성되는 복수개의 노드와, 상기 복수 개의 노드 간의 플로우 송수신을 중계하도록 구성되는 스위치 장치와, 상기 스위치 장치를 제어하도록 구성되는 컨트롤러 장치를 포함하는 오픈플로우 네트워크 시스템에 기초하여, 상기 패킷을 일 노드에서 타 노드로 전달하도록 구성되는 컨텐츠 전달 시스템으로서, 상기 스위치 장치는, 패킷을 수신하면 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하도록 구성되는 NDN 결정부, 및 상기 패킷이 NDN 상으로 전달되는 패킷인 경우 상기 패킷의 타입에 기초하여 상기 스위치 장치가 상기 NDN 의 엔티티로 액션하도록 구성되는 NDN 액션부를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명의 일실시예는 NDN 상의 컨텐츠 전달 방법 및 시스템을 제공할 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, NDN 상에서 컨텐츠를 전달함에 있어 기구축된 네트워크를 활용할 수 있는 컨텐츠 전달 방법 및 시스템을 제공할 수 있다.
그리고, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 사용자단말 또는 컨텐츠서버 각각의 구조를 변경할 필요없이, 컨텐츠 이름으로 컨텐츠 요청 및 전달을 수행할 수 있는 컨텐츠 전달 방법 및 시스템을 제공할 수 있다.
도 1 은 본 발명의 일실시예에 따른 컨텐츠 전달 시스템의 구성도이다.
도 2 는 본 발명의 일실시예에 따른 스위치 장치의 구성을 설명하기 위한 도시한 블록도이다.
도 3 내지 도 4는 본 발명의 일실시예에 따른 스위치 장치에 포함되는 오픈플로우의 플로우테이블을 설명하기 위한 블록도이다.
도 5 는 본 발명의 일실시예에 따른 컨텐츠 전달 방법을 설명하기 위한 순서도이다.
도 2 는 본 발명의 일실시예에 따른 스위치 장치의 구성을 설명하기 위한 도시한 블록도이다.
도 3 내지 도 4는 본 발명의 일실시예에 따른 스위치 장치에 포함되는 오픈플로우의 플로우테이블을 설명하기 위한 블록도이다.
도 5 는 본 발명의 일실시예에 따른 컨텐츠 전달 방법을 설명하기 위한 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
관련하여, 오픈플로우 네트워크 시스템에서는 스위치 장치나 컨트롤러 장치에 명령을 내릴 수 있는 API 를 제공하며, 본 발명에서는 API 를 이용하여 하기와 같이 동작하는 오픈플로우 네트워크 시스템을 정의함으로써, 상기 오픈플로우 네트워크 시스템을 포함하는 컨텐츠 전달 시스템이 NDN 으로 동작할 수 있도록 한다.
도 1 은 본 발명의 일실시예에 따른 컨텐츠 전달 시스템의 구성도이다.
컨텐츠 전달 시스템(100)은, 오픈플로우 네트워크 시스템(100)과, 복수 개의 노드(11, 12, 13)를 포함할 수 있다.
삭제
오픈플로우 네트워크 시스템(100)은, 오픈플로우 기술이 적용된 네트워크 시스템으로서, 복수개의 노드 간의 패킷의 송수신을 처리할 수 있다. 이러한 오픈플로우 네트워크 시스템은 스위치 장치(21, 22, 23, 24, 25)와 컨트롤러 장치(30)를 포함할 수 있다.
스위치 장치(21, 22, 23, 24, 25)는 오픈플로우의 플로우테이블을 내장하고 있어 패킷과 트래픽을 어떻게 처리할지에 대한 룰을 정의할 수 있으며, 또한 스위치 장치(21, 22, 23, 24, 25)는 2 개의 계층 구조를 갖는 메모리로 동작가능한 저장부(미도시)를 포함하고 있어, 데이터 패킷을 수신하고 포워딩할 때 데이터 패킷이 저장된 데이터를 빠른 속도로 더 많이 캐싱할 수 있다.
컨트롤러 장치(30)는 오픈플로우 네트워크 시스템을 지휘하는 장치로서 특히 스위치 장치를 제어하도록 구성되고, 오픈플로우 프로토콜을 통해 스위치 장치와 통신할 수 있다. 또한 컨트롤러 장치(30)는 스위치 장치(21, 22, 23, 24, 25)에서부터 복수 개의 노드(11, 12, 13) 각각으로 패킷이 이동가능한 경로를 최단경로(shortest path) 알고리즘에 기초하여 생성하고 상기 경로를 상기 스위치 장치에 저장할 수 있다.
한편, 노드(11, 12, 13)는 패킷을 송수신하도록 구성되는 단말로서, 이러한 노드(11, 12, 13) 중 일 노드는, NDN 기술(즉, 컨텐츠이름을 이용하여 컨텐츠를 요청하거나 전달하는 방식)을 통해 타 노드로 패킷을 송수신할 수 있다.
즉 노드(11, 12, 13)는 요청하는 컨텐츠의 컨텐츠이름으로 구성된 인터레스트 패킷을 애니캐스팅하고, 상기 요청된 컨텐츠를 캐싱(또는 저장)하면서 상기 인터레스트 패킷을 수신한 경우 상기 요청된 컨텐츠를 데이터 패킷으로 전달할 수 있다.
이러한 노드(11, 12, 13)는 예를 들어, 컴퓨터나 휴대용 단말기, 텔레비전으로 구현될 수 있으며, 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, WCDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있으며, 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다. 또한 노드(11, 12, 13)는 컨텐츠를 제공하는 컨텐츠서버일 수 있다.
한편 도 2 는 본 발명의 일실시예에 따른 스위치 장치의 구성을 설명하기 위한 도시한 블록도이다.
도 2 는 도 3 및 도 4 를 참조하여 이하에서 후술되며, 도 3 및 도 4 는 본 발명의 일실시예에 따른 스위치 장치에 포함되는 오픈플로우 플로우테이블의 일 엔트리를 설명하기 위한 예시도이다.
스위치 장치(200)는 복수 개의 노드 간의 플로우 송수신을 중계할 수 있으며, 이를 위해 NDN 결정부(210) 및 NDN 액션부(220)를 포함할 수 있다.
NDN 결정부(210)는 패킷을 수신하면 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하도록 구성된다. 즉, NDN 결정부(210)는 수신된 패킷이 NDN 상에서 요구하는 프로토콜에 따르는지 여부에 따라 상기 패킷이 NDN 상에서 전달되는 패킷인지 여부를 결정할 수 있다.
관련하여 도 3 은 오픈플로우 플로우테이블의 일 엔트리의 컴포넌트를 도시한 것이다. 상기 플로우테이블은 패킷 룩업과 포워딩을 수행하며, 하나 이상의 엔트리를 포함할 수 있다. 각 엔트리(300)는 하나 이상의 필드를 포함하는 매칭컴포넌트(310)를 포함하며, 매칭컴포넌트에 포함되는 필드가 패킷과 매칭한다면 상기 매칭 필드에 대응되는 액션을 액션컴포넌트(320)로부터 획득한다. 각 엔트리(300)에 포함되는 액션컴포넌트(320)는 각 필드에 대응하는 액션을 기설정하고 있으며, 따라서 매칭컴포넌트(310)에 대해 매칭되는 패킷에 대응 액션을 적용한다. 또한, 각 엔트리(300)는 패킷이 매칭될 때마다 매칭되는 패킷을 카운팅하는 통계컴포넌트(330)도 포함할 수 있다.
또한 도 4 는, 매칭컴포넌트(310)에 포함되는 하나 이상의 필드를 도시한 것이다. 즉, 도 4 에서 도시된 필드(400)는 종래의 오픈플로우 네트워크 시스템에서 적용되는 필드이며, 본 발명에서는, 종래의 오픈플로우 네트워크 시스템에서 적용되는 필드 중에서, VLAN 필드(410) 를 이용하여 패킷이 NDN패킷인지 여부를 판단할 수 있도록 하고 IP필드(420)를 이용하여 상기 NDN패킷을 해싱할 수 있도록 할 수 있다. 즉, VLAN 필드(410)에 매칭되는 패킷(즉, 컨텐츠이름으로 애니캐스팅되는 패킷)이면, 상기 패킷은 NDN 상으로 전달되는 패킷으로 결정할 수 있다.
따라서 NDN 결정부(210)는, 오픈플로우 플로우테이블의 엔트리를 이용하여 패킷이 NDN 상에서 전달되는 패킷인지 여부를 결정할 수 있다.
한편, NDN 액션부(220)는 NDN 결정부(210)에 의해 스위치 장치가 수신한 패킷이 NDN 상으로 전달되는 패킷임이 결정된 경우 상기 패킷의 타입을 결정하고 상기 패킷의 타입에 따라 상기 스위치 장치가 상기 NDN 상의 엔티티로서 액션하도록 할 수 있다.
관련하여, 패킷이 NDN 상으로 전달되는 패킷인 경우 패킷의 컨텐츠이름이 적어도 하나의 알파벳으로 구성될 수 있다. 따라서 패킷의 컨텐츠 이름을 해싱하고 해싱결과에 따라 획득되는 일련의 비트스트링의 프리픽스(prefix)로 패킷을 군집화(aggregate)할 수 있으며, 그 결과 스위치 장치의 플로우테이블의 용량을 줄일 수 있고, 또한 longest prefix matching(이하에서는 ‘lpm’이라 함)으로 패킷의 타입을 획득할 수 있다. 이때 해싱 충돌로 인한 패킷의 송수신 속도 저하를 방지하기 위해, 완벽 해싱(perfect hashing)으로 컨텐츠이름을 해싱할 수 있다.
따라서 NDN 액션부(220)는 패킷 컨텐츠이름의 프리픽스를 해싱한 해싱 결과에 따라, NDN 의 플로우테이블 타입인 CS(content store), PIT(pending interest table) 및 FIB(forward information base) 중 일 타입을 패킷의 타입으로 결정할 수 있으며, NDN 액션부(220)로 하여금 패킷의 타입에 따라 각 NDN 의 액션이 수행되도록 한다.
즉, 도 3 에서 도시된 바와 같이 오픈플로우 플로우테이블의 각 엔트리마다, 매칭 패킷의 액션이 기설정되어 있는 액션컴포넌트(320)를 포함하고 있으므로, 만약 VLAN 필드(410)에 기초하여 NDN 패킷이 수신된다면 IP필드(420)에 대응되는 액션컴포넌트가 정의하고 있는 액션을 패킷에 적용할 수 있다. 만약 매칭되는 엔트리가 발견되지 않으면 컨트롤러 장치로 패킷을 포워딩하고, 컨트롤러 장치가 상기 패킷의 처리를 결정할 수 있다.
이와 관련하여, NDN 액션부(220)는 CS 액션부(221), PIT 액션부(222) 및 FIB 액션부(223)를 포함할 수 있다.
CS 액션부(221)는, 패킷의 타입이 CS(content store)인 경우 패킷에 적용되는 액션을 정의한다.
즉 CS 액션부(221)는, 패킷의 타입이 CS 이면서 패킷이 인터레스트 패킷인 경우 캐싱된 데이터를 검색하고 검색 결과를 상기 패킷을 수신한 페이스(인터페이스로서 다중 연결을 지원가능한 인터페이스를 지칭함)로 전달하고 상기 패킷을 삭제하며, 패킷의 타입이 CS 이면서 상기 패킷이 데이터 패킷인 경우 상기 패킷을 삭제할 수 있다.
한편 PIT 액션부(222)는, 패킷의 타입이 PIT(pending interest table)인 경우 패킷에 적용되는 액션을 정의한다.
즉 PIT 액션부(222)는, 패킷의 타입이 PIT 이면서 상기 패킷이 인터레스트 패킷인 경우 상기 패킷의 입력 페이스를 NDN 플로우테이블에 추가하고 상기 패킷을 삭제하며, 패킷의 타입이 PIT 이면서 상기 패킷이 데이터 패킷인 경우 NDN 플로우테이블에 기록된 페이스로 상기 패킷을 전달하고 상기 패킷에 포함되는 데이터를 캐싱할 수 있다.
반면 FIB 액션부(223)는, 패킷의 타입이 FIB(forward interest base)인 경우 패킷에 적용되는 액션을 정의한다.
즉 FIB 액션부(223)는 패킷의 타입이 FIB 이면서 상기 패킷이 인터레스트 패킷인 경우 상기 패킷을 대응되는 페이스로 포워딩하고, FIB 에서 상기 패킷에 대한 기록을 삭제하면서 상기 기록을 PIT 에 추가함으로써 NDN 플로우테이블을 갱신하며, 패킷의 타입이 FIB 이면서 패킷이 데이터패킷인 경우 상기 패킷은 요청되지 않은 패킷이므로 상기 패킷을 삭제할 수 있다.
상술된 CS 액션부(221), PIT 액션부(222) 및 FIB 액션부(223)은 각각이 처리하는 액션을 어토믹(atomic)하게 수행할 수 있다.
도 5 는 본 발명의 일실시예에 따른 컨텐츠 전달 방법을 설명하기 위한 순서도이다.
도 5 에 도시된 실시예에 따른 컨텐츠 전달 방법은 도 1 에 도시된 컨텐츠 전달 시스템(100)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1 에 도시된 컨텐츠 전달 시스템(100)에 관하여 이상에서 기술한 내용은 도 5 에 도시된 실시예에 따른 컨텐츠 전달 방법에도 적용될 수 있다.
컨텐츠 전달 시스템(100)에 포함되는 스위칭 장치가 패킷을 수신할 수 있다 (S510).
스위칭 장치는 수신한 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단할 수 있다 (S520).
그 결과 상기 패킷이 NDN 상으로 전달되는 패킷이 아닌 경우, 즉, 오픈플로우 플로우테이블의 매칭컴포넌트에 포함된 필드 중에서 NDN 필드가 아닌 다른 필드에 매칭되는 경우, 스위칭 장치는 상기 매칭되는 필드에 대응되는 액션이 상기 패킷에 적용되도록 할 수 있다 (S531).
그러나 상기 패킷이 NDN 상으로 전달되는 패킷인 경우, 스위칭 장치는 상기 패킷의 타입이 CS 인지 여부를 결정할 수 있다 (S530). 스위칭 장치는 상기 패킷의 타입이 CS 이며 상기 패킷이 인터레스트 패킷인 경우 캐싱된 데이터를 검색하고 검색 결과를 상기 패킷을 수신한 페이스로 전달하고 상기 패킷을 삭제하며, 상기 패킷이 데이터 패킷인 경우 상기 패킷을 삭제할 수 있다 (S531).
그러나 상기 패킷의 타입이 PIT 인 경우(S540), 스위칭 장치는 상기 패킷이 인터레스트 패킷이면 상기 패킷의 입력 페이스를 NDN 플로우테이블에 추가하고 상기 패킷을 삭제하며, 상기 패킷이 데이터 패킷인 경우 NDN 플로우테이블에 기록된 페이스로 상기 패킷을 전달하고 상기 패킷에 포함되는 데이터를 캐싱할 수 있다 (S541).
하지만, 상기 패킷의 타입이 CS, PIT 가 아닌, FIB 이면서 (S540), 상기 패킷이 인터레스트 패킷인 경우 스위칭 장치는 상기 패킷을 대응되는 페이스로 포워딩하며 NDN 의 플로우테이블을 갱신할 수 있다 (S551).
만약 패킷의 타입이 CS, PIT 및 FIB 중 어느 하나에도 해당하지 않으면 상기 패킷은 처리하지 못하는 패킷으로 삭제될 수 있다 (S560).
도 5를 통해 설명된 실시예에 따른 컨텐츠 전달 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 컨텐츠 전달 시스템
11, 12, 13: 노드
21, 22, 23, 24, 25: 스위치 장치
30: 컨트롤러 장치
11, 12, 13: 노드
21, 22, 23, 24, 25: 스위치 장치
30: 컨트롤러 장치
Claims (16)
- 컨텐츠이름으로 패킷을 송수신하도록 구성되는 복수 개의 노드와, 상기 복수 개의 노드 간의 플로우 송수신을 중계하도록 구성되며 오픈플로우의 플로우테이블을 포함하는 스위치 장치와, 상기 스위치 장치를 제어하도록 구성되는 컨트롤러 장치를 포함하는 오픈플로우 네트워크 시스템에 기초하여, 상기 패킷을 일 노드에서 타 노드로 전달하도록 구성되는 컨텐츠 전달 시스템에서, 컨텐츠를 전달하는 방법에 있어서,
상기 스위치 장치가, 패킷을 수신하면 상기 수신된 패킷이 상기 플로우테이블의 VLAN 필드에 매칭되는 패킷인지 판단함으로써, 상기 수신된 패킷이 NDN(NAMED DATA NETWORK) 상으로 전달되는 패킷인지 여부를 판단하는 단계;
상기 패킷이 NDN 상으로 전달되는 패킷이며 상기 패킷의 컨텐츠이름이 적어도 하나의 알파벳으로 구성되는 경우, 상기 스위치 장치가, 상기 패킷의 컨텐츠 이름을 완벽 해싱(perfect hashing)을 통해 해싱하고, 해싱결과에 따라 획득되는 비트스트링(bit string)의 프리픽스(prefix)로 상기 패킷을 군집화하여, 상기 패킷의 타입을 획득하는 단계; 및
상기 스위치 장치가 상기 패킷의 타입에 기초하여 상기 NDN 의 엔티티로 액션하는 단계를 포함하며,
상기 컨트롤러 장치는 상기 스위치 장치에서부터 상기 복수 개의 노드 각각으로 패킷이 이동가능한 경로를 최단경로 알고리즘에 기초하여 생성하고, 상기 생성된 경로를 상기 스위치에 저장하는, 컨텐츠 전달 방법.
- 제 1 항에 있어서,
상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 판단하는 단계는, 상기 수신된 패킷의 컨텐츠이름을 이용하여 상기 수신된 패킷이 상기 플로우테이블 내의 VLAN 필드에 매칭되는 패킷인지 판단하는 단계를 포함하는, 컨텐츠 전달 방법.
- 제 1 항에 있어서,
상기 NDN 의 엔티티로 액션하는 단계는,
상기 해싱 결과에 기초하여 상기 수신된 패킷이 캐싱된 컨텐츠인지. 기요청된 인터레스트인지, 또는 다음 라우팅 또는 스위칭 장치로 향하는 페이스인지 여부를 결정하는 단계를 포함하는, 컨텐츠 전달 방법. - 삭제
- 제 1 항에 있어서,
상기 NDN 의 엔티티로 액션하는 단계는,
상기 패킷의 타입이 CS(content store)이며 상기 패킷이 인터레스트 패킷인 경우 캐싱된 데이터를 검색하고 검색 결과를 상기 패킷을 수신한 페이스로 전달하고 상기 패킷을 삭제하며, 상기 패킷의 타입이 CS 이며 상기 패킷이 데이터 패킷인 경우 상기 패킷을 삭제하는 단계를 포함하는, 컨텐츠 전달 방법. - 제 1 항에 있어서,
상기 NDN 의 엔티티로 액션하는 단계는,
상기 패킷의 타입이 PIT(pending interest table)이며 상기 패킷이 인터레스트 패킷인 경우 상기 패킷의 입력 페이스를 상기 플로우테이블에 추가하고 상기 패킷을 삭제하며, 상기 패킷의 타입이 PIT 이며 상기 패킷이 데이터 패킷인 경우 상기 플로우테이블에 기록된 페이스로 상기 패킷을 전달하고 상기 패킷에 포함되는 데이터를 캐싱하는 단계를 포함하는, 컨텐츠 전달 방법. - 제 1 항에 있어서,
상기 NDN 의 엔티티로 액션하는 단계는,
상기 패킷의 타입이 FIB(forward interest base)이며 상기 패킷이 인터레스트 패킷인 경우 상기 패킷을 대응되는 페이스로 포워딩하며 상기 플로우테이블을 갱신하는 단계를 포함하는, 컨텐츠 전달 방법. - 제 1 항 내지 제 3 항 및 제 5 항 내지 제 7 항 중 어느 한 항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체.
- 컨텐츠이름으로 패킷을 송수신하도록 구성되는 복수개의 노드와, 상기 복수 개의 노드 간의 플로우 송수신을 중계하도록 구성되며 오픈플로우의 플로우테이블을 포함하는 스위치 장치와, 상기 스위치 장치를 제어하도록 구성되는 컨트롤러 장치를 포함하는 오픈플로우 네트워크 시스템에 기초하여, 상기 패킷을 일 노드에서 타 노드로 전달하도록 구성되는 컨텐츠 전달 시스템으로서,
상기 스위치 장치는, 패킷을 수신하면 상기 수신된 패킷이 상기 플로우테이블의 VLAN 필드에 매칭되는 패킷인지 판단함으로써, 상기 수신된 패킷이 NDN(NAMED DATA NETWORK) 상으로 전달되는 패킷인지 여부를 판단하도록 구성되는 NDN 결정부; 및
상기 패킷이 NDN 상으로 전달되는 패킷이며 상기 패킷의 컨텐츠이름이 적어도 하나의 알파벳으로 구성되는 경우, 상기 스위치 장치가, 상기 패킷의 컨텐츠 이름을 완벽 해싱(perfect hashing)을 통해 해싱하고, 해싱결과에 따라 획득되는 비트스트링(bit string)의 프리픽스(prefix)로 상기 패킷을 군집화하여 상기 패킷의 타입을 획득하고, 상기 패킷의 타입에 기초하여 상기 스위치 장치가 상기 NDN 의 엔티티로 액션하도록 구성되는 NDN 액션부를 포함하며,
상기 컨트롤러 장치는 상기 스위치 장치에서부터 상기 복수 개의 노드 각각으로 패킷이 이동가능한 경로를 최단경로 알고리즘에 기초하여 생성하고, 상기 생성된 경로를 상기 스위치에 저장하는, 컨텐츠 전달 시스템.
- 제 9 항에 있어서,
상기 NDN 결정부는, 상기 수신된 패킷의 컨텐츠이름을 이용하여 상기 수신된 패킷이 상기 플로우테이블 내의 VLAN 필드에 매칭되는 패킷인지 판단함으로써 상기 수신된 패킷이 NDN 상으로 전달되는 패킷인지 여부를 결정하도록 구성되는, 컨텐츠 전달 시스템.
- 삭제
- 제 9 항에 있어서,
상기 NDN 액션부는 추가적으로, 상기 패킷의 타입이 CS(content store)이며
상기 패킷이 인터레스트 패킷인 경우 캐싱된 데이터를 검색하고 검색 결과를 상기 패킷을 수신한 페이스로 전달하고 상기 패킷을 삭제하며, 상기 패킷의 타입이 CS 이며 상기 패킷이 데이터 패킷인 경우 상기 패킷을 삭제하도록 구성되는, 컨텐츠 전달 시스템. - 제 9 항에 있어서,
상기 NDN 액션부는 추가적으로, 상기 패킷의 타입이 PIT(pending interest table)이며 상기 패킷이 인터레스트 패킷인 경우 상기 패킷의 입력 페이스를 상기 플로우테이블에 추가하고 상기 패킷을 삭제하며, 상기 패킷의 타입이 PIT 이며 상기 패킷이 데이터 패킷인 경우 상기 플로우테이블에 기록된 페이스로 상기 패킷을 전달하고 상기 패킷에 포함되는 데이터를 캐싱하도록 구성되는, 컨텐츠 전달 시스템. - 제 9 항에 있어서,
상기 NDN 액션부는 추가적으로, 상기 패킷의 타입이 FIB(forward interest base)이며 상기 패킷이 인터레스트 패킷인 경우, 상기 패킷을 대응되는 페이스로 포워딩하며 NDN 플로우테이블을 갱신하도록 구성되는, 컨텐츠 전달 시스템. - 제 9 항에 있어서,
상기 스위치 장치는 데이터를 캐싱할 수 있는 저장부를 더 포함하며,
상기 저장부는 2 개의 계층 구조를 갖는 메모리로 구성되는 것을 특징으로 하는, 컨텐츠 전달 시스템.
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120156149A KR101467961B1 (ko) | 2012-12-28 | 2012-12-28 | 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120156149A KR101467961B1 (ko) | 2012-12-28 | 2012-12-28 | 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140092449A KR20140092449A (ko) | 2014-07-24 |
KR101467961B1 true KR101467961B1 (ko) | 2014-12-03 |
Family
ID=51739084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120156149A KR101467961B1 (ko) | 2012-12-28 | 2012-12-28 | 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101467961B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12026063B2 (en) | 2020-11-30 | 2024-07-02 | Electronics And Telecommunications Research Institute | Method for configuration of semi-managed DHT based on NDN and system therefor |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101629089B1 (ko) * | 2014-09-24 | 2016-06-22 | (주)유비쿼스 | 레거시 네트워크 프로토콜 기능과 sdn 기능이 하이브리드하게 동작하는 오픈플로우 동작 방법 |
-
2012
- 2012-12-28 KR KR1020120156149A patent/KR101467961B1/ko active IP Right Grant
Non-Patent Citations (4)
Title |
---|
Networking Named Content, October 13, 2009, CoNEXT’09* |
Networking Named Content, October 13, 2009, CoNEXT'09 * |
논문, 컨텐트 중심 네트워크를 위한 블룸필터 기반 확장 가능한 라우팅 기법 연구, 한국통신학회 2012 년도 하계종합학술발표회 * |
논문, 컨텐트 중심 네트워크를 위한 블룸필터 기반 확장 가능한 라우팅 기법 연구, 한국통신학회 2012 년도 하계종합학술발표회* |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12026063B2 (en) | 2020-11-30 | 2024-07-02 | Electronics And Telecommunications Research Institute | Method for configuration of semi-managed DHT based on NDN and system therefor |
Also Published As
Publication number | Publication date |
---|---|
KR20140092449A (ko) | 2014-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102301353B1 (ko) | 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 | |
JP5855817B2 (ja) | ネットワークにおける階層構造可変長識別子を備えたパケットを転送するためのコンピュータ実施方法 | |
US9705799B2 (en) | Server-side load balancing using parent-child link aggregation groups | |
US11140210B2 (en) | Information centric network for content data networks | |
Han et al. | Publisher mobility support in content centric networks | |
Alghamdi et al. | A novel fog computing based architecture to improve the performance in content delivery networks | |
US9268813B2 (en) | Terminal device based on content name, and method for routing based on content name | |
KR20170036610A (ko) | 콘텐트 중심 네트워크들에서 검출되지 않은 관심 루핑을 제거하기 위한 시스템 및 방법 | |
JP2014241135A (ja) | コンテンツ中心ネットワークにおけるノードの通信方法及びそのノード | |
Yang et al. | Towards reliable and efficient data retrieving in ICN-based satellite networks | |
Nakazato et al. | On-path resolver architecture for mobility support in information centric networking | |
WO2013091343A1 (zh) | 一种内容获取方法、装置及网络系统 | |
Garcia-Luna-Aceves | ADN: An information-centric networking architecture for the Internet of Things | |
Nguyen et al. | Adaptive caching for beneficial content distribution in information-centric networking | |
KR101467961B1 (ko) | 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템 | |
Dash et al. | Flooding control in named data networking | |
Yang et al. | Content-based hyperbolic routing and push mechanism in named data networking | |
CN110099005B (zh) | 一种基于重定向的信息中心网络路由优化方法 | |
Ko et al. | A proactive content pushing scheme for provider mobility support in information centric networks | |
Nurhayati et al. | Naming Scheme on Named Data Networking: A Survey | |
Zheng et al. | Content-oriented common IoT platform for emergency management scenarios | |
Tsai et al. | A Query-based Routing Table Update Mechanism for Content-Centric Network | |
Bellaj et al. | On-demand Geographic Forwarding for producer mobility support in Named Data Networking | |
Watano et al. | Interest re-route control according to degree of similarity on cached contents using bloom filter on NDN | |
Dakshayini et al. | Hierarchical cooperative-peers fog caching strategy to improve the performance of content centric networking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171023 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181101 Year of fee payment: 5 |