KR102100710B1 - 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 - Google Patents

컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 Download PDF

Info

Publication number
KR102100710B1
KR102100710B1 KR1020130030394A KR20130030394A KR102100710B1 KR 102100710 B1 KR102100710 B1 KR 102100710B1 KR 1020130030394 A KR1020130030394 A KR 1020130030394A KR 20130030394 A KR20130030394 A KR 20130030394A KR 102100710 B1 KR102100710 B1 KR 102100710B1
Authority
KR
South Korea
Prior art keywords
content
node
cache
value
packet
Prior art date
Application number
KR1020130030394A
Other languages
English (en)
Other versions
KR20140067881A (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 삼성전자주식회사
Priority to EP13857507.1A priority Critical patent/EP2923468B1/en
Priority to JP2015543993A priority patent/JP6352290B2/ja
Priority to PCT/KR2013/010757 priority patent/WO2014081264A1/en
Priority to EP18184168.5A priority patent/EP3410657B1/en
Priority to US14/090,653 priority patent/US9621671B2/en
Priority to CN201380055280.XA priority patent/CN104756449B/zh
Publication of KR20140067881A publication Critical patent/KR20140067881A/ko
Priority to KR1020200042560A priority patent/KR102301353B1/ko
Application granted granted Critical
Publication of KR102100710B1 publication Critical patent/KR102100710B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names
    • H04L2101/375Access point names [APN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

컨텐츠 소유자의 정책(policy)을 기초로 해당 컨텐츠를 캐싱할 노드를 결정하는 데에 이용되는 캐시 수용치의 임계값(CCVth)을 결정하고, 해당 컨텐츠 및 캐시 수용치의 임계값을 포함하는 컨텐츠 응답 패킷을 전송하는 컨텐츠 중심 네트워크에서 컨텐츠 소유 노드의 패킷 전송 방법이 제공된다.

Description

컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 {METHOD FOR TRANSMITTING PACKET OF NODE AND CONTENT OWNER IN CONTENT CENTRIC NETWORK}
아래의 실시예들은 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법에 관한 것이다.
IP와 달리 컨텐츠 중심 네트워크(CONTENT CENTRIC NETWORK; CCN) 기술은 패킷 헤더에 소스(source) 및 데스티네이션(destination) 주소 대신 필요한 컨텐츠의 이름을 표시한다. 따라서, 각 라우터들은 패킷 헤더에 적혀 있는 컨텐츠의 이름을 보고 해당 컨텐츠가 있는 곳으로 각 패킷을 보낼 수 있도록 라우팅 테이블을 구성한다. 또한, 라우터를 포함하는 모든 네트워킹 장비는 스토리지를 갖고 있어 컨텐츠를 임시 저장할 수 있다.
CCN에서 패킷은 컨텐츠 요청 패킷과 컨텐츠 응답 패킷으로 구분되는데, 컨텐츠 요청 패킷은 요청하는 컨텐츠의 이름을 포함하고 있으며, 컨텐츠 응답 패킷은 요청 받은 컨텐츠와 컨텐츠 이름 등을 포함한다. 네트워킹 장비는 컨텐츠 요청 패킷을 받았을 경우 헤더에 있는 컨텐츠 이름으로 자신의 스토리지를 검색하고, 자신이 해당 컨텐츠를 갖고 있을 경우 그 컨텐츠를 요청자에게 전달(응답)한다. 따라서, 컨텐츠의 원래(original) 소유자에게까지 가서 컨텐츠를 받아와야 하는 IP 기반 인터넷에 비해, CCN에서는 중간의 어느 노드라도 자신의 스토리지에 해당 컨텐츠가 있을 경우 응답(reply)할 수 있으므로 평균 전송 경로(path)의 길이가 짧아져 전체적인 네트워크 사용량이 줄어들게 된다.
일 실시예에 따르면, 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법은 컨텐츠 소유자의 정책(policy)을 기초로 컨텐츠를 캐싱할 후보 노드를 결정하는 데에 이용되는 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)을 결정하는 단계; 및 컨텐츠 요청자의 요청에 응답하여, 상기 컨텐츠 및 상기 캐시 수용치의 임계값을 포함하는 컨텐츠 응답 패킷을 전송하는 단계를 포함할 수 있다.
상기 컨텐츠 소유자의 정책은 상기 컨텐츠의 이름, 상기 컨텐츠의 인기도(popularity), 상기 컨텐츠의 중요도, 상기 컨텐츠에 대한 히트율(hit ratio) 중 적어도 하나를 기초로 할 수 있다.
상기 컨텐츠 소유자의 정책이 변경됨에 따라 상기 캐시 수용치의 임계값(CCVth)을 조절하는 단계를 더 포함할 수 있다.
상기 캐시 수용치의 임계값(CCVth)은 상기 컨텐츠를 캐싱할 후보 노드의 위치 및 상기 컨텐츠를 캐싱할 후보 노드의 개수를 결정하는 데에 이용될 수 있다.
상기 캐시 수용치의 임계값(CCVth)이 제1 값인 경우, 모든 노드들이 상기 컨텐츠를 캐싱하고, 상기 캐시 수용치의 임계값이 제2 값인 경우, 모든 후보 노드들이 상기 컨텐츠를 캐싱하지 않으며, 상기 캐시 수용치의 임계값이 제3 값인 경우, 상기 제3값보다 큰 캐시 수용치를 가지는 후보 노드들이 상기 컨텐츠를 캐싱할 수 있다.
상기 컨텐츠 소유자의 정책을 기초로 상기 컨텐츠 응답 패킷에 포함되는 컨텐츠의 라이프 타임을 조절하는 단계를 더 포함할 수 있다.
상기 컨텐츠 응답 패킷은 상기 컨텐츠를 요청하는 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 상기 컨텐츠 응답 패킷이 다운 스트림으로 포워딩 됨에 따라 변경된 네트워크 거리, 상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치, 가중치, 및 상기 컨텐츠의 라이프 타임 중 적어도 하나를 더 포함할 수 있다.
일 실시예에 따르면, 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법은 노드 관련 정보를 기초로 컨텐츠를 캐싱할 후보 노드를 식별하기 위한 캐시 수용치(Cache Capability Value; CCV)를 산출하는 단계; 상기 산출된 캐시 수용치와 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교하는 단계; 및 상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계를 포함할 수 있다.
상기 노드 관련 정보는 상기 해당 노드의 캐시 크기(cache size), 상기 해당 노드가 요청하는 컨텐츠의 인기도(popularity), 상기 해당 노드의 노드 연결성(node connectivity), 상기 해당 노드의 사용 대역폭(bandwidth), 상기 컨텐츠의 이름 중 적어도 하나를 포함할 수 있다.
상기 컨텐츠 요청 패킷은 상기 해당 노드의 캐시 수용치 및 상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 포함하는 캐싱 관련 정보 및 상기 컨텐츠의 이름을 포함할 수 있다.
상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는 상기 산출된 캐시 수용치가 상기 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 큰 경우, 상기 컨텐츠 요청 패킷에 포함된 캐시 수용치를 상기 산출된 캐시 수용치로 갱신하는 단계; 및 상기 컨텐츠 요청 패킷에 포함된 상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 초기화하는 단계를 더 포함할 수 있다.
상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는 상기 산출된 캐시 수용치가 상기 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 작거나 같은 경우, 상기 컨텐츠 요청 패킷에 포함된 캐시 수용치를 유지하는 단계; 및 상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 증가시키는 단계를 더 포함할 수 있다.
상기 컨텐츠 요청 패킷에 응답하는 컨텐츠 응답 패킷은 상기 컨텐츠, 상기 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 상기 컨텐츠 응답 패킷이 포워딩 됨에 따라 변경된 네트워크 거리, 상기 캐시 수용치의 임계값(CCVth), 상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치, 가중치, 상기 컨텐츠에 대한 라이프 타임 중 적어도 하나를 포함할 수 있다.
상기 원 네트워크 거리를 고려하여 상기 컨텐츠 응답 패킷을 다운 스트림으로 포워딩하는 단계를 더 포함할 수 있다.
상기 컨텐츠 응답 패킷에 포함된 변경된 네트워크 거리를 감소시키는 단계를 더 포함할 수 있다.
상기 변경된 네트워크 거리를 기초로 상기 해당 노드 또는 상기 해당 노드의 인접 노드가 상기 컨텐츠를 캐싱하는지 여부를 인지하는 단계를 더 포함할 수 있다.
상기 원 네트워크 거리, 상기 변경된 네트워크 거리 및 상기 산출된 캐시 수용치와 상기 캐시 수용치의 임계값(CCVth)과의 비교 결과를 고려하여 해당 노드에 상기 컨텐츠를 캐싱하는 단계를 더 포함할 수 있다.
상기 컨텐츠가 캐싱된 해당 노드의 전방(outbound)에 위치하는 인접 노드의 포워딩 인터리스트 테이블(FIB)에 상기 캐싱된 컨텐츠의 라이프 타임에 따라 설정된 타이머를 유지하는 단계를 더 포함할 수 있다.
LRU(Least Recently Used) 기법 또는 LFU(Least Frequently Used) 기법에 따라 상기 캐싱된 컨텐츠에 대한 라이프 타임을 조절하는 단계를 더 포함할 수 있다.
상기 캐싱된 컨텐츠의 라이프 타임이 만료되거나 상기 캐싱된 컨텐츠를 요청하는 컨텐츠 요청 패킷을 상기 해당 노드의 포워딩 인터리스트 테이블에 저장된 페이스와 다른 페이스를 통해 수신한 경우, 상기 캐싱된 컨텐츠를 삭제하는 단계를 더 포함할 수 있다.
상기 컨텐츠 응답 패킷이 상기 캐시 수용치를 위한 가중치를 포함하는 경우, 상기 가중치를 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계를 더 포함할 수 있다.
상기 가중치를 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는 상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치와 상기 가중치를 이용하여 캐시 수용치의 임계값(CCVth)을 계산하는 단계; 및 상기 계산된 캐시 수용치의 임계값을 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계를 더 포함할 수 있다.
상기 계산된 캐시 수용치의 임계값을 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는 상기 계산된 캐시 수용치의 임계값과 상기 산출된 캐시 수용치를 비교하는 단계; 및 상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계를 더 포함할 수 있다.
상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는 상기 산출된 캐시 수용치가 상기 계산된 캐시 수용치의 임계값보다 큰 경우, 해당 노드를 상기 컨텐츠를 캐싱할 후보 노드로 결정하는 단계를 포함할 수 있다.
상기 가중치를 저장하는 단계를 더 포함할 수 있다.
상기 가중치를 다음 노드(next node)로 포워딩하는 단계를 더 포함할 수 있다.
도 1은 일반적인 컨텐츠 중심 네트워크에서 컨텐츠 요청 및 이에 응답하는 컨텐츠 제공이 수행되는 것을 나타낸 도면이다.
도 2는 도 1의 각 노드에서 컨텐츠 요청 패킷을 처리하는 과정을 나타낸 도면이다.
도 3은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 요청에 따른 응답이 수행되는 것을 나타낸 도면이다.
도 4는 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법을 나타낸 플로우차트이다.
도 5는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 6은 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 7은 또 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 8은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 요청 패킷을 이용하여 캐싱 후보 노드를 결정하는 방법을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 응답 패킷을 이용하여 컨텐츠를 캐싱하는 후보 노드를 결정하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠를 캐싱하는 후보 노드의 전방에 위치하는 인접 노드의 포워딩 인포메이션 베이스(FIB)를 이용하여 컨텐츠가 캐싱된 노드를 인지하는 방법을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 블록도이다.
도 12는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 블록도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일반적인 컨텐츠 중심 네트워크에서 컨텐츠 요청 및 이에 응답하는 컨텐츠 제공이 수행되는 것을 나타낸 도면이다.
이하에서 '노드'는 이동 단말 및 라우터 등과 같은 네트워킹 장비 등을 포함하는 의미로 이해될 수 있다. '컨텐츠 소유자'는 '컨텐츠 요청자'가 요청한 컨텐츠를 원래 소유하고 있는 노드를 의미하고, '컨텐츠 요청자'는 해당 컨텐츠를 요청하는 노드를 의미한다. 또한, '중간 노드들'은 컨텐츠 중심 네트워크에서 포함된 컨텐츠 소유자 및 컨텐츠 요청자를 제외한 나머지 노드들을 의미한다. 실시예에 따라서, 컨텐츠 소유자 및 컨텐츠 요청자 또한 중간 노드로 이용될 수 있다.
도 1을 참조하면, 컨텐츠 요청자(110)가 컨텐츠 요청 패킷인 '인터리스트(Interest)'를 네트워크로 전송함에 따라 컨텐츠 소유자(150)가 해당 컨텐츠를 전달하는 컨텐츠 응답 패킷인 '컨텐츠(Content)'를 전송하는 과정을 볼 수 있다. 이 때, 전달되는 컨텐츠는 경로 상의 중간 노드들(120, 130, 140)에서 동일하게 캐싱될 수 있다.
컨텐츠 요청 패킷을 수신한 컨텐츠 소유자(150)가 해당 컨텐츠를 전송하는 때에 중간 노드들(120, 130, 140)은 컨텐츠 요청 패킷이 수신된 경로(예를 들어, 페이스(face))로 컨텐츠를 전달할 수 있다. 이때, 중간 노드들(120, 130, 140)은 해당 컨텐츠를 전달함과 동시에 자신의 저장 공간(예를 들어, 컨텐츠 스토어(도 2의 210 참조))에 해당 컨텐츠를 임시적으로 저장할 수 있다. 즉, 컨텐츠 중심 네트워크 내에서 해당 컨텐츠가 전달된 경로 상에 있는 모든 중간 노드들(120, 130, 140)이 동일한 컨텐츠를 저장할 수 있다.
만약, 컨텐츠 소유자(150)가 다양한 컨텐츠들을 저장하고 있고, 다수의 컨텐츠 요청자들이 컨텐츠 요청 패킷을 전송하게 되면 네트워크 경로 상의 중간 노드들에는 다양한 컨텐츠들이 저장될 수 있다. 이와 같이 다수의 컨텐츠 요청자들이 다양한 컨텐츠 요청을 하는 경우, 중간 노드들(120, 130, 140)은 많은 양의 컨텐츠를 동일하게 저장하게 되고, 이 때에는 새로운 컨텐츠를 위주로 저장될 수 있다.
도 2는 도 1의 각 노드에서 컨텐츠 요청 패킷을 처리하는 과정을 나타낸 도면이다.
컨텐츠 중심 네트워크에서 컨텐츠의 이름은 컨텐츠가 저장된 노드를 찾아가기 위한 나침판 역할과 해당 컨텐츠를 다른 컨텐츠와 구분해 주는 역할을 한다. 그러므로, 각 컨텐츠는 고유한 이름을 사용하며, 두 컨텐츠의 이름이 서로 다르면, 같은 내용의 컨텐츠도 다른 컨텐츠로 취급할 수 있다.
예를 들어, 같은 내용으로 이루어진 두 파일이 각각 /ABC.com/sait/video/intro.avi과 /ABC.com/sait/comm/video/intro.avi의 컨텐츠 이름으로 존재할 경우, 두 파일은 서로 다른 컨텐츠로 처리될 수 있다. 이러한 규칙은 이름이 비슷한 서로 다른 컨텐츠들을 구분함에 있어서 매우 유용하게 사용될 수 있다.
도 2를 참조하면, 컨텐츠의 계층적 이름을 기반으로 해당 컨텐츠를 가져오는 과정을 설명하기 위해, 이름 기반 네트워크의 일 예인 컨텐츠 중심 네트워크(Content-Centric Networking; CCN)에서 컨텐츠 요청 패킷을 처리하는 과정을 보여준다.
컨텐츠 중심 네트워크에 포함된 노드가 페이스 0(201)로부터 예를 들어, '/ABC.com/철수/abc.avi/v3/s2'에 해당하는 컨텐츠를 요청하는 컨텐츠 요청 패킷을 수신했다고 가정하자.
이때, 노드의 네트워킹 모듈은 컨텐츠 요청 패킷 내에 있는 컨텐츠의 계층적 이름(여기서는 '/ABC.com/철수/abc.avi/v3/s2')을 참조하여 해당 컨텐츠가 노드의 컨텐츠 스토어(Content Store)(210)에 있는지 확인할 수 있다.
확인 결과, 컨텐츠 스토어(210) 내에 해당 컨텐츠가 저장되어 있으면, 노드는 해당 컨텐츠를 컨텐츠 요청 패킷이 수신된 페이스 0(201)로 반환할 수 있다. 이때, 페이스(face)는 인터페이스(interface)로도 표현할 수 있다.
반면에, 해당 컨텐츠가 컨텐츠 스토어(210)에 저장되어 있지 않으면, 노드는 펜딩 인터리스트 테이블(Pending Interest Table; PIT)(230) 내에 동일한 컨텐츠 이름(여기서는 '/ABC.com/철수/abc.avi/v3/s2')으로 저장된 항목(entry)이 있는지 여부를 확인할 수 있다.
노드는 동일한 컨텐츠 이름으로 저장된 항목이 있으면, 펜딩 인터리스트 테이블(230) 내의 해당 항목에 컨텐츠 요청 패킷이 들어온 페이스(여기서는 페이스 0(201))에 대한 정보를 추가할 수 있다.
펜딩 인터리스트 테이블(230) 내에 동일 컨텐츠 이름으로 등록된 항목이 없다면, 노드는 포워딩 정보 베이스(Forwarding Information Base; FIB)(250)에서 컨텐츠 이름에 기반한 검색(name lookup)을 수행하여 해당 엔트리(entry)를 찾을 수 있다. 이 때, 노드는 최장 프리픽스 매칭(longest prefix matching)에 따라 검색을 수행할 수 있다.
그 후, 노드는 포워딩 정보 베이스(250)에 등록되어 있는 정보에 기초하여 컨텐츠 요청 패킷을 전달할 페이스(여기서는 페이스 1(205))를 결정하고, 해당 페이스(페이스 1(205))로 컨텐츠 요청 패킷을 전송할 수 있다.
이 과정에서 노드는 컨텐츠 요청 패킷이 전달되어 온 페이스(페이스 0(201))에 대한 정보('0')를 인터리스트 테이블(PIT)(230)에 등록할 수 있다. 이는 향후 컨텐츠 요청 패킷에 대응되는 컨텐츠를 포함한 데이터 패킷이 전달되었을 때, 해당 컨텐츠를 요청한 노드에게 데이터 패킷을 전달하기 위함이다. 여기서, 포워딩 정보 베이스 (250)에 기초하여 컨텐츠 요청 패킷을 전달할 페이스를 선택할 때, 컨텐츠 요청 패킷이 수신된 페이스(여기서는 페이스 0(201))는 선택 대상에서 제외될 수 있다.
도 3은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 요청에 따른 응답이 수행되는 것을 나타낸 도면이다.
일 실시예에 따른 컨텐츠 중심 네트워크에서는 컨텐츠가 전달되는 경로 상의 모든 중간 노드들이 아니라, 경로 상의 최적 위치에 해당하는 노드에만 컨텐츠가 저장(캐싱)되도록 할 수 있다. 그리고, 컨텐츠가 저장(캐싱)된 노드에 인접한 인접 노드는 컨텐츠가 저장된 노드에 대한 정보 및 해당 노드에 저장된 컨텐츠의 목록만을 저장함으로써 컨텐츠 라우팅이 더 효율적으로 수행되도록 할 수 있다.
이때, 컨텐츠 중심 네트워크에서 노드들은 해당 노드의 컨텐츠 스토어의 크기를 포함하는 노드의 상태, 컨텐츠 요청 상황(Frequency of request), 중앙성(Centrality)(혹은 노드 연결성(Node Connectivity) 등)을 고려하여 해당 컨텐츠를 최적의 위치에 저장할 수 있다. 그리고, 인접 노드(들)은 해당 컨텐츠를 저장한 노드만을 인지하여 컨텐츠 라우팅을 지원하고, 네트워크 캐싱 자원의 사용률을 극대화할 수 있다.
이와 같이 일 실시예에서는 컨텐츠의 분산 저장과 컨텐츠 캐싱 노드의 인지 방식을 제공함으로 네트워크 사용량을 경감시키고, 사용자 요청에 빠르게 응답할 수 있다.
도 3에서 컨텐츠 소유자(301)는 컨텐츠 a 및 컨텐츠 b를 포함하고, 사용자 1(User_1)(303)은 컨텐츠 a를, 사용자 2(User_2)(305)는 컨텐츠 b를 요청한다고 하자.
이때, 310과 같이 사용자 1(User_1)(303)가 요청한 컨텐츠 a는 최적으로 판단되는 노드 313에 저장되고, 사용자 2(User_2)(305)가 요청한 컨텐츠 b 또한 최적으로 판단되는 최적 노드 315에 저장될 수 있다. 그리고, 컨텐츠 a가 캐싱된 노드 313 및 컨텐츠 b가 캐싱된 노드 315의 전방(outbound)에 위치하는 인접 노드 317은 해당 컨텐츠를 캐싱한 노드(들)(노드 313, 노드 315)의 위치 및 해당 노드들이 저장 컨텐츠의 이름 혹은 목록 등을 저장할 수 있다.
이후, 330에서 사용자 3(User_3)(307)이 컨텐츠 a를 요청한다고 하자.
이 경우, 사용자 3(User_3)(307)이 요청한 컨텐츠 a는 컨텐츠 소유자(301) 이외에도 노드 313에 저장되어 있다. 그리고, 사용자 3(User_3)(307)과 컨텐츠 소유자(301) 간의 컨텐츠 요청 경로 상에 위치한 인접 노드 317는 컨텐츠 a가 캐싱된 노드의 위치 및 캐싱된 컨텐츠의 이름을 인지할 수 있다.
따라서, 인접 노드 317는 사용자 3(User_3)(307)의 컨텐츠 요청을 330과 같이 재라우트(reroute)하여 사용자 3(User_3)(307)가 노드 313으로부터 컨텐츠 a를 제공받을 수 있도록 한다.
이와 같이 해당 컨텐츠를 캐싱하기에 최적으로 판단되는 노드를 찾는 방법 및 인접 노드에서 해당 컨텐츠를 인지할 수 있도록 하는 방법에 대하여는 이하에서 구체적으로 설명하기로 한다.
도 4는 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법을 나타낸 플로우차트이다.
전술한 바와 같이 해당 컨텐츠를 캐싱하기에 최적으로 판단되는 노드를 찾기 위해 일 실시예에서는 캐시 수용치(Caching Capability Value; CCV)) 및 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)을 정의할 수 있다.
여기서, '캐시 수용치(Caching Capability Value; CCV)'는 노드 관련 정보를 기초로 해당 노드에서 컨텐츠를 캐싱할 수 있는 수용 능력으로 이해될 수 있다. 캐시 수용치(CCV)는 해당 컨텐츠를 캐싱할 후보 노드를 식별하는 데에 이용될 수 있다.
또한, '캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)'은 해당 노드에 컨텐츠를 캐싱할 것인지 여부를 결정하는 한계값으로 이해될 수 있다. 즉, 캐시 수용치의 임계값(CCVth)보다 큰 캐시 수용치를 가지는 노드는 해당 컨텐츠를 캐싱할 수 있다. 캐시 수용치의 임계값(CCVth)은 컨텐츠 소유자의 정책(policy)을 기초로 컨텐츠 소유자가 결정하거나, 컨텐츠 소유자가 컨텐츠 응답 패킷를 통해 전송한 가중치 및 (최대) 캐시 수용치를 이용하여 각 (중간) 노드가 결정할 수 있다.
이하의 도 4에서는 컨텐츠 소유자의 정책을 기초로 캐시 수용치의 임계값(CCVth)이 결정되는 경우를 설명한다.
도 4를 참조하면, 일 실시예에 따른 컨텐츠 소유자는 컨텐츠 소유자의 정책(policy)을 기초로 컨텐츠를 캐싱할 후보 노드를 결정하는 데에 이용되는 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)을 결정할 수 있다(410).
컨텐츠 소유자의 정책은 예를 들어, 컨텐츠의 이름, 컨텐츠의 인기도(popularity), 컨텐츠의 중요도, 컨텐츠에 대한 히트율(hit ratio) 중 적어도 하나를 기초로 결정될 수 있다. 여기서, 컨텐츠의 이름은 해당 컨텐츠의 풀 네임(full name)이 아니라 컨텐츠의 이름에 포함된 커뮤니티의 이름(community name), 로컬 네임(local name), 혹은 프리픽스(prefix) 등이 해당될 수 있다.
따라서, 컨텐츠 소유자는 예를 들어, '강남 스타일'이라는 컨텐츠가 유행하는 경우, 해당 컨텐츠의 인기도를 고려하여 캐시 수용치의 임계값(CCVth)을 조절함으로써 해당 컨텐츠를 캐싱하는 노드들의 개수가 많아지도록 할 수도 있고, 해당 컨텐츠를 저장하는 노드들의 개수가 작아지도록 할 수도 있다. 이와 같은 캐시 수용치의 임계값(CCVth)은 컨텐츠 소유자의 정책이 변경됨에 따라 조절될 수 있다.
컨텐츠 소유자는 컨텐츠 소유자의 정책을 기초로 컨텐츠 응답 패킷에 포함되는 컨텐츠의 라이프 타임을 조절할 수 있다(430).
컨텐츠 소유자는 컨텐츠 요청자의 요청에 응답하여, 컨텐츠 및 캐시 수용치의 임계값을 포함하는 컨텐츠 응답 패킷을 전송할 수 있다(450). 이때, 컨텐츠 응답 패킷은 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 컨텐츠 응답 패킷이 다운 스트림으로 포워딩 됨에 따라 변경된 네트워크 거리, 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치, 가중치, 컨텐츠의 라이프 타임 중 적어도 하나를 더 포함할 수 있다.
도 5는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 5를 참조하면, 일 실시예에 따른 노드는 노드 관련 정보를 기초로 컨텐츠를 캐싱할 후보 노드를 식별하기 위한 캐시 수용치(CCV)를 산출할 수 있다(510). 노드 관련 정보는 해당 노드의 캐시 크기(cache size), 해당 노드가 요청하는 컨텐츠의 인기도(popularity), 해당 노드의 노드 연결성(node connectivity), 해당 노드의 사용 대역폭(bandwidth), 컨텐츠의 이름 중 적어도 하나를 포함할 수 있다.
노드는 산출된 캐시 수용치와 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교할 수 있다(530). 이때, 컨텐츠 요청 패킷은 해당 노드의 캐시 수용치 및 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 포함하는 캐싱 관련 정보 및 컨텐츠의 이름을 포함할 수 있다.
노드는 530의 비교 결과를 기초로, 컨텐츠를 캐싱할 후보 노드를 결정할 수 있다(550). 이때, 산출된 캐시 수용치와 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교하여 자신의 산출된 캐시 수용치가 큰 경우, 해당 노드는 컨텐츠 요청 패킷에 기재된 캐시 수용치를 자신의 캐시 수용치로 업데이트 함으로서 해당 노드를 후보 노드로 결정할 수 있다.
각 노드들을 거친 컨텐츠 요청 패킷에는 최종적으로 업데이트된 캐시 수용치, 다시 말해 각 노드들의 캐시 수용치 중 '최대 캐시 수용치'가 기재될 수 있다. 이에 따라, 컨텐츠 소유자는 컨텐츠 요청 패킷에 포함된 캐시 수용치를 캐시 수용치의 임계값과 비교하여 해당 컨텐츠를 캐싱할 노드들을 결정할 수 있다. 이때, 해당 컨텐츠를 캐싱할 노드들을 찾는 데에는 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 네트워크 거리가 이용될 수 있다.
컨텐츠 요청 패킷의 전송을 통해 컨텐츠를 캐싱할 후보 노드를 결정하는 구체적인 방법은 도 6을 통해 설명한다.
도 6은 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 6을 참조하면, 일 실시예에 따른 노드는 노드 관련 정보를 기초로 컨텐츠를 캐싱할 후보 노드를 식별하기 위한 캐시 수용치(CCV)를 산출할 수 있다(605). 노드 관련 정보는 해당 노드의 캐시 크기(cache size), 해당 노드가 요청하는 컨텐츠의 인기도(popularity), 해당 노드의 노드 연결성(node connectivity), 해당 노드의 사용 대역폭(bandwidth), 컨텐츠의 이름 중 적어도 하나를 포함할 수 있다.
노드는 605에서 산출된 캐시 수용치와 다른 노드로부터 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교할 수 있다(610). 이때, 컨텐츠 요청 패킷은 해당 노드의 캐시 수용치 및 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 포함하는 캐싱 관련 정보 및 컨텐츠의 이름을 포함할 수 있다.
노드는 산출된 캐시 수용치가 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 큰지 여부를 판단할 수 있다(615).
615의 비교 결과, 산출된 캐시 수용치가 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 큰 경우, 노드는 컨텐츠 요청 패킷에 포함된 캐시 수용치를 산출된 캐시 수용치로 갱신할 수 있다(620). 이와 같은 캐시 수용치의 갱신을 통해 노드는 컨텐츠를 캐싱할 후보 노드를 결정할 수 있으며, 최종적으로 갱신된 캐시 수용치는 전술한 최대 캐시 수용치에 해당할 수 있다. 노드는 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 '0'으로 초기화할 수 있다(625).
이는 컨텐츠 요청 패킷을 수신한 컨텐츠 소유자가 네트워크 거리를 이용하여 컨텐츠를 캐싱할 후보 노드를 찾을 수 있도록 하기 위함이다. 이때, 후보 노드와 컨텐츠 소유자 간의 네트워크 거리는 예를 들어, 홉(hop) 단위를 기록될 수 있다.
이후, 노드는 컨텐츠 요청 패킷을 포워딩할 수 있다(630).
반면에, 615의 비교 결과, 산출된 캐시 수용치가 상기 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 작거나 같은 경우, 노드는 컨텐츠 요청 패킷에 포함된 캐시 수용치를 유지하고(635), 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 증가시킬 수 있다(640).
이와 같은 과정을 통해 컨텐츠 소유자에게 전달되는 컨텐츠 요청 패킷에는 해당 패킷(컨텐츠 요청 패킷)이 전달되는 경로상에 있는 노드들에서 최종적으로 갱신된 캐시 수용치, 다시 말해 최대 캐시 수용치가 기재될 수 있다.
도 6의 방법이 각 노드에서 수행되는 과정은 후술하는 도 8을 참조하여 상세히 설명한다.
도 7은 또 다른 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법을 나타낸 플로우차트이다.
도 7을 참조하면, 컨텐츠 중심 네트워크에서 각 노드들이 컨텐츠 요청 패킷에 응답하는 컨텐츠 응답 패킷을 전달하고, 캐싱 후보 노드에 해당 컨텐츠를 캐싱하는 과정을 살펴볼 수 있다.
노드는 도 6의 과정을 통해 최대 캐시 수용치가 기재된 컨텐츠 요청 패킷을 컨텐츠 소유자에게 전송한 후, 컨텐츠 요청 패킷에 응답하는 컨텐츠 응답 패킷을 수신할 수 있다(710).
이때, 컨텐츠 응답 패킷은 컨텐츠, 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 컨텐츠 응답 패킷이 포워딩 됨에 따라 변경된(감소된) 네트워크 거리, 캐시 수용치의 임계값(CCVth), 최대 캐시 수용치, 가중치 및 컨텐츠에 대한 라이프 타임 중 적어도 하나를 포함할 수 있다.
노드는 원 네트워크 거리를 고려하여 컨텐츠 응답 패킷을 다운 스트림으로 포워딩할 수 있다(720).
노드는 컨텐츠 응답 패킷에 포함된 변경된 네트워크 거리를 감소시킬 수 있다(730).
이후, 노드는 원 네트워크 거리, 변경된 네트워크 거리 및 산출된 캐시 수용치와 캐시 수용치의 임계값(CCVth)과의 비교 결과를 고려하여 해당 노드에 컨텐츠를 캐싱할 수 있다.
예를 들어, 노드는 변경된 네트워크 거리(dNDV)가 '0'이거나 변경된 네트워크 거리(dNDV) < α * 원 네트워크 거리(oNDV))이고, 해당 노드의 캐시 수용치(CCV)가 캐시 수용치의 임계값(CCVth)보다 크거나 같은지 여부를 판단할 수 있다(740). 여기서, α는 컨텐츠 소유자의 정책(policy) 혹은 인기도 등에 의해 결정될 수 있으며, 예를 들어, 0.5 일 수 있다.
변경된 네트워크 거리(dNDV)가 '0'이라는 것은 컨텐츠 요청 패킷을 통해 전달된 후보 노드에게 전달되었음을 의미할 수 있다. 또한, 변경된 네트워크 거리(dNDV)가 α (예를 들어, 0.5) * 원 네트워크 거리(oNDV)보다 작다는 것은 해당 노드가 컨텐츠 소유자보다 컨텐츠를 요청한 노드에 가까운 노드임을 의미할 수 있다. 그리고, 해당 노드의 캐시 수용치(CCV)가 캐시 수용치의 임계값(CCVth)보다 크거나 같다는 것은 해당 노드가 컨텐츠 소유자의 정책(policy)에 기초할 때, 컨텐츠를 캐싱할 수 있는 노드임을 의미할 수 있다.
따라서, 740의 조건을 만족하는 경우, 노드는 해당 컨텐츠를 컨텐츠 스토어에 캐싱할 수 있다(750).
반면에, 740의 조건을 만족하지 못하는 경우, 노드는 컨텐츠 응답 패킷을 다운 스트림으로 포워딩할 수 있다(760).
도 7의 방법이 각 노드에서 수행되는 과정은 후술하는 도 9를 참조하여 상세히 설명한다.
도 8은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 요청 패킷을 이용하여 캐싱 후보 노드를 결정하는 방법을 설명하기 위한 도면이다.
이하에서 노드 1은 컨텐츠 요청자를 서빙하는 노드이고, 노드 4는 컨텐츠 소유자를 서빙하는 노드일 수 있다. 그리고, 컨텐츠 요청자는 컨텐츠(예를 들어, /naver.com/news/olympics.mp4 파일)을 요청한다고 하자.
또한, 노드 1의 캐시 수용치(CCV)는 '2', 노드 2의 캐시 수용치는 '5', 노드 3의 캐시 수용치는 '3', 그리고 노드 4의 캐시 수용치는 '3'이라고 하자. 캐시 수용치(CCV)는 각 노드가 자신의 상태를 기반으로 계산한 값으로서, 예를 들어, 가장 높은 값을 갖는 노드가 컨텐츠를 캐싱할 후보 노드가 될 수 있다.
여기서, 각 노드의 캐시 수용치(f)는 아래의 [수학식 1]과 같이 노드 관련 정보를 기초로 결정될 수 있다.
Figure 112013024623375-pat00001
여기서, C size 는 해당 노드의 가용한 캐시 크기(available Cache size), BW 는 해당 노드의 사용 대역폭(BandWidth), C는 해당 노드의 중앙성(Centrality)(또는 해당 노드의 노드 연결성(node connectivity)) 및 CP 는 해당 노드가 요청하는 컨텐츠의 인기도(Content Popularity)를 나타낸다. w 1, w 2,, w 3, w 4 는 가중치를 의미한다.
컨텐츠 요청자는 노드 1에게 컨텐츠의 이름(예를 들어, /naver.com/news/olympics.mp4) 필드, 후보 노드와 컨텐츠 소유자 간의 네트워크 거리(Network Distance Value; NDV) 필드 및 캐시 수용치(CCV) 필드를 포함하는 컨텐츠 요청 패킷을 전송할 수 있다. 이때, 네트워크 거리(NDV) 필드 및 캐시 수용치(CCV) 필드는 초기화될 수 있다.
이후, 노드 1은 810과 같이 컨텐츠 요청자가 요청하는 컨텐츠의 이름(예를 들어, '/naver.com/news/olympics.mp4'), 후보 노드와 컨텐츠 소유자 간의 네트워크 거리(NDV), 노드 1의 캐시 수용치(CCV)(예를 들어, '2')를 포함하는 컨텐츠 요청 패킷을 포워딩할 수 있다. 이때, 노드 1에서 캐싱 후보 노드와 컨텐츠 소유자 간의 네트워크 거리(NDV)는 '0'으로 초기화될 수 있다.
노드 1로부터 컨텐츠 요청 패킷을 수신한 노드 2는 컨텐츠 요청 패킷에 포함된 캐시 수용치를 자신의 캐시 수용치와 비교할 수 있다.
여기서, 해당 노드가 수신한 컨텐츠 요청 패킷에 포함된 캐시 수용치보다 큰 캐시 수용치를 갖는 경우, 해당 노드는 컨텐츠 요청 메시지에 기록된 캐시 수용치를 대신하여 자신의 캐시 수용치를 기록할 수 있다. 이를 통해, 컨텐츠 소유자는 가장 높은 캐시 수용치를 가진 노드에게 컨텐츠를 캐싱할 수 있도록 한다.
따라서, 노드 2는 830과 같이 컨텐츠 요청 패킷에 포함된 캐시 수용치('2')를 자신의 캐시 수용치('5')로 덮어 쓸 수 있다. 이렇게 캐시 수용치를 새로 씀에 따라 노드 2는 네트워크 거리(NDV) 또한 '0'으로 초기화할 수 있다.
노드 2가 전송한 컨텐츠 요청 패킷은 노드 3을 거쳐 노드 4에게 전달될 수 있다.
이때, 노드 3의 캐시 수용치는 컨텐츠 요청 패킷에 포함된 값('5')보다 작으므로 노드 3은 컨텐츠 요청 패킷에 포함된 캐시 수용치를 '5'로 그대로 유지하고, 네트워크 거리를 '1'로 증가시킬 수 있다.
노드 3이 전송한 컨텐츠 요청 패킷을 수신한 노드 4는 컨텐츠 요청 패킷에 포함된 캐시 수용치('5')를 자신의 캐시 수용치('5')와 비교할 수 있다.
이때, 컨텐츠 요청 패킷에 포함된 캐시 수용치('5')가 자신의 캐시 수용치('5')와 동일하다. 그러므로, 노드 4는 850과 같이 컨텐츠 요청 패킷에 포함된 캐시 수용치('5')를 그대로 유지하고, 네트워크 거리를 '2'로 증가시킬 수 있다.
각 노드에서 수행되는 상술한 동작은 다음과 같은 형태의 코딩으로 표현될 수 있다.
If (CCV in received Interest < Router's CCV)
{
update it with Router's CCV ;
NDV == 0;
}
If (CCV in received Interest >= Router's CCV)
{
// keep CCV;
NDV ++ ;
}
일 실시예에서 캐시 수용치(CCV)는 전술한 바와 같이 해당 노드의 컨텐츠 스토어의 저장 공간과 해당 노드의 연결성(connectivity) 등에 의해 결정될 수 있다. 그런데, 각 노드에서 컨텐츠 스토어(content store)의 저장 공간은 가변하는 값으로서 각 노드가 요청하는 컨텐츠가 많은 경우, 짧은 시간 내에 가득 채워질 수 있다. 따라서, 가용한 캐시 사이즈(available Cache size)가 각 노드의 캐시 수용치(f)를 결정하는 데에 쓸모없는 파라미터가 될 수도 있다.
따라서, 해당 노드의 컨텐츠 스토어가 풀(full)이 되는 경우, 일정 시간 후에 실제 컨텐츠 스토어에 저장된 컨텐츠는 건드리지 않고, 가상으로 가용한 캐시 사이즈 값만을 리셋(reset) 하거나, 기타의 정해진 값으로 할당할 수 있다.
일 실시예에서는 이와 같이, 가상으로 정해진 가용한 캐시 사이즈 값을 이용하여 해당 노드의 캐시 수용치를 결정함으로써 네트워크에서 다양한 노드들이 선택되도록 할 수 있다.
도 9는 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 응답 패킷을 이용하여 컨텐츠를 캐싱할 후보 노드를 결정하는 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 일 실시예에 따른 컨테츠 소유자 노드가 도 8에서의 컨텐츠 요청자의 요청에 따라 해당 컨텐츠(/naver.com/news/olympics.mp4)를 포함하는 컨텐츠 응답 패킷을 전송하는 것을 볼 수 있다. 이 외에도, 컨텐츠 응답 패킷은 원 네트워크 거리(original Network distance value; oNDV), 변경된(감소된) 네트워크 거리(decreasing NDV; dNDV), 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth), 최대 캐시 수용치, 가중치 및 컨텐츠의 라이프 타임 등을 더 포함할 수 있다. 이때, 최대 캐시 수용치는 컨텐츠 요청 패킷에 포함된 값이고, 가중치는 최대 캐시 수용치에 적용될 수 있다.
'원 네트워크 거리(oNDV)'는 해당 컨텐츠를 캐싱할 후보 노드와 컨텐츠 소유자 간의 네트워크 거리로서, 컨텐츠 요청 패킷에 기록된 값이 그대로 카피(copy)될 수 있다.
'변경된 네트워크 거리(dNDV)'는 컨텐츠 응답 패킷이 다운 스트림으로 포워딩 됨에 따라 감소된 네트워크 거리로서, 변경된 네트워크 거리(dNDV)가 '0' 혹은 '0' 근처의 노드에 해당 컨텐츠가 캐싱될 수 있다.
컨텐츠의 라이프 타임은 해당 컨텐츠를 얼마의 시간 동안 캐싱할 것인지를 나타낼 수 있다. 컨텐츠 요청자의 요청에 대한 응답으로 컨텐츠 소유자는 자신이 캐싱하고 있는 컨텐츠와 함께 해당 컨텐츠의 인기도에 비례하는 시간을 라이프 타임으로 책정하여 전송할 수 있다.
캐시 수용치의 임계값(CCVth)은 컨텐츠가 전달되는 경로 상에 있는 (중간) 노드들 중 컨텐츠를 캐싱할 노드를 결정하는 한계 값(Lower bound)일 수 있다. 캐시 수용치의 임계값(CCVth)보다 큰 캐시 수용치를 가지는 노드는 모두 해당 컨텐츠를 캐싱할 수 있다. 다시 말해, 컨텐츠를 캐싱할 후보 노드의 위치 및 컨텐츠를 캐싱할 후보 노드의 개수는 캐시 수용치의 임계값(CCVth)에 따라 결정될 수 있다.
예를 들어, 캐시 수용치의 임계값(CCVth)이 제1 값(예를 들어, '0')인 경우, 모든 노드들은 컨텐츠는 캐싱할 수 있다. 또한, 캐시 수용치의 임계값이 제2 값(예를 들어, '0xFFFF')인 경우, 모든 노드들은 컨텐츠를 캐싱하지 않는다.
또한, 캐시 수용치의 임계값이 제3 값(예를 들어, CCVㆍe -p (p : 인기도))인 경우, 제3값보다 큰 캐시 수용치를 가지는 후보 노드들은 모두 컨텐츠를 캐싱할 수 있다.
실시예에 따라서는 캐시 수용치의 임계값을 제4값(예를 들어, '강남 스타일' 과 관련된 음악 정보를 포함하는 커뮤니티 이름)으로 설정할 수도 있다. 이 경우, 해당 커뮤니티 이름에 해당하는 노드에만 해당 컨텐츠를 캐싱하도록 할 수 있다.
실시예에 따라서 (중간) 노드는 컨텐츠 소유자의 정책에 기초하여 결정되는 캐시 수용치의 임계값(CCVth)을 대신하여, 가중치를 이용하여 컨텐츠를 캐싱할 후보 노드를 결정할 수 있다. 이 경우, 가중치는 컨텐츠 요청 메시지의 전송 시에 최종적으로 포함되어 전달되는 최대 캐시 수용치와 함께 컨텐츠 응답 패킷에 포함되어 각 노드들로 전달될 수 있다.
최대 캐시 수용치 및 가중치를 포함하는 컨텐츠 응답 패킷을 수신한 (중간) 노드들은 가중치를 이용하여 캐시 수용치의 임계값을 계산하고, 계산한 캐시 수용치의 임계값을 이용하여 컨텐츠를 캐싱할 후보 노드를 결정할 수 있다. 다시 말해, 노드들은 가중치를 이용하여 계산한 캐시 수용치의 임계값을 이용하여 해당 노드에 컨텐츠를 캐싱할 지 여부를 결정할 수 있다.
가중치는 컨텐츠의 인기도에 기반하여 계산되는 값으로서 컨텐츠 요청 메시지의 전송 시에 최종적으로 포함되어 전달된 최대 캐시 수용치에 적용될 수 있다. 가중치는 예를 들어, 인기도에 반비례하는 값일 수 있으며 '0' 이상 '1' 이하의 값을 가질 수 있다. 이때, 인기도가 높은 컨텐츠일수록 가중치는 '0'에 가까운 값이 부여될 수 있다.
가중치를 인기도에 반비례하는 값(예를 들어, '0'에 가까운 값)으로 설정하는 이유는 최대 캐시 수용치에 곱해지는 가중치를 낮게 함으로써 새로운 캐시 수용치의 임계값(CCVth)을 낮춰 인기도가 높은 컨텐츠를 여러 (중간) 노드들에서 캐싱할 수 있도록 하기 위함이다.
컨텐츠 응답 패킷을 수신한 노드들은 최대 캐시 수용치에 가중치를 곱하여 캐시 수용치의 임계값(CCVth)을 계산할 수 있다.
노드들은 산출한 자신의 캐시 수용치와 계산한 캐시 수용치의 임계값을 비교하여 컨텐츠를 캐싱할 후보 노드를 결정할 수 있다.
이때, 계산된 캐시 수용치의 임계값(CCVth)보다 큰 캐시 수용치를 가지는 노드는 모두 해당 컨텐츠를 캐싱할 후보 노드가 될 수 있다. 노드가 계산된 캐시 수용치의 임계값과 자신의 캐시 수용치를 비교하여 컨텐츠의 캐싱 여부를 결정하는 방법은 전술한 컨텐츠 소유자의 정책에 기초하여 결정되는 캐시 수용치의 임계값(CCVth)을 이용한 경우를 참조하기로 한다.
노드들은 컨텐츠 응답 패킷에 포함된 가중치를 저장할 수 있다. 가중치를 저장한 노드(들)은 향후 자신에게 수신되는 컨텐츠 요청 메시지의 처리 시에, 저장하고 있던 가중치와 컨텐츠 요청 메시지에 포함된 최대 캐시 수용치를 함께 다음 노드로 전달함으로써 컨텐츠 요청 방향에 있는 노드들의 (컨텐츠) 캐싱 여부를 결정할 수도 있다.
또한, 노드들은 컨텐츠 소유자의 정책에 기초하여 결정되는 캐시 수용치의 임계값(CCVth) 및 가중치를 함께 수신할 수도 있다.
이 경우, 캐시 수용치의 임계값(CCVth)과 가중치를 함께 수신한 (중간) 노드는 캐시 수용치의 임계값(CCVth)를 이용하여 컨텐츠를 캐싱할 후보 노드를 바로 결정하고, 향후 자신에게 수신되는 컨텐츠 요청 메시지의 처리 시에, 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치와 가중치를 이용하여 컨텐츠 요청 방향에 있는 노드들의 (컨텐츠) 캐싱 여부를 결정하는 이분적인 방법으로 컨텐츠를 캐싱할 후보 노드를 결정할 수도 있다.
도 9에서 컨텐츠 소유자는 해당 컨텐츠(/naver.com/news/olympics.mp4), 도 8에서 컨텐츠 요청 패킷에 포함된 원 네트워크 거리(oNDV)('2'), 변경된(감소된) 네트워크 거리(dNDV)('2') 및 컨텐츠 소유자의 정책(policy)을 기초로 결정된 캐시 수용치의 임계값(예를 들어, '5')를 포함하는 컨텐츠 응답 패킷(910)을 노드 4에게 전달할 수 있다. 이때, 컨텐츠 소유자는 변경된(감소된) 네트워크 거리(dNDV)를 원 네트워크 거리와 같은 값('2')으로 초기 설정될 수 있다.
컨텐츠 응답 패킷을 수신한 노드 4는 컨텐츠 응답 패킷에 포함된 변경된(감소된) 네트워크 거리(dNDV)를 '1' 감소시킬 수 있다. 따라서, 노드 3은 변경된(감소된) 네트워크 거리(dNDV)가 '1'로 감소된 컨텐츠 응답 패킷(930)을 수신할 수 있다. 노드 3은 변경된(감소된) 네트워크 거리(dNDV)를 감소시키고, 이에 따라, 노드 2는 변경된(감소된) 네트워크 거리(dNDV)가 '0'으로 설정된 컨텐츠 응답 패킷(950)을 수신할 수 있다.
이후, 노드 3으로부터 변경된(감소된) 네트워크 거리(dNDV)가 '0'으로 설정된 컨텐츠 응답 패킷(950)을 수신한 노드 2는 자신의 캐시 수용치('5')가 컨텐츠 응답 패킷(950)에 포함된 캐시 수용치 임계값('5')와 일치하는지 확인할 수 있다. 확인 결과 두 값이 같다면, 노드 2는 해당 컨텐츠를 캐싱할 수 있다.
이때, 컨텐츠 응답 패킷이 전송되는 경로 상에 있는 노드들 중 해당 컨텐츠를 캐싱할 후보 노드를 결정하는 방법은 다음과 같은 형태의 코딩으로 표현할 수 있다.
If (((dNDV=0) or (dNDV < α*oNDV)) & (CCV >= CCVth ))
{
Do content cache;
}
여기서, α는 컨텐츠 소유자의 정책(policy) 혹은 인기도 등에 의해 결정될 수 있으며, 예를 들어, 0.5 일 수 있다.
이때, 해당 컨텐츠를 캐싱하는 노드 2는 캐싱된 컨텐츠의 라이프 타임이 만료되거나 캐싱된 컨텐츠를 요청하는 컨텐츠 요청 패킷을 해당 노드의 포워딩 인터리스트 테이블에 저장된 페이스와 다른 페이스를 통해 수신한 경우, 캐싱된 컨텐츠를 삭제할 수 있다.
도 10은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠를 캐싱하는 후보 노드의 전방에 위치하는 인접 노드의 포워딩 정보 베이스(FIB)를 이용하여 컨텐츠가 캐싱된 노드를 인지하는 방법을 설명하기 위한 도면이다.
도 10에서 노드 4는 컨텐츠 소유자로부터 해당 컨텐츠(/naver.com/news/olympics.mp4), 컨텐츠 요청 패킷에 포함된 원 네트워크 거리(oNDV)('2'), 변경된(감소된) 네트워크 거리(dNDV)('2') 및 컨텐츠 소유자의 정책(policy)을 기초로 결정된 캐시 수용치의 임계값(예를 들어, '5')를 포함하는 컨텐츠 응답 패킷(1010)을 수신할 수 있다.
컨텐츠 응답 패킷을 수신한 노드 4는 컨텐츠 응답 패킷에 포함된 변경된(감소된) 네트워크 거리(dNDV)를 '1' 감소시킬 수 있다. 따라서, 노드 3은 변경된(감소된) 네트워크 거리(dNDV)가 '1'로 감소된 컨텐츠 응답 패킷(1020)을 수신할 수 있다.
노드 3은 변경된 네트워크 거리(dNDV)를 기초로 해당 노드 또는 해당 노드의 인접 노드가 컨텐츠를 캐싱하는지 여부를 인지할 수 있다.
이를 위해, 노드 3은 컨텐츠 응답 패킷에 포함된 정보들이 (dNDV ≤ 0.5*oNDV) & (CCV ≤ CCVth)을 만족하는지를 판단할 수 있다.
즉, 노드 3은 ((dNDV)('1') ≤ 0.5* oNDV('2')) & (노드 3의 CCV(3)≤ CCVth(5))이 만족되면, 컨텐츠를 캐싱할 노드가 인접한 위치에 있음을 인지하고, 해당 컨텐츠의 이름 및 그 위치 등의 정보를 자신의 FIB(Forwarding Information Base)에 저장할 수 있다.
컨텐츠가 캐싱된 해당 노드의 전방(outbound)에 위치하는 인접 노드 즉 노드 3의 포워딩 인터리스트 테이블(FIB)에는 도 10과 같이 해당 컨텐츠의 이름(예를 들어, 해당 컨텐츠의 프리픽스(Prefix)), 해당 컨텐츠가 전송된 경로(즉, 페이스) 이외에도 해당 컨텐츠와 관련된 정보를 캐싱하는 시간을 나타내는 타이머 정보 등이 유지될 수 있다.
여기서, 타이머는 임시 캐싱에 사용되는 라우팅 테이블의 엔트리 자원을 효율적으로 사용하기 위한 것으로서, 캐싱된 컨텐츠의 라이프 타임에 따라 설정될 수 있다.
컨텐츠 응답 패킷을 수신한 노드는 캐싱된 컨텐츠를 포인팅하는 테이블(즉, FIB)의 엔트리인 타이머를 통해 해당 컨텐츠의 라이프 타임을 수정할 수 있다.
예를 들어, 노드 3은 LRU(Least Recently Used) 기법 또는 LFU(Least Frequently Used) 기법에 따라 캐싱된 컨텐츠에 대한 라이프 타임을 조절할 수 있다.
노드 3은 LRU(Least Recently Used) 기법에 의해 가장 오랫동안 사용되지 않는 컨텐츠에 대한 라이프 타임은 감소시키거나 '0'으로 조절할 수 있다. 또한, 노드 3은 LFU(Least Frequently Used) 기법에 의해 가장 사용 빈도가 낮은 컨텐츠에 대한 라이프 타임은 감소시키거나 '0'으로 조절할 수 있다.
이때, 노드 2에게는 950과 같은 형태의 컨텐츠 응답 패킷(1030)이 전송될 수 있다.
이와 같이 컨텐츠가 캐싱된 해당 노드의 전방(outbound)에 위치하는 인접 노드의 동작은 다음과 같은 형태의 코딩으로 표현할 수 있다.
if (dNDV <= 0.5*oNDV & CCV <= CCVth)
{
memorize content name & its location ;
set FIB expire timer ;
}
일 실시예에서 컨텐츠를 캐싱하지 않는 노드들 중 컨텐츠가 캐싱되는 노드의 전방(outbound)에 있는 노드(들)는 컨텐츠 자체를 캐싱하지 않고, 컨텐츠 이름만 저장한 후 컨텐츠가 전송된 방향만을 포인팅할 수 있다. 따라서, 컨텐츠 중심 네트워크에서 노드들은 캐싱 자원을 절약할 수 있다.
그리고, 컨텐츠 이름을 저장하는 단일, 혹은 복수개의 노드는 컨텐츠 소유자와 컨텐츠를 캐싱하는 노드와의 거리를 비교하여 가까운 곳으로 컨텐츠 요청 메시지를 전송할 수 있다. 이때, 거리를 비교하기 위해 노드는 홉 카운트나 RTT(Round Trip Time)를 사용할 수 있다. 따라서, 일 실시예에서는 추가적인 컨트롤 메시지를 요구하지 않으면서 컨텐츠를 저장하는 노드를 용이하게 인지하여 컨텐츠를 라우팅할 수 있다.
또한, 캐싱된 컨텐츠의 이름을 관리하는 방식으로 각 노드는 최초에 포워딩 정보 베이스(FIB)에서 해당 엔트리의 수명 시간(life time)을 기본적으로 작은 값으로 설정하고, 이 값은 정책적으로 컨텐츠를 캐싱하는 노드와 동일하게 설정하도록 할 수 있다.
만약, 캐싱된 컨텐츠가 삭제되고, 컨텐츠 이름을 더 오랫동안 가지고 있게 되면 긍정 오류(false positive)가 발생할 수 있다.
따라서, 일 실시예에서는 컨텐츠 이름을 저장하고 있는 노드에게 캐싱된 컨텐츠에 대한 추가적인 요청 메시지가 전달되는 경우, 해당 컨텐츠를 가지고 있는 노드가 컨텐츠를 전송함과 동시에 컨텐츠의 수명시간을 컨텐츠의 인기도, 히트율(hit ratio), 사용률 등을 기반으로 재 설정하여 인접 노드에게 알려 줌으로서 캐싱된 컨텐츠에 대한 정보를 네트워크에서 갱신할 수 있도록 함으로써 긍정 오류의 확률을 줄일 수 있다.
일 실시예에 따르면, 컨텐츠 이름을 저장하고 있는 노드는 컨텐츠 요청 메시지를 컨텐츠 소유자가 아닌 컨텐츠를 캐싱하고 있는 노드로 전송하여 컨텐츠 요청자가 캐싱 노드로부터 컨텐츠를 수신하도록 할 수 있다.
이때, 컨텐츠를 캐싱하고 있는 노드는 캐싱된 컨텐츠 전송과 함께 캐싱된 컨텐츠의 갱신된 수명 시간을 함께 전송하여 컨텐츠 인지 기반 라우팅의 신뢰성을 높일 수 있다.
또한, 컨텐츠 중심 네트워크상의 노드들은 캐싱된 컨텐츠와 원본 컨텐츠에 대한 관리 테이블을 분리 운영함으로써 필요 시에 컨텐츠 요청 메시지를 동시에 보내거나, 캐싱된 컨텐츠를 이용한 전송 실패 시에 원본 컨텐츠를 이용하여 컨텐츠 요청 메시지에 응답하도록 할 수 있다.
도 11은 일 실시예에 따른 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 블록도이다.
도 11을 참조하면, 일 실시예에 따른 컨텐츠 소유자(1100)는 결정부(1110), 전송부(1130), 임계값 조절부(1150) 및 라이프 타임 조절부(1170)를 포함할 수 있다.
결정부(1110)는 컨텐츠 소유자의 정책(policy)을 기초로 컨텐츠를 캐싱할 후보 노드를 결정하는 데에 이용되는 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)을 결정할 수 있다.
컨텐츠 소유자의 정책은 컨텐츠의 이름, 컨텐츠의 인기도(popularity), 컨텐츠의 중요도, 컨텐츠에 대한 히트율(hit ratio) 중 적어도 하나를 기초로 할 수 있다.
여기서, 캐시 수용치의 임계값(CCVth)은 컨텐츠를 캐싱할 후보 노드의 위치 및 컨텐츠를 캐싱할 후보 노드의 개수를 결정하는 데에 이용될 수 있다.
예를 들어, 캐시 수용치의 임계값(CCVth)이 제1 값인 경우, 모든 후보 노드들이 컨텐츠는 캐싱하고, 캐시 수용치의 임계값이 제2 값인 경우, 모든 후보 노드들이 컨텐츠를 캐싱하지 않으며, 캐시 수용치의 임계값이 제3 값인 경우, 제3값보다 큰 캐시 수용치를 가지는 후보 노드들이 컨텐츠를 캐싱할 수 있다.
전송부(1130)는 컨텐츠 요청자의 요청에 응답하여, 컨텐츠 및 캐시 수용치의 임계값을 포함하는 컨텐츠 응답 패킷을 전송할 수 있다.
이때, 컨텐츠 응답 패킷은 컨텐츠를 요청하는 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 컨텐츠 응답 패킷이 다운 스트림으로 포워딩 됨에 따라 변경된 네트워크 거리, 최대 캐시 수용치, 가중치, 및 컨텐츠의 라이프 타임 중 적어도 하나를 더 포함할 수 있다.
임계값 조절부(1150)는 컨텐츠 소유자의 정책이 변경됨에 따라 캐시 수용치의 임계값(CCVth)을 조절할 수 있다.
라이프 타임 조절부(1170)는 컨텐츠 소유자의 정책을 기초로 컨텐츠 응답 패킷에 포함되는 컨텐츠의 라이프 타임을 조절할 수 있다.
도 12는 일 실시예에 따른 컨텐츠 중심 네트워크에서 노드의 블록도이다.
도 12를 참조하면, 일 실시예에 따른 노드(1200)는 산출부(1210), 비교부(1220) 및 결정부(1230)를 포함할 수 있다.
산출부(1210)는 노드 관련 정보를 기초로 컨텐츠를 캐싱할 후보 노드를 식별하기 위한 캐시 수용치(Cache Capability Value; CCV)를 산출할 수 있다.
노드 관련 정보는 해당 노드의 캐시 크기(cache size), 해당 노드가 요청하는 컨텐츠의 인기도(popularity), 해당 노드의 노드 연결성(node connectivity), 해당 노드의 사용 대역폭(bandwidth), 컨텐츠의 이름 중 적어도 하나를 포함할 수 있다.
비교부(1220)는 산출된 캐시 수용치와 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교할 수 있다.
결정부(1230)는 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정할 수 있다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
210: 컨텐츠 스토어(Contents Store)
230: 펜딩 인터리스트 테이블(Pending Interest Table; PIT)
250: 포워딩 정보 베이스(Forwarding; FIB)

