KR102121983B1 - 컨텐츠 중심 네트워크에서의 인터(inter) 도메인 및 인트라(intra) 도메인 라우팅 방법 - Google Patents
컨텐츠 중심 네트워크에서의 인터(inter) 도메인 및 인트라(intra) 도메인 라우팅 방법 Download PDFInfo
- Publication number
- KR102121983B1 KR102121983B1 KR1020130054188A KR20130054188A KR102121983B1 KR 102121983 B1 KR102121983 B1 KR 102121983B1 KR 1020130054188 A KR1020130054188 A KR 1020130054188A KR 20130054188 A KR20130054188 A KR 20130054188A KR 102121983 B1 KR102121983 B1 KR 102121983B1
- Authority
- KR
- South Korea
- Prior art keywords
- information
- content
- domain
- node
- interest packet
- Prior art date
Links
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/26—Route discovery packet
-
- 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/04—Interdomain routing, e.g. hierarchical 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/16—Multipoint routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성하고, 생성된 인터레스트 패킷을 광고 영역 내로 전송하는 컨텐츠 중심 네트워크에서의 인트라-도메인 라우팅 방법을 제공할 수 있다. 또한, 도메인 간의 라우팅을 위해 인터레스트 패킷(Packet)을 전송한 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 기초로 컨텐츠 중심 네트워크에서의 인터-도메인 라우팅 방법을 제공할 수 있다.
Description
아래의 실시예들은 컨텐츠 중심 네트워크에서의 인터(inter) 도메인 및 인트라(intra) 도메인 라우팅 방법에 관한 것이다.
컨텐츠 중심 네트워크(Contents Centric Network; 이하, CCN)에서 패킷은 컨텐츠를 요청하는 컨텐츠 요청 패킷(즉, 인터레스트(interest) 패킷)과 데이터 응답 패킷으로 구분될 수 있다. 컨텐츠 요청 패킷은 요청하는 컨텐츠의 이름을 포함하고 있으며, 데이터 응답 패킷은 요청 받은 컨텐츠와 컨텐츠 이름 등을 포함할 수 있다.
네트워킹 장비는 컨텐츠 요청 패킷을 수신한 경우, 헤더에 있는 컨텐츠 이름으로 자신의 스토리지를 검색할 수 있다. 해당 컨텐츠를 갖고 있을 경우, 네트워킹 장비는 해당 컨텐츠를 요청자에게 전달할 수 있다. 따라서, 컨텐츠의 원래(original) 소유자에게까지 가서 컨텐츠를 받아와야 하는 인터넷 프로토콜(Internet Protocol; 이하 IP) 기반 인터넷에 비해, 중간의 어느 노드라도 자신의 스토리지에 해당 컨텐츠가 있을 경우 응답(reply)할 수 있다. 그러므로, 평균 전송 경로(path)의 길이가 짧아져 전체적인 네트워크 사용량이 줄어들 수 있다.
일 실시예에 따르면, 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법은 상기 노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성하는 단계; 및 상기 광고 영역 내로 상기 인터레스트 패킷을 전송하는 단계를 포함할 수 있다.
상기 인터레스트 패킷은 상기 광고 영역을 벗어나면 폐기될 수 있다.
상기 광고 영역을 설정하는 단계를 더 포함할 수 있다.
상기 노드의 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)의 엔트리(entry) 정보를 기초로, 상기 노드가 요청한 정보가 이미 광고(advertise) 되었는지 여부를 판단하는 단계를 더 포함할 수 있다.
상기 정보가 광고된 것으로 판단된 경우, 상기 인터레스트 패킷을 상기 포워딩 인포메이션 베이스의 해당 페이스(face)를 통해 전달하는 단계를 더 포함할 수 있다.
상기 인터레스트 패킷을 생성하는 단계는 상기 판단 결과를 기초로, 상기 인터레스트 패킷을 생성하는 단계를 포함할 수 있다.
상기 인터레스트 패킷을 전송하는 단계는 상기 광고 영역 내로 상기 인터레스트 패킷을 브로드캐스트(Broadcast)하는 단계를 포함할 수 있다.
상기 브로드캐스트(Broadcast)에 대한 응답을 수신하지 못한 경우, 상기 정보의 원 제공자(originator)에게 정보를 요청하는 새로운 인터레스트 패킷을 생성하는 단계; 및 상기 새로운 인터레스트 패킷을 상기 정보의 원 제공자(originator)에게 전달하는 단계를 더 포함할 수 있다.
상기 새로운 인터레스트 패킷을 전달하는 단계는 최장 프리픽스 매칭(longest prefix matching) 방법을 이용하여 상기 정보의 원 제공자(originator)에게 상기 새로운 인터레스트 패킷을 전달하는 단계를 포함할 수 있다.
상기 광고 영역(Advertisement area)은 상기 노드가 요청한 정보와 동일 또는 유사한 분야에 대한 정보를 포함하는 적어도 하나의 노드로부터 계층적으로 인터넷 코어(Internet Core)와 연결되는 코어 라우터(Core Router)까지의 영역을 포함하고, 상기 적어도 하나의 노드는 상기 제한에 의해 결정될 수 있다.
상기 노드는 상기 광고 영역에 포함될 수 있다.
상기 정보의 대중성 여부에 기초하여 광고되는 상기 정보를 수신하는 단계; 및 상기 정보를 이용하여 상기 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성하는 단계를 더 포함할 수 있다.
상기 정보의 대중성 여부는 상기 정보에 대한 접근 횟수(access count)에 기초하여 결정될 수 있다.
상기 인터레스트 패킷은 상기 노드가 요청한 정보의 이름 및 상기 인터레스트 패킷을 수신한 노드가 상기 광고 영역에서 수행할 제어 동작을 지정하는 동작 아이디(Operation ID; OID)를 포함할 수 있다.
일 실시예에 따르면, 컨텐츠 중심 네트워크에서 인터 도메인 라우팅 방법은 인터레스트 패킷(Packet)을 전송한 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단하는 단계; 상기 판단 결과에 기초하여, 해당 노드의 컨텐츠 캐시(Contents Cache)에 저장된 컨텐츠를 검색하는 단계; 및 상기 컨텐츠 캐시에 저장된 컨텐츠가 상기 타 도메인이 요청하는 컨텐츠에 해당하면, 상기 컨텐츠 캐시에 저장된 컨텐츠를 전송하는 단계를 포함할 수 있다.
상기 인터레스트 패킷은 상기 인터레스트 패킷을 생성한 도메인을 표시하는 필드를 포함할 수 있다.
상기 미리 합의된 정책에 따른 도메인은 상기 해당 노드가 속한 도메인과 캐시 룩-업(cache look-up) 계약, 캐시 히트율(Cache hit ratio)에 대한 계약 및 할당할 캐시 사이즈(cache size)에 대한 계약 중 적어도 하나의 계약이 이루어진 도메인을 포함할 수 있다.
상기 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단하는 단계는 상기 인터레스트 패킷(Packet)에 포함된, 도메인을 표시하는 필드를 이용하여 상기 타 도메인이 상기 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단할 수 있다.
상기 해당 노드가 속한 도메인과 상기 타 도메인 사이의 연결 정보를 포함하는 싱크 트리(sync tree)를 이용하여 상기 타 도메인과 상기 미리 합의된 정책(policy)에 따른 라우팅 정보를 교환하는 단계를 더 포함할 수 있다.
일 실시예에 따르면, 컨텐츠 중심 네트워크의 노드는 상기 노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성하는 패킷 생성부; 및 상기 광고 영역 내로 상기 인터레스트 패킷을 전송하는 전송부를 포함할 수 있다.
상기 광고 영역을 설정하는 설정부를 더 포함할 수 있다.
상기 노드의 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)의 엔트리(entry) 정보를 기초로, 상기 노드가 요청한 정보가 이미 광고(advertise) 되었는지 여부를 판단하는 판단부를 더 포함할 수 있다.
상기 정보가 광고된 것으로 판단된 경우, 상기 전송부는 상기 인터레스트 패킷을 상기 포워딩 인포메이션 베이스의 해당 페이스(face)를 통해 전달할 수 있다.
상기 패킷 생성부는 상기 판단 결과를 기초로, 상기 인터레스트 패킷을 생성할 수 있다.
상기 전송부는 상기 노드가 포함된 광고 영역 내로 상기 인터레스트 패킷을 브로드캐스트(Broadcast)할 수 있다.
상기 패킷 생성부는 상기 브로드캐스트(Broadcast)에 대한 응답을 수신하지 못한 경우, 상기 정보의 원 제공자(originator)에게 정보를 요청하는 새로운 인터레스트 패킷을 생성하고, 상기 전송부는 상기 새로운 인터레스트 패킷을 상기 정보의 원 제공자(originator)에게 전달할 수 있다.
상기 전송부는 최장 프리픽스 매칭(longest prefix matching) 방법에 의해 상기 정보의 원 제공자(originator)에게 상기 새로운 인터레스트 패킷을 전달할 수 있다.
상기 정보의 대중성 여부에 기초하여 광고되는 상기 정보를 수신하는 수신부; 및 상기 정보를 이용하여 상기 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성하는 엔트리 생성부를 더 포함할 수 있다.
상기 정보의 대중성 여부는 상기 정보에 대한 접근 횟수(access count)에 기초하여 결정될 수 있다.
도 1은 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트 패킷을 처리하는 과정을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터(inter) 도메인 라우팅 및 인트라(intra) 도메인 라우팅을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드가 정보를 광고하는 방법을 나타낸 플로우 차트이다.
도 4는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인트라 도메인(Intra-Domain)의 구성 및 그 영역 계층 구조(area hierarchy)를 나타낸 도면이다.
도 5는 일 실시예에 따른 컨텐츠 중심 네트워크의 인트라 도메인(Intra-Domain)에서 노드가 정보를 광고하는 방법을 포함하는 라우팅 방법을 나타낸 플로우 차트이다.
도 6은 일 실시예에 따른 노드의 블록도이다.
도 7은 일 실시예에 따른 인터 도메인(Inter-Domain) 네트워크의 구성을 나타낸 도면이다.
도 8는 일 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
도 9는 다른 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
도 2는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터(inter) 도메인 라우팅 및 인트라(intra) 도메인 라우팅을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드가 정보를 광고하는 방법을 나타낸 플로우 차트이다.
도 4는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인트라 도메인(Intra-Domain)의 구성 및 그 영역 계층 구조(area hierarchy)를 나타낸 도면이다.
도 5는 일 실시예에 따른 컨텐츠 중심 네트워크의 인트라 도메인(Intra-Domain)에서 노드가 정보를 광고하는 방법을 포함하는 라우팅 방법을 나타낸 플로우 차트이다.
도 6은 일 실시예에 따른 노드의 블록도이다.
도 7은 일 실시예에 따른 인터 도메인(Inter-Domain) 네트워크의 구성을 나타낸 도면이다.
도 8는 일 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
도 9는 다른 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다. 이하에서, '노드'는 예를 들어, 사용자 단말(예를 들어, 스마트 폰), 스마트 tv, pc 노트북, 로봇 청소기 등과 같은 고객 장치 및 액세스 포인트와 같이 컨텐츠 중심 네트워크에 포함된 디바이스들을 포함할 수 있다.
도 1은 일 실시예에 따른 컨텐츠 중심 네트워크에서 인터레스트 패킷을 처리하는 과정을 설명하기 위한 도면이다.
정보 중심 네트워크(Information Centric Network; ICN)는 컨텐츠 중심 네트워크(Contents Centric Network; CCN)에서 대상으로 삼는 컨텐츠 이외에도 서비스(service) 및 디바이스(device) 등과 같은 모든 엔티티(entity)를 포함할 수 있다. 이하에서 설명하는 동작은 정보 중심 네트워크에서도 동일하게 수행될 수 있다.
컨텐츠 중심 네트워크(CCN)에서 컨텐츠의 이름은 컨텐츠가 저장된 노드를 찾아가기 위한 나침판 역할과 해당 컨텐츠를 다른 컨텐츠와 구분해 주는 역할을 할 수 있다. 그러므로, 각 컨텐츠는 고유한 이름을 사용하며, 두 컨텐츠의 이름이 서로 다르면, 같은 내용의 컨텐츠도 다른 정보로 취급할 수 있다. 예를 들어, 같은 내용으로 이루어진 두 파일이 각각 /ABC.com/sait/video/intro.avi과 /ABC.com/sait/comm/video/intro.avi의 컨텐츠 이름으로 존재할 경우, 두 파일은 서로 다른 컨텐츠로 처리될 수 있다. 이러한 규칙은 이름이 비슷한 서로 다른 컨텐츠들을 구분함에 있어서 매우 유용하게 사용될 수 있다.
이하에서는 컨텐츠 중심 네트워크에서 노드가 패킷을 처리하는 과정을 설명한다. 아래에서 인터레스트 패킷은 '컨텐츠를 요청하는 패킷'으로 이해할 수 있다.
도 1은 컨텐츠 중심 네트워크(Content-Centric Networking; CCN)에서 컨텐츠의 계층적 이름을 기반으로 인터레스트 패킷을 처리하는 과정을 보여준다.
컨텐츠 중심 네트워크에 포함된 노드가 페이스 0(101)로부터 예를 들어, '/ABC.com/철수/abc.avi/v3/s2'에 해당하는 인터레스트 패킷을 수신했다고 가정하자.
이때, 노드의 네트워킹 모듈은 인터레스트 패킷 내에 있는 컨텐츠의 계층적 이름(여기서는 '/ABC.com/철수/abc.avi/v3/s2')을 참조하여 해당 컨텐츠가 노드의 컨텐츠 스토어(Content Store)(110)에 있는지 확인한다. 이때, 컨텐츠 스토어(110)는 컨텐츠 캐시(Contents Cache)라고도 불릴 수 있다.
확인 결과, 컨텐츠 스토어(110) 내에 해당 컨텐츠가 저장되어 있으면, 노드는 해당 컨텐츠를 인터레스트 패킷이 수신된 페이스 0(101)로 반환한다. 이때, 페이스(face)는 인터페이스(interface)로도 표현할 수 있다.
반면에, 해당 컨텐츠가 컨텐츠 스토어(110)에 저장되어 있지 않으면, 노드는 펜딩 인터레스트 테이블(Pending Interest Table; PIT)(130) 내에 동일한 컨텐츠 이름(여기서는 '/ABC.com/철수/abc.avi/v3/s2')으로 저장된 엔트리(entry)가 있는지 여부를 확인할 수 있다.
노드는 펜딩 인터레스트 테이블(PIT)(130) 내에 동일한 컨텐츠 이름으로 저장된 엔트리가 있으면, 해당 엔트리에 인터레스트 패킷이 들어온 페이스(여기서는 페이스 0(101))에 대한 정보를 추가할 수 있다.
펜딩 인터레스트 테이블(130) 내에 동일한 컨텐츠 이름으로 등록된 엔트리가 없다면, 노드는 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)(150)에서 컨텐츠 이름에 기반한 검색(name lookup)을 수행하여 해당 엔트리(entry)를 찾을 수 있다. 이때, 노드는 최장 프리픽스 매칭(longest prefix matching)에 따라 검색을 수행할 수 있다.
그 후, 노드는 포워딩 인포메이션 베이스(FIB)(150)에 등록되어 있는 정보에 기초하여 인터레스트 패킷을 전달할 페이스(예를 들어, 페이스 1(105))를 결정하고, 해당 페이스(페이스 1(105))로 인터레스트 패킷을 전송할 수 있다.
이 과정에서 노드는 인터레스트 패킷이 전달되어 온 페이스(페이스 0(101))에 대한 정보('0')를 인터레스트 테이블(PIT)(130)에 등록할 수 있다. 이는 향후 인터레스트 패킷에 대응되는, 컨텐츠를 포함한 데이터 패킷이 전달되었을 때, 해당 컨텐츠를 요청한 노드에게 데이터 패킷을 전달하기 위함이다. 여기서, 포워딩 인포메이션 베이스(150)에 기초하여 인터레스트 패킷을 전달할 페이스를 선택(결정)할 때, 인터레스트 패킷이 수신된 페이스(여기서는 페이스 0(101))는 선택 대상에서 제외될 수 있다.
도 2는 일 실시예에 따른 컨텐츠 중심 네트워크에서의 인터(inter) 도메인 라우팅 및 인트라(intra) 도메인 라우팅을 설명하기 위한 도면이다.
도 2를 참조하면, 일 실시예에 따른 컨텐츠 중심 네트워크의 계층 구조(area-based hierarchy)는 라우팅 영역에 따라 크게 인터-도메인(Inter-Domain) 및 인트라-도메인(Intra Domain)으로 나줄 수 있다.
여기서, '인터-도메인(Inter-Domain)' 라우팅은 서로 다른 도메인들 간의 라우팅을 의미하고, '인트라-도메인(Intra Domain)' 라우팅은 하나의 도메인 내에 포함된 네트워크 장치(예를 들어, 고객 장치, 액세스 포인터, 라우터 등)들 간의 라우팅을 의미한다.
일 실시예에서는 인터 도메인(Inter-Domain) 및 인트라-도메인(Intra Domain)의 구분에 따라 서로 다른 라우팅 방법이 수행될 수 있다. 특히, 인트라-도메인(Intra Domain)의 경우에는 하이브리드 라우팅(Hybrid Routing)을 이용할 수 있다.
여기서, '하이브리드 라우팅'이란 정보 레벨 라우팅(Information-level Routing) 및 퍼블리셔 레벨 라우팅(Publisher-level Routing)의 두 가지 개념을 경우에 따라 적용하는 것을 의미한다. 하이브리드 라우팅에 대하여는 후술하는 도 5를 참조하여 설명한다.
여기서, 컨텐츠 중심 네트워크는 IP 오버레이(overlay) 형태로 구성되거나 혹은 정보 레이어(layer)가 네이티브(native) L2 위에 구현되는 형태로 구성될 수 있다.
도 3은 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드가 정보를 광고하는 방법을 나타낸 플로우 차트이다.
도 3을 참조하면, 일 실시예에 따른 노드는 광고 영역(advertisement area)을 설정(혹은 결정)할 수 있다(310). 이 때, 광고 영역은 노드가 요청한 정보를 광고하는 범위를 제한 혹은 한정하는 영역으로서, 예를 들어, 고객 장치 등을 통해 사용자로부터 입력된 영역 또는 디폴트(default)로 설정된 영역에 의해 설정될 수 있다. 이때, 노드는 광고 영역 내에 포함될 수 있다.
또한, 광고 영역은 노드가 요청한 정보와 동일 또는 유사한 분야에 대한 정보를 포함하는 적어도 하나의 노드로부터 계층적으로 인터넷 코어(Internet Core)와 연결되는 코어 라우터(Core Router)까지의 영역을 포함할 수 있다. 여기서, 정보는 컨텐츠뿐만 아니라 디바이스 및 서비스 등에 대한 정보를 모두 포함하는 개념으로 이해할 수 있다.
이때, 적어도 하나의 노드는 310에서 사용자로부터 입력된 영역 혹은 디폴트로 설정된 영역에 따른 제한에 의해 결정될 수 있다.
노드는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성할 수 있다(330). 인터레스트 패킷은 노드가 요청한 정보의 이름 및 동작 아이디(Operation ID; OID)를 포함할 수 있다.
여기서, 동작 아이디(Operation ID; OID)는 인터레스트 패킷을 수신한 노드가 광고 영역에서 수행할 제어 동작을 지정하는 역할을 할 수 있다.
동작 아이디는 예를 들어, 컨텐츠의 광고, 컨텐츠의 검색, 컨텐츠의 저장, 컨텐츠의 삭제, 컨텐츠의 복제, 컨텐츠의 갱신, 컨텐츠의 포워딩, 컨텐츠의 분할, 컨텐츠의 병합, 컨텐츠의 인코딩, 컨텐츠의 디코딩, 및 컨텐츠의 암호화 등과 같이 적어도 하나의 (제어) 동작을 지정할 수 있다.
이후, 노드는 광고 영역 내로 인터레스트 패킷을 전송할 수 있다(350).
전송된 인터레스트 패킷은 광고 영역을 벗어나면 폐기될 수 있다.
도 4는 일 실시예에 따른 컨텐츠 중심 네트워크에서 인트라 도메인(Intra-Domain)의 구성 및 그 영역 계층 구조(area hierarchy)를 나타낸 도면이다.
도 4를 참조하면, 인트라 도메인(Intra-Domain) 네트워크의 영역 계층 구조(area hierarchy)를 살펴볼 수 있다.
일반적으로 IP 기반 인트라 도메인(Intra-Domain) 네트워크에서는 라우터들을 영역(area) 별로 나누고, 각 영역(area)내에서만 라우팅 정보를 교환할 수 있다.
즉, 도 4에서 영역 0(Area 0)(410)은 백본(backbone)에 해당하는 코어 라우터(Core Router)의 영역이고, 영역 1(Area 1)(420) 및 영역 2(Area 2)(430)은 IP 라우터의 영역에 해당할 수 있다.
이와 같은 영역(area)의 구분은 컨텐츠 중심 네트워크에서도 여전히 요구될 수 있다. 영역의 구분은 도메인의 크기가 현재 IP 기반에 비해 줄어든다고 보기 어려울 뿐만 아니라 라우팅 정보 교환에 대한 인트라 도메인(Intra-Domain) 라우팅의 확장성(scalability)을 확보하기 위해서이다. 따라서, 일 실시예에서는 영역(area)에 기반한 계층 구조(hierarchy)를 사용할 수 있다.
하지만, 컨텐츠 중심 네트워크에서는 정보를 요청하는 인터레스트(Interest) 패킷의 전송을 위해 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)를 구축할 수 있다. 포워딩 인포메이션 베이스(FIB)는 정보에 대한 광고(advertise)(혹은 등록(registration)) 정보를 받아 구축하지만, 모든 정보에 대하여 광고하는 것은 확장성(scalability)의 확보 측면에서 불가능하다.
왜냐하면 컨텐츠의 종류는 엄청나게 많고, 현재에도 계속 증가하고 있으므로 모든 컨텐츠에 대해 광고(advertisement)를 할 경우, 광고 정보만으로도 네트워크가 마비 상태에 이를 수 있기 때문이다. 여기서, 정보(Information)는 컨텐츠, 디바이스, 서비스를 포함하는 개념으로 이해될 수 있다.
따라서, 일 실시예에서는 IP 기반 인트라 도메인(Intra-Domain) 네트워크에서의 영역과 달리, 노드가 요청한 정보를 광고하는 범위를 광고 영역(advertisement area)으로 제한함으로써 확장성을 확보할 수 있도록 한다.
여기서, '광고 영역(advertisement area; Ad-area)'은 예를 들어, 캠퍼스 내의 단과 대학들, 아파트 단지, 학원가 등 비슷한 컨텐츠에 관심이 많은 사람들이 모여있다고 가정할 수 있는 영역 및 그 영역에서 인터넷 코어(Internet core)로 연결되는 코어(core) 라우터까지의 영역으로 규정할 수 있다. 다만, 이때 광고 영역은 사용자 혹은 고객 장치 등에서의 설정 혹은 미리 설정된 디폴트 영역 등에 따른 제한(혹은 한정)에 의해 결정될 수 있다.
예를 들어, 광고 영역 1(Ad-area 1)(440)은 교육 관련 컨텐츠, 교육 관련 서비스 및 교육 관련 서비스 제공 장치 등에 대한 관심이 많은 사람들이 모인 영역이고, 광고 영역 2(Ad-area 2)(450)는 교육 관련 컨텐츠(혹은 서비스) 중 스포츠 및 여행 관련 컨텐츠(혹은 서비스)에 대한 관심이 많은 사람들이 모인 영역으로 볼 수 있다.
또한, 광고 영역 3(Ad-area 3)(460)은 영화 컨텐츠, 영화 제공 서비스 등에 관심이 많은 사람들이 모인 영역일 수 있다.
광고 영역(advertisement area; Ad-area)은 IP 기반의 영역(area)에 비해 그 크기가 작으며, 계층적으로 중복을 허용하게 설정될 수 있다. 또한, 광고 영역은 예를 들어, 광고 영역 4(Ad-area 4)(470)와 같이 영역(area)에 직교(orthogonal)하게 비슷한 컨텐츠(혹은 서비스, 디바이스)를 공유하는 범위로 설정될 수 있다.
이와 같이 일 실시예에서는 제한된 광고 영역 내에서 정보를 광고함으로써 좁은 지역 내에서의 정보 공유 효율을 높일 수 있다.
또한, 광고 영역(Ad-area)은 광고하지 않은 정보를 찾아 가는 데에 이용될 수도 있다.
즉, 광고하지 않은 정보를 요청하는 인터레스트 패킷에 대해 광고 영역 내에서의 브로드캐스트(Broadcast)을 허용함으로써, 인터레스트 패킷의 브로드캐스트 영역(Broadcast area)를 국부화(localize)시킬 수 있다.
이와 같이 광고 영역(Ad-area)을 이용함으로써 컨텐츠 중심 네트워크의 확장성(scalability)을 유지하는 동시에, 광고하지 않은 컨텐츠에 대한 도달 가능성(reachability) 또한 어느 정도 확보할 수 있다.
이와 같은 정보의 광고는 글로벌 스케일(Global-scale)의 인터 도메인에서는 확장성을 보장하기 어려울 수 있으나, 매우 높은 레벨의 정보 집적 방법이 고안되고, 도메인 정책 레벨에서 이 집적된 정보 카테고리에 대한 캐시 히트 정책이 정의되는 경우, 특정 도메인 사이에 정보의 광고가 가능할 수도 있다.
정보를 광고하는 방법과 관련된 다양한 실시예들은 다음과 같다.
우선, 라우터 및 단말에서 정보 맵(information map)을 구성하는 경우, 정보에 대한 광고(advertisement)가 요구될 수 있다. 이때, 정보에 대한 광고 범위는 대중적인(Popular) 일부 정보로 한정할 수 있다. 그리고, 정보를 집적(aggregation)하여 광고할 것인지 여부는 개별 정보 단위로 결정하거나, 정보의 속성에 따라 결정할 수 있다.
또한, 일시적(Transient)으로 캐시된 정보에 대하여는 일정 기간 이상의 라이프 타임(life time)을 가진 정보만을 광고하거나, 임시적(temporarily)으로 캐시된 모든 정보는 광고하지 않을 수도 있다.
이 밖에도, 광고 메시지의 양을 조절하기 위해 광고 메시지의 양에 따라 광고할 정보의 대중성(popularity) 정도를 조절하는 방법을 이용할 수도 있다. 이 경우, 정보 광고에 의한 제어 트래픽(control traffic)의 양을 일정하게 유지할 수 있다.
이상의 설명은 '정보-레벨 라우팅'에 해당할 수 있다.
일 실시예에서 정보-레벨 라우팅 방법에 의해 사용자가 찾고자 하는 컨텐츠를 로컬(local)에서 찾을 수 없는 경우는 '퍼블리셔-레벨(publisher-level) 라우팅'으로 전환하여 정보의 퍼블리셔에게 인터레스트를 전달하는 하이브리드 라우팅을 이용할 수 있다. 여기서, '퍼블리셔(publisher)'는 해당 정보의 원 소유자 혹은 원 제공자로 이해할 수 있다. '퍼블리셔-레벨(publisher-level) 라우팅'은 '정보의 원 제공자(originator) 레벨 라우팅'으로 부를 수 있다.
일 실시예에서 하이브리드 라우팅을 이용하여 특정 컨텐츠에 대한 인터레스트를 전송하는 방법은 도 5를 참조하여 설명한다.
일 실시예에 따른 인트라 도메인(Intra-Domain) 네트워크에서 광고된 정보는 예를 들어, 현재 인터넷(Internet)에서 사용중인 OSPF(Open Shortest Path First)의 최단 경로 우선(shortest path first) 알고리즘을 사용하여 라우팅될 수 있다. 또한, 광고되지 않은 컨텐츠는 전술한 바와 같이 광고 영역 내에서의 인터레스트 패킷의 브로드캐스트(broadcast)을 통해 라우팅될 수 있다.
도 5는 일 실시예에 따른 컨텐츠 중심 네트워크의 인트라 도메인(Intra-Domain)에서 노드가 정보를 광고하는 방법을 포함하는 라우팅 방법을 나타낸 플로우 차트이다.
이하에서 '노드'는 해당 정보(컨텐츠)를 요청하는 노드인 정보(컨텐츠) 제공자와 정보(컨텐츠) 요청자가 요청한 정보(컨텐츠)를 제공하는 노드인 정보(컨텐츠) 요청자를 포함할 수 있다. 또한, 이하에서 '정보'는 '컨텐츠'를 포함하는 의미로 이해할 수 있다.
도 5를 참조하면, 노드(정보 요청자)는 컨텐츠의 대중성 여부에 기초하여 광고되는 정보(혹은 컨텐츠)를 수신할 수 있다(505). 이때, 정보의 대중성(popularity) 여부는 정보에 대한 접근 횟수(access count)에 기초하여 결정될 수 있다. 즉, 해당 정보를 요청하는 인터레스트 패킷의 개수가 미리 설정된 값 이상이면, 해당 정보는 대중성이 있는 정보 다시 말해, 대중적인 정보(popular information)로 결정될 수 있다.
이때, 광고되는 정보(광고 정보)는 정보 제공자의 컨텐츠 캐시에 저장된 정보 이름들의 리스트를 포함할 수 있다.
노드(정보 요청자)는 505에서 광고된 정보에 기초하여 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성할 수 있다(510).
노드(정보 요청자)는 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)의 엔트리(entry)를 기초로, 노드(정보 요청자)가 요청한 정보가 광고(advertise) 되었는지 여부를 판단할 수 있다(515).
515에서 노드(정보 요청자)가 요청한 정보가 광고된 것으로 판단된 경우, 노드(정보 요청자)는 포워딩 인포메이션 베이스(FIB)의 해당 페이스(face)를 통해 정보를 요청하는 인터레스트 패킷을 노드(정보 제공자)에게 전달할 수 있다(520). 여기서, 해당 페이스는 포워딩 인포메이션 베이스(FIB)에서 노드(정보 요청자)가 요청한 정보에 해당하는 엔트리의 페이스를 의미할 수 있다.
520과 같이 노드(정보 요청자)가 요청한 정보가 광고된 경우, 정보를 요청하는 인터레스트 패킷을 정보를 제공하는 노드(정보 제공자)에게 전달하는 것을 '정보 레벨(contents-level) 라우팅'이라고 할 수 있다. 이때, 정보는 컨텐츠, 서비스 및 디바이스 등에 해당할 수 있으며, 그 속성 등 여러 가지 기준에 의해 집적(aggregation)될 수 있다.
그러나 515에서 노드(정보 요청자)가 요청한 정보가 광고되지 않은 것으로 판단된 경우, 노드(정보 요청자)는 광고 영역을 결정(525)하고, 광고 영역이 설정된 인터레스트 패킷을 생성할 수 있다(530).
이후, 노드(정보 요청자)는 자신이 속한 광고 영역(Advertisement area) 내로 정보를 요청하는 인터레스트 패킷을 브로드캐스트(broadcast)할 수 있다(535).
이때, 광고 영역(Advertisement area)은 노드(정보 요청자)가 요청한 정보와 동일 또는 유사한 분야에 대한 정보를 포함하는 적어도 하나의 노드로부터 계층적으로 인터넷 코어(Internet Core)와 연결되는 코어 라우터(Core Router)까지의 영역을 포함할 수 있다. 이때, 광고가 전달되는 적어도 하나의 노드의 범위는 525 과정에서 결정된 광고 영역에 따라 결정될 수 있다.
이와 같이 일 실시예에서, 광고 영역(Advertisement area)은 대중적인 정보에 대한 광고 범위를 제한 혹은 한정하는 데에 이용될 수 있다.
여기서, '브로드캐스트(Broadcast)'는 임의의 노드로부터 전송된 하나의 패킷을 라우터(혹은 액세스 포인트)에 접속되어 있는 다른 모든 노드로 전달하는 것을 의미하며, 하나의 원천 노드로부터 실제 네트워크 또는 가상 네트워크의 많은 특정 노드로 패킷들을 멀티캐스트하는 용도로 사용될 수도 있다.
이후, 노드(정보 요청자)는 535의 브로드캐스트(Broadcast)에 대한 응답이 수신되었는지를 판단할 수 있다(540).
540에서 브로드캐스트(Broadcast)에 대한 응답을 수신한 경우, 노드(정보 요청자)는 요청한 정보를 전달받을 수 있다(545).
반면에, 540에서 브로드캐스트(Broadcast)에 대한 응답을 수신하지 못한 경우, 노드(정보 요청자)는 정보의 원 제공자(originator), 다시 말해, 퍼블리셔(publisher)에게 정보를 요청하는 새로운 인터레스트 패킷을 생성할 수 있다(550). 이때, 550에서 생성되는 새로운 인터레스트 패킷은 광고 영역이 설정되지 않은 인터레스트 패킷일 수 있다.
550에서 노드(정보 요청자)는 최장 프리픽스 매칭(longest prefix matching) 방법에 의해 컨텐츠의 원 제공자(originator)에게 직접 인터레스트 패킷을 전달할 수 있다.
노드(정보 요청자)는 550에서 생성된 새로운 인터레스트 패킷을 정보의 원 제공자에게 전송할 수 있다(555).
555와 같이 정보의 원 제공자, 다시 말해 퍼블리셔(contents publisher)에게 정보를 요청하는 인터레스트 패킷을 전달하는 것을 '퍼블리셔 레벨(publisher-level) 라우팅'이라 할 수 있다.
즉, 퍼블리셔 레벨(publisher-level) 라우팅에서는 정보 레벨 라우팅을 수행하지 않는 대중적이지 않은 정보(unpopular information)에 대해서는 광고하지 않고, 정보의 퍼블리셔까지 최단 경로(shortest path) 라우팅을 통해 정보를 요청하는 인터레스트 패킷을 전달할 수 있다. 이때, 정보는 퍼블리셔의 구성 계층 구조(organization hierarchy)에 의해 집적(aggregation)될 수 있다.
이와 같이 퍼블리셔 레벨(publisher-level) 라우팅은 도메인 내의 로컬 영역(예를 들어, 광고 영역) 내에 해당 정보가 없다고 판명될 경우, 퍼블리셔(publisher)에게 정보를 요청하는 패킷을 보내어 정보 전송을 요청하는 방법이다. 여기서, '퍼블리셔(publisher)'는 컨텐츠의 원 저자(author) 또는 원 소유자(owner)라고도 부를 수 있다.
정보 레벨(contents-level) 라우팅 및 퍼블리셔 레벨(publisher-level) 라우팅에 대한 보다 구체적인 설명은 다음과 같다.
예를 들어, 노드 A가 /kbs.com/art/music/1st week/#1song.mp3 라는 컨텐츠(혹은 파일)를 소유한다고 할 때, 노드 A는 해당 컨텐츠가 매우 대중적이라면 해당 컨텐츠에 대한 정보를 광고할 수 있다. 그리고, 노드 A와 동일한 도메인 내에 있는 노드 B는 컨텐츠에 대한 광고를 수신할 수 있다.
이때, 노드 B가 해당 컨텐츠(/kbs.com/art/music/1st week/#1song.mp3)를 요청하는 패킷을 수신했다면, 노드 B는 노드 A로 컨텐츠(/kbs.com/art/music/1st week/#1song.mp3)를 요청하는 패킷을 전달할 수 있다.
여기서, 정보(예를 들어, 컨텐츠) 자체가 광고 되었고, 정보에 대한 광고를 이용하여 정보를 요청하는 인터레스트 패킷을 라우팅하기 때문에 이를 정보 레벨(contents-level) 라우팅이라고 할 수 있다.
이후, 노드 A가 /kbs.com/art/music/1st week/#1song.mp3 라는 정보(예를 들어, 컨텐츠)를 광고한 지 2주가 지났고, 해당 정보가 더 이상 대중적이지 않아 A 노드가 이 파일을 지웠다고 가정하자.
그러면, 노드 B는 /kbs.com/art/music/1st week/#1song.mp3라는 정보를 요청하는 패킷을 수신했다고 하더라도, 노드 A에 의해 해당 정보에 대한 광고가 이루어지지 않았으므로 정보를 요청하는 패킷을 어디로 보내야 할 지 모른다.
이때, B 노드는 아래와 같은 순서로 그 정보의 이름에 대해 라우팅 경로가 있는지 여부를 검사할 수 있다.
/kbs.com/art/music/1st week/#1song.mp3
/kbs.com/art/music/1st week/
/kbs.com/art/music/
/kbs.com/art/
/kbs.com/
만약 위의 어떤 이름에 대해서도 라우팅 경로가 없다면, 결국에는 B 노드는 정보를 요청하는 패킷을 해당 컨텐츠의 최초 생성자(퍼블리셔(publisher))인 /kbs.com/ 으로 보낼 수 있다. 이와 같이 퍼블리셔에게 정보를 요청하는 인터레스트 패킷을 직접 전달하는 것을 퍼블리셔 레벨(publisher-level) 라우팅이라고 한다.
해당 정보가 광고되지 않은 때에 상술한 바와 같은 순서로 해당 정보의 이름에 대해 라우팅 경로가 있는지 여부를 검사하는 최장 프리픽스 매칭(longest prefix matching)을 수행하여 라우팅 경로를 찾을 수 있다.
일 실시예에서는 정보 레벨 라우팅에 의해 노드가 찾고자 하는 정보를 로컬(local)(도메인 내)에서 찾을 수 없는 경우는 퍼블리셔 레벨 라우팅으로 전환하여 보다 효율적으로 도메인 내에서의 라우팅을 수행할 수 있다.
도 6은 일 실시예에 따른 노드의 블록도이다.
도 6을 참조하면, 일 실시예에 따른 컨텐츠 중심 네트워크에서 정보를 광고하는 노드는 설정부(610), 패킷 생성부(620), 전송부(630), 수신부(640), 엔트리 생성부(650) 및 판단부(660)를 포함할 수 있다.
설정부(610)는 광고 영역을 설정할 수 있다.
패킷 생성부(620)는 노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성할 수 있다. 이때, 패킷 생성부(620)는 판단부(660)의 판단 결과를 기초로, 인터레스트 패킷을 생성할 수 있다.
전송부(630)는 광고 영역 내로 인터레스트 패킷을 전송할 수 있다. 전송부(630)는 노드가 포함된 광고 영역 내로 인터레스트 패킷을 브로드캐스트(Broadcast)할 수 있다.
브로드캐스트(Broadcast)에 대한 응답을 수신하지 못한 경우, 패킷 생성부(620)는 정보의 원 제공자(originator)에게 정보를 요청하는 새로운 인터레스트 패킷을 생성할 수 있다.
이때, 전송부(630)는 최장 프리픽스 매칭(longest prefix matching) 방법에 의해 정보의 원 제공자(originator)에게 새로운 인터레스트 패킷을 전달할 수 있다.
수신부(640)는 정보의 대중성 여부에 기초하여 다른 노드로부터 광고되는 정보를 수신할 수 있다. 여기서, 정보의 대중성 여부는 정보에 대한 접근 횟수(access count)에 기초하여 결정될 수 있다.
엔트리 생성부(650)는 수신부(640)에서 수신한 정보를 이용하여 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성할 수 있다.
판단부(660)는 노드의 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)의 엔트리(entry) 정보를 기초로, 노드가 요청한 정보가 이미 광고(advertise) 되었는지 여부를 판단할 수 있다.
판단부(660)에서 정보가 광고된 것으로 판단된 경우, 전송부(630)는 인터레스트 패킷을 포워딩 인포메이션 베이스의 해당 페이스(face)를 통해 전달할 수 있다.
도 7은 일 실시예에 따른 인터 도메인(Inter-Domain) 네트워크의 구성을 나타낸 도면이다.
도 7을 참조하면, 인터 도메인(Inter-Domain) 네트워크의 각 도메인들은 AS(Autonomous System)이라 불릴 수 있으며, 0 에서 65,535의 자연수를 ID로 가질 수 있다.
도 7에서 인터넷 코어(Internet Core)(710)와 연결하기 위해 다른 AS를 통해야 하는 경우 그 AS 간의 연결을 '트랜싯(Transit)'이라 부를 수 있다. 예를 들어, AS 1(720)과 AS 4(750)간의 연결 혹은 AS 2(730)과 AS 5(760)간의 연결이 트랜싯(Transit)에 해당할 수 있다.
또한, 인터넷 코어(710)와의 연결과는 상관없는 연결을 '피어링(peering)'이라 부를 수 있다. 예를 들어, AS 3(740)과 AS 4(750)간의 연결 혹은 AS 4(750)와 AS 5(760)간의 연결이 '피어링(peering)'에 해당할 수 있다.
일 실시예에서 설명하는 라우팅 방법은 주로 트랜싯(Transit) 연결을 위한 것이다. AS 간의 트랜싯(Transit) 연결은 인터넷 코어(710)에 연결된 AS가 그렇지 않은 AS에 대해 인터넷 코어(710)로의 연결(connectivity)을 제공하는 것이므로, 소비자(customer)와 제공자(provider)의 관계로 일컬어질 수도 있다.
예를 들어, 연결(connectivity)를 제공하는 AS 1(720)이 제공자(provider)가 되고, AS 1(720)을 인터넷 코어(710)로의 트랜싯(Transit) AS로 사용하는 AS 3(740)와 AS 4(750)가 소비자(customer) AS가 될 수 있다.
일반적으로, IP 기반 인터넷에서 AS 1(720)은 IP 패킷(packet)을 전달하는 역할만 수행하면 된다. 즉, AS 간의 정책(policy)에 따라 소비자(customer)의 패킷을 전달할 것인지 여부를 결정하고, 이를 위해 AS는 서로 간에 정책을 정하며, 이를 서로 교환하여 패킷의 전달 여부를 결정할 수 있다.
하지만, 일 실시예에 따른 컨텐츠 중심 네트워크에서는 패킷의 전달뿐만 아니라 컨텐츠 캐시(Contents Cache)에 대한 캐시 히트(cache hit) 여부도 역시 중요하다. 이때, 트랜싯 AS에서 컨텐츠 캐시에 대한 캐시 히트(cache hit)를 허용하느냐의 여부는, 트랜싯 AS와 인터넷 코어 사이의 링크 사용량을 결정하는 요소이므로 얼핏 트랜싯 AS 만의 문제로만 보일 수도 있다. 하지만, 컨텐츠 캐시에 대한 캐시 히트(cache hit)를 허용하는 경우에, 소비자(customer) AS의 요청(request)에 대한 응답 시간(response time)을 줄여주어 소비자(customer) AS 내에 포함된 사용자(user)의 만족도를 높여줄 수 있다.
그러므로, 일 실시예에서는 트랜싯(Transit) AS의 컨텐츠 캐시에 대한 캐시 히트(cache hit)를 허용할 것인지 여부, 트랜싯(Transit) AS의 컨텐츠 캐시에서의 캐시 히트율(cache hit ratio)을 어느 정도로 유지하느냐 및 특정 AS를 위한 캐시 사이즈(cache size)를 얼마나 확보하느냐를 중요한 정책(policy) 중의 하나로 삼을 수 있다.
인터-도메인 라우팅에 있어 도메인(AS) 서로 간의 정책(policy) 정보를 포함하는 라우팅 정보는 싱크 트리(Sync tree)를 이용하여 교환할 수 있다. 싱크 트리(Sync tree)는 해당 노드가 속한 도메인과 타 도메인 간의 연결 정보(예를 들어, 라우팅 정보)를 포함할 수 있다.
이 밖에도, 도메인 서로 간의 라우팅 정보를 교환하거나, 정책을 적용하는 방법은 IP 기반 인터넷에서의 방식을 동일하게 이용할 수 있으므로 이에 대한 구체적인 설명은 생략한다.
도 8는 일 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
도 8를 참조하면, 일 실시예에 따른 인터 도메인(Inter-Domain) 네트워크에 포함된 노드는 타 도메인으로부터 인터레스트 패킷을 수신하면, 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단할 수 있다(810).
이때, '미리 합의된 정책에 따른 도메인'은 해당 노드가 속한 도메인과 캐시 룩-업(cache look-up) 계약, 캐시 히트율(Cache hit ratio) 및 확보할 캐시 사이즈(cache size)에 대한 계약 중 적어도 하나의 계약이 이루어진 도메인을 포함할 수 있다.
여기서, 캐시 룩-업(cache look-up) 계약은 해당 노드의 컨텐츠 캐시에 저장된 컨텐츠에 대한 접근, 즉 캐시 히트(Cache Hit)를 허용할 것인지 여부에 대한 계약을 의미할 수 있다. 또한, 캐시 히트율(Cache hit ratio)에 대한 계약은 예를 들어, A 도메인이 음악 컨텐츠와 영화 컨텐츠를 포함한다고 할 때, A 도메인과 계약된 B 도메인으로 음악 컨텐츠를 40% 제공하고, 영화 컨텐츠를 60% 제공하는 등과 같이 제공하는 컨텐츠에 대한 히트율을 의미할 수 있다.
일 실시예에서 인터레스트 패킷은 해당 패킷을 생성한 도메인을 표시하는 필드를 포함할 수 있다.
따라서, 인터레스트 패킷(Packet)에 포함된, 도메인을 표시하는 필드를 이용하여 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단할 수 있다. 예를 들어, A 도메인이 X 노드가 속한 도메인(예를 들어, B 도메인)과 캐시 룩-업(cache look-up) 계약(또는 캐시 히트율(Cache hit ratio)에 대한 계약)을 했다고 하자. 그러면, A 도메인은 인터레스트 패킷을 전송하는 때에 도메인 A가 전송한 패킷 임을 알릴 수 있도록 인터레스트 패킷에 포함된 도메인을 표시하는 필드에 A 혹은 도메인 A와 관련된 정보를 표시할 수 있다.
따라서, 이 인터레스트 패킷을 수신한 다른 도메인에서는 필드에 기재된 정보에 의해 해당 패킷이 A 도메인에 의해 전송된 것임을 파악하여 해당 패킷에 대한 캐시 룩-업(cache look-up)(또는 캐시 히트율(Cache hit ratio)에 대한 계약)을 허용할 수 있다.
이에 앞서, 노드 X는 해당 노드가 속한 도메인(예를 들어, B 도메인)과 타 도메인(예를 들어, A 도메인) 사이의 연결 정보를 포함하는 싱크 트리(sync tree)를 이용하여 타 도메인과 미리 합의된 정책(policy)에 따른 라우팅 정보 및 기타의 정보를 교환할 수 있다.
노드는 810의 판단 결과에 기초하여, 해당 노드의 컨텐츠 캐시(Contents Cache)에 저장된 컨텐츠를 검색할 수 있다(820). 보다 구체적으로 810에서 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하면, 노드는 자신의 컨텐츠 캐시에 저장된 컨텐츠를 검색할 수 있다. 하지만, 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하지 않으면, 노드는 해당 패킷(타 도메인이 전송한 인터레스트 패킷)을 다음 노드로 전달하지 않고 버린(850) 후, 동작을 종료할 수 있다.
노드는 컨텐츠 캐시에 저장된 컨텐츠가 타 도메인이 요청하는 컨텐츠와 일치하는지 여부를 판단할 수 있다(830).
830의 판단 결과, 컨텐츠 캐시에 저장된 컨텐츠가 타 도메인이 요청하는 컨텐츠와 일치하면, 노드는 컨텐츠 캐시에 저장된 컨텐츠를 전송할 수 있다(840).
반면에, 830의 판단 결과, 컨텐츠 캐시에 저장된 컨텐츠가 타 도메인이 요청하는 컨텐츠와 일치하지 않는다면, 노드는 인터레스트 패킷을 다음 노드로 전송할 수 있다(860). 이때, 다음 노드는 해당 노드와 동일한 도메인 내에 속한 노드일 수도 있고, 다른 도메인에 속한 노드일 수도 있다.
이 밖에도, 노드는 해당 노드가 속한 도메인과 타 도메인 사이의 연결 정보를 포함하는 싱크 트리(sync tree)를 이용하여 타 도메인과 미리 합의된 정책(policy)에 따른 라우팅 정보를 교환할 수 있다.
도 9는 다른 실시예에 따른 컨텐츠 중심 네트워크에서의 라우팅 방법이 인터 도메인(Inter-Domain) 네트워크에서 수행되는 과정을 나타낸 플로우 차트이다.
도 9를 참조하면, 노드는 다른 도메인으로부터 패킷을 수신하고(910), 해당 패킷이 도메인들 간에 전달되는 인터 도메인(Inter-Domain) 패킷인지 여부를 판단할 수 있다(920).
920의 판단 결과, 해당 패킷이 인터 도메인(Inter-Domain) 패킷이라면, 노드는 인터 도메인(Inter-Domain) 패킷이 (패킷에 대한) 전달 계약이 이루어진 도메인으로부터 전송된 것인지 여부를 판단할 수 있다(930).
930에서의 판단 결과, 인터 도메인(Inter-Domain) 패킷이 전달 계약이 이루어지지 않은 도메인으로부터 전송된 것이라면, 노드는 인터 도메인(Inter-Domain) 패킷을 버릴 수 있다(940).
그러나 인터 도메인(Inter-Domain) 패킷이 전달 계약이 이루어진 도메인으로부터 전송된 것이라면, 노드는 다시 인터 도메인(Inter-Domain) 패킷이 캐시 룩-업(cache look-up) 계약이 된 도메인으로부터 전송된 것인지 여부를 판단할 수 있다(950).
950에서 인터 도메인(Inter-Domain) 패킷이 캐시 룩-업(cache look-up) 계약이 된 도메인으로부터 전송된 것으로 판단되면, 노드는 자신의 컨텐츠 캐시를 검색(룩-업(look up))할 수 있다(960).
960에서 컨텐츠 캐시에 저장된 컨텐츠가 타 도메인이 요청하는 컨텐츠에 해당하면(즉, Cache hit에 해당하면)(970), 노드는 인터레스트 패킷에 대한 응답으로서 컨텐츠 캐시에 저장된 컨텐츠를 해당 패킷을 전송한 도메인으로 전송할 수 있다(980). 반면에, 컨텐츠 캐시에 저장된 컨텐츠가 타 도메인이 요청하는 컨텐츠에 해당하지 않으면, 노드는 인터레스트 패킷을 다음 노드로 전달할 수 있다(990).
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
101,105: 페이스(face)
110: 컨텐츠 스토어(Contents Store)
130: 펜딩 인터레스트 테이블(Pending Interest Table; PIT)
150: 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)
110: 컨텐츠 스토어(Contents Store)
130: 펜딩 인터레스트 테이블(Pending Interest Table; PIT)
150: 포워딩 인포메이션 베이스(Forwarding Information Base; FIB)
Claims (30)
- 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법에 있어서,
노드의 포워딩 인포메이션 베이스의 엔트리(entry) 정보를 기초로, 상기 인트라 도메인 내에서 상기 노드가 요청한 정보가 광고(advertise) 되었는지 여부를 판단하는 단계;
상기 노드가 요청한 정보가 광고되지 않았다는 판단에 따라, 상기 노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성하는 단계;
상기 광고 영역 내로 상기 인터레스트 패킷을 전송하는 단계; 및
상기 인터레스트 패킷에 대한 응답의 수신 여부에 기초하여, 최단 경로(shortest path) 라우팅을 통해 상기 정보의 원 제공자에게 상기 정보를 요청하는 새로운 인터레스트 패킷-상기 새로운 인터레스트 패킷은 광고 영역이 설정되지 않은 인터레스트 패킷임-을 생성하여 전송하는 단계
를 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 인터레스트 패킷은
상기 광고 영역을 벗어나면 폐기되는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 광고 영역을 설정하는 단계
를 더 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 삭제
- 제1항에 있어서,
상기 정보가 광고된 것으로 판단된 경우, 상기 인터레스트 패킷을 상기 포워딩 인포메이션 베이스의 해당 페이스(face)를 통해 전달하는 단계
를 더 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 인터레스트 패킷을 생성하는 단계는
상기 판단 결과를 기초로, 상기 인터레스트 패킷을 생성하는 단계
를 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 인터레스트 패킷을 전송하는 단계는
상기 광고 영역 내로 상기 인터레스트 패킷을 브로드캐스트(Broadcast)하는 단계
를 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 삭제
- 제1항에 있어서,
상기 새로운 인터레스트 패킷을 전달하는 단계는
최장 프리픽스 매칭(longest prefix matching) 방법을 이용하여 상기 정보의 원 제공자(originator)에게 상기 새로운 인터레스트 패킷을 전달하는 단계
를 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 광고 영역(Advertisement area)은
상기 노드가 요청한 정보와 동일 또는 유사한 분야에 대한 정보를 포함하는 적어도 하나의 노드로부터 계층적으로 인터넷 코어(Internet Core)와 연결되는 코어 라우터(Core Router)까지의 영역을 포함하고,
상기 적어도 하나의 노드는
상기 제한에 의해 결정되는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 노드는
상기 광고 영역에 포함되는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 정보의 대중성 여부에 기초하여 광고되는 상기 정보를 수신하는 단계; 및
상기 정보를 이용하여 상기 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성하는 단계
를 더 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제12항에 있어서,
상기 정보의 대중성 여부는
상기 정보에 대한 접근 횟수(access count)에 기초하여 결정되는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 제1항에 있어서,
상기 인터레스트 패킷은
상기 노드가 요청한 정보의 이름 및 상기 인터레스트 패킷을 수신한 노드가 상기 광고 영역에서 수행할 제어 동작을 지정하는 동작 아이디(Operation ID; OID)를 포함하는 컨텐츠 중심 네트워크에서 인트라 도메인 라우팅 방법. - 컨텐츠 중심 네트워크에서 인터 도메인 라우팅 방법에 있어서,
해당 노드가 속한 도메인과 타 도메인 사이의 연결 정보를 포함하는 싱크 트리(sync tree)를 이용하여 상기 타 도메인과 미리 합의된 정책(policy)에 따른 라우팅 정보를 교환하는 단계;
상기 타 도메인에서 전송된 인터레스트 패킷에 포함된, 상기 인터레스트 패킷을 생성한 도메인을 표시하는 필드를 이용하여 상기 인터레스트 패킷을 전송한 타 도메인이 미리 합의된 정책에 따른 도메인에 해당하는지 여부를 판단하는 단계;
상기 판단 결과에 기초하여, 해당 노드의 컨텐츠 캐시(Contents Cache)에 저장된 컨텐츠를 검색하는 단계; 및
상기 컨텐츠 캐시에 저장된 컨텐츠가 상기 타 도메인이 요청하는 컨텐츠에 해당하면, 상기 컨텐츠 캐시에 저장된 컨텐츠를 전송하는 단계
를 포함하는 컨텐츠 중심 네트워크에서 인터 도메인 라우팅 방법. - 삭제
- 제15항에 있어서,
상기 미리 합의된 정책에 따른 도메인은
상기 해당 노드가 속한 도메인과 캐시 룩-업(cache look-up) 계약, 캐시 히트율(Cache hit ratio)에 대한 계약 및 할당할 캐시 사이즈(cache size)에 대한 계약 중 적어도 하나의 계약이 이루어진 도메인을 포함하는 컨텐츠 중심 네트워크에서 인터 도메인 라우팅 방법. - 제17항에 있어서,
상기 타 도메인이 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단하는 단계는
상기 인터레스트 패킷(Packet)에 포함된, 도메인을 표시하는 필드를 이용하여 상기 타 도메인이 상기 미리 합의된 정책(policy)에 따른 도메인에 해당하는지 여부를 판단하는 컨텐츠 중심 네트워크에서 인터 도메인 라우팅 방법. - 삭제
- 제1항 내지 제3항, 제5항 내지 제7항, 제9항 내지 제15항, 및 제17항 내지 제18항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
- 컨텐츠 중심 네트워크의 노드에 있어서,
상기 노드의 포워딩 인포메이션 베이스의 엔트리(entry) 정보를 기초로, 인트라 도메인 내에서 상기 노드가 요청한 정보가 광고(advertise) 되었는지 여부를 판단하는 판단부;
상기 노드가 요청한 정보가 광고되지 않았다는 판단에 따라, 상기 노드가 요청한 정보를 광고하는 범위를 제한하는 광고 영역(advertisement area)이 설정된 인터레스트 패킷을 생성하는 패킷 생성부; 및
상기 광고 영역 내로 상기 인터레스트 패킷을 전송하는 전송부
를 포함하고,
상기 생성부는
상기 인터레스트 패킷에 대한 응답의 수신 여부에 기초하여, 최단 경로(shortest path) 라우팅을 통해 상기 정보의 원 제공자에게 상기 정보를 요청하는 새로운 인터레스트 패킷-상기 새로운 인터레스트 패킷은 광고 영역이 설정되지 않은 인터레스트 패킷임-을 생성하고,
상기 전송부는
상기 새로운 인터레스트 패킷을 상기 정보의 원 제공자에게 전송하는,
컨텐츠 중심 네트워크의 노드. - 제21항에 있어서,
상기 광고 영역을 설정하는 설정부
를 더 포함하는 컨텐츠 중심 네트워크의 노드. - 삭제
- 제21항에 있어서,
상기 정보가 광고된 것으로 판단된 경우, 상기 전송부는
상기 인터레스트 패킷을 상기 포워딩 인포메이션 베이스의 해당 페이스(face)를 통해 전달하는 컨텐츠 중심 네트워크의 노드. - 제21항에 있어서,
상기 패킷 생성부는
상기 판단 결과를 기초로, 상기 인터레스트 패킷을 생성하는 컨텐츠 중심 네트워크의 노드. - 제25항에 있어서,
상기 전송부는
상기 노드가 포함된 광고 영역 내로 상기 인터레스트 패킷을 브로드캐스트(Broadcast)하는 컨텐츠 중심 네트워크의 노드. - 삭제
- 제21항에 있어서,
상기 전송부는
최장 프리픽스 매칭(longest prefix matching) 방법에 의해 상기 정보의 원 제공자(originator)에게 상기 새로운 인터레스트 패킷을 전달하는 컨텐츠 중심 네트워크의 노드. - 제21항에 있어서,
상기 정보의 대중성 여부에 기초하여 광고되는 상기 정보를 수신하는 수신부; 및
상기 정보를 이용하여 상기 정보에 대한 포워딩 인포메이션 베이스(FIB)의 엔트리를 생성하는 엔트리 생성부
를 더 포함하는 컨텐츠 중심 네트워크의 노드. - 제29항에 있어서,
상기 정보의 대중성 여부는
상기 정보에 대한 접근 횟수(access count)에 기초하여 결정되는 컨텐츠 중심 네트워크의 노드.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/914,845 US9326042B2 (en) | 2012-06-11 | 2013-06-11 | Routing method for inter/intra-domain in content centric network |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20120062147 | 2012-06-11 | ||
KR1020120062147 | 2012-06-11 | ||
KR1020130025697 | 2013-03-11 | ||
KR20130025697 | 2013-03-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130138671A KR20130138671A (ko) | 2013-12-19 |
KR102121983B1 true KR102121983B1 (ko) | 2020-06-12 |
Family
ID=49984316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130054188A KR102121983B1 (ko) | 2012-06-11 | 2013-05-14 | 컨텐츠 중심 네트워크에서의 인터(inter) 도메인 및 인트라(intra) 도메인 라우팅 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102121983B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040025176A1 (en) * | 2002-08-02 | 2004-02-05 | David Franklin | Method and apparatus to provide verification of data using a fingerprint |
-
2013
- 2013-05-14 KR KR1020130054188A patent/KR102121983B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040025176A1 (en) * | 2002-08-02 | 2004-02-05 | David Franklin | Method and apparatus to provide verification of data using a fingerprint |
Non-Patent Citations (1)
Title |
---|
김정임 외 2인,‘콘텐츠 중심의 네트워크 기술’, ETRI 전자통신동향분석 제25권 제6호, 2010년 12월* |
Also Published As
Publication number | Publication date |
---|---|
KR20130138671A (ko) | 2013-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5536362B2 (ja) | コンテンツセントリックネットワークにおける通信を円滑化するための方法 | |
US9326042B2 (en) | Routing method for inter/intra-domain in content centric network | |
CN105721311B (zh) | 一种用于更新链路状态信息的方法及系统 | |
Zhang et al. | A survey of caching mechanisms in information-centric networking | |
US20130339481A1 (en) | Method for content discovery of node in intra-domain and inter-domain in content centric network and node therefor | |
Jacobson et al. | Networking named content | |
US9485288B2 (en) | Peer-to-peer communication method in content centric network environment | |
Hermans et al. | Global source mobility in the content-centric networking architecture | |
CN105743664B (zh) | 用于内容中心网络中的多源组播的系统和方法 | |
JP2017069950A (ja) | スモールマルチパス又はシングルパス転送状態による情報中心ネットワーキング | |
KR20170038148A (ko) | 상태 비유지 정보 중심 네트워킹을 위한 시스템 및 방법 | |
US9401864B2 (en) | Express header for packets with hierarchically structured variable-length identifiers | |
JP2015197919A (ja) | コンテンツ中心ネットワークにおける動的名称設定のためのシステム及び方法 | |
Dutta | An approach for FIB construction and Interest packet forwarding in information centric network | |
US20020087659A1 (en) | Content networks | |
Fukushima et al. | Efficiently looking up non-aggregatable name prefixes by reducing prefix seeking | |
KR102121983B1 (ko) | 컨텐츠 중심 네트워크에서의 인터(inter) 도메인 및 인트라(intra) 도메인 라우팅 방법 | |
KR20130138670A (ko) | 컨텐츠 중심 네트워크의 인트라 도메인(intra domain) 및 인터 도메인(inter domain)에서 노드가 컨텐츠를 검색하는 방법 및 그 노드 | |
Chen et al. | Coexist: a hybrid approach for content oriented publish/subscribe systems | |
Chen et al. | Coexist: integrating content oriented publish/subscribe systems with IP | |
Naeem et al. | Future internet architectures | |
Qin et al. | Lehigh explorer: A real time video streaming application with mobility support for content centric networks | |
Banerjee et al. | The survey, research challenges, and opportunities in ICN | |
Peltier et al. | Information-centric networking: current research activities and challenges | |
Bosunia et al. | Efficient data delivery based on content-centric networking |
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 |