KR102376496B1 - 서비스 스트림 분산 포워딩 시스템 및 그 방법 - Google Patents

서비스 스트림 분산 포워딩 시스템 및 그 방법 Download PDF

Info

Publication number
KR102376496B1
KR102376496B1 KR1020170094819A KR20170094819A KR102376496B1 KR 102376496 B1 KR102376496 B1 KR 102376496B1 KR 1020170094819 A KR1020170094819 A KR 1020170094819A KR 20170094819 A KR20170094819 A KR 20170094819A KR 102376496 B1 KR102376496 B1 KR 102376496B1
Authority
KR
South Korea
Prior art keywords
content
service
target content
domain
cached
Prior art date
Application number
KR1020170094819A
Other languages
English (en)
Other versions
KR20190011997A (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 KR1020170094819A priority Critical patent/KR102376496B1/ko
Priority to US16/043,393 priority patent/US10728355B2/en
Publication of KR20190011997A publication Critical patent/KR20190011997A/ko
Application granted granted Critical
Publication of KR102376496B1 publication Critical patent/KR102376496B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • H04L67/2842
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

서비스 스트림 제어 시스템이 개시된다. 서비스 스트림 제어 시스템은 도메인 내(intra area)의 트래픽 경로 및 컨텐츠 캐싱을 제어하는 적어도 하나의 에어리어 컨트롤러(Area Controller), 상기 도메인에 위치한 컨텐츠의 캐시 위치를 결정하고 관리하는 서비스 컨텐츠 코디네이터(Service Contents Coordinator) 및 상기 에어리어 컨트롤러 및 상기 서비스 컨텐츠 코디네이터와 연동하여 네트워크 트래픽 상황에 따른 최적 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여, 컨텐츠 요청에 상응하는 타겟 컨텐츠를 포워딩하는 서비스 스트림 컨트롤러(Service Stream Controller)를 포함한다. 따라서, 컨텐츠 중심 네트워크의 효율성을 향상시킬 수 있다.

Description

서비스 스트림 분산 포워딩 시스템 및 그 방법{SYSTEM FOR DISTRIBUTED FORWARDING SERVICE STREAM AND METHOD FOR THE SAME}
본 발명은 서비스 스트림을 분산 포워딩하는 방법에 관한 것으로, 더욱 상세하게는 서비스 스트림을 트래픽 상태에 따라 적응적으로 제어하는 방법 및 장치에 관한 것이다.
현재의 인터넷 서비스는 사용자의 증가 추세와 더불어, 사용되는 데이터의 양 또한 크게 증가하고 있다.
특히, 인터넷 서비스의 대다수는 웹 페이지와 같이 수백만의 사용자가 동일한 서비스를 요구하기 때문에 동일한 데이터를 사용하는 특징이 있다. 이에 비해, 현재의 인터넷 전송 방법은 데이터에 관계없이 송수신 호스트의 IP 주소를 기반으로 데이터를 전송하기 때문에 데이터를 요구하는 사용자의 수만큼 동일한 데이터가 네트워크에서 반복하여 전송되는 문제점이 있다.
이와 같이 데이터 전송의 불필요한 전송을 피할 수 있는 대안으로서, 현재의 인터넷 IP 주소를 사용하지 않고 데이터 이름을 사용하여 데이터를 전송하는 콘텐츠(또는 정보) 중심 기술이 연구되고 있다.
콘텐츠 중심 연구의 예로는 CCN(Content Centric Networking), DONA(Data Oriented Network Architecture), PSIRP(Publish Subscribe Internet Routing Paradigm), NetInf(Networking of Information)가 있다.
여기서, CCN 은 콘텐츠 소비자의 데이터 요청 패킷인 인터레스트 패킷(Interest packet)이 이웃하는 모든 라우터에 브로드캐스트(broadcast) 되기 때문에 트래픽 혼잡 문제가 발생할 수 있다.
또한, 각 라우터에서는 패킷을 전달하기 위해 PIT(Pending Interest Table), FIB(Forwarding Information Base)를 참조하기 때문에 전송지연이 발생할 수 있다.
따라서, 기존의 콘텐츠 중심 네트워크에 대한 연구들은 대규모 네트워크에 적용하기 어려운 문제점이 있으므로, 네트워크 트래픽 혼잡을 줄이고 효율성을 높이는 대안이 필요한 실정이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 서비스 스트림 제어 시스템을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 서비스 스트림 컨트롤러(Service Stream Controller)에서 서비스 스트림 제어 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 또 다른 목적은, 서비스 스트림 제어 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명은, 서비스 스트림 제어 시스템을 제공한다.
여기서, 서비스 스트림 제어 시스템은 도메인 내(intra area)의 트래픽 경로 및 컨텐츠 캐싱을 제어하는 적어도 하나의 에어리어 컨트롤러(Area Controller), 도메인에 위치한 컨텐츠의 캐시 위치를 결정하고 관리하는 서비스 컨텐츠 코디네이터(Service Contents Coordinator) 및 에어리어 컨트롤러 및 서비스 컨텐츠 코디네이터와 연동하여 네트워크 트래픽 상황에 따른 최적 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여, 컨텐츠 요청에 상응하는 타겟 컨텐츠를 포워딩하는 서비스 스트림 컨트롤러(Service Stream Controller)를 포함할 수 있다.
여기서, 서비스 스트림 컨트롤러는, 제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하면, 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하고, 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하며, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 컨텐츠 요청마다 할당할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)는, 컨텐츠 요청에 따른 서비스 및 네트워크 트래픽 상황에 따라 타겟 컨텐츠의 질을 적응적으로 제어함으로써, 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 컨텐츠 요청을 타겟 컨텐츠가 캐싱된 노드로 전송하는데 사용되는 정보를 포함할 수 있다.
여기서, 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 캐싱될 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더는, 네트워크 트래픽 상황을 고려하여, 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩하거나, 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 베이스 레이어와 함께 포워딩할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더는, 컨텐츠 요청에서 확인된 서비스 종류(TOS, Type of Service)에 따라 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩하거나, 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 베이스 레이어와 함께 포워딩할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더는, 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는 경우, 제1 에어리어 컨트롤러와 연동하여, 제1 도메인 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 타겟 컨텐츠를 포워딩하고, 타겟 컨텐츠가 제1 도메인 내에 캐싱되지 않은 경우, 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 서비스 스트림 컨트롤러는, 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 제1 도메인과 인접한 도메인에 속하는 제1 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어할 수 있다.
여기서, 서비스 스트림 컨트롤러는, 제1 노드로부터 타겟 컨텐츠를 포워딩한 횟수가 임계값 이상인 경우, 제1 도메인 내의 제2 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어할 수 있다.
여기서, 서비스 스트림 컨트롤러는, 제2 노드에 추가로 캐싱된 타겟 컨텐츠에 대한 요청이 미리 설정된 값 이상인 경우, 타겟 컨텐츠의 베이스 레이어 또는 타겟 컨텐츠의 베이스 레이어 및 향상 레이어를 제1 도메인 내에 위치한 다른 노드들에 각각 부분적으로 캐싱하도록 제어할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 적어도 하나의 에어리어 컨트롤러(Area Controller) 및 서비스 컨텐츠 코디네이터(Service Contents Coordinator)와 연동하는, 서비스 스트림 컨트롤러(Service Stream Controller)에서의 서비스 스트림 제어 방법을 제공한다.
여기서, 서비스 스트림 제어 방법은 제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하는 단계, 컨텐츠 요청에 따른 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하는 단계, 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하는 단계, 및 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 타겟 컨텐츠를 포워딩하는 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 컨텐츠 요청마다 할당하는 단계를 포함할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)는, 컨텐츠 요청에 따른 서비스 및 네트워크 트래픽 상황에 따라 타겟 컨텐츠의 질을 적응적으로 제어함으로써, 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 컨텐츠 요청을 타겟 컨텐츠가 캐싱된 노드로 전송하는 정보를 포함할 수 있다.
여기서, 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 캐싱될 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더는, 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는 경우, 제1 에어리어 컨트롤러와 연동하여, 제1 도메인 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 타겟 컨텐츠를 포워딩하고, 타겟 컨텐츠가 제1 도메인 내에 캐싱되지 않은 경우, 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 제1 도메인과 인접한 도메인에 속하는 제1 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함할 수 있다.
여기서, 제1 노드로부터 타겟 컨텐츠를 포워딩한 횟수가 임계값 이상인 경우, 제1 도메인 내의 제2 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함할 수 있다.
여기서, 제2 노드에 추가로 캐싱된 타겟 컨텐츠에 대한 요청이 미리 설정된 값 이상인 경우, 타겟 컨텐츠의 베이스 레이어 또는 타겟 컨텐츠의 베이스 레이어 및 향상 레이어를 제1 도메인 내에 위치한 다른 노드들에 각각 부분적으로 캐싱하도록 제어할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면은, 적어도 하나의 명령을 실행하는 프로세서(processor) 및 적어도 하나의 명령을 저장하는 메모리(memory)를 포함하는 서비스 스트림 제어 장치을 제공한다.
여기서, 프로세서는, 제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하고, 컨텐츠 요청에 따른 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하고, 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 컨텐츠 요청마다 할당할 수 있다.
상기와 같은 본 발명에 따른 서비스 스트림 제어 시스템, 방법 또는 장치를 이용할 경우에는 다중화된 컨트롤러 구조에 기초하여 최적의 경로를 설정함으로써 트래픽 혼잡 등의 문제를 해결하고 대규모 네트워크에도 용이하게 적용할 수 있다.
또한, 모든 노드에 데이터를 캐싱하는 것이 아니라 패킷이 전송되는 경로에 있는 노드에 인기 컨텐츠를 점진적으로 캐싱하고, 멀티 레이어 구조의 컨텐츠 저장을 통하여 트래픽 상황에 따른 효율성을 높일 수 있다.
도 1은 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제1 개념도이다.
도 2는 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제2 개념도이다.
도 3은 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제3 개념도이다.
도 4는 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법에 적용되는 패킷에 대한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 서비스 스트림 제어 시스템에 대한 개념도이다.
도 6은 서비스 스트림 제어 시스템에서 컨텐츠 포워딩 과정을 설명하는 예시도이다.
도 7은 서비스 스트림 제어 시스템에서 멀티 레이어 구조를 갖는 컨텐츠를 설명하기 위한 예시도이다.
도 8은 서비스 스트림 제어 시스템에서 컨텐츠 포워딩 과정을 설명하는 제2 예시도이다.
도 9는 서비스 스트림 제어 시스템에서, 컨텐츠 포워딩 테이블에 대한 예시도이다.
도 10은 서비스 스트림 제어 방법에 대한 흐름도이다.
도 11은 서비스 스트림 제어 장치에 대한 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
본 발명에서 도메인(Domain)과 에어리어(Area)라는 용어가 혼용되어 사용될 수 있으나, 양자 모두 특정 네트워크의 영역이나 네트워크 노드들의 집합을 지칭하는 것으로 해석될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제1 개념도이다. 도 2는 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제2 개념도이다. 도 3은 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법을 설명하기 위한 제3 개념도이다.
도 1을 참조하면, 제1 클라이언트(10)가 CCN 기반의 네트워크 환경에서 호스트 서버(20)에 컨텐츠를 요청하는 패킷(또는 인터레스트 패킷)을 전달할 수 있다.
예를 들어, 호스트 서버(20)가 타겟 컨텐츠(target content)를 저장하고 있는 경우, CCN 노드 A부터 CCN 노드 B, CCN 노드 C 및 CCN 노드 D를 거쳐 컨텐츠를 요청하는 패킷이 호스트 서버(20)에 전달될 수 있다.
여기서, 제1 클라이언트(10)는 컨텐츠를 요청하는 패킷에 컨텐츠 이름을 포함하여 브로드캐스트(broadcast)할 수 있고, 컨텐츠를 요청하는 패킷을 수신한 CCN 노드들(A~D)은 컨텐츠를 요청하는 패킷을 저장할 수 있다.
또한, 타겟 컨텐츠를 저장하고 있는 호스트 서버(20)는 컨텐츠를 요청하는 패킷을 전달한 CCN 노드 또는 클라이언트에게 응답으로서, 컨텐츠를 전송할 수 있다.
구체적으로 도 2를 참조하면, 컨텐츠를 요청하는 패킷을 전달받은 호스트 서버(20)는 저장하고 있는 컨텐츠(또는 데이터 패킷)를 다시 전달받은 경로에 따라 전송할 수 있고, 그 과정에서 컨텐츠가 전달되는 경로에 있는 CCN 노드들(A~D)는 컨텐츠를 저장하고 다음 노드로 전송할 수 있다.
다음으로 도 3을 참조하면, 제2 클라이언트(11)가 앞서 제1 클라이언트(10)와 동일한 컨텐츠를 요청하는 경우, 제2 클라이언트(11)는 CCN 노드 A로 타겟 컨텐츠를 요청하는 패킷을 전송하고, CCN 노드 A로부터 곧바로 타겟 컨텐츠를 제공받을 수 있다.
이처럼, 제1 클라이언트(10)에게 타겟 컨텐츠를 제공하는 과정에서 CCN 노드 A에 타겟 컨텐츠가 저장되었기 때문에, 제2 클라이언트(11)는 더 가까운 노드를 통해, 제1 클라이언트(10)보다 더 빠르고 더 적은 트래픽 부하로 타겟 컨텐츠를 전송받을 수 있는 장점이 있다.
한편, 도 1 내지 3에 따른 CCN 노드는 컨텐츠 스토어(content store, CS), PIT(Pending Interest Table), FIB(Forwarding Information Base)를 포함하여 구성될 수 있다.
여기서, 컨텐츠 스토어는 컨텐츠와 컨텐츠의 리스트를 저장하고 관리할 수 있고, PIT는 어느 페이스(face)로 인터레스트 패킷이 수신되고 전달되었는지 저장하고 관리할 수 있다. 여기서, FIB는 컨텐츠 이름에 대한 프리픽스(prefix)를 저장하고, 페이스(face)의 리스트를 저장하여 인터레스트 패킷을 전달할 때 참조할 수 있다.
구체적으로, CCN 노드는 컨텐츠를 요청하는 패킷(인터레스트 패킷)을 수신하면, 컨텐츠 스토어, PIT, FIB 순서로 longest match lookup을 수행할 수 있다. 인터레스트 패킷에서 확인된 컨텐츠가 컨텐츠 스토어에 매칭되는 경우, 요청한 컨텐츠가 저장되어 있는 것으로 판단하여 매칭된 컨텐츠를 인터레스트 패킷이 입력된 페이스로 전달되고 인터레스트 패킷은 삭제될 수 있다.
다음으로, PIT 에서 인터레스트 패킷의 컨텐츠 이름이 검색되면, 동일한 컨텐츠에 대하여 다른 클라이언트가 인터레스트 패킷을 전송한 것으로 판단하여 인터레스트 패킷이 수신된 페이스를 PIT에 추가할 수 있다.
그리고, FIB에서 인터레스트 패킷의 컨텐츠 이름이 검색되면, FIB에 등록된 정보에 기초하여 인터레스트 패킷을 전달할 페이스를 결정하고, 인터레스트 패킷이 입력된 페이스에 대한 정보는 PIT에 저장할 수 있다.
한편, CCN 노드는 데이터 패킷(컨텐츠를 포함하는 패킷)이 수신되면, 컨텐츠 스토어, PIT, FIB 순서로 longest match lookup을 수행할 수 있는데, 컨텐츠 스토어에 데이터 패킷의 컨텐츠 이름이 검색되면, 이미 존재하는 데이터이므로 데이터 패킷을 삭제할 수 있다.
다음으로, PIT 에서 데이터 패킷의 컨텐츠 이름이 검색되면, 요청한 데이터가 도착한 것으로 판단하여, 해당하는 컨텐츠를 저장하고, 그와 상응하는 인터레스트 패킷이 입력된 페이스로 데이터 패킷을 전달할 수 있다.
그리고, FIB에서 데이터 패킷의 컨텐츠 이름이 검색되면, PIT에서 검색되지 않은 것이므로 요구하지 않은 데이터를 수신한 것으로 판단하여, 데이터 패킷을 삭제할 수 있다.
도 4는 본 발명의 일 실시예에 따른 일반적인 컨텐츠 중심 네트워크(CCN, content centric network) 기반의 컨텐츠 포워딩 방법에 적용되는 패킷에 대한 예시도이다.
도 4를 참조하면, 일반적인 CCN 기반의 네트워크 환경에서, 컨텐츠를 요청하는 패킷인 인터레스트 패킷(Interest Packet, 30)과 요청하는 컨텐츠를 담고 있는 데이터 패킷(Data Packet, 40)의 구조를 설명할 수 있다.
먼저, 인터레스트 패킷(30)은 콘텐츠 네임, 선택자, 랜덤 임시 변수로 구성될 수 있다.
여기서, 콘텐츠 네임은 요청하는 컨텐츠의 이름을 지시하는 식별 기호를 의미할 수 있고, 선택자는 컨텐츠 네임에 기술되지 않은 이름을 상세히 기술하거나, 선호하는 컨텐츠 스토어(content store, CS)에 대한 정보를 제공하거나, 보안 등의 관리 목적으로 제공되는 정보를 지시하는 기호를 의미할 수 있다. 또한, 랜덤 임시 변수는 불규칙으로 생성된 바이트 스트링(byte string)으로, 인터레스트 패킷(30)의 식별하여 인터레스트 패킷(30)이 브로드캐스트되는 과정에서 루프(loop)가 형성되는 것을 방지할 수 있다.
데이터 패킷(40)은 컨텐츠 네임, 서명, 사인 정보, 데이터로 구성될 수 있다. 여기서, 컨텐츠 네임은 패킷에 포함된 데이터의 이름을 지시하는 식별 기호일 수 있고, 사인 정보는 타임 스탬프, 데이터의 종류, 데이터의 유효 기간, 데이터가 암호화되었다면 암호화 키의 위치 등을 포함할 수 있다.
한편, 도 1 내지 도 4에 따른 CCN 기반의 네트워크 환경은 인터레스트 패킷(30)이 이웃한 노드에 브로드캐스트되기 때문에 트래픽 혼잡 등의 문제가 발생할 수 있고, 각 노드에서는 인터레스트 패킷이나 데이터 패킷을 전달하기 위하여 PIT나 FIB를 참조하므로 이로인한 전송 지연이 발생할 수 있다.
또한, 데이터 패킷이 전달되는 경로의 모든 노드에 데이터를 캐싱하기 때문에 불필요한 캐싱 동작이 발생하고 각 노드의 부하가 증가할 수 있다.
따라서, CCN 기반의 네트워크 환경에서 컨텐츠를 요청하는 인터레스트 패킷을 브로드캐스트하는 것이 아니라, 다중화된 컨트롤러 구조에 기초하여 최적의 경로를 설정하여 전송함으로써 트래픽 혼잡 등의 문제를 해결하고 대규모 네트워크에도 용이하게 적용할 수 있다.
또한, 모든 노드에 데이터를 캐싱하는 것이 아니라 패킷이 전송되는 경로에 있는 노드에 인기 컨텐츠를 점진적으로 캐싱하고, 멀티 레이어 구조의 컨텐츠 저장을 통하여 트래픽 상황에 따른 효율성을 높일 수 있다.
이하에서는 도 1 내지 도 4에서의 CCN 네트워크 환경을 개선하여 상기 효과를 가질 수 있는 시스템 및 방법을 설명한다.
도 5는 본 발명의 일 실시예에 따른 서비스 스트림 제어 시스템에 대한 개념도이다. 도 6은 서비스 스트림 제어 시스템에서 컨텐츠 포워딩 과정을 설명하는 예시도이다.
도 5 및 도 6을 참조하면, 서비스 스트림 제어 시스템은, 도메인 내(intra area)의 트래픽 경로 및 컨텐츠 캐싱을 제어하는 적어도 하나의 에어리어 컨트롤러(Area Controller, 53~55), 상기 도메인에 위치한 컨텐츠의 캐시 위치를 결정하고 관리하는 서비스 컨텐츠 코디네이터(Service Contents Coordinator, 51) 및 상기 에어리어 컨트롤러(50) 및 상기 서비스 컨텐츠 코디네이터(51)와 연동하여 네트워크 트래픽 상황에 따른 최적 경로를 설정하고, 설정한 경로를 기초로 생성된 포워딩 그래프(62)를 참조하여, 컨텐츠 요청에 상응하는 타겟 컨텐츠를 포워딩하는 서비스 스트림 컨트롤러(Service Stream Controller, 52)를 포함할 수 있다.
여기서, 서비스 스트림 컨트롤러(52)는, 제1 에어리어 컨트롤러(53)가 제어하는 제1 도메인(Area1) 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하면, 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터(51) 또는 상기 적어도 하나의 에어리어 컨트롤러(53~55)와 연동하여 확인하고, 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하며, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프(62)를 참조하여 상기 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63)를 컨텐츠 요청마다 할당할 수 있다.
여기서, 서비스 요청 노드는 컨텐츠를 요청하는 클라이언트(service requester)로서, 여러 사용자 단말을 의미할 수 있는데, 사용자 단말의 예를 들면 통신 가능한 데스크탑 컴퓨터(desktop computer), 랩탑 컴퓨터(laptop computer), 노트북(notebook), 스마트폰(smart phone), 태블릿 PC(tablet PC), 모바일폰(mobile phone), 스마트 워치(smart watch), 스마트 글래스(smart glass), e-book 리더기, PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 디지털 카메라(digital camera), DMB(digital multimedia broadcasting) 재생기, 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), PDA(Personal Digital Assistant) 등일 수 있다.
여기서, 서비스 스트림 제어 시스템이 제어하는 네트워크는 도 1 내지 도 3에 따른 네트워크를 의미할 수 있으며, 네트워크 상의 각 노드는 라우터나 스위치를 포함할 수 있고, 컨텐츠를 요청하는 사용자 단말 및 컨텐츠를 원시적으로 저장하고 제공하는 호스트 서버를 포함할 수 있다.
또한, 서비스 스트림 제어 시스템이 제어하는 네트워크의 라우터나 스위치는 각각의 에어리어 컨트롤러(53~55)로부터 제어 정보를 수신하여 컨텐츠를 캐싱할 수 있고, 어떠한 컨텐츠를 보유하고 있는지와 어떠한 패킷을 수신하고 전달하였는지에 대한 정보를 수집하여 에어리어 컨트롤러(53~55)에 제공할 수 있다.
여기서, 컨텐츠 요청은 앞에서 도 1 내지 도 4에 따른 인터레스트 패킷으로 전달될 수 있으나, 이에 한정되는 것은 아니며, 요청하는 컨텐츠의 식별 기호를 포함하는 IP(internet protocol) 기반 패킷으로 전달될 수도 있다. 또한, 컨텐츠 요청은 제1 에어리어 컨트롤러(53)를 통해 수신될 수도 있다.
여기서, 서비스 스트림 컨트롤러(52)는 에어리어 컨트롤러로부터 네트워크상의 각 노드가 가진 정보를 수집하고, 수집된 정보를 바탕으로 컨텐츠의 분포, 각 노드의 분포에 따른 네트워크 토폴로지(network topology) 생성, 네트워크 토폴로지에 따른 최적의 컨텐츠 포워딩 경로 설정 등을 수행할 수 있다.
여기서, 서비스 컨텐츠 코디네이터(51)은 컨텐츠를 제공하는 호스트의 정보(Host IP), 컨텐츠가 위치한 도메인의 정보(Area-ID), 컨텐츠가 제공되는 도메인의 게이트웨이 정보(GW IP)를 저장하고 관리할 수 있으며, 네트워크의 노드(라우터나 스위치 등)에 추가로 컨텐츠가 캐시되면, 캐싱된 컨텐츠의 위치 정보를 관리할 수도 있다.
도 6을 참조하여 구체적으로 설명하면, 서비스 스트림 컨트롤러(52)는 컨텐츠 요청(60)을 수신하면, 수신된 컨텐츠 요청(60)에서 서비스 종류(type of service, TOS), 서비스 요청이 있는 도메인 식별기호(Area ID), 요청하는 컨텐츠 식별기호(content-ID) 등을 확인할 수 있다.
따라서, 서비스 스트림 컨트롤러(52)는 서비스 컨텐츠 코디네이터(51)가 관리하는 정보(61)를 이용하여 컨텐츠가 저장된 위치를 확인할 수 있고, 이때 라우터나 스위치를 비롯한 네트워크 상의 노드에 컨텐츠가 추가로 캐싱되었다면, 캐싱된 컨텐츠 위치를 서비스 컨텐츠 코디네이터(51)로부터 확인하거나, 적어도 하나의 에어리어 컨트롤러(53~55)로부터 확인할 수 있다.서비스 스트림 컨트롤러(52)는 컨텐츠의 위치가 확인되면, 트래픽 상황을 고려하여 최적 경로를 설정하고, 설정된 경로를 기초로 서비스 스트림 포워딩 그래프(62)를 구성할 수 있는데, 이때, 서비스 스트림 컨트롤러(52)는 컨텐츠 요청마다 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63)를 인스턴스로서 생성하여 할당하고, 각각의 인스턴스는 생성된 서비스 스트림 포워딩 그래프(62)를 참조하면서 할당된 해당 서비스 컨텐츠 요청시의 트래픽 상황을 고려하여 최적 경로를 설정함으로써, 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더(63)는 서비스 스트림 컨트롤러(52)에서 컨텐츠 요청시마다 해당 서비스별로 매핑되어 동시에 별도로 처리되도록 소프트웨어적으로 생성한 인스턴스(instance) 형태로 제공될 수 있다.
여기서, 서비스 스트림 컨트롤러(52)는, 상기 설정된 경로를 기초로 생성한 서비스 스트림 포워딩 그래프(62)를 참조하여 해당 서비스로 매핑되어 할당된 어뎁티브 서비스 컨텐츠 포워더(63) 인스턴스를 통해 상기 타겟 컨텐츠를 포워딩할 수 있다.
예를 들어, 특정 서비스의 컨텐츠가 요청되면, 네트워크 상황에 따라 그 서비스 트래픽들을 최적 통신경로 상으로 전송하고 서비스 품질을 향상시키고자, 서비스 트래픽 별로 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63)를 할당하여 서비스 트래픽 경로 상의 트래픽 상황을 파악하고 최적경로 제어 및 서비스 품질을 제어할 수 있게 한다. 이때, 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63)는 패킷의 매칭필드(Match Fields) 이외에 서비스 종류(Type of Service, ToS) 필드 및 도메인 ID(Area-ID)와 컨텐츠 ID(Content-ID) 정보를 바탕으로 서비스 스트림 포워딩 그래프(62)에 따른 캐싱된 컨텐츠나 최종 서비스 제공 서버의 컨텐츠를 전송받을 수 있도록 서비스 제공 경로를 제어할 수 있다.
여기서, 서비스 스트림 포워딩 그래프(62)는, MPLS(Multi-Protocol Label Switching) 기반으로, 상기 컨텐츠 요청을 상기 타겟 컨텐츠가 캐싱된 노드로 전송하는데 사용되는 정보를 포함할 수 있다. 서비스 요청 노드와 서비스 제공 서버 간에 해당 서비스 컨텐츠 캐싱 상태 및 네트워크 상황에 따라, 서비스 요청 노드가 위치한 도메인에 캐싱된 노드(Intra-Area Cache), 서비스 요청 노드의 도메인 외부에 캐싱된 노드(Inter-Area Cache) 또는 컨텐츠를 제공하는 호스트를 이용하도록 서비스 스트림 포워딩 그래프가 구성될 수 있다.
구체적으로, 서비스 요청 노드(User Host)부터 서비스 요청 노드의 도메인 내에 캐싱된 노드(Intra Area Cache)나 서비스 요청 노드의 도메인 외부에 캐싱된 노드(Inter Area Cache) 또는 컨텐츠를 제공하는 호스트(Service Provider)까지의 경로에 대하여, 컨텐츠 요청 패킷에 레이블링(labeling)을 수행(push)하고, 경로상의 노드를 거치면서 컨텐츠 요청 패킷의 라벨(label)을 제거(pop)해 나가면서 컨텐츠 요청을 전달할 수 있다.
캐싱된 노드들(Intra Area Cache, Inter Area Cache)이나 컨텐츠를 제공하는 호스트(Service Provider)부터 컨텐츠를 서비스 요청 노드(User Host)에 전달하는 경우에도 동일한 경로를 이용하여 전달할 수 있다. 다만, 컨텐츠를 전달할 때 다시 트래픽 상태를 고려하여 최적의 경로를 재설정하고 전달할 수도 있다.
도 7은 서비스 스트림 제어 시스템에서 멀티 레이어 구조를 갖는 컨텐츠를 설명하기 위한 예시도이다.
도 7을 참조하면, 컨텐츠를 제공하는 호스트 서버에 저장되거나 네트워크 상의 노드에 캐싱되는 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 저장될 수 있다.
예를 들어 컨텐츠를 요청하는 사용자들 중에는 서비스 타입이 서로 다를 수 있는데 일반 사용자(Service User)와 프리미엄 사용자(Premium Service User)가 있을 수 있고, 서비스를 제공하는 호스트 서버에는 기본 레이어와 향상 레이어를 모두 저장하고 있는 프리미엄 서버(72)와 기본 레이어만을 저장하는 일반 서버(73)가 있을 수 있다. 또한, 네트워크 상의 노드에도 기본 레이어만을 캐싱할 수도 있고, 기본 레이어와 향상 레이어를 함께 캐싱할 수 있으며, 여러 노드가 하나의 컨텐츠에 대한 기본 레이어 및 향상 레이어를 부분적으로 캐싱하고 있을 수도 있다.
여기서, 향상 레이어는 재생 가능한 길이의 세그먼트 단위로 나뉘어질 수 있다.
이때, 서비스 스트림 컨트롤러는, 컨텐츠 요청에서 확인된 서비스 종류(TOS, Type of Service)에 따라 일반 서버(73)로부터 상기 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩할 수 있고, 프리미엄 서버(72)로부터 상기 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 상기 베이스 레이어와 함께 포워딩할 수 있다.
한편, 베이스 레이어와 향상 레이어를 모두 사용자에게 제공하면, 고품질의 컨텐츠를 제공할 수 있으나, 베이스 레이어와 향상 레이어를 모두 저장하고 있는 프리미엄 서버(72)로 전달되는 경로에 네트워크 혼잡도가 높은 경우, 앞서 도 6에서 설명한 내용과 같이 서비스 스트림 컨트롤러(52)는 트래픽 상황을 고려하여 최적의 경로를 설정하므로 혼잡도가 높은 경로를 피하여 고품질 서비스를 제공할 수 있다.
또한, 트래픽 혼잡을 피하여 경로를 설정할 때, 상기 서비스 스트림 컨트롤러(52)는, 상기 트래픽 상황을 고려하여, 해당 서비스 스트림의 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63) 인스턴스를 통해 상기 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩하거나, 상기 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 상기 베이스 레이어와 함께 포워딩할 수 있다.
여기서, 베이스 레이어와 향상 레이어를 함께 포워딩한다는 의미는 베이스 레이어와 향상 레이어가 같은 네트워크 경로로 포워딩되는 것뿐만 아니라, 각각 서로 다른 경로로 포워딩되는 경우를 포함하는 것으로 해석되어야 한다.
상기 과정에서 기술하였듯이, 서비스 스트림 제어 시스템에서는 에어리어 컨트롤러(Area Controller)를 통한 컨텐츠 캐싱 위치 선정 및 해당 서비스 스트림의 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder, 63) 인스턴스에 의한 서비스 타입에 따른 사용자 우선순위 및 네트워크 상황에 따른 최적 경로 선정 및 캐싱된 서비스 품질을 조정할 수 있다.
도 8은 서비스 스트림 제어 시스템에서 컨텐츠 포워딩 과정을 설명하는 제2 예시도이다.
도 8을 참조하면, 타겟 컨텐츠가 상기 제1 도메인(Area1) 내에 캐싱되어 있는지 여부를 기초로 경로를 설정하여 컨텐츠를 서비스 요청 노드로 포워딩하는 과정을 구체적으로 설명할 수 있다.
서비스 스트림 제어 시스템의 Inter-Area간 서비스 통신에서는 해당 서비스 컨텐츠 캐싱상황에 따라 서비스 요청 노드, Intra-Area Cache, Inter-Area Cache, 컨텐츠를 제공하는 호스트 순으로 서비스 스트림 포워딩 그래프를 구성하고, 구성된 포워딩 그래프를 바탕으로 해당 서비스 스트림의 어뎁티브 서비스 컨텐츠 포워더 인스턴스(Adaptive Service Content Forwarder instance)를 통해 컨텐츠 캐싱 상태 및 트래픽 상황을 고려하여 최적의 전송경로 상에서 해당 서비스 스트림이 포워딩될 수 있다.
먼저, 서비스 스트림 컨트롤러(52)는, 상기 타겟 컨텐츠가 상기 제1 도메인(Area1) 내에 캐싱되어 있는 경우, 상기 제1 에어리어 컨트롤러(53)와 연동된 어뎁티브 서비스 컨텐츠 포워더 인스턴스(Adaptive Service Content Forwarder instance)를 제어하여, 상기 제1 도메인(Area1) 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 상기 타겟 컨텐츠를 포워딩할 수 있다.
구체적으로, 서비스 스트림 컨트롤러(52)는 도 5 내지 도 6에서와 마찬가지로 서비스 컨텐츠 코디네이터(51)가 관리하는 정보로부터 컨텐츠가 저장된 도메인(Area-ID)이나 호스트 서버(Host-ID)를 확인할 수 있다.
또한, 예를 들어 제3 에어리어 컨트롤러(55)와 연동하여 제3 에어리어 컨트롤러(55)가 관리하는 정보(81)로부터 제3 도메인(Area 3)에 캐싱된 노드(Router-ID, Switch-ID) 또는 캐싱된 도메인 이름(Area-ID)를 확인할 수 있다.
컨텐츠의 위치를 확인한 결과, 컨텐츠를 요청한 서비스 요청 노드가 제1 도메인 (Area1)에 있고, 요청된 타겟 컨텐츠가 제1 도메인(Area1)내의 노드에 캐싱되어 있다면, 서비스 요청 노드와 타겟 컨텐츠를 제공할 수 있는 노드가 같은 제1 도메인(Area1) 내에 있으므로, 제1 도메인(Area1) 내에서의 인트라 경로를 설정하여 타겟 컨텐츠를 신속하게 제공할 수 있다.
한편, 서비스 스트림 컨트롤러(52)는, 상기 타겟 컨텐츠가 상기 제1 도메인(Area1) 내에 캐싱되지 않은 경우, 상기 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 상기 타겟 컨텐츠를 포워딩할 수 있다.
예를 들어, 타겟 컨텐츠가 제3 도메인(Area 3)에 캐싱되어 있다면, 서비스 요청 노드에서부터 제3 도메인의 게이트웨이 노드를 통하는 경로를 설정하여 타겟 컨텐츠를 포워딩할 수 있다.
도 9는 서비스 스트림 제어 시스템에서, 컨텐츠 포워딩 테이블에 대한 예시도이다.
도 9를 참조하면, 컨텐츠 포워딩 상태가 반영되어 관리하는 컨텐츠 포워딩 테이블을 기초로, 컨텐츠 포워딩에 대한 추가 동작을 설명할 수 있다.
먼저, 서비스 스트림 컨트롤러는 컨텐츠 요청을 수신하면 컨텐츠 요청에 따른 서비스 스트림을 전송하기 위한 어뎁티브 서비스 컨텐츠 포워더 인스턴스(Adaptive Service Content Forwarder instance)를 통해 에어리어 컨트롤러와 연동하여 컨텐츠를 포워딩하고, 포워딩 상태를 관리하는 컨텐츠 포워딩 테이블을 구축할 수 있다.
구체적으로, 컨텐츠 포워딩 테이블에는 컨텐츠를 요청하는 특정 서비스 요청 노드(Service Requester)를 식별하는 매치필드(Match Fields) 및 서비스 요청 노드의 도메인 이름(Request Area)과 포워딩된 컨텐츠(Content) 및 전달경로인 포워딩(Forwarding) 포트 정보를 알려주는 포워딩 동작(forwarding action)을 기록하고, 그러한 포워딩이 이루어진 횟수(Counts) 정보를 저장할 수 있다.
여기서, 서비스 스트림 컨트롤러는 타겟 컨텐츠에 대한 포워딩이 이루어진 횟수가 임계값 이상인 경우, 인기 컨텐츠로 인지하고 해당 경로의 과부하 상태를 회피하고자 해당 컨텐츠가 제공되는 네트워크 경로 상에서 서비스 요청 노드의 도메인과 근접하게 존재하는, 서비스 요청 노드의 도메인 외부에 캐싱된 노드(Inter Area Cache, 예를 들면 라우터)에 추가로 타겟 컨텐츠를 캐싱하도록 제어하고자, 해당 컨텐츠의 캐싱 인터페이스 정보와 함께 캐싱 동작(Caching action)을 수행하도록 컨텐츠 포워딩 테이블의 항목(entry)을 추가할 수 있다.
또한, 상기 과정이후에 서비스 요청 노드의 도메인 외부 노드(Inter-Area Router)에 캐싱된 컨텐츠의 포워딩 횟수도 임계값 이상인 상황이 발생하면, 실시간으로 해당 컨텐츠를 전송 가능하도록 하기 위해 서비스 요청 노드의 도메인 내부 노드(Intra-Area Switch)에 추가로 타겟 컨텐츠를 캐싱하도록 컨텐츠 포워딩 테이블의 항목(entry)으로 해당 컨텐츠의 캐싱 동작(Caching action)을 추가할 수 있다.
그리고, 서비스 요청 노드의 도메인 내부 노드(Intra-Area Switch)에 캐싱된 컨텐츠에 대한 과부하 요청이 발생하면, 멀티 레이어 구조로 캐싱된 해당 컨텐츠를 전송 트래픽량이 최소화되도록 베이스 레이어(Base Layer) 컨텐츠만 부분캐싱하거나 베이스 레이어(Base Layer) 및 향상 레이어(Enhancement Layer)로 구성된 고품질 컨텐츠를 부분캐싱하는 형태로 주변 서비스 요청 노드의 도메인 내부 노드(Intra-Area Switch)에 분산 캐싱할 수 있다.
그래서, 이처럼 주변 도메인 내부 노드(Inter-Area Switch)로 분산 캐싱하려면, 컨텐츠 레이어 정보와 함께 캐싱 인터페이스를 지정하는 푸싱 동작(Pushing action)을 수행하도록 컨테츠 포워딩 테이블을 업데이트할 수 있다.
본 발명의 서비스 스트림 분산 포워딩 시스템에서는 오픈 플로우(OpenFlow) 프로토콜을 확장하여 특정 포트로 전달하라는 포워딩 동작(Forwarding action)이외에, 서비스 컨텐츠 경로 상의 라우터나 스위치 캐쉬에 인기 컨텐츠를 캐싱하도록 요청하는 캐싱 동작(Caching action) 및 캐싱된 컨텐츠의 과부하 요청이 발생한 경우 주변 캐쉬로 해당 컨텐츠를 분산 캐싱하도록 하는 푸싱 동작(Pushing action)을 제공할 수 있다.
특히 앞서 도 8에서 설명한 내용과 같이 인터 캐시 경로로 포워딩하는 경우에, 일반적으로 인트라 캐시 경로보다 더 많은 홉(hop)을 거치므로 네트워크 부하가 클 수 있어 추가적인 캐싱이 요구될 수 있다.
따라서, 서비스 스트림 컨트롤러는, 인터 캐시 경로로 상기 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 상기 인터 캐시 경로상에 위치한 제1 노드가 상기 타겟 컨텐츠를 캐싱하도록 제어할 수 있다(Caching in the Inter-Area Router, 92). 이때, 임계값은 정책이나 트래픽 상황에 따라 동적으로 결정될 수 있으며, 시스템 관리자에 의해 미리 설정될 수도 있다.
여기서, 서비스 스트림 컨트롤러는 인터 캐시 경로의 노드 중에서 서비스 요청 노드와 가까운 노드를 선정하여 우선적으로 캐싱할 수 있으나, 트래픽 상황에 따라 달리 선정할 수도 있다.
한편, 타겟 컨텐츠를 캐싱하고 있는 특정 노드로부터 포워딩하는 횟수가 많다면, 특정 노드에 대하여 과부하가 발생할 수 있다.
따라서, 서비스 스트림 컨트롤러는 제1 노드로부터 타겟 컨텐츠를 포워딩한 횟수가 많은 경우, 제1 노드가 속한 도메인 내의 제2 노드가 상기 타겟 컨텐츠를 캐싱하도록 제어할 수 있다.
도 10은 서비스 스트림 제어 방법에 대한 흐름도이다.
도 10을 참조하면, 적어도 하나의 에어리어 컨트롤러(Area Controller) 및 서비스 컨텐츠 코디네이터(Service Contents Coordinator)와 연동하는, 서비스 스트림 컨트롤러(Service Stream Controller)에서의 서비스 스트림 제어 방법은, 제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하는 단계(S100), 컨텐츠 요청에 따른 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하는 단계(S110), 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하는 단계(S120) 및 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 컨텐츠 요청마다 할당하는 단계(S130)를 포함할 수 있다.
즉, 서비스 스트림 컨트롤러는, 제1 에어리어 컨트롤러부터 전달받은 컨텐츠 요청에 상응하는 타겟 컨텐츠가 캐싱된 위치를, 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인할 수 있다.
여기서, 네트워크 트래픽 상황에 따른 경로를 설정하는 단계(S120)는, 확인된 타겟 컨텐츠가 서비스 요청 노드가 존재하는 제1 도메인 내에 캐싱되는 Intra-Area Caching 상태인지, 서비스 요청 노드가 존재하는 도메인과 타겟 컨텐츠 서버가 존재하는 도메인 사이에 캐싱되는 Inter-Area Caching 상태인지 여부에 따라 네트워크 트래픽 상황에 따른 경로를 설정할 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)는, 컨텐츠 요청에 따른 서비스 및 네트워크 트래픽 상황에 따라 타겟 컨텐츠의 질을 적응적으로 제어함으로써, 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 컨텐츠 요청을 타겟 컨텐츠가 캐싱된 노드로 전송하는 정보를 포함할 수 있다.
여기서, 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 캐싱될 수 있다.
여기서, 어뎁티브 서비스 컨텐츠 포워더는, 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는 경우, 제1 에어리어 컨트롤러와 연동하여, 제1 도메인 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 타겟 컨텐츠를 포워딩하고, 타겟 컨텐츠가 제1 도메인 내에 캐싱되지 않은 경우, 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 타겟 컨텐츠를 포워딩할 수 있다.
여기서, 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 제1 도메인과 인접한 도메인에 속하는 제1 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함할 수 있다.
여기서, 제1 노드로부터 타겟 컨텐츠를 포워딩한 횟수가 임계값 이상인 경우, 제1 도메인 내의 제2 노드에 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함할 수 있다.
여기서, 제2 노드에 추가로 캐싱된 타겟 컨텐츠에 대한 요청이 미리 설정된 값 이상인 경우, 타겟 컨텐츠의 베이스 레이어 또는 타겟 컨텐츠의 베이스 레이어 및 향상 레이어를 제1 도메인 내에 위치한 다른 노드들에 각각 부분적으로 캐싱하도록 제어할 수 있다.
그 밖에도 본 발명의 일 실시예에 따른 컨텐츠 중심 네트워크 기반의 서비스 스트림 제어 방법은 도 1 내지 도 9에서 설명한 서비스 스트림 컨트롤러의 각 동작이나 기능을 수행할 수 있다.
도 11은 서비스 스트림 제어 장치에 대한 블록도이다.
도 11을 참조하면, 서비스 스트림 제어 장치(110)는 적어도 하나의 명령을 실행하는 프로세서(processor, 111) 및 상기 적어도 하나의 명령을 저장하는 메모리(memory, 112)를 포함할 수 있다.
여기서 서비스 스트림 제어 장치(110)는 도 5에서 설명한 서비스 스트림 컨트롤러를 의미할 수 있다.
여기서 서비스 스트림 제어 장치(110)는 도 5에서의 에어리어 컨트롤러들과 통신하거나 서비스 컨텐츠 코디네이터와 유무선 네트워크로 통신하기 위한 통신 모듈(113)을 더 포함할 수 있다.
여기서 프로세서(111)는, 제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하면, 컨텐츠 요청에 상응하는 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 또는 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하고, 확인된 타겟 컨텐츠가 제1 도메인 내에 캐싱되어 있는지 여부를 기초로, 적어도 하나의 에어리어 컨트롤러 및 서비스 컨텐츠 코디네이터와 연동하여 트래픽 상황에 따른 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 컨텐츠 요청마다 할당함으로써 타겟 컨텐츠를 포워딩할 수 있다.
또한 그 밖에도 도 5 내지 도 10에서 설명한 서비스 스트림 컨트롤러의 각 구성요소를 포함할 수 있으며, 중복 서술을 피하기 위하여 자세한 설명은 생략한다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다. 예를 들어, 도 5에서의 서비스 컨텐츠 코디네이터와 서비스 스트림 컨트롤러는 하나의 서버로 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (20)

  1. 서비스 스트림 제어 시스템으로서,
    복수의 도메인의 각 인트라 에어리어(intra area)에서 트래픽 경로 및 컨텐츠 캐싱을 제어하는 복수의 에어리어 컨트롤러(Area Controllers);
    상기 복수의 도메인 각각에 위치한 컨텐츠의 캐시 위치를 결정하고 관리하는 서비스 컨텐츠 코디네이터(Service Contents Coordinator); 및
    상기 에어리어 컨트롤러 및 상기 서비스 컨텐츠 코디네이터와 연동하여 네트워크 트래픽 상황에 따른 최적 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여, 컨텐츠 요청에 상응하는 타겟 컨텐츠를 포워딩하는 서비스 스트림 컨트롤러(Service Stream Controller)를 포함하며,
    상기 서비스 스트림 컨트롤러는, 상기 복수의 에어리어 컨트롤러 중 제1 에어리어 컨트롤러의 제어 하에 있는 도메인들 중 제1 도메인 내에 위치하는 서비스 요청 노드로부터 컨텐츠 요청을 수신한 경우, 상기 서비스 컨텐츠 코디네이터 또는 상기 복수의 에어리어 컨트롤러와 연동하여 상기 컨텐츠 요청에 대응하는 제1 타겟 컨텐츠가 캐싱된 위치를 확인하고, 확인된 상기 제1 타겟 컨텐츠가 상기 제1 도메인에 캐싱되어 있는지 여부를 기초로 네트워크 트래픽 상황에 따른 경로를 설정하고, 설정된 경로를 기초로 생성되는 서비스 스트림 포워딩 그래프를 참조하여 상기 제1 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더를 컨텐츠 요청마다 할당하며,
    상기 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 상기 컨텐츠 요청을 상기 타겟 컨텐츠가 캐싱된 노드로 전송하는데 사용되는 정보를 포함하는, 서비스 스트림 제어 시스템.
  2. 삭제
  3. 청구항 1에서,
    상기 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)는, 상기 컨텐츠 요청에 따른 서비스 및 네트워크 트래픽 상황에 따라 상기 타겟 컨텐츠의 질을 적응적으로 제어함으로써, 상기 타겟 컨텐츠를 포워딩하는, 서비스 스트림 제어 시스템.
  4. 삭제
  5. 청구항 3에서,
    상기 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 캐싱되는, 서비스 스트림 제어 시스템.
  6. 청구항 5에서,
    상기 어뎁티브 서비스 컨텐츠 포워더는,
    상기 네트워크 트래픽 상황을 고려하여, 상기 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩하거나, 상기 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 상기 베이스 레이어와 함께 포워딩하는, 서비스 스트림 제어 시스템.
  7. 청구항 5에서,
    상기 어뎁티브 서비스 컨텐츠 포워더는,
    상기 컨텐츠 요청에서 확인된 서비스 종류(TOS, Type of Service)에 따라 상기 타겟 컨텐츠의 베이스 레이어(Base layer)만을 포워딩하거나, 상기 타겟 컨텐츠의 향상 레이어(Enhanced layer)를 상기 베이스 레이어와 함께 포워딩하는, 서비스 스트림 제어 시스템.
  8. 청구항 3에서,
    상기 어뎁티브 서비스 컨텐츠 포워더는,
    상기 타겟 컨텐츠가 상기 제1 도메인 내에 캐싱되어 있는 경우, 상기 제1 에어리어 컨트롤러와 연동하여, 상기 제1 도메인 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 상기 타겟 컨텐츠를 포워딩하고,
    상기 타겟 컨텐츠가 상기 제1 도메인 내에 캐싱되지 않은 경우,
    상기 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 상기 타겟 컨텐츠를 포워딩하는, 서비스 스트림 제어 시스템.
  9. 청구항 5에서,
    상기 서비스 스트림 컨트롤러는,
    상기 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 상기 제1 도메인과 인접한 도메인에 속하는 제1 노드에 상기 타겟 컨텐츠를 추가로 캐싱하도록 제어하는, 서비스 스트림 제어 시스템.
  10. 청구항 9에서,
    상기 서비스 스트림 컨트롤러는,
    상기 제1 노드로부터 상기 타겟 컨텐츠를 포워딩한 횟수가 임계값 이상인 경우, 상기 제1 도메인 내의 제2 노드에 상기 타겟 컨텐츠를 추가로 캐싱하도록 제어하는, 서비스 스트림 제어 시스템.
  11. 청구항 10에서,
    상기 서비스 스트림 컨트롤러는,
    상기 제2 노드에 추가로 캐싱된 상기 타겟 컨텐츠에 대한 요청이 미리 설정된 값 이상인 경우, 상기 타겟 컨텐츠의 베이스 레이어 또는 상기 타겟 컨텐츠의 베이스 레이어 및 향상 레이어를 상기 제1 도메인 내에 위치한 다른 노드들에 각각 부분적으로 캐싱하도록 제어하는, 서비스 스트림 제어 시스템.
  12. 적어도 하나의 에어리어 컨트롤러(Area Controller) 및 서비스 컨텐츠 코디네이터(Service Contents Coordinator)와 연동하는, 서비스 스트림 컨트롤러(Service Stream Controller)에서의 서비스 스트림 제어 방법에서,
    제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하는 단계;
    상기 컨텐츠 요청에 따른 타겟 컨텐츠가 캐싱된 위치를 상기 서비스 컨텐츠 코디네이터 또는 상기 적어도 하나의 에어리어 컨트롤러와 연동하여 확인하는 단계;
    확인된 타겟 컨텐츠가 상기 제1 도메인 내에 캐싱되어 있는지 여부 및 상기 제1 도메인과 다른 제2 도메인과의 사이에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하는 단계; 및
    설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 상기 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 상기 컨텐츠 요청마다 할당하는 단계를 포함하며,
    상기 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 상기 컨텐츠 요청을 상기 타겟 컨텐츠가 캐싱된 노드로 전송하는 정보를 포함하는, 서비스 스트림 제어 방법.
  13. 청구항 12에서,
    상기 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)는,
    상기 컨텐츠 요청에 따른 서비스 및 네트워크 트래픽 상황에 따라 상기 타겟 컨텐츠의 질을 적응적으로 제어함으로써, 상기 타겟 컨텐츠를 포워딩하는, 서비스 스트림 제어 방법.
  14. 삭제
  15. 청구항 13에서,
    상기 타겟 컨텐츠는 베이스 레이어(Base layer)와 향상 레이어(Enhanced layer)를 포함하는 멀티 레이어 구조로 캐싱되는, 서비스 스트림 제어 방법.
  16. 청구항 13에서,
    상기 어뎁티브 서비스 컨텐츠 포워더는,
    상기 타겟 컨텐츠가 상기 제1 도메인 내에 캐싱되어 있는 경우,
    상기 제1 에어리어 컨트롤러와 연동하여, 상기 제1 도메인 내의 노드 사이에 설정된 인트라 캐시(intra cache) 경로에 따라 상기 타겟 컨텐츠를 포워딩하고,
    상기 타겟 컨텐츠가 상기 제1 도메인 내에 캐싱되지 않은 경우,
    상기 타겟 컨텐츠가 캐싱된 도메인과 연결된 게이트웨이(Gateway) 노드를 통한 인터 캐시(inter cache) 경로를 설정하여 상기 타겟 컨텐츠를 포워딩하는, 서비스 스트림 제어 방법.
  17. 청구항 15에서,
    상기 타겟 컨텐츠를 포워딩하는 횟수가 임계값 이상인 경우, 상기 제1 도메인과 인접한 도메인에 속하는 제1 노드에 상기 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함하는, 서비스 스트림 제어 방법.
  18. 청구항 17에서,
    상기 제1 노드로부터 상기 타겟 컨텐츠를 포워딩한 횟수가 임계값 이상인 경우, 상기 제1 도메인 내의 제2 노드에 상기 타겟 컨텐츠를 추가로 캐싱하도록 제어하는 단계를 더 포함하는, 서비스 스트림 제어 방법.
  19. 청구항 18에서,
    상기 제2 노드에 추가로 캐싱된 상기 타겟 컨텐츠에 대한 요청이 미리 설정된 값 이상인 경우, 상기 타겟 컨텐츠의 베이스 레이어 또는 상기 타겟 컨텐츠의 베이스 레이어 및 향상 레이어를 상기 제1 도메인 내에 위치한 다른 노드들에 각각 부분적으로 캐싱하도록 제어하는, 서비스 스트림 제어 방법.
  20. 적어도 하나의 명령을 실행하는 프로세서(processor); 및
    상기 적어도 하나의 명령을 저장하는 메모리(memory)를 포함하는 서비스 스트림 제어 장치에서,
    상기 프로세서는,
    제1 에어리어 컨트롤러가 제어하는 제1 도메인 내에 위치한 서비스 요청 노드로부터 컨텐츠 요청을 수신하고, 상기 컨텐츠 요청에 따른 타겟 컨텐츠가 캐싱된 위치를 서비스 컨텐츠 코디네이터 및 복수의 에어리어 컨트롤러와 연동하여 확인하고, 확인된 타겟 컨텐츠가 상기복수의 에어리어 컨트롤러 중 제1 에어리어 컨트롤러가 제어하는 상기 제1 도메인 내에 캐싱되어 있는지 여부 및 상기 제1 도메인과 다른 제2 도메인 내에 캐싱되어 있는지 여부를 기초로, 네트워크 트래픽 상황에 따른 경로를 설정하고, 설정된 경로를 기초로 생성된 서비스 스트림 포워딩 그래프를 참조하여 상기 타겟 컨텐츠를 포워딩하는 어뎁티브 서비스 컨텐츠 포워더(Adaptive Service Content Forwarder)를 상기 컨텐츠 요청마다 할당하며, 여기서 상기 제2 도메인은 상기 복수의 에어리어 컨트롤러 중 제2 에어리어 컨트롤러에 의해 제어되며,
    상기 서비스 스트림 포워딩 그래프는, MPLS(Multi-Protocol Label Switching) 기반으로, 상기 컨텐츠 요청을 상기 타겟 컨텐츠가 캐싱된 노드로 전송하는 정보를 포함하는, 서비스 스트림 제어 장치.