Claims (27)

  1. 컨텐츠 소유자의 정책(policy)을 기초로 컨텐츠를 캐싱할 후보 노드를 결정하는 데에 이용되는 캐시 수용치의 임계값(Cache Capability Value threshold; CCVth)을 결정하는 단계; 및
    컨텐츠 요청자의 요청에 응답하여, 상기 컨텐츠 및 상기 캐시 수용치의 임계값을 포함하는 컨텐츠 응답 패킷을 전송하는 단계
    를 포함하고,
    상기 캐시 수용치의 임계값(CCVth)이 제1 값인 경우,
    모든 후보 노드들이 상기 컨텐츠는 캐싱하고,
    상기 캐시 수용치의 임계값이 제2 값인 경우,
    모든 후보 노드들이 상기 컨텐츠를 캐싱하지 않으며,
    상기 캐시 수용치의 임계값이 제3 값인 경우,
    상기 제3값보다 큰 캐시 수용치를 가지는 후보 노드들이 상기 컨텐츠를 캐싱하는, 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  2. 제1항에 있어서,
    상기 컨텐츠 소유자의 정책은
    상기 컨텐츠의 이름, 상기 컨텐츠의 인기도(popularity), 상기 컨텐츠의 중요도, 상기 컨텐츠에 대한 히트율(hit ratio) 중 적어도 하나를 기초로 하는 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  3. 제1항에 있어서,
    상기 컨텐츠 소유자의 정책이 변경됨에 따라 상기 캐시 수용치의 임계값(CCVth)을 조절하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  4. 제1항에 있어서,
    상기 캐시 수용치의 임계값(CCVth)은
    상기 컨텐츠를 캐싱할 후보 노드의 위치 및 상기 컨텐츠를 캐싱할 후보 노드의 개수를 결정하는 데에 이용되는 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 컨텐츠 소유자의 정책을 기초로 상기 컨텐츠 응답 패킷에 포함되는 컨텐츠의 라이프 타임을 조절하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  7. 제1항에 있어서,
    상기 컨텐츠 응답 패킷은
    상기 컨텐츠를 요청하는 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 상기 컨텐츠 응답 패킷이 다운 스트림으로 포워딩 됨에 따라 변경된 네트워크 거리, 상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치, 가중치, 및 상기 컨텐츠의 라이프 타임 중 적어도 하나를 더 포함하는 컨텐츠 중심 네트워크에서 컨텐츠 소유자의 패킷 전송 방법.
  8. 노드 관련 정보를 기초로 컨텐츠를 캐싱할 후보 노드를 식별하기 위한 캐시 수용치(Cache Capability Value; CCV)를 산출하는 단계;
    상기 산출된 캐시 수용치와 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치를 비교하는 단계;
    상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계; 및
    상기 컨텐츠 요청 패킷에 응답하는 컨텐츠 응답 패킷에 포함된, 상기 컨텐츠 요청 패킷에 포함된 후보 노드와 컨텐츠 소유자 간의 원(original) 네트워크 거리, 상기 컨텐츠 응답 패킷이 포워딩 됨에 따라 변경된 네트워크 거리, 및 상기 산출된 캐시 수용치와 상기 캐시 수용치의 임계값(CCVth)과의 비교 결과를 고려하여 해당 노드에 상기 컨텐츠를 캐싱하는 단계
    를 포함하고,
    상기 캐시 수용치의 임계값이 제1 값인 경우,
    모든 후보 노드들이 상기 컨텐츠는 캐싱하고,
    상기 캐시 수용치의 임계값이 제2 값인 경우,
    모든 후보 노드들이 상기 컨텐츠를 캐싱하지 않으며,
    상기 캐시 수용치의 임계값이 제3 값인 경우,
    상기 제3값보다 큰 캐시 수용치를 가지는 후보 노드들이 상기 컨텐츠를 캐싱하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  9. 제8항에 있어서,
    상기 노드 관련 정보는
    상기 해당 노드의 캐시 크기(cache size), 상기 해당 노드가 요청하는 컨텐츠의 인기도(popularity), 상기 해당 노드의 노드 연결성(node connectivity), 상기 해당 노드의 사용 대역폭(bandwidth), 상기 컨텐츠의 이름 중 적어도 하나를 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  10. 제8항에 있어서,
    상기 컨텐츠 요청 패킷은
    상기 해당 노드의 캐시 수용치 및 상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 포함하는 캐싱 관련 정보 및 상기 컨텐츠의 이름을 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  11. 제8항에 있어서,
    상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는
    상기 산출된 캐시 수용치가 상기 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 큰 경우,
    상기 컨텐츠 요청 패킷에 포함된 캐시 수용치를 상기 산출된 캐시 수용치로 갱신하는 단계; 및
    상기 컨텐츠 요청 패킷에 포함된 상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 초기화하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  12. 제8항에 있어서,
    상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는
    상기 산출된 캐시 수용치가 상기 포워딩된 컨텐츠 요청 패킷에 포함된 캐시 수용치 보다 작거나 같은 경우,
    상기 컨텐츠 요청 패킷에 포함된 캐시 수용치를 유지하는 단계; 및
    상기 후보 노드와 컨텐츠 소유자 간의 네트워크 거리를 증가시키는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  13. 제8항에 있어서,
    상기 컨텐츠 요청 패킷에 응답하는 컨텐츠 응답 패킷은
    상기 컨텐츠, 상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치, 가중치, 및 상기 컨텐츠에 대한 라이프 타임 중 적어도 하나를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  14. 제8항에 있어서,
    상기 원 네트워크 거리를 고려하여 상기 컨텐츠 응답 패킷을 다운 스트림으로 포워딩하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  15. 제14항에 있어서,
    상기 컨텐츠 응답 패킷에 포함된 변경된 네트워크 거리를 감소시키는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  16. 제15항에 있어서,
    상기 변경된 네트워크 거리를 기초로 상기 해당 노드 또는 상기 해당 노드의 인접 노드가 상기 컨텐츠를 캐싱하는지 여부를 인지하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  17. 삭제
  18. 제8항에 있어서,
    상기 컨텐츠가 캐싱된 해당 노드의 전방(outbound)에 위치하는 인접 노드의 포워딩 인터리스트 테이블(Forwarding Interest Table; FIB)에 상기 캐싱된 컨텐츠의 라이프 타임에 따라 설정된 타이머를 유지하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  19. 제18항에 있어서,
    LRU(Least Recently Used) 기법 또는 LFU(Least Frequently Used) 기법에 따라 상기 캐싱된 컨텐츠에 대한 라이프 타임을 조절하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  20. 제8항에 있어서,
    상기 캐싱된 컨텐츠의 라이프 타임이 만료되거나 상기 캐싱된 컨텐츠를 요청하는 컨텐츠 요청 패킷을 상기 해당 노드의 포워딩 인터리스트 테이블에 저장된 페이스와 다른 페이스를 통해 수신한 경우,
    상기 캐싱된 컨텐츠를 삭제하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  21. 제13항에 있어서,
    상기 컨텐츠 응답 패킷이 상기 캐시 수용치를 위한 가중치를 포함하는 경우,
    상기 가중치를 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  22. 제21항에 있어서,
    상기 가중치를 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는
    상기 컨텐츠 요청 패킷에 포함된 최대 캐시 수용치와 상기 가중치를 이용하여 캐시 수용치의 임계값(CCVth)을 계산하는 단계; 및
    상기 계산된 캐시 수용치의 임계값을 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  23. 제22항에 있어서,
    상기 계산된 캐시 수용치의 임계값을 이용하여 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는
    상기 계산된 캐시 수용치의 임계값과 상기 산출된 캐시 수용치를 비교하는 단계; 및
    상기 비교 결과를 기초로, 상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  24. 제23항에 있어서,
    상기 컨텐츠를 캐싱할 후보 노드를 결정하는 단계는
    상기 산출된 캐시 수용치가 상기 계산된 캐시 수용치의 임계값보다 큰 경우, 해당 노드를 상기 컨텐츠를 캐싱할 후보 노드로 결정하는 단계
    를 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  25. 제13항에 있어서,
    상기 가중치를 저장하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  26. 제25항에 있어서,
    상기 가중치를 다음 노드(next node)로 포워딩하는 단계
    를 더 포함하는 컨텐츠 중심 네트워크에서 노드의 패킷 전송 방법.
  27. 제1항 내지 제4항, 제6항 내지 제16항, 제18항 내지 제26항 중 어느 한 항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020130030394A 2012-11-26 2013-03-21 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법 KR102100710B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
EP13857507.1A EP2923468B1 (en) 2012-11-26 2013-11-26 Transmission of a content reply packet in a content-centric network for caching a content in an intermediate node
JP2015543993A JP6352290B2 (ja) 2012-11-26 2013-11-26 コンテンツ中心ネットワークにおけるコンテンツ所有者及びノードのパケット送信方法
PCT/KR2013/010757 WO2014081264A1 (en) 2012-11-26 2013-11-26 Method of packet transmission from node and contentowner in content-centric networking
EP18184168.5A EP3410657B1 (en) 2012-11-26 2013-11-26 Method of packet transmission from node and content owner in content-centric networking
US14/090,653 US9621671B2 (en) 2012-11-26 2013-11-26 Method of packet transmission from node and content owner in content-centric networking
CN201380055280.XA CN104756449B (zh) 2012-11-26 2013-11-26 从内容中心网络中的节点和内容拥有者发送包的方法
KR1020200042560A KR102301353B1 (ko) 2012-11-26 2020-04-08 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120134452 2012-11-26
KR20120134452 2012-11-26

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200042560A Division KR102301353B1 (ko) 2012-11-26 2020-04-08 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법

Publications (2)

Publication Number Publication Date
KR20140067881A KR20140067881A (ko) 2014-06-05
KR102100710B1 true KR102100710B1 (ko) 2020-04-16