KR1020170094819A 2017-07-26 2017-07-26 서비스 스트림 분산 포워딩 시스템 및 그 방법 KR102376496B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170094819A KR102376496B1 (ko) 2017-07-26 2017-07-26 서비스 스트림 분산 포워딩 시스템 및 그 방법
US16/043,393 US10728355B2 (en) 2017-07-26 2018-07-24 Distributed forwarding system and method for service stream

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170094819A KR102376496B1 (ko) 2017-07-26 2017-07-26 서비스 스트림 분산 포워딩 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20190011997A KR20190011997A (ko) 2019-02-08
KR102376496B1 true KR102376496B1 (ko) 2022-03-18

Family

ID=65038375

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170094819A KR102376496B1 (ko) 2017-07-26 2017-07-26 서비스 스트림 분산 포워딩 시스템 및 그 방법

Country Status (2)

Country Link
US (1) US10728355B2 (ko)
KR (1) KR102376496B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11218711B2 (en) 2017-09-15 2022-01-04 Cable Television Laboratories, Inc. Information centric networking (ICN) media streaming
US11470176B2 (en) * 2019-01-29 2022-10-11 Cisco Technology, Inc. Efficient and flexible load-balancing for clusters of caches under latency constraint
CN110224931B (zh) * 2019-06-20 2021-09-24 深圳市美兆环境股份有限公司 信息传输方法、装置和计算机设备
CN110266804B (zh) * 2019-06-28 2020-08-14 郑州轻工业学院 基于节点情景度的内容中心网络缓存方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140173018A1 (en) * 2012-12-13 2014-06-19 Futurewei Technologies, Inc. Content Based Traffic Engineering in Software Defined Information Centric Networks

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2821466A1 (en) * 2009-09-26 2011-03-31 Disternet Technology Inc. System and method for micro-cloud computing
KR101688857B1 (ko) 2010-05-13 2016-12-23 삼성전자주식회사 컨텐츠 중심 네트워크(ccn)에서 단말 및 허브의 통신 방법 및 컨텐츠 중심 네트워크를 위한 단말
US9253087B2 (en) 2012-04-24 2016-02-02 Futurewei Technologies, Inc. Principal-identity-domain based naming scheme for information centric networks
KR20130138670A (ko) 2012-06-11 2013-12-19 삼성전자주식회사 컨텐츠 중심 네트워크의 인트라 도메인(intra domain) 및 인터 도메인(inter domain)에서 노드가 컨텐츠를 검색하는 방법 및 그 노드
US9369541B2 (en) 2013-03-14 2016-06-14 Massachusetts Institute Of Technology Method and apparatus for implementing distributed content caching in a content delivery network
KR20140125223A (ko) 2013-04-18 2014-10-28 한국전자통신연구원 정보 중심 네트워킹 기반의 콘텐츠 네트워크에서 관리 인터페이스를 이용한 정보 수집 방법, 콘텐츠 네트워크 관리 시스템 및 노드 장치
KR101533511B1 (ko) 2013-11-07 2015-07-02 경희대학교 산학협력단 콘텐츠 기반 네트워크에서 콘텐츠의 저장 방법
KR20150088442A (ko) 2014-01-24 2015-08-03 한국전자통신연구원 정보 중심 네트워크 기반 분산파일 관리 방법 및 장치
KR20150095098A (ko) 2014-02-12 2015-08-20 한국전자통신연구원 정보 중심 네트워크를 이용한 데이터 질의 처리 방법
US9871730B2 (en) * 2014-08-22 2018-01-16 Futurewei Technologies, Inc. Network element configured to operate in an information centric network
EP3206348B1 (en) * 2016-02-15 2019-07-31 Tata Consultancy Services Limited Method and system for co-operative on-path and off-path caching policy for information centric networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140173018A1 (en) * 2012-12-13 2014-06-19 Futurewei Technologies, Inc. Content Based Traffic Engineering in Software Defined Information Centric Networks