Family

ID=51124018

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020130030394A KR102100710B1 (ko) 2012-11-26 2013-03-21 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
KR1020200042560A KR102301353B1 (ko) 2012-11-26 2020-04-08 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020200042560A KR102301353B1 (ko) 2012-11-26 2020-04-08 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법

Country Status (6)

Country Link
US (1) US9621671B2 (ko)
EP (2) EP3410657B1 (ko)
JP (1) JP6352290B2 (ko)
KR (2) KR102100710B1 (ko)
CN (1) CN104756449B (ko)
WO (1) WO2014081264A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021537B2 (en) * 2010-12-09 2015-04-28 Netflix, Inc. Pre-buffering audio streams
JP6020278B2 (ja) * 2013-03-21 2016-11-02 富士通株式会社 自律分散型キャッシュ配置制御システム
US10075741B2 (en) * 2013-07-03 2018-09-11 Avago Technologies General Ip (Singapore) Pte. Ltd. System and control protocol of layered local caching for adaptive bit rate services
JP6213914B2 (ja) * 2013-09-27 2017-10-18 パナソニックIpマネジメント株式会社 通信端末、およびコンテンツ出版方法
CN105099944B (zh) 2014-04-22 2018-08-17 华为技术有限公司 一种缓存数据的方法及转发设备
US9825860B2 (en) * 2014-05-30 2017-11-21 Futurewei Technologies, Inc. Flow-driven forwarding architecture for information centric networks
KR102185350B1 (ko) * 2014-06-10 2020-12-01 삼성전자주식회사 네트워크 노드 및 네트워크 노드의 동작 방법
KR102203489B1 (ko) * 2014-06-30 2021-01-14 에스케이텔레콤 주식회사 Ccn 이름 구성 방법과 ccn 이름 기반 라우팅 방법 및 장치
KR102147669B1 (ko) * 2014-06-30 2020-10-14 에스케이텔레콤 주식회사 콘텐츠 전송 방법, 이를 위한 장치 및 시스템
JP6406671B2 (ja) * 2015-02-26 2018-10-17 Kddi株式会社 コンテンツキャッシュ方法および装置
US10757213B2 (en) * 2015-08-14 2020-08-25 Futurewei Technologies, Inc. Method and apparatus for pushing data in a content-centric networking (CCN) network
US10686702B2 (en) * 2015-11-06 2020-06-16 Cable Television Laboratories, Inc. Preemptive caching of content in a content-centric network
CN106028400A (zh) * 2016-06-30 2016-10-12 华为技术有限公司 一种缓存内容的方法和基站
US10122624B2 (en) * 2016-07-25 2018-11-06 Cisco Technology, Inc. System and method for ephemeral entries in a forwarding information base in a content centric network
CN106254446B (zh) * 2016-07-29 2019-07-02 北京智芯微电子科技有限公司 一种基于内容中心网络的缓存放置方法及装置
CN106210116B (zh) * 2016-07-29 2019-04-09 国网山西省电力公司检修分公司 一种基于内容中心网络的差异化存储方法及装置
CN107733949B (zh) * 2016-08-11 2021-03-16 北京邮电大学 一种无线接入网缓存方法及***
CN106686060B (zh) * 2016-12-05 2019-11-05 中国科学院声学研究所 一种内容扩散的方法及***
US10469348B2 (en) * 2016-12-29 2019-11-05 Futurewei Technologies, Inc. Centrality-based caching in information-centric networks
US10225201B2 (en) * 2017-01-27 2019-03-05 Futurewei Technologies, Inc. Scalable multicast for notification-driven content delivery in information centric networks
JP6944820B2 (ja) * 2017-06-16 2021-10-06 パナソニック株式会社 ノード装置および該ノード装置におけるキャッシュ管理方法
CN108366089B (zh) * 2018-01-08 2020-12-08 南京邮电大学 一种基于内容流行度和节点重要度的ccn缓存方法
CN109921997B (zh) * 2019-01-11 2020-09-01 西安电子科技大学 一种命名数据网络缓存方法、缓存器和存储介质
CN110086857B (zh) * 2019-04-15 2022-01-14 哈尔滨工程大学 基于缓存节点状态和位置的信息中心网络缓存部署方法
KR102163214B1 (ko) * 2019-05-30 2020-10-08 한국과학기술원 CoMP 기반 스몰 셀 네트워크에서의 기계학습을 활용한 능동 캐싱 기법
KR102310212B1 (ko) * 2020-05-21 2021-10-06 홍익대학교세종캠퍼스산학협력단 5g 네트워크에서 정보 중심 네트워킹 기반의 엣지 컴퓨팅 활성화 방법
CN111614771B (zh) * 2020-05-25 2021-07-13 北京邮电大学 一种内容中心物联网络的内容缓存方法
US20240146685A1 (en) * 2021-04-12 2024-05-02 Intel Corporation Capability discovery in an information centric network
KR102602371B1 (ko) * 2021-12-09 2023-11-16 부산대학교 산학협력단 콘텐츠 중심 네트워크에서 강화학습을 기반으로 캐싱하는 장치 및 방법
KR20230130461A (ko) * 2022-03-03 2023-09-12 한국전자통신연구원 엔디엔 콘텐츠 스토어의 콘텐츠 제거 최적화 방법 및 시스템

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434608B1 (en) * 1999-02-26 2002-08-13 Cisco Technology, Inc. Methods and apparatus for caching network traffic
GB2382962A (en) * 2001-12-07 2003-06-11 Altio Ltd Data routing without using an address
JP2003228524A (ja) * 2002-02-01 2003-08-15 Dainippon Printing Co Ltd コンテンツ配信システム
TW578101B (en) * 2002-09-11 2004-03-01 Sunplus Technology Co Ltd Method and structure for adaptively accessing command and data
US7236786B2 (en) * 2004-06-22 2007-06-26 Industrial Technology Research Institute Method and system for providing fast handoff in a WLAN-like communication system using active neighboring sets
US20090144167A1 (en) 2005-02-10 2009-06-04 Pablo Calamera System and method for managing data and voice connectivity for wireless devices
US20070136757A1 (en) 2005-12-09 2007-06-14 Intel Corporation System and method for a content-centric electronic guide
JP2008035337A (ja) * 2006-07-31 2008-02-14 Brother Ind Ltd ノード装置、配信装置、管理装置、情報処理プログラム、コンテンツ配信方法及びコンテンツ配信システム
EP2053831B1 (en) * 2007-10-26 2016-09-07 Alcatel Lucent Method for caching content data packages in caching nodes
US8386622B2 (en) * 2008-05-16 2013-02-26 Palo Alto Research Center Incorporated Method and apparatus for facilitating communication in a content centric network
US9456054B2 (en) 2008-05-16 2016-09-27 Palo Alto Research Center Incorporated Controlling the spread of interests and content in a content centric network
US8165118B2 (en) 2008-05-19 2012-04-24 Palo Alto Research Center Incorporated Voice over content centric networks
US8537835B2 (en) * 2008-06-20 2013-09-17 Alcatel Lucent Methods and apparatus for self-organized caching in a content delivery network
US8239482B2 (en) * 2008-11-13 2012-08-07 At&T Intellectual Property I, Lp System and method for selectively caching hot content in a content delivery system
US8204060B2 (en) * 2009-01-30 2012-06-19 Palo Alto Research Center Incorporated Method and system for facilitating forwarding a packet in a content-centric network
US20110040893A1 (en) * 2009-08-14 2011-02-17 Broadcom Corporation Distributed Internet caching via multiple node caching management
US9264342B2 (en) * 2009-12-24 2016-02-16 Samsung Electronics Co., Ltd. Terminal device based on content name, and method for routing based on content name
US8949533B2 (en) * 2010-02-05 2015-02-03 Telefonaktiebolaget L M Ericsson (Publ) Method and node entity for enhancing content delivery network
KR101688857B1 (ko) 2010-05-13 2016-12-23 삼성전자주식회사 컨텐츠 중심 네트워크(ccn)에서 단말 및 허브의 통신 방법 및 컨텐츠 중심 네트워크를 위한 단말
KR20120038187A (ko) 2010-10-13 2012-04-23 삼성전자주식회사 컨텐츠 중심 네트워킹 환경에서 그룹 변경에 관한 정보를 이용한 컨텐츠 공유 방법 및 장치
US8751664B2 (en) 2010-12-16 2014-06-10 Palo Alto Research Center Incorporated Custodian-based routing in content-centric networks
US8756297B2 (en) * 2010-12-16 2014-06-17 Palo Alto Research Center Incorporated Energy-efficient content caching with custodian-based routing in content-centric networks
CN102638405B (zh) * 2012-04-12 2014-09-03 清华大学 内容中心网络策略层的路由方法

Also Published As

Publication number Publication date
EP2923468A1 (en) 2015-09-30
JP6352290B2 (ja) 2018-07-04
KR20140067881A (ko) 2014-06-05
KR102301353B1 (ko) 2021-09-14
EP3410657A1 (en) 2018-12-05
EP2923468A4 (en) 2016-07-06
EP2923468B1 (en) 2019-01-16
US20140149532A1 (en) 2014-05-29
EP3410657B1 (en) 2021-02-17
KR20200040722A (ko) 2020-04-20
JP2016506113A (ja) 2016-02-25
CN104756449A (zh) 2015-07-01
US9621671B2 (en) 2017-04-11
CN104756449B (zh) 2018-11-06
WO2014081264A1 (en) 2014-05-30

Similar Documents

Publication Publication Date Title
KR102301353B1 (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
US11463550B2 (en) Request management for hierarchical cache
KR101978177B1 (ko) 컨텐츠 중심 네트워크에서 노드가 컨텐츠를 저장하는 방법 및 컨텐츠 제공자가 컨텐츠를 전송하는 방법
Wang et al. Advertising cached contents in the control plane: Necessity and feasibility
KR102072203B1 (ko) 컨텐츠 중심 네트워크에 계층적 이름의 변화에 강인한 단축 이름을 생성하는 방법 및 노드
JP2016024815A (ja) コンテンツ中心ネットワークを介したインタレストに対する転送及び応答のための評価ベースの戦略
JP2016038909A (ja) コンテンツ中心ネットワークにおける検証なしの確率的遅延転送技術
US10587513B2 (en) Method, apparatus and system for determining content acquisition path and processing request
US20140280823A1 (en) Wire-speed pending interest table
KR20130008325A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 요청자, 중간 노드 및 컨텐츠 소유자의 통신 방법
KR20140009931A (ko) 컨텐츠 이름 기반의 컨텐츠 중심 네트워크에서 컨텐츠 및 실시간 스트리밍 컨텐츠 제공을 위한 컨텐츠 요청자 및 컨텐츠 제공자의 통신 방법
US9407687B2 (en) Method, apparatus, and network system for acquiring content
US20130215756A1 (en) Apparatus and method for managing contents cache considering network cost
JP2014241135A (ja) コンテンツ中心ネットワークにおけるノードの通信方法及びそのノード
Nguyen et al. Adaptive caching for beneficial content distribution in information-centric networking
US11063863B2 (en) Systems and methods for transmitting and receiving interest messages
US20090106387A1 (en) Cidr based caching at application layer
Yan et al. A forwarding strategy of counteracting redundancy data in named data networking
Chen et al. Gain-aware caching scheme based on popularity monitoring in information-centric networking
Lal et al. An efficient lookup search and forwarding mechanism for information-centric networking (ICN)
Yovita et al. Performance Analysis of Cache Replacement Algorithm using Virtual Named Data Network Nodes
KR102060907B1 (ko) 데이터 이름 기반 네트워크에서의 fib 테이블 공유 방법 및 데이터 이름 기반 네트워크 시스템
CN111404972B (zh) 一种数据处理方法、装置、设备及存储介质
KR102110524B1 (ko) 컨텐츠 중심 네트워크에서 블룸 필터를 이용하여 라우팅을 수행하는 노드 및 그 방법
KR20140092449A (ko) 오픈플로우 시스템을 이용한 컨텐츠 전달 방법 및 시스템

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
A107 Divisional application of patent
GRNT Written decision to grant