Also Published As

Publication number Publication date
KR20190011997A (ko) 2019-02-08
US10728355B2 (en) 2020-07-28
US20190037042A1 (en) 2019-01-31

Similar Documents

Publication Publication Date Title
US10924448B2 (en) Content delivery from home networks
EP2705635B1 (en) Method and apparatus for content identifier based radius constrained cache flooding to enable efficient content routing
Salsano et al. Transport-layer issues in information centric networks
US9049251B2 (en) Method and apparatus for internet protocol based content router
EP2897340B1 (en) Routing proxy for adaptive streaming
JP5621778B2 (ja) コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
US8223767B2 (en) Driven multicast traffic distribution on link-aggregate-group
KR102376496B1 (ko) 서비스 스트림 분산 포워딩 시스템 및 그 방법
US10862800B2 (en) Method and system for managing network communications
CN105359490A (zh) 在网络节点之间分配资源以用于提供网络节点功能
US11470185B2 (en) Information centric network packet transmission control
JP2010521857A (ja) サービス・フローを管理するためのポリシーの適用
KR20190033631A (ko) 압축 포워딩 테이블
US20160380899A1 (en) Method and apparatus for dynamic traffic control in sdn environment
WO2018036254A1 (zh) 报文转发方法及装置
CN104272676A (zh) 通信***、访问控制装置、交换机、网络控制方法及程序
Kalghoum et al. Towards a novel cache replacement strategy for named data networking based on software defined networking
KR101155386B1 (ko) 네트워크에서 데이터 유닛을 라우팅하기 위한 장치 및 방법
JPWO2006093221A1 (ja) 伝送制御装置およびその方法
US8055897B2 (en) Digital object title and transmission information
Ye et al. PTP: Path-specified transport protocol for concurrent multipath transmission in named data networks
CN105812277A (zh) 访问请求的控制方法和***、通信设备
Akpinar et al. PPNet: Privacy protected CDN-ISP collaboration for QoS-aware multi-CDN adaptive video streaming
US20080298366A1 (en) Agnostic Network Architecture
Al-Haddad et al. A Survey of Quality of Service (QoS) Protocols and Software-Defined Networks (SDN) From the Traditional to the Latest Network Architecture

Legal Events

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